OOAD Object Modeling Techniques Q/A #6


Question:Explain the various models available in object oriented languages in brief. Also explain relationship among different models.

Answer:

There are three types of models in object oriented languages.

  1. Object model

  2. Dynamic model

  3. Functional model

Object model

The object model identifies the classes in the system and their relationship, as well as their attributes and operations. It represents the static structure of the system. The object model is represented graphically by a class diagram.

Step for object modeling

Following steps are performed in constructing an object model.

  1. Read carefully, the problem statement.

  2. Locate the object classes by underlining nouns.

  3. Remove unnecessary and incorrect classes.

  4. Prepare a data dictionary.

  5. Locate associations between object classes.

  6. Remove unnecessary and incorrect attributes.

  7. Use inheritance to share common structure.

  8. Traverse access paths to identify deficiency.

  9. Remove unnecessary and incorrect associations.

  10. Locate attributes of the object classes.

Dynamic model

The dynamic model indicates the dynamics of the objects and their changes in state. The dynamic model captures the functional behavior of the system by exploring the behavior of the objects over time and the flow of control and events among the objects.

Steps for dynamic modeling

Following steps are performed in constructing dynamic model.

  1. Locate use cases and prepare scenarios of typical interaction sequence.

  2. Locate events between objects and prepare an event trace diagram for each scenario.

  3. Develop an event flow diagram for the system.

  4. Develop state diagrams for classes with important dynamic behavior.

  5. Check for consistency and completeness of events shared among the state diagrams.

Functional model

The functional model is a data flow diagram of the system and describes what the system does, not how it is done. A DFD is a network representation of the system to show the functional relationships of the values that are computed by a system. Data flow diagrams consist of processes , data flows , actors and data stores.

  1. A process transforms input data values in to output data values. A process is presented as an ellipse, with the name of the process inside the ellipse.

  2. A data flow shows the flow of data through a network of processes.

  3. An actor, drawn as a rectangle, is an object.

  4. A data store is a respository for the temporary storing of data . A data store is represented as a pair of parallel lines containing the name of a data store. Data stores may also be objects.

Steps for functional model

Following steps are performed in constructing a functional model.

  1. Identify input and output values.

  2. Use data flow diagrams as needed to show functional dependencies.

  3. Describe what each function does.

  4. Identify constraints.

  5. Specify optimization criteria.

Relationship among models

The three models – object model , dynamic model and functional model are closely related to one another. To implement a system, all the three models are required to be modeled. After integration of these models , a complete view of the system can be achieved. The working of all three models explains how they are interrelated which is as follows:

  1. Each model describes an aspect of the system but contains references to the other models.

  2. The object model describes the data structure on which the dynamic and functional models operate on.

  3. The operations in the object model correspond to events in the dynamic model and functions in the functional model.

  4. The dynamic model describes the controlling structure of objects. It shows decisions which depend on object values and which cause actions that change object values and invoke functions.

  5. The functional model describes functions invoked by operations in the object model and actions in the dynamic model.

  6. Functions operate on data values specified by the object model. The functional model also shows constraints on object values.

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements