Lecture 11: Chapter 22 Topics –Object Oriented Modeling –UML –Use case
Object Oriented Modeling Analysis and design (A/D) using object oriented (O-O) concept Most popular O-O A/D model is Unified Modeling Language (UML)
UML UML provides a standard set of tools/diagrams to document the analysis and design of a software system It helps in effective communication between developer team and business persons on a project
UML History The software engineers worked independently to develop a O-O model –Grady Booch: Booth diagram –Ivan Jacobson : Jacobson diagram –James Rumbaugh: Rumbaugh diagram UML is developed in collaboration to unify their methods
Use case modeling and UML UML is fundamentally based on use case modeling Use case –Defines what a system does (i.e. system requirement) not how. –Divides system functionalities into behaviours that are important to user UML –Analyze use case & defines system objects and interactions
Use case: In Detail Use case model in consist of 2 elements: –Actor: role of user of the system –Use case: describes sequence of transactions in the system in response to an event
UML elements
Things Structure things –Class –Interface –Collaboration –Use case –Active class (controller) –component Behavioral things –Interaction –State machine –Annotation things Grouping things –Package Annotation things –Notes
Structure Thing: Class Defines common attributes & behavior of objects/things Rental Car Size Color Model Rentout() Checkin() Service()
Structure Thing: Interface The behavior of a class of a system that is noticeable from outside the class PC Serial port External device
Structure Thing: Collaboration Some classes collaborate to each other to do a common job Part1 Engine Several engine Parts works together to run The engine
Structure Thing: Use case Describes a series of actions that demonstrate behavior of the system and its interaction with action
Structure Thing: Active class Initiate and control independent activity server client
Structure Thing: Component Provides services and interfaces Example: COM, JAVA Bean, text box
Behavior things: Interaction Message sent between a set of objects within the system to perform a specific task drivercar message
Behavior things: State machine Series of states of an object customer After LoginBefore Login
Grouping things: Package Things can be groups into package
Annotation things: Notes Note about things