Functional Modelling (Unit 2)
Functional Modelling (Unit 2)
Function Modeling:
The functional model shows how values are computed for sequencing, decision, or object
structure, the function model shows which values depend on which other values and the
function that relate them
A data flow diagram (DFD) is a graphical representation of the "flow" of data through an information
system, modeling its processaspects. Often they are a preliminary step used to create an overview of the
system which can later be elaborated. [2] DFDs can also be used for the visualization of data
processing (structured design).
A DFD shows what kinds of information will be input to and output from the system, where the data will
come from and go to, and where the data will be stored. It does not show information about the timing of
processes, or information about whether processes will operate in sequence or in parallel (which is shown
on a flowchart).
Processes
Data flows
Actors
Data stores
Nested DFD :
specifying operations
constraints
OMT Methodologies
The object-modeling technique (OMT) is an object modeling language for software 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 supportobject-oriented programming.Describes Object
model or static structure of the system.
OMT was developed as an approach to software development. The purposes of modeling according to
Rumbaugh are:
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. 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 (concur-rency) 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 (UML). Many OMT modeling elements are
common to UML.
The entire OMT software development process has four phases: Analysis, system design,
object design, and implementation of the software. Most of the modeling is performed in the
analysis phase. The recommended method incorporates the following activities (Rumbaugh et
al., 1991:261ff):
The OMT methodology is a methodology of software engineering. Which is a process for the
organized production of software , using a collection of predefined techniques and notational
conventions. The step of software production are usually organized into a life cycle (called
SDLC) consisting of several phases as following:
Problem formation
Analysis
Design
Implementation
Testing
Maintenance and enhancement
1. Analysis phase
2. System design phase
3. Object design phase
4. Implementation phase
1. Analysis Phase: Analysis phase takes problem statement and produce object , dynamic
and function model for a system. The analysis phase accepts input as a problem statement
describing the problem to be solved along with a conceptual overview of the proposed system.
The output from the analysis phase is a formal model that captures the following aspects of the
system.
a. Objects and their relationship(object model)
b. Dynamic flow of control (dynamic model)
c. Functional transformation of data subject to constraints (Functional
model)
a. Object modeling: the information gathered for object model from :
i. Problem statement
ii. User interview
iii. Expert knowledge of application platform
iv. General knowledge of the real world.
c. Function model: It shows the functional derivation of values , when they computer.
2- System Design Phase: During the design phase, decisions are made about how the
problem will be solved. First at a high level, then an increasingly detailed level. The system design is the
first design stage in which the basic approach for solving the problem is selected.
The system architecture is the overall organization of the system into components called subsystems.
3- Object Design Phase: the object design phase determines page 113
4- Implementation Phase:
Comparisons of methodologies
There are several popular software engineering approaches for developing the software. And
the most of the approaches and based on the data flow diagrams. Two approaches to compare
with OMT , which are :
JSD approach uses graphical models but JSD is less graphically oriented then
SA/SD and OMT.
JSD approach is complex.
JSD places more emphasis on action and less on attributes that OMT.
JSD
Jackson system development (JSD) is a linear software development methodology developed
by Michael A. Jackson and John Cameron in the 1980s.
Principles of operation
Three basic principles of operation of JSD is that:
Development must start with describing and modelling the real world, rather than specifying or
structuring the function performed by the system. A system made using JSD method performs the
simulation of the real world before any direct attention is paid to function or purpose of the system.
An adequate model of a time-ordered world must itself be time-ordered. Main aim is to map progress
in the real world on progress in the system that models it.
The way of implementing the system is based on transformation of specification into efficient set of
processes. These processes should be designed in such a manner that it would be possible to run
them on available software and hardware.