Object-oriented Software Engineering Introduction to Unified Modeling Language TOPIC FIVE Software Engineering 1 Unified Modeling Language
The Unified Modeling Language (UML) is the standard language for specifying, visualizing, constructing, and documenting all the work products or artifacts of a software system.
It unifies the notation of Booch, Rambaugh, and Jacobson, and augmented with other contributors once submitted to OMG.
It proposes a standard for technical exchange of models and designs. Software Engineering 2 UML is NOT
It is not a method or methodology.
It does not indicate a particular process.
It is not a programming language. Software Engineering 3 Difference of Terminology UML Class Association Generalization Aggregation B ooch Class Uses I nherits Containing Coad Class & Object I nstance Gen S - pec Part W - hole Connnection J acobson Object A cquaintance I nherits Consists of
A ssociation Odell Object T ype Relationship Subtype Composition Rambaugh Class A ssociation Generalizationn A ggregation Shlaer M / el or Object Relationship Subtype n a / Software Engineering 4 Model
A model is a pattern of something to be made.
It is a representation of something in the real world. - They are built quicker and easier that the objects they represent. - They are used to simulate to better understand the objects they represent. - They are modified to evolve as one learns about a task or problem. - They are used to represent details of the models that one chooses to see, and others ignored. - They are representation of real or imaginary objects in any domain. Software Engineering 5 Four General Elements
Strings Software Engineering 6 Changes in the Models
Level of Abstraction
Degree of Formality
Level of Detail Software Engineering 7 UML Baseline Diagrams
Use Case Diagrams*
Deployment Diagrams Software Engineering 8 Use Case Diagram
Provides a basis of communication between end-users, stakeholders and developers in the planning of the software project.
Attempts to model the system environment by showing the external actors and their connection to the functionality of the system. Software Engineering 9 Sample Use Case Diagram Software Engineering 10