You are on page 1of 22

A review of the Object Modeling

Technique
(OMT)
Presented By:
Krishna Sharma
College of Information Technology and engineering

Presented to:
Prof. Dr. Subarna Shakya
Object Modeling Technique (OMT)

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.

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.
Purpose of Object Modeling Technique:

• To testing physical entities before building them (simulation),


• 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.
Types of Model
1. Object model - The object model represents the static and most
stable phenomena in the modeled domain. Main concepts are
Objects and Classes and associations with attributes and
operations.
2. Dynamic model - describes the interactions among objects in the
system. and
3. Functional model – It defines the function of the internal
processes in the system with the aid of Data Flow Diagrams
(DFDs). Also describes the data transformations of the system
Object model components
• Object
• Class
• Attribute
• Operation
• Method
• Link
• Association
• Multiplicity
• Aggregation
• Generalization
• Inheritance
• Module
• Sheet
• Join Class
• Metadata
• Instantiation
• Constraints
• Derived Entities
• Homomorphism's
Dynamic model components

• Events
• States
• State diagrams:
Functional Model Component

• Action
• Activity
• Actor
• Client
• Constraint
• Data Flow Diagram
• Data Store
• Data Operations
• Process Query
• Signature
The relationships of types of models to each other

Relative to the object model:


• The functional model shows the operations on the classes and the arguments of
each operation. It therefore shows the supplier-client relationship among classes.
• The dynamical model shows the states of each object and the operations that are
performed as it receives events and changes state

Relative to the functional model:


• The object model shows the structure of the actors, data stores, and data flows.
• The dynamic model shows the sequence in which processes are performed

Relative to the dynamic model:


• The functional model shows the definitions of the leaf actions and activities that
• are undefined with the dynamic model.
• The object model shows what changes state and undergoes operations
Lets Develop Our Own

Ride Sharing App


Phase 1: 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.

Problem Statement of Ride Sharing App

Design an mobile app for car sharing which is powered by real-time data & availability. If a user (ride seeker) needs to get
somewhere e.g. commuting to work, why not get a ride from someone who is traveling in the same direction, share costs,
get a comfortable ride and be faster compared to buses or metro. On the other side — the app should enable the user
(driver) to get co-riders who are traveling on a common route.

The app could work globally and provide the only locality based search results of ride seekers and drivers.
1.Ride seeker- One who wishes to get somewhere by a shared car.
2.Driver- One who wishes to share his ride with co-riders.
The designed solution should serve both types of users.
Phase 2: 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.
Phase 2: System Design:
System Design of Ride Sharing App
Phase 3: 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.
Object Design: Ride Sharing App
Class Design: Ride Sharing App
Use Case Design- Ride Sharing App
ERD Diagram- Ride Sharing App
Activity Diagram- Ride Sharing App
Phase 4: 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.

Tools and Technique for Development Development IDE


Development Language 1.IntelliJ IDEA
1.Javascript 2.VScode
Development framework 3.Terminal 2
2.Express JS 4.Postman for API testing
3.React JS Plugins
4.Mocha and Chai 5.Nodemailer
5.Redux for state management 6.twilio sms node js
Development Environment 7.Phantomjs
6.Node JS 8.Mongoose (ORM)
7.Docker 9.Swagger for api documentation
8.PM2 10.Google Maps
Development Database 11.Open Street Maps
9.MongoDB 12.Socket.io
10.Postgresql 13.Json Web Token for authentication
[References]

[1]Kaye Stevens Research Fellow, RMIT University. Melbourne. Rich Pictures,


https://www.betterevaluation.org/en/evaluation-options/richpictures
[2] UML Use Case Diagrams, https://www.uml-diagrams.org/use-case-diagrams.html
[3] Entity relationship diagram (ERD), Margaret Rouse,
https://searchdatamanagement.techtarget.com/definition/entity-relationship-diagram-ERD
[4] UML 2 Activity Diagrams: An Agile Introduction,
http://agilemodeling.com/artifacts/activityDiagram.htm
Any Question and Suggestions ?

You might also like