1 of 32

Object oriented analysis and design

Dr. Sangeeta Arora

(HOD, P.G dept of computer science & IT)

2 of 32

Object Modeling Technique (OMT)

  • Object Modeling Technique (OMT) is real world based modeling approach for software modeling and designing. It was developed basically as a method to develop object-oriented systems and to support object-oriented programming. It describes the static structure of the system.

3 of 32

  • Object Modeling Technique is easy to draw and use.
  • It is used in many applications like telecommunication, transportation, compilers etc.
  • It is also used in many real world problems. OMT is one of the most popular object oriented development techniques used now-a-days. OMT was developed by James Rambaugh.

4 of 32

Object Modeling Technique (OMT)

  • Purpose of Object Modeling Technique:
  • To test physical entity before construction of them.
  • To make communication easier with the customers.
  • To present information in an alternative way i.e. visualization.
  • To reduce the complexity of software.
  • To solve the real world problems.

5 of 32

Object Modeling Technique’s Models:

There are three main types of models that has been proposed by OMT:�

  • Object Model:�Object Model encompasses the principles of abstraction, encapsulation, modularity, hierarchy, typing, concurrency and persistence.
  • Object Model basically emphasizes on the object and class.
  • Main concepts related with Object Model are classes and their association with attributes.
  • Predefined relationships in object model are aggregation and generalization (multiple inheritance).

6 of 32

Dynamic Model

Dynamic Model involves states, events and state diagram (transition diagram) on the model.

  • Main concepts related with Dynamic Model are states, transition between states and events to trigger the transitions.
  • Predefined relationships in object model are aggregation (concurrency) and generalization.

7 of 32

Functional Model

�Functional Model focuses on the how data is flowing, where data is stored and different processes.

  • Main concepts involved in Functional Model are data, data flow, data store, process and actors.
  • Functional Model in OMT describes the whole processes and actions with the help of data flow diagram (DFD).

8 of 32

Phases of Object Modeling Technique:

  • OMT has the following phases:

1.Analysis

2. System Design

3.Object Design

4. Implementation

9 of 32

Phases of Object Modeling Technique:

  • Analysis:�This the first phase of the object modeling technique.
  • This phase involves the preparation of precise and correct modelling of the real world problems.
  • Analysis phase starts with setting a goal i.e. finding the problem statement.
  • Problem statement is further divided into above discussed three models i.e. object, dynamic and functional model.

10 of 32

Phases of Object Modeling Technique

  • System Design:�This is the second phase of the object modeling technique and it comes after the analysis phase.
  • It determines all system architecture, concurrent tasks and data storage.
  • High level architecture of the system is designed during this phase.

11 of 32

Phases of Object Modeling Technique

  • Object Design:�Object design is the third phase of the object modelling technique and after system design is over, this phase comes.
  • Object design phase is concerned with classification of objects into different classes and about attributes and necessary operations needed.
  • Different issues related with generalization and aggregation are checked.

12 of 32

Phases of Object Modeling Technique

  • Implementation:�This is the last phase of the object modeling technique. It is all about converting prepared design into the software. Design phase is translated into the Implementation phase.

13 of 32

Dynamic modelling in object oriented analysis and design�

14 of 32

Dynamic modelling

  • Dynamic Modelling describes those aspect of the system that are concerned with time and sequencing of the operations. It is used to specify and implement the control aspect of the system.
  • Dynamic model is represented graphically with the help of state diagrams. It is also known as state modelling.

15 of 32

Dynamic modelling

  • State model consist of multiple state diagrams, one for each class with temporal behavior that is important to an application.
  • State diagram relates with events and states. Events represents external functional activity and states represents values object

16 of 32

Dynamic modelling

  • Events:�An event is something that happen at a particular point in particular time such as a person press button or train 15930 departs from Amritsar. Event conveys information from one object to another.

17 of 32

Events

  • The events are of three types: Signal event, Change event, and Time event.�These are explained as following below.
  • Signal event :�A signal event is an particular occurrence in time. A signal is a explicit one-way transmission of information from one object to another.A signal event is the event of sending or receiving signal.

18 of 32

Signal event

  • When an object send signal to another object it await for acknowledgement but acknowledgement signal is the separate signal under the control of second object, which may or may not choose to send it.
  • The UML notation is (<>) written inside the name at top of the box and in another section list all the signal attributes.Eg:�

19 of 32

Signal event

20 of 32

Change event

  • Change event :�It is caused by the satisfaction of a boolean expression.
  • The intent of the change event is that the expression is tested continually whenever the expression changes from false to true.

21 of 32

Change event

  • The UML notation for a change event is the keyword when followed by a parenthesized boolean expression.

  • when(battery power < lower limit) when(room temperature < heating/cooling point )

22 of 32

Time event

  • Time event :�It is caused by occurrence of an absolute or the elapse of time interval.
  • The UML notation for absolute time is the keyword when followed by a parenthesized expression involving time and for the time interval is keyword after followed by a parenthesized expression that evaluates time duration

23 of 32

Time event

  • Eg:

when(Date = mar 2, 2005) after(50 seconds)

24 of 32

State

  • State :�A state is an abstraction of attribute values and links of an object. Values and links are combined together into a state according to their entire behavior.
  • The response of object according to input event is called state. A state corresponds to the interval between two events received by an object. �

25 of 32

State

  • The state of the event depends on the past event. So basically, state represents intervals of time.
  • The UML notation for the state is a round box containing an optional state name list, list the name in boldface, center the name near the top of the box, capitalize the first letter. Eg:

26 of 32

State

27 of 32

State

  • he following are the important points needs to be remember about state.
  • Ignore attributes that do not affect the behavior of object.
  • The objects in the class have finite number of possible states.
  • Each object can be in one state at a time.
  • ALL events are ignored in a state, except those for which behavior is explicitly prescribed.
  • Both events and states depend upon level of abstraction.

28 of 32

Functional Modelling in object oriented analysis and design�

29 of 32

Functional Modelling

  • Functional Modelling provides the outline that what the system is supposed to do.
  • It does not describes what is the need of evaluation of data, when they are evaluated and how they are evaluated apart from all it only represent origin of data values.
  • It describes the function of internal processes with the help of DFD (Data Flow Diagram).

30 of 32

Data Flow Diagrams

  • Data Flow Diagrams: Function modelling is represented with the help of DFDs.
  • DFD is the graphically representation of data.
  • It shows the input, output and processing of the system .
  • When we are trying to create our own business, website, system, project then there is need to find out how information passes from one process to another so all are done by DFD.
  • There are number of levels in DFD but upto third level DFD is sufficient for understanding of any system.

31 of 32

Components of the DFD

  • The basic components of the DFD are:
  • External Entity :�External entity is the entity that takes information and gives information to the system. It is represented with rectangle.
  • Data Flow :�The data passes from one place to another is shown by data flow. Data flow is represented with arrow and some information written over it.
  • Process :�It is also called function symbol.It is used to process all the information.If there are calculations so all are done in the process part.It is represented with circle and name of the process and level of DFD written inside it.
  • Data Store :�It is used to store the information and retrieve the stored information.It is represented with double parallel lines.

32 of 32