Você está na página 1de 19

Software Engineering I

Software Requirements

Jeisson Andrés Vergara Vargas, M.Sc.


Departamento de Ingeniería de Sistemas e Industrial
http://colswe.unal.edu.co/~javergarav/
javergarav@unal.edu.co

2019-I
©
Software Requirements

Introduction

Jeisson Vergara-Vargas Software Engineering I, 2019-I 2


Software Requirements

Definition

(i)
Requirements are the features that a software system
must provide.

(ii)
A software requirement is a property that must be
exhibited by something in order to solve some problem in
the real world.

Jeisson Vergara-Vargas Software Engineering I, 2019-I 3


Software Requirements

Properties

Clear Consistent Verifiable

Unambiguous Prioritized Words to Avoid

Jeisson Vergara-Vargas Software Engineering I, 2019-I 4


Software Requirements

The MOSCOW Method


M—Must
These are required features that must be included.

S—Should
These are important features that should be included if possible

C—Could
These are desirable features that can be omitted if they won’t fit in the schedule.

W—Won’t
These are completely optional features that the customers have agreed will not be
included in the current release.

Jeisson Vergara-Vargas Software Engineering I, 2019-I 5


Software Requirements

Requirement Categories

Audience-Oriented Requirements FURPS

Business User
Functionality Usability
Requirements Requirements

Functional Nonfunctional
Reliability Performance
Requirements Requirements

Implementation
Supportability
Requirements

FURPS+

Design Implementation
Constraints Requirements

Interface Physical
Requirements Requirements

Jeisson Vergara-Vargas Software Engineering I, 2019-I 6


Software Requirements

Functional Requirements (FR)


Functional requirements are detailed statements of the desired
functionalities of the software system.

What?

Jeisson Vergara-Vargas Software Engineering I, 2019-I 7


Software Requirements

Nonfunctional Requirements (NFR)


Nonfunctional requirements are statements about the quality of
the behavior of the software system or restrictions on how it
produces a desired result.

How?

Jeisson Vergara-Vargas Software Engineering I, 2019-I 8


Software Requirements

Requirements Process

Jeisson Vergara-Vargas Software Engineering I, 2019-I 9


Software Requirements

Requirements Process

Process Models

Process Actors

• Users
• Customers
• Market Analysts
• Regulators
• Software Engineers

Jeisson Vergara-Vargas Software Engineering I, 2019-I 10


Software Requirements

Requirements Elicitation

Jeisson Vergara-Vargas Software Engineering I, 2019-I 11


Software Requirements

Requirements Elicitation

• Goals
• Domain Knowledge
• Stakeholders
Requirements Sources • Business Rules
• Operational Environment
• Organizational Environment

• Interviews
• Scenarios
• Prototypes
Elicitation Techniques • Facilitated Meetings
• Observation
• User Stories

Jeisson Vergara-Vargas Software Engineering I, 2019-I 12


Software Requirements

Requirements Analysis

Jeisson Vergara-Vargas Software Engineering I, 2019-I 13


Software Requirements

Requirements Analysis

Requirements Classification

Conceptual Modeling
Formal
Analysis
Architectural Design

Requirements Negotiation

Jeisson Vergara-Vargas Software Engineering I, 2019-I 14


Software Requirements

Requirements Specification

Jeisson Vergara-Vargas Software Engineering I, 2019-I 15


Software Requirements

Requirements Specification

System Definition Document

System Requirements Specification

Software Requirements Specification

Jeisson Vergara-Vargas Software Engineering I, 2019-I 16


Software Requirements

Requirements Validation

Jeisson Vergara-Vargas Software Engineering I, 2019-I 17


Software Requirements

Requirements Validation

Requirements Reviews

Prototyping

Model Validation

Acceptance Tests

Jeisson Vergara-Vargas Software Engineering I, 2019-I 18


Software Requirements

Bibliography
• [BOURQUE] P. Bourque and R. E. Fairley, SWEBOK V3.0: Guide to the Software
Engineering Body of Knowledge. 2014.
• [STEPHENS] R. Stephens, Beginning Software Engineering. 2015.

Jeisson Vergara-Vargas Software Engineering I, 2019-I 19

Você também pode gostar