This is an introduction to UML (Unified Modeling Language) given to people whom has no background on business modeling using UML. This is based on UML version 2.
5. Why Modeling?
• Modeling will:
– Captured and simplified requirements
– Visualize the entire systems and process in an easy to understand
diagram
– Specified the process, features, or functionality of the entire systems
• Eventually, modeling will:
– Sharpen user understanding on fundamental processes
– Allowed user to compare alternative
– Help to make decisions and improve system behavior
– Provide a guidelines for future enhancement
– Reduce unnecessary risk.
5
6. The History
James Rumbaugh
Ivar Jacobson
Grady Booch
The Story
begins ….
OMG
6
18. Deployment Diagram
Network architecture of the
Instance level deployment
Specification level deployment
Implementation/Manifestation
system
diagram
of components by artifacts
18
19. Behavior Diagram
• Describe the events in the system
• Shows interactions of elements
• 3 types of diagrams:
– Use Case
– Activity
– State Machine
19
29. Phases
Requirement Analysis Design Coding Deploy
Diagrams
Class
Class √ √ √
Component √ √
Object
Object √ √ √
Profile √ √
Composite Structure √
Package √ √ √
Deployment √
Use Case
Use Case √ √
Activity
Activity √ √
State Machine √
Sequence
Sequence √
Communication √
Interaction Overview √
Timing √
29
30. Introduction to UML
UML Methods and Process
Using EA to Design UML
Practical
Q&A
31. Introduction to UML
UML Methods and Process
Using EA to Design UML
Practical
Q&A
32. Scenario
Scenario 1
• Your team has been hired as software integrator to provide an application that stores various substations
documents in a server. The application shall have at least two type of users of which one type of user is allow
accessing all applications features whereas the other user is allow to access limited features. The application
shall be able to store documents, perform folder and document manipulation (print, upload, download, etc).
You are required to perform business analysis and create at least one of UML diagram.
Scenario 2
• Your team is required to perform analysis and design a system that able to interrogate primary and secondary
equipment’s condition (including health, status, and performances) in a substation. Perform business process
analysis and using Enterprise Architect to design UML diagram that will explain the detail of the process,
activities, and entities involves in the system.
Scenario 3
• A new application that runs on web is required to enable engineers to perform analysis on fault and
disturbance records. The applications shall be able to download complete records automatically upon
engineer click on the fault information display on the screen and shall be automatically display the wave
signal captured in the recorded files. The application shall allow user to perform analysis such as fault
identifications, fault locations, etc. Your team is required to design a UML diagram to describe the overall
process or activities that will be implemented in the applications.
32
33. References
1. CDAC, ‘UML: An Introduction’. *online+ Access from www.gtbit.org/downloads/oosesem6/oosesem6lnotes.ppt.
Access on 05th July 2012.
2. Quatrani, Terry (Rational™). ‘Introduction to the Unified Modeling Language’. *online+. Access from
http://www.win.tue.nl/~mchaudro/up/swads/Rational%20UML%20introduction.pdf. Access on 05th July 2012.
3. The Free Dictionary. ‘Modeling – Definition’. *online+. Access from http://www.thefreedictionary.com/modeling.
Access on 05th July 2012.
4. Dictionary.com. ‘modeling’. *online+. Access from http://dictionary.reference.com/browse/modeling Access on
05th July 2012.
5. TechTarget. ‘Data Modeling’. *online+. Access from
http://searchdatamanagement.techtarget.com/definition/data-modeling. Access on 05th July 2012.
6. Ambler, Scott, W. ‘UML 2 Use Case Diagrams’. *online+. Access from
http://www.agilemodeling.com/artifacts/useCaseDiagram.htm. Access on 07th July 2012.
7. OMG. ‘UML Resource Page’. *online+. Access from http://www.uml.org/. Access on 07th July 2012.
8. Wikipedia. ‘Unified Modeling Language’. *online+. Access from
http://en.wikipedia.org/wiki/Unified_Modeling_Language. Access on 07th July 2012.
9. IBM. ‘UML Basic: An introduction to the Unified Modeling Language’. *online+. Access from
http://www.ibm.com/developerworks/rational/library/769.html/. Access on 07th July 2012.
10. UML-Diagram.org. ‘ UML 2.4 Diagrams Overview’. *online+. Access from http://www.uml-diagrams.org/uml-24-
diagrams.html. Access on 08th July 2012.
11. Silva, Nishadha. ‘The Complete Guide to UML Diagram Types with Examples’. *online+. Access from
http://creately.com/blog/diagrams/uml-diagram-types-examples/. Access on 08th July 2012.
12. SPARX Systems. ‘UML 2 Tutorial’. *online+. Access from http://www.sparxsystems.com/resources/uml2_tutorial/.
Access on 08th July 2012.
33
34. Thank you.
Nurul Haszeli Ahmad
masteramuk@yahoo.com
http://malaysiandeveloper.blogspot.com
Notas del editor
- Begins in early 90sJames Rumbaugh whom introduced Object Modeling Technique (OMT), Ivar Jacobson whom created Object Oriented Software Engineering (OOSE), and Grady Booch whom introduced Booch Method.All joint IBM and become alliance in modelingPresent UML in 1995 and excepted by OMG as modeling standard in 1997
OMG – Similar to NIST & SEIUML is one of the standards listed in Modeling and Metadata Specifications. The latest standard version released for UML is version 2.4.1 which was released on August 2011.UML consists of 14 diverse sets of diagrams - 3 types of diagram; that is Structure Diagram, Behaviour Diagram, and Interaction Diagram.
Structure Diagram - Is a static architecture of a software model. It describes the systems in terms of relationships and dependencies between objects or elementsBehavior Diagram - shows what should happen in a system. How the objects interact with each other to create a functioning system. (functionality of the systems which explain through a series of changes to the systems over time)Interaction Diagram - subset of Behavior Diagram as it describes the behavior of the components in the systems. It emphasize on the flow and data within the system
Class Diagram consist of:1. A Component that has three sections; that are object name, attributes, and processes or functions belongs to the object.2. Connectors – Aggregation or composition, association, dependency, or generalization3. Multiplicity
Component diagram displays the structural relationship of components of a software system. It is used to describe complex architectures and in the event that Class diagram does not availableConsist of: The component or services ConnectorInterfaceBest to describe web services component
Object diagram is a class diagram with objects and no classes.It is a snapshot of the detailed state of a system at a point of time.
New diagram in UMLLeast used in Software EngineeringNo standard component or object. Can be anything.
Another new diagram and least implementedDescribe the internal structure of a class and the collaboration that the structures makes possible – OO programming language implements thisThe diagram could be used to show:1. Internal structure of a classifier – Structured or Encapsulated. 2. Classifier interactions with environment through ports (Encapsulated classifier).3. A behaviour of a collaboration
Shows structures of the designed systems at the level of packages and the dependencies between packages in the system2 types of dependencies – import and mergeThere are three important elements in the diagram:Model – object of the systemPackage – the function or object in the systemConnector or dependencies.
Last of Structural diagramDescribes or shows the physical deployment of the systems in model form. It shows the hardware components or nodes, software components, and how those components interact with each other4 types of diagram
Describe what should happenHow the systems should behave / functioning
MOST important and MOST implemented diagramDefine the overview of the systems, actors, functions, etc that required by the system to function as requiredUsed to defineRequirementsFunctionalityInteraction5 key ElementsSubjectFunctions or processActorsAssociations – normal associations, aggregation, compositionRelationship – include, extendtbd
Define workflow (business or operational) in graphical waysAlternative to State Machine diagramActivities may contain actions of various kinds:Occurrences of primitive functions, such as arithmetic functions.Invocations of behavior, such as activities.Communication actions, such as sending of signals.Manipulations of objects, such as reading or writing attributes or associations.Similar to Flow chart
Similar to Activity but using different types of notation/symbol/iconsUseful to describe the behavior of objects that act different according to the state they are at the moment2 types of state machine; Behavioral State Diagram and Protocol State Diagram
Emphasize flow and data within the system
Another MOST implemented UML diagramTo shows how objects in the systems communicate with each other through a series of processUsing MESSAGING CONCEPT to shows the data flows between objects and the lifespan of the data.
Also known as Collaboration Diagram in previous UML standardShows interactions between objects in sequenced of messages – Equivalent to Sequence Diagram but using free-form arrangementIn order to maintain the ordering of messages in such a free-form diagram, messages are labeled with a chronological number and placed near the link the message is sent over
Shows sequences of interaction diagrams and it is similar to activity diagramProvides overview of the flow of control where nodes of the flow can be any of other interaction diagrams
Last diagram of UML / InteractionIt represents the behavior of objects in a given timeframeFocus on conditions changing within and among lifelines along a linear time axis