Professional Documents
Culture Documents
Requirement Analysis
4/9/2014 2
Requirements Analysis
• Software engineering task bridging the gap between
system requirements engineering and software design.
• Provides software designer with a model of:
– System information
– Function
– Behavior
• Model can be translated to data, architectural, and
component-level designs.
• Expect to do a little bit of design during analysis and a little bit of
analysis during design.
3
Analysis Objectives
• Identify customer’s needs.
• Evaluate system for feasibility.
• Perform economic and technical analysis.
• Allocate functions to system elements.
• Establish schedule and constraints.
• Create system definitions.
4
Analysis Principles
• Information domain of problem must be presented &
understood.
• Models depicting system information, functions, and
behavior should be developed.
• Models and problems must be partitioned in a
manner that uncovers detail in layers.
• Analysis proceeds from essential information
toward implementation detail
• Must be traceable.
5
Information Domain
• Encompasses all data objects that contain numbers, text,
images, audio, or video.
• Information content or data model
– shows the relationships among the data and control objects
that make up the system
• Information flow
– represents manner in which data and control objects change
as each moves through system
• Information structure
– representations of the internal organizations of various data
and control items
6
Modeling
• Data model
– shows relationships among system objects
• Functional model
– description of the functions that enable the
transformations of system objects
• Behavioral model
– manner in which software responds to events from the outside
world
7
Partitioning
• Process that results in the elaboration of data,
function, or behavior.
• Horizontal partitioning
– breadth-first decomposition of the system function,
behavior, or information, one level at a time.
• Vertical partitioning
– depth-first elaboration of the system function, behavior, or
information, one subsystem at a time.
8
Requirements Analysis [1]
• What is it?
– The process by which customer needs are understood and
documented.
– Expresses “what” is to be built and NOT “how” it is to be built.
• Example 1:
– The system shall allow users to withdraw cash. [What?]
• Example 2:
– A sale item’s name and other attributes will be stored in a hash
table and updated each time any attribute changes. [How?]
Requirements Analysis [2]
• C- and D-Requirements
– C-: Customer wants and needs; expressed in language understood by the
customer.
– D-: For the developers; may be more formal.
Regular *
hours Overtime
Worker hours Total pay
Deduct
taxes
Book
title
print()
• Objects: Created from a class. For example: s1, s2 are objects from class Student.
Ex) BITS and Purdue are objects from class University. myCircle and mySquare are
objects from class Shape.
• Inheritance: A class inherits attributes and methods from its super class. This
allows hierarchical organization of classes.
86
Requirement types
NO Requirement type Requirement id
87
1.1 System introduction
【overview】
Overal objectives and brief current system operational environment.
【contents】
▣ Requirement type: System introduction and function list
▣ Requirement number : BR-xx
▣ Requirement name : system introduction
▣ Requirement contents
(1) Describe the context and objectives of the system to be developed.
• context and objectives
• business expectations of stakeholders
(2) Define system operation concept of the systems to be developed.
• concept of system operations
• systems operation environment
88
1.2 System development scope
【overview】
Define business scope and boundary supported by the system to be developed and describe the
things to be excluded outside of the system
【contents】
▣ Requirement type: System introduction and function lis
▣ Requirement number : BR-xx
▣ Requirement name : system scope
▣ Requirement contents
(1) Describe business contents briefly inside the scope to be treated including the
interfaces with outside systems
• Interfaces among systems
• Describe business contents to be developed
(2) Business excluded outside of the system
89
1.3 Function list
【overview】
Understanding the stakeholder’s overal system structure and functions develop function list with 4
hierarchical structure to achieve the business objectives.
【contents】
▣ Requirement type: System introduction and function lis
▣ Requirement number : BR-xx
▣ Requirement name : Function list
▣ Requirement contents
(1) Main function - the highest hierarchical order functions which should de decomposed into major
functions
(2) Major function – the second highest hierarchical order functions which should achieve main
functions and be decomposed into functions
(3) Function – the third highest hierarchical order functions which should achieve major functions
and be decomposed into unit functions.
(4) Unit function – the lowest function of the function hierarchy which has input/ouput data as a real
business function
1.4 System constraints
【overview】
Describe considerations which could give effects on the development or business organization
【contents】
▣ Requirement type: System introduction and function lis
▣ Requirement number : BR-xx
▣ Requirement name : System constraints
▣ Requirement contents
(1) Business considerations – estimated development cost, time, labor etc.
(2) Organization consideration – client’s capability of operations and
responsibilities, authorities etc.
(3) Other considerations
2. Functional Requirements
Requirement number FR-2
Requirement contents
1. Unit function name 1
- description of unit function
Input data
Data information Output data
In/out type
File type ILF/EIF
Application name
Function performance Quality Interface Data Operation constraints
Related requirements
id
3. Performance Requirements
Requirement
PR-1
number
Requirement
Average response time (ex)
name
Requirement
contents
1.
id
4. Quality Requirements
Requirement QRR-1(Reliability), QUR-1(usability), QMR-1(maintainability), QPR-1(p
ortability), QSR-1(security)
number
Requirement
name
Requirement
contents
1.
id
5. Interface Requirements
Requirement
IR-1
number
Requirement
System interface requirement name 1
name
Requirement
contents
1.
id
6. Data Requirements
Requirement
DR-1
number
Requirement
Data base system requirement name 1
name
Requirement
contents
1.
id
7. Operation Requirements
Requirement
OR-1
number
Requirement
Operational hardware requirement name 1
name
Requirement
contents
1.
id
8. Constraints
Requirement
CO-1
number
Requirement
Development constraints 1
name
Requirement
contents
1.
id
Function list
Requirement
BR-4
number
Requirement Function List
Name
Requirement Main Major
contents Function Unit function
function function
- Event registration
1.1.1 Event - Event change
- Event cancel
1. Business 1.1 General management
- Event inquiry
Operation - Event participation
managemen management request
t
1.1.2 Committee
management
2014-04-09 99
Functional Requirements
Requirement
FR-1.1.1
number
Requirement Event management
Name
Requirement 1. Event registration
contents
• Input basic event information
• Input event related information such as related organizations & associations, programs,
and other materials
2. Event change
• Change basic information of the selected event
• Change event related information such as related organizations & associations, programs,
and other materials of the selected event
3. Event cancel
• Delete all the basic and related information of the selected event
4. Event inquiry
• Retrieve event list information using event name, event place, event date • Inquire all
the basic and related information of the selected event
5. Event participation request
• Retrieve event list information using event name, event place, event date • Input
event participation information of the selected event
Event basic information: event name, event place, event start date, number of event participants,
Data event summery, budget, sponsor fee, cooperation fee, participation fee,
information event introduction materials, name list, pictures etc.
Event
change
Event cancel
Admin.
Event
inquiry
Event
participation
request
Event participant
101
Use Case Scenario – Event registration
Use Case No. 1
Use Case Event registration
name
Use Case Input basic and additional information and announce the event would be open
Description
Use Case 1. Enter Event basic information(event name, event place, event start date, number of event
participants, event summery, budget, sponsor fee, cooperation fee, participation fee, event
Flow introduction materials, name list, pictures etc.). Sponsor fee, cooperation fee is accumulated
automatically according to the input of additional event related information.
2. Enter Event related information(organization or association name, role, sponsor or
cooperation fee, note) as a additional information. Here the fees of sponsor or cooperate shall
be accumulated to be entered as a item of sponsor fee or cooperate fee in the basic
information.
3. Enter event program information( title, contents, presenter, present materials)
4. Register event related materials with its name.
102
The End
103