object modeling
In computing, object model has two related but distinct meanings:
# The properties of objects in general in a specific computer programming language, technology, notation or methodology that uses them. Examples are the object models of ''Java'', ...
approach for
software
Software is a set of computer programs and associated documentation and data. This is in contrast to hardware, from which the system is built and which actually performs the work.
At the lowest programming level, executable code consists ...
modeling and designing. It was developed around 1991 by Rumbaugh, Blaha, Premerlani, Eddy and Lorensen as a method to develop object-oriented systems and to support
object-oriented programming
Object-oriented programming (OOP) is a programming paradigm based on the concept of "objects", which can contain data and code. The data is in the form of fields (often known as attributes or ''properties''), and the code is in the form of pr ...
. OMT describes object model or static structure of the system.
OMT was developed as an approach to
software development
Software development is the process of conceiving, specifying, designing, programming, documenting, testing, and bug fixing involved in creating and maintaining applications, frameworks, or other software components. Software development invol ...
. The purposes of modeling according to Rumbaugh are:Terje Totland (1997) 5.2.7 Object Modeling Technique (OMT) Thesis, Norwegian University of Science and Technology (NTNU), Trondheim.
* testing physical entities before building them (simulation),
* communication with customers,
* visualization (alternative presentation of information), and
* reduction of complexity.
OMT has proposed three main types of models:
* ''Object model'': The object model represents the static and most stable phenomena in the modeled domain.(Rumbaugh et al.,1991:21) Main concepts are classes and associations with attributes and operations. Aggregation and generalization (with multiple inheritance) are predefined relationships.
* ''Dynamic model'': The dynamic model represents a state/transition view on the model. Main concepts are states, transitions between states, and events to trigger transitions. Actions can be modeled as occurring within states. Generalization and aggregation (concurrency) are predefined relationships.
* ''Functional model'': The functional model handles the process perspective of the model, corresponding roughly to data flow diagrams. Main concepts are process, data store, data flow, and actors.
OMT is a predecessor of the
Unified Modeling Language
The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system.
The creation of UML was originally m ...
(UML). Many OMT modeling elements are common to UML.
Functional Model in OMT:
In brief, a functional model in OMT defines the function of the whole internal processes in a model with the help of "Data Flow Diagrams (DFDs)". It details how processes are performed independently.
References
Further reading
*
James Rumbaugh
James E. Rumbaugh (born August 22, 1947) is an American computer scientist and object-oriented methodologistSome of the early history of OMT Object-oriented programmingUnified Modeling Language
The model is defined by the organization’s vision, mission, and values, as well as sets of boundaries for the organization—what products or services it will deliver, what customers or markets it will target, and what supply and delivery channels it will use. While the business model includes high-level strategies and tactical direction for how the organization will implement the model, it also includes the annual goals that set the specific steps the organization intends to undertake in the next year and the measures for their expected accomplishment. Each of these is likely to be part of internal documentation that is available to the internal auditor.
{{uml-stub