object-Oriented Software Engineering Practical Software development using uml and Java Chapter 5 Modelling with Classes www.oseng.com
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes
5. 1 What is UMl? The Unified Modelling language is a standard graphical language for modelling object oriented software At the end ofthe 1980s and the beginning of 1990s, the first object- oriented development processes appeared The proliferation of methods and notations tended to cause considerable confusion Two important methodologists Rumbaugh and Booch decided to merge their approaches in 1994 They worked together at the Rational Software Corporation In 1995, another methodologist, Jacobson, joined the team -His work focused on use cases In 1997 the Object Management Group(OMG) started the process ofuml standardization www.oseng.com O Lethbridge/Laganiere 2001 Chapter 5: Modelling with classes
© Lethbridge/Laganière 2001 Chapter 5: Modelling with classes 2 5.1 What is UML? The Unified Modelling Language is a standard graphical language for modelling object oriented software • At the end of the 1980s and the beginning of 1990s, the first objectoriented development processes appeared • The proliferation of methods and notations tended to cause considerable confusion • Two important methodologists Rumbaugh and Booch decided to merge their approaches in 1994. —They worked together at the Rational Software Corporation • In 1995, another methodologist, Jacobson, joined the team —His work focused on use cases • In 1997 the Object Management Group (OMG) started the process of UML standardization
UML diagrams Class diagrams -describe classes and their relationships Interaction diagrams show the behaviour of systems in terms of how objects interact with each other State diagrams and activity diagrams show how systems behave internally Component and deployment diagrams -show how the various components of systems are arranged logically and physically www.oseng.com O Lethbridge/Laganiere 2001 Chapter 5: Modelling with classes
© Lethbridge/Laganière 2001 Chapter 5: Modelling with classes 3 UML diagrams • Class diagrams —describe classes and their relationships • Interaction diagrams —show the behaviour of systems in terms of how objects interact with each other • State diagrams and activity diagrams —show how systems behave internally • Component and deployment diagrams —show how the various components of systems are arranged logically and physically
UML features It has detailed semantics It has extension mechanisms It has an associated textual language -Object Constraint Language(OCL The objective of uMl is to assist in software development - It is not a methodolo www.oseng.com O Lethbridge/Laganiere 2001 Chapter 5: Modelling with classes 4
© Lethbridge/Laganière 2001 Chapter 5: Modelling with classes 4 UML features • It has detailed semantics • It has extension mechanisms • It has an associated textual language —Object Constraint Language (OCL) The objective of UML is to assist in software development —It is not a methodology
What constitutes a good model? A model should use a standard notation be understandable by clients and users lead software engineers to have insights about the system provide abstraction Models are used to help create designs to permit analysis and review of those designs as the core documentation describing the system www.oseng.com O Lethbridge/Laganiere 2001 Chapter 5: Modelling with classes
© Lethbridge/Laganière 2001 Chapter 5: Modelling with classes 5 What constitutes a good model? A model should • use a standard notation • be understandable by clients and users • lead software engineers to have insights about the system • provide abstraction Models are used: • to help create designs • to permit analysis and review of those designs. • as the core documentation describing the system