Beruflich Dokumente
Kultur Dokumente
Rumbaugh Methodology Booch Methodology Jacobson Methodology Patterns Frameworks Unified Approach Unified Modeling Language Use case class diagram Interactive Diagram Collaboration Diagram State Diagram Activity Diagram.
Chapter Objectives
You should be able to define and understand
Object Oriented methodologies. - The Rumbaugh OMT - The Booch methodology - Jacobsons methodologies Patterns Frameworks
Rumbaughs Object Modeling Technique (OMT) -A method for analysis,design and implementation by an object oriented technique. -fast and intuitive approach for identifying and modeling all objects making up a system. -Class attributes, methods, inheritance and association can be expressed easily. -Dynamic behavior of objects can be described using the OMT dynamic model. -Detailed specification of state transitions and their -descriptions within a system
Object Model
structure of objects in a system. Identity, relationships to other objects, attributes and operations. Object diagram
Object Diagram
Classes interconnected by association lines Classes- a set of individual objects Association lines- relationship among classes (i.e., objects of one class to objects of another class)
States, transitions, events and actions OMT state transition diagram-network of states and events
Widely used OO method Uses the object paradigm Covers the design and analysis phase of an OO system Criticized for his large set of symbols
describe the desired behavior of the system in terms of scenarios State transition diagrams
Module diagrams to map out where each class & object should be declared Process diagrams to determine to which processor to allocate a process Interaction diagrams describes behavior of the system in terms of scenarios
Controlling framework for the micro process. Primary concern-technical management of the system.
Conceptualization Analysis & Development of the model Design or create the system architecture Evolution or implementation Maintenance
JACOBSON METHODOLOGIES
Use Cases. Object Oriented Software Engineering. Object Oriented Business Engineering.
OOSE
Use case model Domain object model Analysis object model Implementation model Test model
OOBE
Object Oriented Business Engineering OOBE is object modeling at the enterprise level.
PATTERNS
It is an instructive information that captures the essential structure and insight of a successful family of proven solutions to a recurring problem that arises within a certain context and system of forces.
It solves a problem. It is a proven concept. The Solution is not obvious. It describes a relationship. The pattern has a significant human component.
Patterns
Patterns
Generative Patterns
(describe recurring phenomena with saying how to reproduce them)
Patterns Template
Name Problem Context Forces Solution Examples Resulting context Rationale Related Patterns Known uses
Frameworks
Way of delivering application development patterns to support best practice sharing during application development. Can be viewed as the implementation of a system of design patterns.
Benefits of Frameworks
Design patterns are more abstract than frameworks. Design patterns are smaller architectural elements than frameworks. Design patterns are less specialized than frameworks.
Model
Use case model Domain model Analysis object model Implementation model Test model
Model
1.
Types of model
Use case model defines the outside (actors) & inside (use case) of the systems behavior. Domain model maps real world object into the domain object model. Analysis object model how source code should be carried out & written. Implementation model represents the implementation of the system. Test model test plans, specifications & reports.
2.
3.
4.
5.
Model
Provides a systems parameters at rest or at a specific point in time. (e.g.) class diagram
Why modeling
Advantages of modeling
Easy to express complex ideas Reduce complexity Enhance & reinforce learning and training Low cost Easy to change the model
The UML is a graphical / standard language for visualizing, specifying, constructing & documenting the artifacts of a software system.
History of UML
Booch method by Grady Booch Object Modeling Technique (OMT) by Jim Rumbaugh Object Oriented Software Engineering (OOSE) by Ivar Jacobson
1. 2.
UML Concepts
3. 4.
5.
The interaction of your application with the outside world (use case diagram) Visualize object interaction (sequence & collaboration diagrams) The structure of your system (class diagram) View the system architecture by looking at the defined package. The components in your system (component diagram)
UML Diagrams
Use case diagram Activity diagram Sequence diagram Collaboration diagram Class diagram
Interaction diagram
Behavior Diagram
UML Diagrams
1. 2. 3. 4. 5. 6. 7. 8.
Class diagram Use case diagram Activity diagram Sequence diagram Collaboration diagram State chart diagram Component diagram Deployment diagram
1. Class diagram
Class a set of objects that share the same attributes, operations & relationships. It represented by a compartmentalized rectangle. It shows the structure of your software. 3 compartments
1. 2. 3.
1. Class diagram
1. 2. 3.
Top shows class name Middle shows class attributes Bottom shows class operation
1. Class diagram
1.
Attributes defines the characteristics or structure of a class. displayed in the middle of the compartmentalized rectangle.
Attributes
1. Class diagram
2. Operation the service provided by the class. displayed in the bottom of the compartmentalized rectangle.
Operations
It shows a set of use cases and actors and their relationships. Address the static view of a system. Actor user (or) someone / something outside the system that interacts with the system (it must be a noun) & it is represented by a stickman. contd
Use case a sequences of actions (it must be a verb) & it is represented by an oval. Relationship illustrates a connection among
model elements.
Unidirectional
Bi-directional
It is created to visualize the interaction of your system with the outside world. (e.g.) ATM contd
CHECK BALANCE
Actors employee & account Use case count leave, disburse salary, check loans, calculate PF, prepare IT returns, calculate HRA & check salary
Count leave
Customer
Disburse salary
Check loans
Prepare IT returns
3.Activity Diagram
It shows the flow of events with our system & what is going on inside a use case. We draw the activity diagram for each & every use case. Login (use case) (e.g.) ATM It is showing flow of control from activity to activity.
3.Activity Diagram
Activity it represents the performance of a task within the workflow. Activity is represented by a lozenge (horizontal top and bottom with convex sides) Start state shows the beginning of a workflow on an activity diagram. There is only one start state.
3.Activity Diagram
An end state represents a final or terminal state on an activity diagram. A end state is represented by a bulls eye.
3.Activity Diagram
A state transition shows what activity follows after another. It is represented by a solid line with an arrow.
3.Activity Diagram
A decision is a point in an activity diagram where guard conditions are used to indicate different possible transitions. It is represented by a diamond. Guard conditions control the transition of a set of alternate transitions that follows after the activity has been completed.
3.Activity Diagram
AND
Synchronization bar
Joint
3.Activity Diagram
A synchronization bar allows you to show concurrent threads in a work flow of a use case. It represented by a thick horizontal or vertical line.
3.Activity Diagram
A swimlane is used to partition an activity diagram to help us better understand who or what is initiating an activity.
Cus tom er Enters the login details Sys tem retrives the details Sys tem validates the cus tom er
[ Fals e ]
4.Sequence Diagram
It shows step by step what must happen to accomplish a piece of functionality provided by the system. It has 2Ds.
1. 2.
4.Sequence Diagram
4.Sequence Diagram
A message is the communication between 2 objects that triggers an event. It is represented by a labeled arrow. Each message is represented by an arrow between the life lines of 2 objects.
4.Sequence Diagram
A focus of control shows the period of time during which an object is performing an action, either directly or through a subordinate procedure. It represented by a tall, thin rectangle.
: Customer
: LoginForm
: LoginController
: CustomerInfo
5.Collaboration Diagram
It displays objects and their links to one other. It is also known as an interaction diagram.
5.Collaboration Diagram
5.Collaboration Diagram
user 2. data + logic / the representation of some real world entity. 3. Links a pathway for communication between objects. represented by a solid line between 2 objects 4. Messages the communication between objects that triggers an event. represented by a labeled arrow above the link.
1.
Actors Objects
3: Validate( )
4: getLoginDetails ( )
It shows the sequence of states. A state is represented as a rounded box, which may contain one or more compartments. Name compartment holds the name of the state. Internal transition compartment list of actions / activities Start & end states
7.Component Diagram
A component may be a software component [for (e.g.) a.h file in C++ (or) a .java file in Java], a run time component [for (e.g.) a.DLL file]
8. Deployment Diagram
It shows the configuration of run time processing elements & the software components, processes & objects that live in them. It shows the nodes in the system & the connections between them.
Review
Name the 2 benefits of visual modeling. What is UML? Name three UML diagrams. What are the elements of a use-case diagram? Define a use case. Define an actor. What is meant by a relationship?
Module Summary
1.
Visual modeling
2.
3. 4.
5.
The interaction of your application with the outside world (use case diagram) Visualize object interaction (sequence & collaboration diagrams) The structure of your system (class diagram) View the system architecture by looking at the defined package. The components in your system (component diagram)
Module Summary
UML
The UML is a graphical / standard language for visualizing, specifying, constructing & documenting the artifacts of a software system.
Module Summary
4.
5. 6. 7. 8.
Use case diagram Activity diagram Sequence diagram Collaboration diagram Class diagram State chart diagram Component diagram Deployment diagram
What is model?
A model is a simplification of reality or the blueprint of the system.
What is view?
A view is a perspective of the model (ie) meaningful to specific stakeholders.
Views
Logical View (Analyst / Designer) Structure Use case view (end user functionality Implementation View (Programmers) Software Management
Views
Use-case view Logical view Process view Component view (Implementation view) Deployment view
These views together create what we call the 4+1 Architectural View
It specifies WHAT the system should do? Servers as a contract between customer and developer. Essential to analysis, design and test activities.
Logical View
It supports the functional requirements of the system. It includes use-case realizations, class and interaction diagrams.
Process View
Addresses the performance, scalability and throughput of the system. Is not necessary for a single Processing environment.
Addresses issues of ease of development, management of software assets, reuse & etc.
Deployment View
Browser Diagram window Diagram toolbar Documentation window Log window Options window
The options window is not technically part of the rose interface. However, it is important in your initial setup.
The Browser
The browser allow you to textually view and navigate the views and diagrams in rational rose. Display the elements that you have modeled. if an element doesnt appear in the browser, it not a part of your modeled system.
Diagram window
The diagram window allows you to create and update graphical views of the current model.
Diagram Toolbar
The diagram toolbar includes the elements to build a diagram. Each diagrams toolbar unique to that diagram. It is active only when the diagram is displayed.
Documentation window
Used to create, view or modify text that explains a selected item within a diagram.
Log window
Reports progress, result and errors. For (e.g.) code generation commands post progress and error messages to this window. To display log window, go to View menu, click LOG to show or hide the window. To clear the contents of log window, click CLEAR LOG.
Options window
Note that if you change default, existing model elements are not changed.
There are two basic tool techniques we will discuss before you begin the labs. They are
1. 2.
What happens when you delete an element from the browser? Rose does the following. Removes the selected elements from the model Removes all icons representing the elements from all diagrams on which they appear. Delete the specification for the element .
1.
2.
3.
There are three ways to delete an element. Click the element in the diagram and then press ctrl-D Right click the element in browser, and then click delete Click the element in the browser or diagram. From the edit menu, click delete from model.
You add elements to a diagram from either the diagram tool bar or browser.
Review
What are views? Name a view in rose and discuss its purpose. Name two feature of the rose interface Discuss deleting from the browser versus the diagram.
Module Summary
1.
2. 3. 4. 5.
Rational Rose uses views & diagrams to depict varying perspectives and a systems parts. There are 5 views in Rational Rose :
Use case view Logical view Process view Component / implementation view Deployment view
Module Summary
Diagrams are a graphical means to view a systems parts. The browser shows all of your model elements Diagram window is to create a view Diagram toolbar includes the elements to build a diagram. Documentation window is used to create, view or modify text that explains a selected item within a diagram.
Module Summary
Log window reports progress, results & errors. Option window allows you to set your defaults. Deleting diagram elements ctrl D, DEL key (or) go to edit menu, click DELETE FROM MODEL. Adding diagram elements click the element & then click in the diagram window.
Thank You!