Transformation From CIM to PIM Using Patterns and ... - CiteSeerX

5 downloads 29055 Views 133KB Size Report
Department of Software Engineering and Information Technologies, GELOG ... Propose an approach and methodology to build business process model, ...
Transformation From CIM to PIM Using Patterns and Archetypes Samir Kherraf

Éric Lefebvre

Witold Suryn

[email protected] [email protected] [email protected] Department of Software Engineering and Information Technologies, GELOG Laboratory, École de technologie supérieure (ÉTS), Montreal (Qc) - CANADA

1. Summary This work proposes a disciplined approach to transform a CIM into a PIM in a Model Driven Architecture (MDA) approach. It first uses UML2 activity diagrams to model the business processes up to the users’ tasks. The activity diagrams are then detailed to specify the system requirements. The system components are directly deduced from the requirement model elements. Finally, a set of business archetypes helps detail the system components to yield the PIM. A case study illustrates our approach.

3. Motivation

5. Case Study – Rent Car

™ Address the CIM to PIM transformation: Most of the research work until now has focused on the transformation from PIM to Platform Specific Model (PSM), whereas few deals with CIM to PIM transformation. ™ Build a CIM so that it can be automatically transformed into a PIM in order to more effectively generate an IT system from business requirements. ™ Make the Building of a PIM from CIM independent of a business analysts’ and software architects’ experience and creativity, since this activity currently needs time and is prone to errors.

EU-RENT is a typical car rental company. It has many branches. At each branch, cars (classified by group and model) are available for rental and most of the rentals are by advance reservation. A customer can have several reservations but only one car can be rented at a time [3] . ReserveACar

RentACar Credit Card

Client

Today's reservation Clerk

Tomorrow's reservation

Research Goal Propose an approach and methodology to build business process model, requirement model and system model in order to automate transformation from CIM to PIM. ⇒ Improve the productivity, traceability, quality and reduce the potential errors in software development cycle.

Reserve

Assign

Modifies reserv ation

R equests r eserv ation

P rovides per sonal infor mation

Confirms

Rent

Pay

Branch

Today's return

Return

[No n e]

R eserv ation [requested]

Validates information

R eserv ation [completed] [Y e s, r e cord]

Car [OK]

Checks availability

4. Transformation Methodology

Asks for personal information

Car

[Yes, co n firm]

Asks for confirmation

[No , can cel]

[No, ca nce l]

Business Process Model...

CIM building

1. BPM

We propose to build a CIM on two models using UML2 activity diagram as a single technique: Business Process Model

1. Business process model (BPM)

2. Background Computation Independent Model (CIM) Describes the situation in which the system will be used and the environment in which it will operate. Represents the business processes and system requirements, i.e. the activities to be accomplished to meet business objectives.

Platform Independent Model (PIM) Represents the system that supports the business processes, independently of the IT platform.

™ Decompose the processes into a collection of EBPs which are related according to a workflow specifying the handling over the tasks from one actor to another. ™ Describe each EBP with both the activities (the dynamic aspect) and the objects required for their realization (the static aspect).

An elementary business process (EBP) is defined as a task performed by one person in one place at one time, in response to a business event, which adds measurable business value and leaves the data in a consistent state [1].

Archetypes Are a model from which all things of the same kind more or less follow. Four archetypes defined by [2] are sufficient to build any PIM: ™ The Moment-Interval represents the dynamic aspect of the process. ™ The Role, PartyPlaceThing (PPT) and Description represent the static aspect of the process.

EBP2

EBPn

A ct io n4 A ct io n2 A ct io n5

A ct ion3 Object 1 A ct io n6

Object 2

™ Introduce in a BPM the system(s) as an actor(s) that deals with the activities of the process for which automation is desired; ™ Build the use case model using UML2 activity diagram (1 EBP = 1 Use Case).

4. PIM Business Process Pattern

3. Component Model

«moment-interval» Activity A

«moment-interval» 1 Activity A-1

0..*

From the use case model, we identify two distinct categories of components: ™ The business process components, which correspond to the process. ™ The business entity components, which correspond to the resources and products or services. ™ Each use case is generally transformed into a process component which is then linked to various entity components according to their role in the process. ™ Process component = Moment-Interval Archetype. ™ Entity component = PPT and/or Description and/or Role Archetypes. ™ The PIM is completed by selecting the attributes and methods from the generic elements of each archetype.

2. Use Case Model

Use Case Model for EBP1 A ct ion1

2. Requirement model

PIM building Elementary Business Process (EBP)

EBP1

Transformation Process

Attributes number dateOrDateTimeOrInterval priority total status 1 Operations makeMomentInterval addDetail calcTotal recalcTotal complete cancel mi_generateNext mi_assessWRTPrior mi_assessWRTNext mi_comparePlanVsActual listMIs assessAcrossMis

6. Conclusion and future work 0..*

«moment-interval» Activity A+1

This approach, using, 1) UML2 Activity Diagram as a unique technique to define the requirement model, 2) business patterns and archetypes, provides a disciplined way to define transformation rules that facilitate automation of the CIM-to-PIM transformation.

Future work ™ ™ ™ ™

1 1..* «mi-detail» ActivityADetail Attributes quantity Operations calcTotal

Business Entity Pattern

Attributes assignedNumber 0..1 status Operations assessAcrossMIs listMIs listRoles assessAcrossRoles

«description» Description

«thing» thing

«role» Role 1

Attributes serialNumber name 0..* address customValue Operations assess assessAcrossRoles getCustomElseDefaultValue listRoles listThings assessAcrossThings

1

Attributes type description itemNumber defaultValue Operations assessW ithPlugInElseDefault assessAcrossThing findAvailable calcQtyAvailable calcTotalFor listThings listDescs assessAcrossDescs

Formalization of the transformation rules from CIM elements to PIM elements. Automatic transformation from CIM to PIM. Building of Business Process Models for specific industry domains. Creation of catalogues of CIM and PIM models ready to be assembled.

7. References 1. C. Larman, Applying UML and Patterns, 3 ed: Prentice Hall 2004. 2. P. Coad, E. Lefebvre, and J. De Luca, Java Modeling In Color With UML: Enterprise Components and Process Prentice Hall , 1999. 3. Business Rules Group, ‘’Case Study: EU-RENT Car Rentals, ’’2001.

Suggest Documents