1.8.3.1 Object-Oriented Analysis (OOA)
Object-oriented analysis helps to create a precise
and concise model of the problem in terms of real world objects. A system can
be broken into many small objects. An application can be developed by
assembling all these objects together. Object-oriented systems help to develop
software applications that can be easily reused, modified and maintained.
Object-oriented analysis is based on the following concepts:
·
Objects: An object
is an entity or thing that has certain characteristics such as table, chair,
car etc
·
Classes: A class is
the general category to which objects belong. Furniture is a class and table
and chair objects belong to this class
·
Inheritance: The
child class derived from parent class inherits the characteristics and
functions of the parent class
·
Encapsulation: Encapsulation
is putting together all the operations that can be performed on an object along
with its definition.
·
Polymorphism: It is
the ability of a function to exist in more than one form.
Models based on OOA serve as model for
creating software systems. UML (Unified Modeling Language) is the standard
modeling language for object-oriented development. It is used to draw different
types of visual diagrams to represent various aspects of the system.
The following figure illustrates the use of
UML diagrams used to model cash withdrawal from a savings account system.
1.8.3.2 Structured Analysis
Structured
Analysis is a set of techniques and graphical tools used to develop system
specifications. The analysis model must achieve three primary objectives:
·
Describe what customer
requires
·
Establish a basis for the
creation of software design
·
Define the set of
requirements that can be validated once the software is built
Structured
Analysis is a traditional approach that represents information and data as
flowcharts. The whole system is viewed as one large activity with inputs
arriving from sources and outputs leaving it. It uses three main tools
in the requirements analysis phase.
1.8.3.3 Data Flow Diagrams
A
data-flow diagram is a pictorial representation of a system’s functions.
Functions form part of various processes that are executed for a system. A
data-flow diagram depicts the interaction of the processes, the data used by the
processes and the transformation of data during processing.
Context
diagrams are also used to represent and depict a system. A DFD is a more detailed
representation of the system. A Context diagram
only deals with boundary of the system. It represents the software model as a
single and large process with input and output data. It is displayed by
incoming and outgoing arrows respectively. It focuses on the main data-flow in a
system. It establishes the relationships between external entities of system
and the system via the data (flows) that they exchange. To enable a DFD to
start from a context diagram, single bubble of the context diagram is
partitioned into more bubbles to reveal the details of processing in the
system.
The
data-flow diagrams are basically process-oriented. They are used to model the
functions performed by a system.
1.8.3.4 Entity Relationship Diagram
Another
graphical tool Entity Relationship Diagram (ERD) is used to model the
stored data layout of the system. It is purely data-oriented modeling process.
An entity relationship diagram illustrates data t rest. Data-flow diagrams
illustrate the data in motion.
An
entity is anything about which information is stored. ERD focuses on relationship
of data structures with one another. It identifies a relationship and gives it
a name.
ERDs
are important because of the following reasons:
·
Users emphasize more on
data than processes. This is because data can be seen and read and many users
are comfortable with it. But processes are abstract and cannot be seen or read.
So the users cannot immediately identify them.
·
They help in identifying
keys and indexes for accessing data in a system.
·
They establish
relationships among data structures.
ERD
diagram has become an essential tool for database modeling. It helps to
draw a picture of data that describes the objects in database (entities or
tables) and how they relate to one another. It helps to identify the facts
about the important objects (attributes or fields).
The
following figure illustrates the use of ERD to model a “Movies Database” with
all its entities and their attributes.
0 comments:
Post a Comment