Mapping Component Specifications to Enterprise JavaBeans Implementations Yi Liu and H. Conrad Cunningham Software Architecture Research Group Department of Computer and Information Science University of Mississippi
What Component Software Needs Component specification Component model Mapping – approach applied to realize an implementation from a component specification
Our Approach Component specification – Methods by Cheesman and Daniels (UML Components) Component model – Enterprise JavaBeans (EJB) Mapping approaches – Manager bean approach – Hierarchical approach – Singleton EJB approach
Component Specification System Architecture User Interface Creates what the user sees. Handles UI logic. User Dialog Dialog logic. Transient state corresponds to the dialog. Can sometimes be used with multiple UIs. Business Services Components correspond to stable business types to groups. Operations can be combined with others in a transaction. Usually have associated databases. System Services Operations are new transactions. Can be used with a variety of user dialogs or batch. Components correspond to business systems. No dialog or client-related state. Application Client Part Server Part System Dialog Software System Components Business Components
Component Specification Component Specification Design Requirements Definition Component Identification Component Specification Component Interaction Component Specification
Component Specification Course Registration System
Component Model Enterprise JavaBeans (EJB) EJB is a component model for building server-side, enterprise-class applications.
Component Model EJB Model EJB Client... Enterprise Bean … EJB Container EJB Server
Component Model Enterprise JavaBeans Types Session beans Entity beans Message-driven beans
Mapping Approaches maps to EJB Client... Enterprise Bean … EJB Container EJB Server
Mapping Approaches Manager Bean Approach Dialog Software System Software Business Components MakeSchedule > CourseReg System > PersonMgr > Person
Mapping Approaches Hierarchical Approach Dialog Software System Software Business Components MakeSchedule > CourseReg System > PersonMgr > Person > Person > Student … PersonMgr Component
Mapping Approaches Singleton EJB Approach Dialog Software System Software Business Components MakeSchedule > CourseReg System > Person > PersonMgr > CourseMgr …
Acknowledgements This work was supported, in part, by a grant from Acxiom Corporation titled “The Acxiom Laboratory for Software Architecture and Component Engineering (ALSACE).” Mingxian Fu and Pallavi Tadepalli assisted in the design of example system. Fu led the implementation effort.