SlideShare a Scribd company logo
49
UNIT – 3 [Part – I]
REQUIREMENTS ENGINEERING PROCESS
Definition:
* The requirements engineering process includes the set of activities that lead to the
production of the requirements definition and requirements specification
* In addition it includes reports on the feasibility of the system and a software
specification

Feasibility
Study

Requirements
Analysis

Requirements
Definition

Feasibility
Report
System Models

Requirements
Specification

Definition of
Requirements

Requirements
Document

Specification of
Requirements

There are four principal stages in this process:
3.1 Feasibility Study:
* An estimate is made of whether the identified user need may be satisfied using current
software and hardware technology
50
* The study will decide the proposed system will be cost-effective and if it can be
developed given existing budgetary constraint
* The result should inform the decision of whether to go ahead with a more detailed
analysis
* A feasibility study should be relatively cheap and quick
3.2 Requirements Analysis:
* Deriving the system requirements through
=> Observation of existing system
=> Discussions with potential users and procedures
=> Task analysis etc..
* This help the analyst understand the system to be specified
* System prototypes also developed to understand the requirements
3.3 Requirements Definition:
* It is the activity of translating the information gathered during the analysis activity into
a document that defines a set of requirements
* This document must be written, so that it can be understood by the end-user and the
system customer
3.4 Requirements Specification:
* A detailed and precise description of the system requirements is set up that act as a
basis for contract between client and software developer
* The creation of this document is carried out in parallel; with high level design
* During the creation of this document errors in requirement definition are discovered
* It must be modified to correct these problems
3.5 Requirement Elicitation:
* It is a process of ask review with customer, the user and others to ask about
=> What the objective for the system?
=> What is to be accomplished?
=> How the system fits into the needs of the business?
=> How the system (Or) Product is to be used on a day – to – day basic?
51
* Requirement Elicitation is difficult because
(1) Problems of Scope:
* The boundary of the system is ill – defined
* The customer / users specify unnecessary technical details that may confuse rather than
clarify overall system objectives
(2) Problems of Understanding:
=> The customer is not completely sure of what is needed?
=> Have a poor understanding capabilities and limitations of their
Computing environment
=> Don’t have a full understanding of problem domain
=> Have trouble to communicate with system engineer
=> Specify requirements that are ambiguous (Or) un testable
(3) Problems of Volatility:
* The requirements may change over time, to over come these problems, requirements
engineers must approach the requirements gathering activity in an organized manner
3.6 Requirements Validation:
* It examines the specification to ensure that all software requirements have been stated
unambiguously
* All the inconsistencies, omissions and errors have been detected and corrected
* The work products conform to the standards established for the process, the project and
the product
* The review team validates requirements validation check list
Requirements validation checklist:
* It is often useful to examine each requirement against a set of checklist questions
=> Are requirements stated clearly?
=> Can requirements be misinterpreted?
=> Is the source [e.g. person, a document] of the requirement is identified?
=> Is the requirement bounded in quantitative terms?
=> What other requirements relate to this requirement?
52
3.7 Requirement Management:
* It is a set of activities that help the project team to identify, control and track
requirements
* The changes to the requirements at any time is also identified
* Many of requirements management activities are identical to software configuration
techniques [SCM]
Steps followed in Requirement Management:
(1) Begins with identification
(2) Each requirement is assigned a unique identifier
(3) Traceability tables are developed [i.e. It relates to one (Or) more aspect of the system
(Or) its environment]
Possible Traceability table:
(1) Features traceability table:
* It shows how requirements relate to important customer observable system (or) product
features
(2) Source Traceability table:
* Identifies the source of each requirement
(3) Dependency traceability table:
* Indicates how requirements are related to one another
(4) Subsystem traceability table:
* Categorizes requirements by the subsystem(s) that they govern
(5) Interface Traceability table:
* It shows how requirements relate to both internal and external system interfaces
* The traceability tables are maintained as a part of requirement database
* So they can be quickly searched to understand, how a change in one requirement will
affect different aspects of the system to be built
53

Specific aspect of the system (Or) its environment

Requirements

A01

A02

.

.

R01
R02
.
.
Rnn

Generic Traceability Table

UNIT – 3 [Part – II]
SYSTEM MODELS

.

Aii
54

3.8 Data-Flow Model:
* The data flow models are used to show how data flows through a sequence of
processing steps
* The data is transformed at each step, before moving on to the next processing steps
* These processing steps are represented using data flow diagrams [DFD]
Data Flow Diagrams [DFD]:
* The DFD takes an Input – Process – Output view of a software [i.e. The data object
flow into the software are transformed by processing elements and resultant data objects
flow out of the software]
*The data objects are represented by Labeled arrows
* Transformations represented by Circles [also called bubbles]
* The DFD is represented in a hierarchical fashion [i.e. the first data flow model called
level 0 DFD (Or) context diagram represent the system as a whole]
* Subsequent data flow diagrams refine the context diagram providing increasing detail
with each subsequent level
Guidelines to draw data flow diagrams:
(1) The level 0 DFD should describe the software / system as a single bubble
(2) Primary input and output should be carefully noted
(3) Refinement should begin by isolating candidate processes, data objects and data
stores to be represented at next level
(4) All arrows and bubbles should be labeled with meaningful names
(5) Information flow continuity must be maintained from level to level
(6) One bubble at a time should be refined

Example: Safe Home security System
55

User commands
& Data

Control
Panel

Alarm Type

Safe home
Software
Sensors

Control
Panel
Display

Display
Information

Sensor
Status

Alarm

Telephone
number tones

Telephone
Line

Level - 0 DFD
Control
Panel

User commands
& Data

Interact
with
User

Configur
e system
Configure
Request

Start / Stop

Password

Configuration Information
Activate /
Deactivate
System

Configuration data
A/D Msg

Process
Passwor
d

Valid Id message

Sensor
Information
Sensors

Configuration data

Sensor
Status

Display
Messages
& Status

Display
Information

Alarm Type
Monitor
Sensors

Alarm

Telephone
Telephone
Number Tones
Line
Level - 1 DFD
* In level – 0 DFD the primary eternal entities [boxes] produce information for use by the
system and consume information’s generated by the system

Control
Panel
Display
56
* The labeled arrows represent data objects
* For example user commands and data includes:
=> all configuration commands
=> all activation / deactivation commands
=> all miscellaneous interactions
=> all data that are entered to qualify
* Here the double line represented data stores
3.9 Control flow Model:
* A large class of applications are driven by events rather than data
* However a large class of application produce control information rather than reports
(Or) displays
* It process information with heavy concern for time and performance
* Such application require the use of control flow model
3.10 Behavioral Model:
* It indicates how software will respond to external events or stimuli
* To create the model the analyzer must perform the following steps:
=> Evaluate all use-cases to fully understand the sequence of interaction
within the system
=> Identify events that drive the interaction sequence and understand how
events relate to specific classes
=> Create a sequence for each use-case
=> Build a state diagram for the system
=> Review the behavioral model to verify accuracy and consistency
Behavioral Model – Representation:
* The behavioral model can be represented in two ways:
=> State diagrams
=> Sequence Diagrams
(i) State diagrams:
57
* One type of behavioral representation called state diagram in UML indicates active
states, for each class and the events that cause changes between these active states
Timer < Locked Time

Timer > Locked Time
Locked
Password = incorrect
No. of tries < Max. tries

Comparing

Key hit

No. of tries > Max tries

Reading
Password entered

Password = Correct
Do:
Validate
password
Selecting

Activation Successful

* In the above fig. the labels shown for each arrow represent the event that trigger the
transition
* Validate password() accesses a password object and performs a digit – by – digit
comparison to validate the entered password
(ii) Sequence diagram:
* It includes how events cause transition from object to object
58
* A sequence diagram is a representation of how events cause flow from one object to
another as a function of time
* It represents key classes and the events that cause behaviors to flow from class to class

Home
Owner

Control
Panel

A

System
Ready

System

Sensors

Reading

Password entered
Request Lookup
Result
Comparing
Password =
Correct

Request
Activation

Locked
A

Timer > Locked
Time

Activation
Successful

3.11 Object Models:

Selecting

Activation
Successful
59
* In object models, the system requirements are expressed as objects, designing using an
object – oriented approach and developing the system in an object oriented programming
languages
* Object models should not include details of the individual objects in a system, but
identifies common attributes and the services (Or) operations which are provided by each
object
* Various types of object models can be produced showing;
=> how object classes are related to each other?
=> how objects are aggregated to form other objects
=> how objects use the services provided by other objects
* There have been various notations used to represent object models

<Class Name>
<Attributes>
<Services>

<Attributes> => This section lists the attributes of that object class
<Services>

=> This section shows the operations associated with the object
These operations may modify attributes values and may be activated
from other object classes

* In object model identifying the classes of an object is important task
* After identifying classes are organized into a taxonomy [i.e. it is a classification scheme
which shows how an object class is related]
* Object Models developed during requirements analysis simplify the transition to object
oriented design and programming

Library User
Name
Address
Phone
Registration
Register
De - Register
60

Reader

Borrower

Affiliation

Item on Loan
Maximum Loans

Borrower

Borrower

Item on Loan

Item on Loan

Maximum Loans

Maximum Loans

3.12 Structured Methods:
* Structured methods are sets of notations and guidelines for software design
* The structured methods involves producing large amount of diagrammatic design
documentation
* Structured methods have been applied successfully in many large projects
* They can deliver significant cost reductions because they use standard notations and
ensure that the standard design documentation is produced
* A mathematical model always lead to the same result, irrespective of who applies the
method
61
* Similarly structured methods suggests that designers should normally generates similar
designs from the same specification
Structured Methods usually includes some (Or) all of the following:
(1) A Process Model:
* This defines the activities in the method
* The process model usually presents activities as a sequence
* Examples of activities are:
=> Data Flow analysis
=> Control Scenario identification etc…
(2) System Modeling Notations:
* This notations may be diagrammatic, form based (Or) linguistic
* Examples of diagram types are:
=> Data – Flow diagrams
=> Entity Relation diagrams
=> Object Structure diagrams
(3) Rules applied to the system model:
* Rules may hold with in a
=> Single Model [for example, every entity in a diagram must have a
name]
=> Across Model [for example, input and output items in a data flow
diagram must be documented using entity Relation model]
(4) Design Guidelines:
* These are not enforceable rules but are intended to avoid poor design
* An example might be;
=> An object normally has no more than five sub – objects
(5) Report Templates:
* These define how the information collected during the analysis should be presented
* Structured methods often support one (Or) all of the following models of a system
=> Data – Flow Model
=> Entity – Relational Model
=> Object – Oriented Model

More Related Content

DOCX
Lesson how to create sad
PDF
System ana
PDF
SE2018_Lec 16_ Architectural Design
PPTX
Computer-Assisted Audit Tools and Techniques
DOC
Unit 4 final
PDF
Software architecture
Lesson how to create sad
System ana
SE2018_Lec 16_ Architectural Design
Computer-Assisted Audit Tools and Techniques
Unit 4 final
Software architecture

What's hot (19)

PDF
Software Engineering : Process Models
PPTX
03.2 application control
PPTX
Chromatography Data system: Process your Data
PPT
Bse 3105 lecture 6-configuration management
PPT
PPT
Critical System Specification in Software Engineering SE17
PPTX
Design space for user interface architectures
PPT
Software Engineering Lec 4-requirments
DOC
Design and implementation of a computerized goods transportation system
PPTX
Software engineering 17 architectural design
DOC
163912338 ch-13-systems-analysis-and-design
PPT
Socio Technical Systems in Software Engineering SE2
PPT
Systems development and program change activities
PDF
An Algorithm Based Simulation Modeling For Control of Production Systems
PPTX
System analysis and design logical design
PDF
System Development Life Cycle
PPTX
Query processing
PPTX
Architectural design of software
PDF
SIMPLIFIED CBA CONCEPT AND EXPRESS CHOICE METHOD FOR INTEGRATED NETWORK MANAG...
Software Engineering : Process Models
03.2 application control
Chromatography Data system: Process your Data
Bse 3105 lecture 6-configuration management
Critical System Specification in Software Engineering SE17
Design space for user interface architectures
Software Engineering Lec 4-requirments
Design and implementation of a computerized goods transportation system
Software engineering 17 architectural design
163912338 ch-13-systems-analysis-and-design
Socio Technical Systems in Software Engineering SE2
Systems development and program change activities
An Algorithm Based Simulation Modeling For Control of Production Systems
System analysis and design logical design
System Development Life Cycle
Query processing
Architectural design of software
SIMPLIFIED CBA CONCEPT AND EXPRESS CHOICE METHOD FOR INTEGRATED NETWORK MANAG...
Ad

Viewers also liked (13)

PPTX
Data flow diagrams unit 3
PPTX
Data Flow UNIT 3
PPTX
Data flow diagrams unit 3 by sammy c dubs
PPTX
BTEC National in ICT: Unit 3 - Introduction in Access
PPTX
Dfd examples
PPTX
BTEC National in ICT: Unit 3 - More on DFDs
PPTX
BTEC National in ICT: Unit 3 - MIS Tools
PPTX
BTEC National in ICT: Unit 3 - Functional Areas in more detail - Tesco
PPTX
Payroll Management System
PPTX
BTEC National in ICT: Unit 3 - Data Flow Diagrams Introduction
PPTX
Dfd final
PPT
Dfd and flowchart
PPTX
Dfd examples
Data flow diagrams unit 3
Data Flow UNIT 3
Data flow diagrams unit 3 by sammy c dubs
BTEC National in ICT: Unit 3 - Introduction in Access
Dfd examples
BTEC National in ICT: Unit 3 - More on DFDs
BTEC National in ICT: Unit 3 - MIS Tools
BTEC National in ICT: Unit 3 - Functional Areas in more detail - Tesco
Payroll Management System
BTEC National in ICT: Unit 3 - Data Flow Diagrams Introduction
Dfd final
Dfd and flowchart
Dfd examples
Ad

Similar to Unit 3 final (20)

PDF
SE-Unit II.pdf
PDF
software requirement
PPTX
requirement Engineeringggggggggggggggggg
PDF
6. ch 5-understanding requirements
PDF
6-180117160306. software engineering concepts
PPT
05 REQUIREMENT ENGINEERING for students of
PPT
REQUIREMENT ENGINEERING
PPTX
software engineering understanding requirements
PDF
se cph - 4---7-WA0008..pdf ejejekkekekememm
PPT
Software engg. pressman_ch-6 & 7
PPTX
SF 9_Unit 2.pptx software engineering ppt
PDF
PPT
Requirements analysis lecture
PPTX
SE Unit 2(1).pptx
PPT
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
PPTX
SRE.pptx
PPT
Software engineering requirements help11
PPTX
REQUIREMENT ENGINEERING
PPTX
Software engineering Unit 2(Updated)2.pptx
PPTX
Software Engineering Unit 2 AKTU Complete
SE-Unit II.pdf
software requirement
requirement Engineeringggggggggggggggggg
6. ch 5-understanding requirements
6-180117160306. software engineering concepts
05 REQUIREMENT ENGINEERING for students of
REQUIREMENT ENGINEERING
software engineering understanding requirements
se cph - 4---7-WA0008..pdf ejejekkekekememm
Software engg. pressman_ch-6 & 7
SF 9_Unit 2.pptx software engineering ppt
Requirements analysis lecture
SE Unit 2(1).pptx
6. FUNDAMENTALS OF SE AND REQUIREMENT ENGINEERING.ppt
SRE.pptx
Software engineering requirements help11
REQUIREMENT ENGINEERING
Software engineering Unit 2(Updated)2.pptx
Software Engineering Unit 2 AKTU Complete

More from sietkcse (6)

DOC
Unit 7 final
DOC
Unit 6 final
DOC
Unit 5 final
DOC
Unit 2 final
DOC
Unit 1 final
DOC
Unit 8 final
Unit 7 final
Unit 6 final
Unit 5 final
Unit 2 final
Unit 1 final
Unit 8 final

Recently uploaded (20)

PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Cloud computing and distributed systems.
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPT
Teaching material agriculture food technology
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Encapsulation theory and applications.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
A Presentation on Artificial Intelligence
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Empathic Computing: Creating Shared Understanding
Cloud computing and distributed systems.
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Understanding_Digital_Forensics_Presentation.pptx
Teaching material agriculture food technology
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Encapsulation theory and applications.pdf
Big Data Technologies - Introduction.pptx
Building Integrated photovoltaic BIPV_UPV.pdf
A Presentation on Artificial Intelligence
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Per capita expenditure prediction using model stacking based on satellite ima...
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Dropbox Q2 2025 Financial Results & Investor Presentation
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Chapter 3 Spatial Domain Image Processing.pdf
Review of recent advances in non-invasive hemoglobin estimation

Unit 3 final

  • 1. 49 UNIT – 3 [Part – I] REQUIREMENTS ENGINEERING PROCESS Definition: * The requirements engineering process includes the set of activities that lead to the production of the requirements definition and requirements specification * In addition it includes reports on the feasibility of the system and a software specification Feasibility Study Requirements Analysis Requirements Definition Feasibility Report System Models Requirements Specification Definition of Requirements Requirements Document Specification of Requirements There are four principal stages in this process: 3.1 Feasibility Study: * An estimate is made of whether the identified user need may be satisfied using current software and hardware technology
  • 2. 50 * The study will decide the proposed system will be cost-effective and if it can be developed given existing budgetary constraint * The result should inform the decision of whether to go ahead with a more detailed analysis * A feasibility study should be relatively cheap and quick 3.2 Requirements Analysis: * Deriving the system requirements through => Observation of existing system => Discussions with potential users and procedures => Task analysis etc.. * This help the analyst understand the system to be specified * System prototypes also developed to understand the requirements 3.3 Requirements Definition: * It is the activity of translating the information gathered during the analysis activity into a document that defines a set of requirements * This document must be written, so that it can be understood by the end-user and the system customer 3.4 Requirements Specification: * A detailed and precise description of the system requirements is set up that act as a basis for contract between client and software developer * The creation of this document is carried out in parallel; with high level design * During the creation of this document errors in requirement definition are discovered * It must be modified to correct these problems 3.5 Requirement Elicitation: * It is a process of ask review with customer, the user and others to ask about => What the objective for the system? => What is to be accomplished? => How the system fits into the needs of the business? => How the system (Or) Product is to be used on a day – to – day basic?
  • 3. 51 * Requirement Elicitation is difficult because (1) Problems of Scope: * The boundary of the system is ill – defined * The customer / users specify unnecessary technical details that may confuse rather than clarify overall system objectives (2) Problems of Understanding: => The customer is not completely sure of what is needed? => Have a poor understanding capabilities and limitations of their Computing environment => Don’t have a full understanding of problem domain => Have trouble to communicate with system engineer => Specify requirements that are ambiguous (Or) un testable (3) Problems of Volatility: * The requirements may change over time, to over come these problems, requirements engineers must approach the requirements gathering activity in an organized manner 3.6 Requirements Validation: * It examines the specification to ensure that all software requirements have been stated unambiguously * All the inconsistencies, omissions and errors have been detected and corrected * The work products conform to the standards established for the process, the project and the product * The review team validates requirements validation check list Requirements validation checklist: * It is often useful to examine each requirement against a set of checklist questions => Are requirements stated clearly? => Can requirements be misinterpreted? => Is the source [e.g. person, a document] of the requirement is identified? => Is the requirement bounded in quantitative terms? => What other requirements relate to this requirement?
  • 4. 52 3.7 Requirement Management: * It is a set of activities that help the project team to identify, control and track requirements * The changes to the requirements at any time is also identified * Many of requirements management activities are identical to software configuration techniques [SCM] Steps followed in Requirement Management: (1) Begins with identification (2) Each requirement is assigned a unique identifier (3) Traceability tables are developed [i.e. It relates to one (Or) more aspect of the system (Or) its environment] Possible Traceability table: (1) Features traceability table: * It shows how requirements relate to important customer observable system (or) product features (2) Source Traceability table: * Identifies the source of each requirement (3) Dependency traceability table: * Indicates how requirements are related to one another (4) Subsystem traceability table: * Categorizes requirements by the subsystem(s) that they govern (5) Interface Traceability table: * It shows how requirements relate to both internal and external system interfaces * The traceability tables are maintained as a part of requirement database * So they can be quickly searched to understand, how a change in one requirement will affect different aspects of the system to be built
  • 5. 53 Specific aspect of the system (Or) its environment Requirements A01 A02 . . R01 R02 . . Rnn Generic Traceability Table UNIT – 3 [Part – II] SYSTEM MODELS . Aii
  • 6. 54 3.8 Data-Flow Model: * The data flow models are used to show how data flows through a sequence of processing steps * The data is transformed at each step, before moving on to the next processing steps * These processing steps are represented using data flow diagrams [DFD] Data Flow Diagrams [DFD]: * The DFD takes an Input – Process – Output view of a software [i.e. The data object flow into the software are transformed by processing elements and resultant data objects flow out of the software] *The data objects are represented by Labeled arrows * Transformations represented by Circles [also called bubbles] * The DFD is represented in a hierarchical fashion [i.e. the first data flow model called level 0 DFD (Or) context diagram represent the system as a whole] * Subsequent data flow diagrams refine the context diagram providing increasing detail with each subsequent level Guidelines to draw data flow diagrams: (1) The level 0 DFD should describe the software / system as a single bubble (2) Primary input and output should be carefully noted (3) Refinement should begin by isolating candidate processes, data objects and data stores to be represented at next level (4) All arrows and bubbles should be labeled with meaningful names (5) Information flow continuity must be maintained from level to level (6) One bubble at a time should be refined Example: Safe Home security System
  • 7. 55 User commands & Data Control Panel Alarm Type Safe home Software Sensors Control Panel Display Display Information Sensor Status Alarm Telephone number tones Telephone Line Level - 0 DFD Control Panel User commands & Data Interact with User Configur e system Configure Request Start / Stop Password Configuration Information Activate / Deactivate System Configuration data A/D Msg Process Passwor d Valid Id message Sensor Information Sensors Configuration data Sensor Status Display Messages & Status Display Information Alarm Type Monitor Sensors Alarm Telephone Telephone Number Tones Line Level - 1 DFD * In level – 0 DFD the primary eternal entities [boxes] produce information for use by the system and consume information’s generated by the system Control Panel Display
  • 8. 56 * The labeled arrows represent data objects * For example user commands and data includes: => all configuration commands => all activation / deactivation commands => all miscellaneous interactions => all data that are entered to qualify * Here the double line represented data stores 3.9 Control flow Model: * A large class of applications are driven by events rather than data * However a large class of application produce control information rather than reports (Or) displays * It process information with heavy concern for time and performance * Such application require the use of control flow model 3.10 Behavioral Model: * It indicates how software will respond to external events or stimuli * To create the model the analyzer must perform the following steps: => Evaluate all use-cases to fully understand the sequence of interaction within the system => Identify events that drive the interaction sequence and understand how events relate to specific classes => Create a sequence for each use-case => Build a state diagram for the system => Review the behavioral model to verify accuracy and consistency Behavioral Model – Representation: * The behavioral model can be represented in two ways: => State diagrams => Sequence Diagrams (i) State diagrams:
  • 9. 57 * One type of behavioral representation called state diagram in UML indicates active states, for each class and the events that cause changes between these active states Timer < Locked Time Timer > Locked Time Locked Password = incorrect No. of tries < Max. tries Comparing Key hit No. of tries > Max tries Reading Password entered Password = Correct Do: Validate password Selecting Activation Successful * In the above fig. the labels shown for each arrow represent the event that trigger the transition * Validate password() accesses a password object and performs a digit – by – digit comparison to validate the entered password (ii) Sequence diagram: * It includes how events cause transition from object to object
  • 10. 58 * A sequence diagram is a representation of how events cause flow from one object to another as a function of time * It represents key classes and the events that cause behaviors to flow from class to class Home Owner Control Panel A System Ready System Sensors Reading Password entered Request Lookup Result Comparing Password = Correct Request Activation Locked A Timer > Locked Time Activation Successful 3.11 Object Models: Selecting Activation Successful
  • 11. 59 * In object models, the system requirements are expressed as objects, designing using an object – oriented approach and developing the system in an object oriented programming languages * Object models should not include details of the individual objects in a system, but identifies common attributes and the services (Or) operations which are provided by each object * Various types of object models can be produced showing; => how object classes are related to each other? => how objects are aggregated to form other objects => how objects use the services provided by other objects * There have been various notations used to represent object models <Class Name> <Attributes> <Services> <Attributes> => This section lists the attributes of that object class <Services> => This section shows the operations associated with the object These operations may modify attributes values and may be activated from other object classes * In object model identifying the classes of an object is important task * After identifying classes are organized into a taxonomy [i.e. it is a classification scheme which shows how an object class is related] * Object Models developed during requirements analysis simplify the transition to object oriented design and programming Library User Name Address Phone Registration Register De - Register
  • 12. 60 Reader Borrower Affiliation Item on Loan Maximum Loans Borrower Borrower Item on Loan Item on Loan Maximum Loans Maximum Loans 3.12 Structured Methods: * Structured methods are sets of notations and guidelines for software design * The structured methods involves producing large amount of diagrammatic design documentation * Structured methods have been applied successfully in many large projects * They can deliver significant cost reductions because they use standard notations and ensure that the standard design documentation is produced * A mathematical model always lead to the same result, irrespective of who applies the method
  • 13. 61 * Similarly structured methods suggests that designers should normally generates similar designs from the same specification Structured Methods usually includes some (Or) all of the following: (1) A Process Model: * This defines the activities in the method * The process model usually presents activities as a sequence * Examples of activities are: => Data Flow analysis => Control Scenario identification etc… (2) System Modeling Notations: * This notations may be diagrammatic, form based (Or) linguistic * Examples of diagram types are: => Data – Flow diagrams => Entity Relation diagrams => Object Structure diagrams (3) Rules applied to the system model: * Rules may hold with in a => Single Model [for example, every entity in a diagram must have a name] => Across Model [for example, input and output items in a data flow diagram must be documented using entity Relation model] (4) Design Guidelines: * These are not enforceable rules but are intended to avoid poor design * An example might be; => An object normally has no more than five sub – objects (5) Report Templates: * These define how the information collected during the analysis should be presented * Structured methods often support one (Or) all of the following models of a system => Data – Flow Model => Entity – Relational Model => Object – Oriented Model