DOC PREVIEW
UConn CSE 298/300 - EJB and CCM : A Study of two Component Models

This preview shows page 1-2-3-4 out of 11 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 11 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

EJB and CCM : A Study of two Component ModelsJaime Davila, Ayferi Kutlu, German Finez-MartinezUniversity Of [email protected], [email protected], [email protected] OverviewMiddleware models are sets of specifications of frameworks that allow the design,production and execution of large scaled critical distributed applications. Two of the mostimportant standards are EJB (Enterprise Java Beans) [1] and CCM (Corba Component Model)[2]. These models incorporate component-based technology are a step further than the pureobject-oriented approach. We are going to make both qualitative and quantitative analyses between EJB and CCM.The qualitative analysis will be based on capabilities that each specification offers such asscalability and interoperability. With respect to the quantitative analysis, we are going to develop two implementations of aShopping Cart Application, one of them using JBoss (an EJB implementation) and other usingMICO-CCM (a CCM application) and then compare the coding overhead and the performance ofboth implementations.DiscussionOne of the widely spread standards that are used nowadays in industry, is EJB (EnterpriseJava Beans) which is a specification produced by Sun under the Java Community Process,[1]. Currently, there are lots of ready to use in industry implementations of these standards, which include JBoss[5], Enhydra [6] and others. On the other hand, as a part of the Corba 3.0 standard [2] the OMG released the specification of the CCM (Corba Component Model), a middleware model that is language and platform independent. Currently only a few partial implementations of this standard are available(OpenCCM [3], MicoCCM [4]), but these are no ready to use in industrial settings.We would like to introduce and evaluate these two technologies as our semester project. The question(s) that we would like to answer are:1.What are the differences in the specification of both component models and how does it affect software development and software use, respectively. 2.What are the differences in capabilities/services of both?3.How is the practical use of EJB and CCM? How efficient can applications be implemented?For answering the first question, we have gone through the specifications available in [1] and [2], as well as in some available framework comparisons (see [7] and [8]) and we have identified (among others) the following comparison points:-Component Types -Portability-Interoperability-State ManagementThe CCM and EJB models differ in the type of components they feature. Currently, the Enterprise Java Beans specification provides Session, Entity as well as Message-Driven Beans while the CCM model provides four types of components: Session, Entity, Service and Process. We will discuss all these types. Portability and Interoperability are important requirements on software components. Interoperability allows, for instance, clients in one application deployed in J2EE containers from one server provider to access services from session or entity beans in another application that is deployed in an EJB container from a different server provider. Portability can be regarded on two levels: 1) platform level portability and 2) portability between the different servers/containers. We will analyze how far the interoperability and portability of CCM or EJB components go.State Management covers issues such as Data Integrity or Persistence of Beans. These arehandled differently in the two technologies that we regard. So there will also be methods to discuss.As a mean to do the qualitative analysis we're going to implement the Shopping Cart application, as is described on the chapter 5 of [1] in both platforms. In this application many registered clients access a server to buy items, by login into the system and then adding items to a shopping cart. It is important to notice that the shopping cart will be the same regardless of how long the client takes to decide which items she wants (She could login to the system and pick a specific item, logout, and come back a month later to add another item to her shopping cart).When the client wants these items to be shipped to her, she checks them out, releasing hershopping cart and generating a bill which will be charged to her. Whenever she wants to come back (after doing the checkout), a new shopping cart will be assigned to her. This information can be seen figure 1, as a UML use-case diagram.Figure 1 UseCase Diagram of Shopping Cart applicationAs the CCM container we are going to use MicoCCM, and as the Bean Container we are JBoss. In these two cases the server side of the application is going to be represented by the class diagram in figure 2.In the case of the MicoCCM implementation we are going to develop a simple textual client in C++ . For the JBoss based application we will develop a simple Java client. The deployment diagrams for both applications are shown in figures 3 and 4.Figure 2 class diagram of Shopping Cart applicationFigure 3 component diagram (CCM)Figure 4 component diagram (EJB)The Communication between the Client and the servers in both cases is made by a Home Class which implements the Factory and Find Patterns [8]. This class gives the right instance of the class to the client, which later uses the appropriate methods of this object. This type of behavior is illustrated by figure 5.Figure 5 sequence diagram the checkout process in the Shopping cart applicationRegarding coding issues we are going to compare the client and the server parts of both applications. For the performance part we will develop simple scenarios in which a number of clients buy a fixed amount of items, and then checks these items out. The number of clients will be variable, allowing us to measure scalability involved in the two implementations of the frameworks. Progress & Changes1. We have studied the EJB and CCM specifications as well as relevant criteria for a comparativestudy between both.2.We have managed to choose, download and install the environments for implementing thesample application, taking into account aspects as fully implementation of the specifications,availability of source code (Open Source), availability of documentation and easy ofinstallation.. Regarding the EJB part, we will be using the JBoss Application Server[5], andfor CCM, we have choose MicoCCM [4]. It is important to notice that at the


View Full Document

UConn CSE 298/300 - EJB and CCM : A Study of two Component Models

Documents in this Course
Java Tool

Java Tool

58 pages

Load more
Download EJB and CCM : A Study of two Component Models
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view EJB and CCM : A Study of two Component Models and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view EJB and CCM : A Study of two Component Models 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?