requirements engineering iv

19
Requirements Engineering Indri Sudanawati Rozas April 2012

Upload: indrisrozas

Post on 10-May-2015

306 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Requirements engineering iv

RequirementsEngineering

Indri Sudanawati Rozas

April 2012

Page 2: Requirements engineering iv

Activities?

Feasibilitystudy

Requirementselicitation and

analysisRequirementsspecification

Requirementsvalidation

Feasibilityreport

Systemmodels

User and systemrequirements

Requirementsdocument

Page 3: Requirements engineering iv

Requirements analysis• Sometimes called requirements elicitation or

requirements discovery• Involves technical staff working with

customers to find out about the application domain, the services that the system should provide and the system’s operational constraints

• May involve stakeholders: end-users, managers, engineers involved in maintenance, domain experts, trade unions, etc.

Page 4: Requirements engineering iv

Requirements Analysis

• Acquire understanding about the problem domain characteristics and problem to find the solution

• It is an information-acquiring, -collating, and –structuring process through which one attempts to understand all the various parts of a problem and their relationships.

• Basic Issues:– How to effectively elicit a complete set of requirements

from the customer or other sources?– How to decompose the problem into intellectually

manageable pieces?– How to organize the information so it can be understood?– How to communicate about the problem with all the parties

involved?– How to resolve conflicting needs?– Ho to know when to stop?

Page 5: Requirements engineering iv

Analysis PrinciplesEach analysis method has a unique point of view.

All analysis methods are related by a set of operational principles:• represent and understand the information domain• define the functions that the software• represent the behavior of the software• use models to depict information, function, and behavior

--> uncover the details in a layered fashion.• move from essential information toward to details

A set of guidelines for requirement engineering:•understand the problem before beginning to create the analysis model•develop prototypes to help user to understand how human-machine interactions•record the origin of and the reasons for every requirement•use multiple views of requirements•prioritize requirements• work to eliminate ambiguity

Page 6: Requirements engineering iv

The Information Domain• Software is built to process data, to transform data from one

form to another.

• Software also process events.

• The first operational analysis principle requires to exam the information domain.

• Information domain contains three different views of the data and control:

– information content and relationship:

information content --> represent the individual data and control objects– information flow:

represents the manner in which data and control change as each moves through a system. Data and control moves between two transformations (functions)

– information structure:

represent the internal organization of various data and control items• data tree structure• data table (n-dimension)

Page 7: Requirements engineering iv

The requirements analysis process

Requirementsvalidation

Domainunderstanding

Prioritization

Requirementscollection

Conflictresolution

Classification

Requirementsdefinition andspecification

Processentry

Page 8: Requirements engineering iv

System models

• Different models may be produced during the requirements analysis activity

• Requirements analysis may involve three structuring activities which result in these different models– Partitioning. Identifies the structural (part-of)

relationships between entities– Abstraction. Identifies generalities among

entities– Projection. Identifies different ways of looking at

a problem• Using modeling techniques, e.g. UML

Page 9: Requirements engineering iv

System Requirements Analysis Consideration

http://www.cio.ny.gov/pmmp/guidebook2/SystemReq.pdf

Page 10: Requirements engineering iv

Requirements AnalysisFundamental Techniques (Views)• functional view

– hierarchy - function tree– process use cases– information ow data flow diagram (DFD)

• data oriented view– data structures data dictionary (DD), syntax diagram, Jackson diagram– relations between entities entity relationship diagram (ER)

• object-oriented view– class structure class diagram

• algorithmic view– control structures– pseudo code, structogram, flow diagram, Jackson diagram– conditions rules, decision table

• state-oriented view– state machines– Petri nets– sequence charts

Page 11: Requirements engineering iv

Methods for Requirements Analysis

1. Structured Analysis

2. Object Oriented Analysis

3. Problem Domain Oriented Analysis

4. Viewpoint Oriented Analysis

Page 12: Requirements engineering iv

1. Structured Analysis

• Centered upon modeling the pre-existing system

– Process

– Data flow

– Structure of data stored

• Weakness:

– Downplay the study of the problem domain

– Requirements are specified in term of design

– Lack of sharp boundary between analysis and design encourage premature design

– Functional specification is absent

– Ill-suited for certain (not rarely) types of application

Page 13: Requirements engineering iv

2. Object Oriented Analysis

• It’s not really an analysis:– It requires pre-existing requirements document

and behaviour specification.• High-level, architectural, design of the solution

system. • OOA Outline:

– Identify object classes within the problem domain

– Define the attribute and methods of those classes

– Define the behaviour of those classses– Model the relationships between those classes

Page 14: Requirements engineering iv

2. Object Oriented Analysis

• Three perspective of class model– Specification (i.e. interface classes)– Conceptual (i.e. problem domain classes

– related to analysis)– Implementation (i.e. related to internal

design)

Page 15: Requirements engineering iv

3. Problem Domain Oriented Analysis

• Centered on modeling the problem context– Problem frames: capture significantly more

information about the problem domain• Less modeling, more description, procedure:

– Collect basic information and develop problem frame(s) to establish the type of the problem domain

– Collect further detail and develop description of the relevant characteristics of the problem domain

– Collect and document the requirements for the new system

Page 16: Requirements engineering iv

• Type of problem domain:– Workpiece system – perform directed operations upon

objects that exist only within the system – Control system – control the behavior (required-

commanded) of part of the problem domain – Information system – provide information (automatically-

responsively) about the problem domain– Transformation system – transform input data in a

particular format into output data in a corresponding, particular format

– Connection system – maintain correspondence between sub-domains that are not directly connected

3. Problem Domain Oriented Analysis

Page 17: Requirements engineering iv

4. Viewpoint-oriented analysis

• Stakeholders represent different ways of looking at a problem or problem viewpoints– different types of stakeholders– different views among stakeholders of same type

• This multi-perspective analysis is important as there is no single correct way to analyse system requirements

Page 18: Requirements engineering iv

Multiple problem viewpoints

Problemto be

analysed

Page 19: Requirements engineering iv

Requirements vs. Design

RequirementsRequirements DesignDesign

Describe Describe whatwhat will be deliveredwill be delivered Describe Describe howhow it will be done it will be done

Primary goal of analysis:Primary goal of analysis:

UNDERSTANDINGUNDERSTANDING

Primary goal of design:Primary goal of design:

OPTIMIZATIONOPTIMIZATION

There is There is more than one more than one solutionsolution There is There is only one only one (final) solution(final) solution

Customer interestedCustomer interested Customer not interested (Most of Customer not interested (Most of the time) except for externalthe time) except for external