0% found this document useful (0 votes)
405 views25 pages

Flow Oriented and Class Based Modelling

The document discusses requirement engineering and analysis modeling techniques. It covers structured analysis, object-oriented analysis, scenario-based modeling, flow-oriented modeling, data flow diagrams, control flow diagrams, class-based modeling, identifying analysis classes, defining attributes and operations of a class.

Uploaded by

Muhammad Zubair
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
405 views25 pages

Flow Oriented and Class Based Modelling

The document discusses requirement engineering and analysis modeling techniques. It covers structured analysis, object-oriented analysis, scenario-based modeling, flow-oriented modeling, data flow diagrams, control flow diagrams, class-based modeling, identifying analysis classes, defining attributes and operations of a class.

Uploaded by

Muhammad Zubair
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 25

Requirement Engineering

Analysis Modeling

• Structured analysis
• Object oriented analysis

Review Object Oriented


Analysis
• Scenario Based Modeling (Use
Cases, Swim lane Diagrams,
Activity Diagrams)
Flow Oriented
Modeling
Contents
Class Based
Modeling
Flow-Oriented
Modeling
Guidelines

• Depict the system as single bubble in level 0.


• Carefully note primary input and output.
• Refine by isolating candidate processes and their associated data objects
and data stores.
• Label all elements with meaningful names.
• Maintain information conformity between levels.
• Refine one bubble at a time.
Data Flow Diagram

Context-level DFD for SafeHome security function


Level 2 DFD that refines the monitor sensors process
Control Flow Diagram

State diagram for SafeHome security function


Processing narrative
• The SafeHome security function enables the homeowner to configure the security system when it is
installed, monitors all sensors connected to the security system, and interacts with the homeowner
through the Internet, a PC, or a control panel.
• During installation, the SafeHome PC is used to program and configure the system. Each sensor is
assigned a number and type, a master password is programmed for arming and disarming the
system, and telephone number(s) are input for dialing when a sensor event occurs.
• When a sensor event is recognized, the software invokes an audible alarm attached to the system.
After a delay time that is specified by the homeowner during system configuration activities, the
software dials a telephone number of a monitoring service, provides information about the location,
reporting the nature of the event that has been detected. The telephone number will be redialed
every 20 seconds until a telephone connection is obtained.
• The homeowner receives security information via a control panel, the PC, or a browser, collectively
called an interface. The interface displays prompting messages and system status information on the
control panel, the PC, or the browser window. Homeowner interaction takes the following form…
Class-based Modeling
Identifying Analysis Classes

1) Perform a grammatical parse of the problem statement or


use cases
2) Classes are determined by underlining each noun or noun
clause
3) A class required to implement a solution is part of the
solution space Potential General Selection
classes classification Characteristics
4) A class necessary only to describe a solution is part of the
problem space
5) A class should NOT have an imperative procedural name
(i.e., a verb)
6) List the potential class names in a table and "classify"
each class according to some taxonomy and class
selection characteristics
7) A potential class should satisfy nearly all (or all) of the
selection characteristics to be considered a legitimate
problem domain class
Grammatical Parse

• The SafeHome security function enables the homeowner to configure the security system when it is
installed, monitors all sensors connected to the security system, and interacts with the homeowner through
the Internet, a PC, or a control panel.
• During installation, the SafeHome PC is used to program and configure the system. Each sensor is assigned
a number and type, a master password is programmed for arming and disarming the system, and telephone
number(s) are input for dialing when a sensor event occurs.
• When a sensor event is recognized, the software invokes an audible alarm attached to the system. After a
delay time that is specified by the homeowner during system configuration activities, the software dials a
telephone number of a monitoring service, provides information about the location, reporting the nature of
the event that has been detected. The telephone number will be redialed every 20 seconds until a telephone
connection is obtained.
• The homeowner receives security information via a control panel, the PC, or a browser, collectively called
an interface. The interface displays prompting messages and system status information on the control panel,
the PC, or the browser window. Homeowner interaction takes the following form…
Grammatical Parse

• The SafeHome security function enables the homeowner to configure the security system when it is
installed, monitors all sensors connected to the security system, and interacts with the homeowner through
the Internet, a PC, or a control panel.
• During installation, the SafeHome PC is used to program and configure the system. Each sensor is assigned
a number and type, a master password is programmed for arming and disarming the system, and
telephone number(s) are input for dialing when a sensor event occurs.
• When a sensor event is recognized, the software invokes an audible alarm attached to the system. After a
delay time that is specified by the homeowner during system configuration activities, the software dials a
telephone number of a monitoring service, provides information about the location, reporting the nature of
the event that has been detected. The telephone number will be redialed every 20 seconds until a telephone
connection is obtained.
• The homeowner receives security information via a control panel, the PC, or a browser, collectively called
an interface. The interface displays prompting messages and system status information on the control
panel, the PC, or the browser window. Homeowner interaction takes the following form…
• General classifications for a potential class
• External entity (e.g., another system, a
device, a person)
• Thing (e.g., report, screen display)
• Occurrence or event (e.g., movement,
Identifying completion)
• Role (e.g., manager, engineer, salesperson)
Analysis • Organizational unit (e.g., division, group,
Classes team)
(continued) • Place (e.g., manufacturing floor, loading
dock)
• Structure (e.g., sensor, vehicle, computer)

(More on next slide)


Class Selection Criteria
Retained information
Needed services
Multiple attributes
Common attributes
Common operations
Essential requirements
Identifying Classes

Potential class Classification Accept / Reject


homeowner role; external entity reject: 1, 2 fail
sensor external entity accept
control panel external entity accept
installation occurrence reject
(security) system thing accept
number, type not objects, attributes reject: 3 fails
master password thing reject: 3 fails
telephone number thing reject: 3 fails
sensor event occurrence accept
audible alarm external entity accept: 1 fails
monitoring service organizational unit; ee reject: 1, 2 fail
Defining Attributes of a Class

• Attributes of a class are those nouns from the grammatical parse that reasonably belong
to a class
• Attributes hold the values that describe the current properties or state of a class
• An attribute may also appear initially as a potential class that is later rejected because of
the class selection criteria
• In identifying attributes, the following question should be answered
• What data items (composite and/or elementary) will fully define a specific class in the
context of the problem at hand?
• Usually an item is not an attribute if more than one of them is to be associated with a
class
Defining Operations of a Class

• Operations define the behavior of an object


• Four categories of operations
• Operations that manipulate data in some way to change the state of an object (e.g., add, delete,
modify)
• Operations that perform a computation
• Operations that inquire about the state of an object
• Operations that monitor an object for the occurrence of a controlling event
• An operation has knowledge about the state of a class and the nature of its associations
• The action performed by an operation is based on the current values of the attributes of a class
• Using a grammatical parse again, circle the verbs; then select the verbs that relate to the problem
domain classes that were previously identified
Identifying operations

• The SafeHome security function enables the homeowner to configure the security system when it is
installed, monitors all sensors connected to the security system, and interacts with the homeowner through
the Internet, a PC, or a control panel.
• During installation, the SafeHome PC is used to program and configure the system. Each sensor is assigned
a number and type, a master password is programmed for arming and disarming the system, and telephone
number(s) are input for dialing when a sensor event occurs.
• When a sensor event is recognized, the software invokes an audible alarm attached to the system. After a
delay time that is specified by the homeowner during system configuration activities, the software dials a
telephone number of a monitoring service, provides information about the location, reporting the nature of
the event that has been detected. The telephone number will be redialed every 20 seconds until a telephone
connection is obtained.
• The homeowner receives security information via a control panel, the PC, or a browser, collectively called
an interface. The interface displays prompting messages and system status information on the control panel,
the PC, or the browser window. Homeowner interaction takes the following form…
Identifying operations

• The SafeHome security function enables the homeowner to configure the security system when it is
installed, monitors all sensors connected to the security system, and interacts with the homeowner through
the Internet, a PC, or a control panel.
• During installation, the SafeHome PC is used to program and configure the system. Each sensor is assigned
a number and type, a master password is programmed for arming and disarming the system, and telephone
number(s) are input for dialing when a sensor event occurs.
• When a sensor event is recognized, the software invokes an audible alarm attached to the system. After a
delay time that is specified by the homeowner during system configuration activities, the software dials a
telephone number of a monitoring service, provides information about the location, reporting the nature of
the event that has been detected. The telephone number will be redialed every 20 seconds until a telephone
connection is obtained.
• The homeowner receives security information via a control panel, the PC, or a browser, collectively called
an interface. The interface displays prompting messages and system status information on the control panel,
the PC, or the browser window. Homeowner interaction takes the following form…
Class Diagram

Class diagram for the system class


CRC Modeling

A CRC model index card for FloorPlan class


Example Class Box

Class Name Component

+ componentID
- telephoneNumber
Attributes - componentStatus
- delayTime
- masterPassword
- numberOfTries
+ program()
+ display()
Operations + reset()
+ query()
- modify()
+ call()
Summary

• Flow Based Modeling


• DFDs
• CFDs
• Processing narratives
• Class-based Model
• How to select classes?
• How to find attributes and operations of a class?
• CRC modeling

You might also like