Unit-2

            

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 - Jacobson’s methodologies Patterns Frameworks

Rumbaugh’s 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

extendible and robust code.Four phases of OMT (can be performed iteratively)     Analysis: objects. Object Design: static. . dynamic and functional models of objects.dynamic and functional models System Design: Basic architecture of the system. Implementation: reusable.

data flow & constraints .Three different parts of OMT modeling  An object model .object model & data dictionary  A dynamic model .state diagrams & event flow diagrams  A functional model .

Object diagram . Identity. relationships to other objects.Object Model    structure of objects in a system. attributes and operations.

objects of one class to objects of another class) ..Object Diagram    Classes interconnected by association lines Classes.relationship among classes (i.e.a set of individual objects Association lines.

events and actions OMT state transition diagramnetwork of states and events .OMT Dynamic Model   States. transitions.

 .OMT Functional Model   DFD.(Data Flow Diagram) Shows flow of data between different processes in a business. Simple and intuitive method for describing business processes without focusing on the details of computer systems.

Direction of data element movement Data Store – Location where data is stored External Entity-Source or Destination of a data element .any function being performed Data Flow.Data Flow Diagram  Four primary symbols Process.

The Booch Methodology     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 .

method    Class diagramsdescribe roles and responsibilities of objects Object diagrams describe the desired behavior of the system in terms of scenarios State transition diagrams state of a class based on a stimulus    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 .

Booch method prescribes:  Macro Development Process Micro Development Process  .

Macro Development Process   Controlling framework for the micro process. . Primary concern-technical management of the system.

2. Conceptualization Analysis & Development of the model Design or create the system architecture Evolution or implementation Maintenance .Steps for macro development process 1. 3. 5. 4.

Identify class & objects interface and implementation .Micro Development Process Each macro process has its own micro development process Steps: .Identify class & object relationship .Identify class & objects semantics .Identify classes & objects .

JACOBSON METHODOLOGIES    Use Cases. Object Oriented Software Engineering. Object Oriented Business Engineering. .

How and when the use case will need data stored in the system.   Use Cases Understanding system requirements Interaction between Users and Systems The use case description must contain      How and when the use case begins and ends. . Exception to the flow of events How and when concepts of the problem domain are handled. including when the interaction occurs and what is exchanged. The Interaction between the use case and its actors.

OOSE   Object Oriented Software Engineering. Objectory is built models      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.    Analysis phase Design and Implementation phase Testing phase  E. integration and system testing.g. Unit testing. .

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. .

The pattern has a significant human component.Good Pattern will do the following      It solves a problem. The Solution is not obvious. . It is a proven concept. It describes a relationship.

Patterns Patterns Generative Patterns (describe recurring phenomena with saying how to reproduce them) Non Generative Patterns (describe recurring phenomena without saying how to reproduce them) .

Patterns Template  Essential Components should be clearly recognizable on reading a pattern:           Name Problem Context Forces Solution Examples Resulting context Rationale Related Patterns Known uses .

Can be viewed as the implementation of a system of design patterns.  .Frameworks  Way of delivering application development patterns to support best practice sharing during application development.

Benefits of Frameworks     Reusability Modularity Extensibility Inversion of Control .

Difference between Patterns and Frameworks    Design patterns are more abstract than frameworks. Design patterns are smaller architectural elements than frameworks. Design patterns are less specialized than frameworks. .

2.Model   An abstract representation of a system. Types of model 1. 5. Use case model Domain model Analysis object model Implementation model Test model . 4. 3.

5. specifications & reports. 3. . Use case model  defines the outside (actors) & inside (use case) of the system’s behavior. Implementation model represents the implementation of the system.Model  Types of model 1. Test model  test plans. Domain model  maps real world object into the domain object model. 4. Analysis object model  how source code should be carried out & written. 2.

) class diagram .Model    Model is an iterative process.g. Model Static Dynamic Represents a system’s behaviors that. (e. taken together. reflect its behavior over time. (e.g.) interaction & activity diagrams Provides a system’s parameters at rest or at a specific point in time. It can represent static or dynamic situations.

Why modeling      Blue print Clarity Familiarity Maintenance Simplification .

Advantages of modeling      Easy to express complex ideas Reduce complexity Enhance & reinforce learning and training Low cost Easy to change the model .

constructing & documenting the artifacts of a software system. specifying. .What is Unified Modeling Language (UML)?  The UML is a graphical / standard language for visualizing.

Booch method by Grady Booch Object Modeling Technique (OMT) by Jim Rumbaugh Object Oriented Software Engineering (OOSE) by Ivar Jacobson  Each method had its strengths & weaknesses. 2. 2. Booch was great in design OMT & OOSE were great in analysis . 3.History of UML  1980 – 1990  Many different methodologies 1. 1.

3 (Current Minor revision 1999) UML 1.0 (Planned Major revision 2004) .1 (November 1997) UML 1.History of 1.0 (January 1997) UML UML UML 1.4 (Planned Minor revision 2000) UML 2.

3. 1. 5.UML Concepts  UML can be used to support your entire life cycle. 2. 4. 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) .

A diagram is a graphical means to view a system’s parts  .What are Diagrams ?  Graphical presentation of model elements.

UML Diagrams   8 diagrams You will model the following 5 diagrams only: 1. 5. Use case diagram Activity diagram Sequence diagram Collaboration diagram Class diagram Interaction diagram  The other UML diagrams that can be modeled in Rose are: 1. State chart diagram Component diagram Deployment diagram . 2. 4. 3. 2. 3.

Behavior Diagram
   

Sequence diagram Collaboration diagram State chart diagram Activity 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.

Top Middle Bottom

Class diagram 1. 3. 2.1. Top  shows class name Middle  shows class attributes Bottom  shows class operation LoginForm UserName PIN Enter Login Details() Submit() LoginController Validate() CustomerInfo User Name PIN Address getLoginDetails() .

Attributes LoginForm UserName PIN Enter Login Details() Submit() LoginController Validate() CustomerInfo User Name PIN Address getLoginDetails() .  displayed in the middle of the compartmentalized rectangle.1. Class diagram 1. Attributes  defines the characteristics or structure of a class.

1. LoginForm UserName PIN LoginController Validate() CustomerInfo User Name PIN Address getLoginDetails() Operations Enter Login Details() Submit() .  displayed in the bottom of the compartmentalized rectangle. Class diagram 2. Operation  the service provided by the class.

Use case diagram . Actor  user (or) someone / something outside the system that interacts with the system (it must be a noun) & it is represented by a stickman. Address the static view of a system. ……contd 2.   It shows a set of use cases and actors and their relationships.

  Use case  a sequences of actions (it must be a verb) & it is represented by an oval.) ATM ……contd . Unidirectional Bi-directional 2. (e. Relationship illustrates a connection among model elements.g.Use case diagram   It is created to visualize the interaction of your system with the outside world.

2. Use case diagram (ATM) W ITHDRA W CUSTOM ER CA SH DISPENSER CHECK BA NCE LA CHA E PIN NG LOGIN PRINTER .

prepare IT returns. calculate HRA & check salary  . Use case diagram (Pay roll)  Actors  employee & account Use case  count leave. calculate PF.2. check loans. disburse salary.

Count leave Customer Disburse salary Check loans Calculate HRA Calculate PF Check salary Prepare IT returns .

Activity Diagram     It shows the flow of events with our system & what is going on inside a use case.3. 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.

There is only one start state.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.

A end state is represented by a bull’s eye. An end state represents a final or terminal state on an activity diagram.3.   .Activity Diagram  A start state is represented by a solid circle.

Activity Diagram   A state transition shows what activity follows after another.3. It is represented by a solid line with an arrow. .

.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 Synchronization bar AND 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.

3. .Activity Diagram  A swimlane is used to partition an activity diagram to help us better understand who or what is initiating an activity.

Activity Diagram – Login Use case C sto e E te u m r n rs th lo ind ta e g e ils S ste re e y m triv s th d ta e e ils S ste v lid te y ma a s th c sto e e u mr [ F lse] a S st mp m ts t y e ro p o re n r e te [ T e] ru S ste w lc m s y m e o e th c sto e e u mr .3.

 Vertical line is called the object’s life line.Sequence Diagram   It shows step by step what must happen to accomplish a piece of functionality provided by the system.4. 1. Vertical dimensions  represents time Horizontal dimensions  represents different objects. 2. It has 2Ds. .

Objects are shown at the top.   .Sequence Diagram  Life line  the existence object at a particular time. the life line. The object role is shown as a vertical dashed line.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.

 . thin rectangle.4. either directly or through a subordinate procedure.Sequence Diagram  A focus of control shows the period of time during which an object is performing an action. It represented by a tall.

Submi t( ) Vali date( ) getLoginDetails( ) .Sequence Diagram – login success : Customer : LoginForm : LoginController : CustomerInfo Enter Login Detail...4.

It is also known as an interaction diagram.  .Collaboration Diagram  It displays objects and their links to one other.5.

4. 3. Actors Objects Links Messages .Collaboration Diagram  It is made up of the following basic elements : 1.5. 2.

 data + logic / the representation of some real world entity.Collaboration Diagram  user 2. Messages  the communication between objects that triggers an event. 1.  represented by a labeled arrow above the link. Links  a pathway for communication between objects.  represented by a solid line between 2 objects 4. 3. Actors Objects .5.

5.Collaboration Diagram – Login use case 1 E t rL g D t ils ) : ne o in ea ( 2 S b it ) : u m( :C so e u t mr :L g F r o in om 3 Vlid t () : a ae 4 g t o i D ta () : e gn e ils L :L g C nr ll r o in o t o e :C s m r f u to eIn o .

A state is represented as a rounded box. State Chart Diagram      It shows the sequence of states. 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 .6.

h file in C+ + (or) a .7. A component may be a software component [for (e.java file in Java].g.) a.Component Diagram  It shows relationship between the components in the system.) a.DLL file]  . a run time component [for (e.g.

processes & objects that live in them. . It shows the nodes in the system & the connections between them. Deployment Diagram   It shows the configuration of run time processing elements & the software components.8.

What is meant by a relationship? .Review        Name the 2 benefits of visual modeling. Define an actor. What is UML? Name three UML diagrams. What are the elements of a use-case diagram? Define a use case.

The components in your system (component diagram) .Module Summary  1. 3. 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. 5. Visual modeling 2. 4.

. constructing & documenting the artifacts of a software system.Module Summary  UML The UML is a graphical / standard language for visualizing. specifying.

5. 8. Use case diagram Activity diagram Sequence diagram Collaboration diagram Class diagram State chart diagram Component diagram Deployment diagram . 6. 1. 2. 3. 7.Module Summary  You can model the following 8 UML diagrams in Rational Rose. 4.

Views and Diagrams in Rational Rose  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. .

& throughput installation & Communication . Delivery. scalability System topology.Views Logical View Implementation View (Analyst / Designer) (Programmers) Structure Software Management Process View (System integrators) Use case view (end user functionality Deployment View (System Engineering) Performance.

5. 2.Views  In Rose. 3. 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 . you can create the following views 1. 4.

Essential to analysis.Use Case View  It specifies WHAT the system should do? Servers as a contract between customer and developer. design and test activities.   .

class and interaction diagrams.   . It can also include state chart and activity diagrams.Logical View  It supports the functional requirements of the system. It includes use-case realizations.

 .Process View  Addresses the performance. Is not necessary for a single Processing environment. scalability and throughput of the system.

. management of software assets.Component / Implementation View  Addresses issues of ease of development. reuse & etc.

Used for distributed system only. installation and performance. .  .Deployment View  Addresses issues like deployment.

However. it is important in your initial setup. .Rational Rose Interface  It includes the following :       Browser Diagram window Diagram toolbar Documentation window Log window Options window The options window is not technically part of the rose interface.

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. . it not a part of your modeled system. if an element doesn’t appear in the browser.

.Diagram window  The diagram window allows you to create and update graphical views of the current model.

. It is active only when the diagram is displayed. Each diagrams toolbar unique to that diagram.Diagram Toolbar    The diagram toolbar includes the elements to build a diagram.

view or modify text that explains a selected item within a diagram.Documentation window  Used to create. .

) code generation commands post progress and error messages to this window.g. For (e. click CLEAR LOG. To display log window.Log window     Reports progress. click LOG to show or hide the window. result and errors. . go to View menu. To clear the contents of log window.

Note that if you change default. existing model elements are not changed.Options window  Used to set all of your default for modeling.  .

They are 1. Deleting diagram elements Adding diagram elements .Basic tool techniques  There are two basic tool techniques we will discuss before you begin the labs. 2.

Deleting diagram elements .    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 .

. 3. and then click delete Click the element in the browser or diagram. From the edit menu. There are three ways to delete an element. 2.Deleting Diagram Elements  1. click delete from model. Click the element in the diagram and then press ctrl-D Right click the element in browser.

.Adding diagram elements  How do you add diagram elements?  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

Rational Rose uses views & diagrams to depict varying perspectives and a system’s parts. There are 5 views in Rational Rose :
1. 2. 3. 4. 5.

Use case view Logical view Process view Component / implementation view Deployment view

Module Summary
 

 

Diagrams are a graphical means to view a system’s 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.

results & errors. Deleting diagram elements  ctrl D. .Module Summary     Log window reports progress. Adding diagram elements  click the element & then click in the diagram window. DEL key (or) go to edit menu. Option window allows you to set your defaults. click DELETE FROM MODEL.

Sign up to vote on this title
UsefulNot useful