Beruflich Dokumente
Kultur Dokumente
0
M.W.Richardson Lead Applications Engineer I-Logix UK mrichardson@ilogix.com
www.ilogix.com
What is UML?
Unified Modeling Language Comprehensive full life-cycle 3rd Generation modeling language
Standardized in 1997 by the OMG Created by a consortium of 12 companies from various domains I-Logix a key contributor to behavioral modeling
Incorporates state of the art Software and Systems A&D concepts Matches the growing complexity of real-time systems
Large scale systems, Networking, Web enabling, Data management
Extensible and configurable Unprecedented inter-disciplinary market penetration UML 2.0 is latest version in the process of being released
www.ilogix.com
UML 1.3
UML 1.4
No Of Identifiable OO Modelling Languages Increases from <10 to >50 Identifiable OO modelling languages began to appear Method Wars Begin!
1989
1994
1995
1996
1997
1999
2001
2004
2004+
OOSE = Object Oriented Software Engineering Method OMT = Object Modelling Technique
I-Logix 2004 Tampere OO day 14/12/2004
www.ilogix.com
Superstructure
Contains most user-visible features Improve scalability and architectural support Improve ability to model business workflows Add semantics of state machine inheritance
OCL
Object Constraint Language is used in the definition of the UML itself General improvements of the OCL
Diagram Interchange
Add ability to interchange diagram to the existing XMI
www.ilogix.com
www.ilogix.com
www.ilogix.com
www.ilogix.com
www.ilogix.com
www.ilogix.com
Internal View of PC
Problem: Not obvious that the instance of Motherboard created by the PC is connected to the instances of USBCard and GraphicsCard created by the PC.
www.ilogix.com
PC System
Problem: No way to cleanly specify which instance of pc is connected to which instance of Keyboard
www.ilogix.com
www.ilogix.com
Provided Contract
Required Contract
www.ilogix.com
Devices
www.ilogix.com
Connector
www.ilogix.com
PC Internals
Relay Port
Note here that the PC actually does nothing, all the external ports are connected to internal parts.
Behavioral Port
www.ilogix.com
compatible interface Sub-classed provided interfaces are compatible with super-class required interfaces
Ports are implemented by classes that provide behavioral delegation services to their clients
www.ilogix.com
Ports Example
www.ilogix.com
Easy testing
www.ilogix.com
www.ilogix.com
Sequence Diagrams
www.ilogix.com
Horizontal Decomposition
Messaging between structured classes
Interaction Occurrence
www.ilogix.com
Vertical Decomposition
Messaging between structured classes
Part Decomposition
www.ilogix.com
Causality
www.ilogix.com
www.ilogix.com
www.ilogix.com
www.ilogix.com
www.ilogix.com
www.ilogix.com
Example: Generalization
Modified action list New sub-states and transitions New and-states
www.ilogix.com
Activity Diagrams
www.ilogix.com
Activity Diagrams
graspAt
interruptable section interrupting edge
Emergency Stop
Proximity Alert
Position
event reception
Input pin
Joint 1 to a
Joint 2 to b
Open manipulator
Rotate manipulator
Interruptible region
Joint_1
swim lane representing the objects executing the activities nested within
Joint_2
Joint_3
Grasp Object
www.ilogix.com
Timing Diagrams
www.ilogix.com
Timing Diagram
send(value)
Transceiver
Idle Receiving Sending
Coil Driver
Receiving::High Receving::Low Sending::High Sending::Low Tristate
transmit(value)
evDone
{1 ms +/- 0.2ms}
tm(bitTime) send(value)
{3 ms +/- 0.2ms}
Monitor
Initializing Acquiring Reporting Idle
Time
www.ilogix.com
www.ilogix.com