Software constituents, their engineerings and market places
Section 1: Summary of the function of J2EE constituent platform in package constituents ‘ deployments in distributed application.
J2EE platform uses a multi-tiered distributed application theoretical account get the better ofing the restrictions such as scalability involved in 2-tier applications [ 13 ] . Here, the application is separated into constituents based on their functionality which simplifies the development of distributed applications [ 12 ] .The constituents are divided into the undermentioned grades: Client grade ( running on the client machine ) Web tier & A ; Business Tier ( running on J2EE Server ) , and Enterprise Information System ( EIS ) which runs on the EIS waiter [ 12 ] .
The different constituents that make up the J2EE application are: Application clients and Applets ( running on client machine ) , JSP running on waiter and the EJB which form the concern constituents running on the waiter.
The theoretical account adopted by this architecture, based on chiseled constituents enables it to take advantage of sophisticated platform services enabling maximal programmer productiveness [ 14 ] . The theoretical account has been successful in and simplifying distributed application which is extremely required in today ‘s complex, networked applications [ 14 ] . This is the possible ground why most application waiter and enterprise information system sellers have adopted the J2EE criterion and introduced merchandises based on the J2EE platform specification [ 14 ] . Some of the Key endeavor concerns that J2EE architecture seamlessly met, ensuing in its popularity are: Programing productiveness, Ease of integrating with bing ( bequest ) systems, Wide scope of J2EE constituents to take from, Efficient system direction ensuing first-class system response, and High grade of security and control that can be exercised over both the client and waiters [ 14 ]
The Enterprise Java Bean ( EJB ) provides a scalable, robust architecture which has been successfully used to develop and deploy several concern applications in Java EE all over the universe. The applications written utilizing EJB engineering are scalable, transactional and unafraid and really easy to develop and utilize. The latest version of EJB ( EJB 3.1 ) farther simplified the engineering by adding new characteristics such as the 1s listed below: [ 1 ]
- No-Interface Position: This makes utilizing a local concern interface in the local client position optional
- Singletons: A new sort of session bean which makes sharing of provinces between multiple case of an endeavor bean constituent
- Asynchronous session bean supplication: Provides the application with the ability to raise session bean methods asynchronously
- Simplified packaging
- Introduction of the “ EJB Lite ” : This excludes a batch of the characteristics of the complete version of EJB and is better suited for more simple applications.
Section 2: Analysis of the current state of affairs at the “ constituents market places ”
As package systems get bigger and more complex, their building have started going more and more clip and resource consuming, and besides involves a important sum of hazard. [ 2 ] An alternate to developing a system from abrasion is to utilize ‘software constituent engineering ‘ wherein the developers assemble and incorporate the complete system by utilizing preexistent constituents, to make the coveted system functionality. [ 2 ] Here, the features of coherence and matching become of import drivers in the design and deployment [ 2 ] . Although the term ‘software constituent ‘ has assumed somewhat changing definitions and readings over the old ages, one widely accepted reading, endorsed by the writer in [ 2 ] is re-quoted as: “ A physical packaging of feasible package with a well defined and published interface ” [ 2 ] . This definition focuses on the deployment facet of constituents and how easy they can be integrated to organize a larger complete system. [ 2 ]
The major driving factors in the development of a constituent based system are Reuse and Evolution – where recycling bing constituents assist make a system which is extremely disconnected and easy to keep [ 2 ] . This would ideally make a state of affairs with minimum matching where alterations can be easy to be made to one portion of a system without impacting other parts. This scenario requires a robust and standard “ backplane ” which helps organize a constituent theoretical account which supports the assembly and integrating, and communicating between the different constituents [ 2 ] . Examples of some popular constituent theoretical accounts are: DCOM ( Distributed Component Object Model ) from Microsoft mostly confined to the Windowss platform [ 2 ] , CORBA ( Common Object Request Broker Architecture ) defined by the Object Management Group which is extremely linguistic communication and platform and linguistic communication independent, and Enterprise Java Beans ( EJB ) from Sun Microsystems which is the anchor of several Enterprise applications comprised of Java constituents.
The constituent Market
When a undertaking based on constituent based methodological analysis is started, there are two distinguishable beginnings for components- The Commercial and Non-Commercial constituent market place. [ 3 ] These two can be approximately differentiated by the fact a commercial constituent market topographic point is the coming together of purchasers and Sellerss affecting money dealing for securing package constituent ; whereas in the non – commercial domain, there is no direct pecuniary compensation involved in the procurance procedure. The ground for the development of the COTS constituent could be sometime wholly selfless or for an increased position among community members [ 3 ] . The merchandises offered by these market places are termed Commercial Off-the-Shelf ( COTS ) and Open Source Software ( OSS ) constituents [ 4 ] . These two constituents which have their similarities and differences resulted in several arguments among research workers, programmers and directors sing their feasibleness, and some of these are summarised below [ 4 ] :
Commercial Off-the-Shelf ( COTS )
During system development, this is a convenient option when the organisation does non hold clip, internal competences or resources to develop a peculiar functionality [ 4 ] . It is a popular pick particularly with the direction most normally due to the misinformation on the proficient facets of OSS. Using COTS tantrums in good with the general corporate pattern of buying a constituent, which normally involves: demand readying, short list and choice of providers, sign language of contracts and payment [ 4 ] . It is besides easy to happen and verify sellers through advertisement, organized gross revenues and so on. There are besides stiff methodological analysiss, and tools for acquisition and integrating [ 4 ] . There is besides an organized support services for the COTS merchandise through Documentation and Users manual, Customer attention hotlines, installing support, and regular spot releases [ 4 ] . In a manner, things are more streamlined and market driven with COTS.
However, one of the chief disadvantages of COTS is that the beginning codification is non available. The merchandise that is purchased is normally a “ black box ” with interfaces for communicating. Hence, any customization or bug/vulnerability staining ( and repairing ) by the user is non possible. Because of the net income goaded nature, where the value to the terminal user is non ever the highest precedence. There are besides menaces to user privateness and informations security non merely by hackers ; but the sellers intentionally including back doors in the application, which had antecedently occurred with major sellers [ 4 ] .
Open Source Software ( OSS )
The unfastened beginning enterprise has been Differing from the Management ‘s position ; OSS is frequently a popular pick with programmers due to the backup of unfastened beginning communities and transparence [ 4 ] . It is besides extremely attractive because of its cost to get and the beginning codification can be viewed or modified by the user harmonizing to their demand. Since the codification is viewed and maintained by a community of developers, the opportunities of descrying bugs and timely holes are besides much better compared to COTS [ 4 ] .
Although, there is no cost of geting an OSS, there is a cost of ownership incurred like COTS for integrating, proving and care. Use of OSS can besides be a cause of concern for organisations that wish to maintain the developed application codification proprietary [ 4 ] . Referred to as the ‘copyleft ‘ , some free package imposes a status which requires all extensions, alterations and usage of it to be released as free package [ 4 ] . However, there are different discrepancies of this regulation and there is besides some free package which does non enforce the copyleft status [ 4 ] . Hence, the user needs to be careful about understanding the exact legal conditions while taking an OSS [ 4 ] . Despite there being quite a few portals which collect most unfastened beginning undertakings, OSS has non realised its true potency is the deficiency of market incursion compared to COTS sing its non-profit and non-commercial nature, deficiency of advertisement and
Section 3: A brief overview of 4 different COTS constituents from the health care sector
( a ) The Spatiotemporal Epidemiological Modeler ( STEM )
Licensing Type: Open Source, Under Eclipse Public Licence ( EPL )
Environment Requirement: Java 5.0 and Eclipse 3.3
Care and support: Beginning, Binary and Literature free to download from [ 6 ] , Support from the community in the signifier of community forums can be obtained from [ 8 ]
This constituent has been developed as portion of the Open beginning undertaking named ‘Open Healthcare Framework ‘ ( OHF ) [ 5 ] . The undertaking which is still in the incubation stage consists of extensile models and tools which emphasize the usage of bing and emerging criterions ( like HL7 ) , in order to develop substructure that is both interoperable and unfastened beginning, thereby take downing Integration barriers. [ 5 ]
The STEM constituent is designed to assist scientists and public wellness functionaries create and use spacial and temporal theoretical accounts of emerging infective diseases, thereby increasing an apprehension of the disease and assisting to forestall its spread [ 6 ] . STEM helps better understand epidemiology by easing the development of advanced mathematical theoretical accounts which can assist happen patterns and generate theoretical accounts affecting multiple populations and interactions between diseases. [ 6 ]
The STEM cryptography is developed utilizing Java and is organized as a set of good defined constituents utilizing the occultation plug-in tool model. The constituents are integrated through a well defined “ extension point ” doing it extremely extensile. The occultation model besides consequences in high multi-platform portability.
( B ) Insight
Seller: University of Southern California
Licensing Type: Open Source, Under the GNU General Public License ( GPL )
Care and support: The Source, Binary and Literature free to download from [ 7 ] , Support from the community in the signifier of treatment forums, bug holes, user publications, etc can be obtained from [ 9 ]
Environment demand: MATLAB version 7.1 ( or higher ) , Java VM 1.5 ( or higher )
This is a free MATLB application intended for Magneto-encephalography ( MEG ) and Electroencephalography ( EEG ) information visual image, processing and cortical beginning appraisal with the aid of a rich and intuitive graphical Interface. [ 7 ] This can be run as a standalone application on any system which supports the MATLAB runtime ( Windows, Linux, etc ) . This can besides be used as a constituent for constructing other systems utilizing the MATLAB development environment by utilizing the beginning codification. [ 7 ]
( degree Celsius ) The UltraPort TCP/IP HL7 Listeners Vendor: Hermetech International Ltd.
Licensing Type: Proprietary package, with individual computing machine installing and limitations on transferability
Cost: Developer ‘s License: US $ 50/- , Single Port Retail: US $ 150/-
Care and support: The Company provides proficient support by phone and e-mail [ 10 ] . The user has the duty of put ining the latest updates/bug holes to guarantee proper working of package ( harmonizing to the licensing understanding )
Environment demand: Ocular Studio.Net ( 2005-2010 )
This configurable package accepts HL7 messages sent to client ‘s computer/server over TCP/IP to a specific port figure and writes it to a file in a booklet, and so automatically sends a HL7 recognition back to the transmitter indicating that the message has been received successfully [ 10 ] . It can either be used as a standalone application or, for package developers utilizing Microsoft Visual Studio.Net ( 2005 -2010 ) a.Net object DLL is provided which helps the mark application to straight interface with the UltraPort hearer. This avoids the demand of any TCP/IP socket scheduling. [ 10 ]
( vitamin D ) The EasyHL7 ActiveX Components
Seller: Hermetech International Ltd.
Licensing Type: It is proprietary package without redistribution fees. Run-time licences need to be generated while administering the developed applications to stop clients.
Cost: Developer ‘s License: first toolkit US $ 750/- , every subsequent licence: US $ 350/-
Care and support: The Company provides proficient support by phone and e-mail [ 10 ] . There is besides extended literature, illustration codifications etc in the company website [ 11 ]
Environment demand: MS Visual BASIC, Ocular Studio.Net
This helps developers of incorporate HL7 solutions to plan, trial, deploy, and implement HL7 package rapidly and easy in a development environment like MS Visual Basic/Visual Studio.Net. Developers merely need to concentrate on the application as all the HL7 demands are taken attention by the interfaces. [ 11 ]
Presence of two activeX DLLs ( EHL7.dll and EHL7Interface.dll ) allows developer to split your application development into the 2 classs of: Data Processing and User Interfaces. [ 11 ]
- hypertext transfer protocol: //java.sun.com/developer/technicalArticles/JavaEE/JavaEE6Overview_Part3.html # ejbeasy
- Component Primer, October 2000/Vol. 43, No. 10 COMMUNICATIONS OF THE ACM
- oftware Architecture: Foundation of a Software Component Marketplace ; E. James Whitehead, Jr. Jason E. Robbins Nenad Medvidovic Richard N. Taylor. Uniform resource locator: hypertext transfer protocol: //www.google.co.uk/url? sa=t & A ; source=web & A ; ct=res & A ; cd=1 & A ; ved=0CAcQFjAA & A ; url=http % 3A % 2F % 2Fciteseerx.ist.psu.edu % 2Fviewdoc % 2Fdownload % 3Fdoi % 3D10.1.1.49.1611 % 26rep % 3Drep1 % 26type % 3Dpdf & A ; ei=3yR4S7CvHdq5jAfg_pS4Cg & A ; usg=AFQjCNFoxvGlZOEis22N7pdcSMnEW242fg & amp ; sig2=Ft50SlKwdpm54Yw-gCVE9Q
- COTS and Open Source Software Components: Are They Truly Different on the Battlefield? , P D Giacomo, proceedings of the ICCBSS 2005 Conference, LNCS 3412, pp. 301-310, 2005
- hypertext transfer protocol: //www.eclipse.org/ohf/
- hypertext transfer protocol: //www.eclipse.org/stem/
- hypertext transfer protocol: //neuroimage.usc.edu/brainstorm/Introduction
- hypertext transfer protocol: //www.eclipse.org/forums/index.php? t=thread & A ; frm_id=72
- hypertext transfer protocol: //neuroimage.usc.edu/forums/
- hypertext transfer protocol: //www.hermetechnz.com/EasyHL7/prod_listeners.asp #
- hypertext transfer protocol: //www.hermetechnz.com/Documentation/EasyHL7/index.html
- hypertext transfer protocol: //java.sun.com/j2ee/tutorial/1_3-fcs/doc/Overview2.html
- hypertext transfer protocol: //www.roseindia.net/javabeans/distributed_architecture.shtml
- hypertext transfer protocol: //java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/introduction/introduction.html