9. UML - INTRODUCTION
Graphical notations to express software architecture
Behavioral
Structural
element of spec. irrespective of time
•
•
•
•
•
•
Class
Component
Deployment
Object
Composite structure
Package
behavioral features of a system / business process
•
•
•
•
Activity
State machine
Use case
Interaction
Interaction
emphasize object interaction
•
•
•
•
Communication (collaboration)
Sequence
Interaction overview
Timing
10. UML – ACTIVITY DIAGRAM
• Model workflow & software system behavior
• Data flow models
[order reject]
Receive
Order
Fill
Order
Close
Order
Ship
Order
[order
accepted]
Send
Invoice
Invoice
Accept
Make Payment
Payment
12. WHY ACTIVITY DIAGRAM FOR
WORKFLOW/PROCESS MODELING?
• Visualize workflow, think functionally
• Activities can happen in parallel
• Inter-relationship with other activities
• Various degree of details
15. RICH BPMN ELEMENTS
• Embody different meanings (>= 2) in the same single
concept
Start
Message
Event
1. Start the process
2. Accept a message
16. OVERLOADED BPMN ELEMNTS
Have different meanings according to the way they are used in a
model
Wash car
Repair car
Decorate car
ForkNode (split)
MergeNode (Join)
Drive car
17. ATLAS TRANSFORMATION LANGUAGE (ATL)
• Model transformation solution
• A language + development environment
• Major components of the M2M Eclipse project
• A hybrid language (declarative & imperative styles)
• Rules + Helper (used in rules).
• Sample http://www.eclipse.org/atl/atlTransformations/
21. SINGLE SOURCE TO COMPOSED TARGET
• Define matching rules
From Clause
To Clause
Input
Single Element
Output
Number & type of Elements
22. OVERLOADED BPMN ELEMNTS
Have different meanings according to the way they are used in a
model
Wash car
Repair car
Decorate car
ForkNode (split)
MergeNode (Join)
Drive car
26. ASSESSMENT
• Mapping process is immature
• Can’t map complex BPMN objects or scenarios
• Is there a need for BPMN – UML mapping?
• BPMN is not always superior to UML (*add reference)
• Why not train people BPMN?
PROPOSE:
Oracle map from BPMN to BPEL (Developer friendly)
BPMN more popular: provides extensive means to describe event-driven behavior.
Here is the chart describingOrdering food of Customers and waiter.Very simple
Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems, business modeling and other non-software systems.The UML represents a collection of best engineering practices that have proven successful in the modeling of large and complex systems.The UML is a very important part of developing object oriented software and the software development process. The UML uses mostly graphical notations to express the design of software projects. Using the UML helps project teams communicate, explore potential designs, and validate the architectural design of the software. The various modelling notations essentially divide into three main groups:• Behaviour diagrams, which describe the overallfunctionality of the software at a relatively highlevel of abstraction;• Interaction diagrams, which further augment thebehaviour diagrams and present a more detailed description of system functionality in terms ofobject interactions;• Structure diagrams which capture the underlyingstatic structure of a software system at variouslevels from individual objects to overall applica-tion packages.
- Useful to specify software or hardware system behaviour- Based on data flow models – a graphical representation (with a Directed Graph) of how data move around an information systemDescribe the flow of control of the target system, such as the exploring complex business rules and operations, describing the use case also the business process. It is object-oriented equivalent of flow charts and data-flow diagrams (DFDs)A swimlane is a way to group activities performed by the same actor on an activity diagram or to group activities in a single thread.
Describe the flow of control of the target system, such as the exploring complex business rules and operations, describing the use case also the business process. It is object-oriented equivalent of flow charts and data-flow diagrams (DFDs)Because it is possible to explicitly describe parallel events, the activity diagram is well suited for the illustration of business processes, since business processes rarely occur in a linear manner and often exhibit parallelisms.Contrary to use case diagrams, in activity diagrams it is obvious whether actors can perform business use cases together or independently from one another.Activity diagrams can be developed in various degrees of detail. They can be refined step by step. In the external view, activity diagrams, just like use case diagrams, exclusively represent business processes and activities from the outside perspective
- BPMN Event UML Activity (but activity’s support is not as big as event not easy to map).BPMN elements richsemantics because they embody different meanings in the same single concept (Ex: start message event) UML: InitialNode & AcceptCallAction.- BPMN elements overloadedsince they can have different meanings according to the way they are used in a model (Ex: gateways OR: Fork node or Merge Node).
- BPMN Event UML Activity (but activity’s support is not as big as event not easy to map).BPMN elements richsemantics because they embody different meanings in the same single concept (Ex: start message event) UML: InitialNode & AcceptCallAction.- BPMN elements overloadedsince they can have different meanings according to the way they are used in a model (Ex: gateways OR: Fork node or Merge Node).
- BPMN Event UML Activity (but activity’s support is not as big as event not easy to map).BPMN elements richsemantics because they embody different meanings in the same single concept (Ex: start message event) UML: InitialNode & AcceptCallAction.- BPMN elements overloadedsince they can have different meanings according to the way they are used in a model (Ex: gateways OR: Fork node or Merge Node).