You are on page 1of 20

Software Requirement Engineering

Lecture 04
Managing the Scope
Presentation Outline
 Project Scope
 Problem of Project Scope
 Requirements Baseline
 Scope Management
 Scope Reduction
 Managing your Customer
 Software Requirements
 Software System Behaviour
 Relationship between Features and Software Requirements
Project Scope

 Project scope is a function of:


 The functionality that must be delivered
 The resources available
 The time available

 Figure below provides a perspective of the "box" we can use to


represent project scope.
Problem of Project Scope

 Brooks' law states that adding labor to a late software project


makes it even later. [Fred Brooks, 1975]

 Two main factors


 “Ramp up" time.
 Communication overheads increase as the number of
people increases.

 What happens to Software Quality under these conditions?


The Requirements
Baseline
 List the features that have been defined for the application.

 Any new system can be described by a list of 25– 50 features.

 Get a list of proposed features. This list provides a high-level


description of the capabilities of a new or revised system.
The Requirements
Baseline
Consider a software product with 7 features.
 Feature 1: SQL database support
 Feature 2: Provide Modification facility to Employee
 Feature 3: Employee Complete Information bank
 Feature 4: Generation of Employee Report
 Feature 5: Automatic Leave management support
 Feature 6: Online Notification facility for Employee
Information
 Feature 7: Integration with other databases like MS
Access
Setting
Priorities
 Customers, users, or other representatives not team set initial
priorities.
 Vote using a critical-important-useful scale
Table 1:: Prioritized Features List
Features Priorities
Feature1: SQL database support Critical
Feature 3: Employee Complete Information bank Critical
Feature 5: Automatic Leave management support Critical
Feature 2: Provide Modification facility to Employee Important
Feature 4: Generation of Employee Report Important
Feature 6: Online Notification facility for Employee Useful
Information
Feature 7: Integration with other database Useful
Assessing
Effort
 Use "team-weeks" or "team-months” as a gross estimate of the
total impact of a feature on the project.
 Using these totals and the total time available for the project,
the team can determine where to initially draw the baseline.
Table 2:: Prioritized Features List with Effort Estimates
Features Priorities Effort

Feature1:SQL database support Critical Medium


Feature 3: Employee Complete Information bank Critical High
Feature 5: Automatic Leave management support Critical Medium
Feature 2: Provide Modification facility to Employee Important Low
Feature 4: Generation of Employee Report Important Low
Feature 6: Online Notification facility for Employee Information Useful Low

Feature 7: Integration with other database Useful High


Adding the Risk
Element
 Probability that feature will cause an adverse impact on the
schedule or budget.
Table 3:: Prioritized Features List with Effort and Risk
Features Estimates Priorities Effort Risk
Estimate
Feature1: SQL database support Critical Medium Low
Feature 3: Employee Complete Critical High Medium
Information bank
Feature 5: Automatic Leave management Critical Medium Low
support
Feature 2: Provide Modification facility to Important Low Medium
Employee
Feature 4: Generation of Employee Report Important Low Low
Feature 6: Online Notification facility for Useful Low Low
Employee Information
Feature 7: Integration with other database Useful High Medium
Scope
Reduction
 Little correlation between priority and effort or between
priority and risk.
 A feature that is critical priority, medium effort and low risk
may be a candidate for immediate resourcing.
Scope
Reduction
 If expectations are properly set and managed, anything that can be
accomplished beyond the baseline will be a bonus.
Table 4:: Final Prioritization List
Features Priorities Effort Risk
Estimates
Feature 1: SQL database support Critical Medium Low
Feature 3: Employee Complete Critical High Medium
Information
Feature 5: Automatic Leave management Critical Medium Low
Feature 2: Provide Modification facility to Important Low Medium
Employee
Baseline (features above this line are committed features)
Feature 4: Generation of Employee Report Important Low Low
Feature 6: Online Notification facility for Useful Low Low
Employee Information
Managing Your
Customer
Managing the
Baseline
 Feature creep, which Weinberg [1995] notes
can increase scope by as much as 50 percent
to 100 percent after the start of a project.

 Official Changes
Customer requests a new system capability
(Official Change) that is not part of baseline
then the impact must be assessed.
 If the new feature is critical.

 If the feature is important, but not


critical
Managing the
Baseline
Un-Official
Changes
 Requirements Leakage which are invisible to team managing

schedule, budget and quality criteria.


 Contributes up to half of the total scope of one project.
 These Un-official sources for changes can be,

 Direct Customer requests to programmers


 Functionality inserted by the programmers with
consideration of What’s good for the customer
 Programmer “Easter Eggs”
Refining System Definition
Looking Deeper into Software
Requirements
 Software capability that must be met or possessed by a system
or a system component to satisfy a contract, standard,
specification, or other formally imposed documentation
 Features and use cases sufficient to understand the system at a
macro-level view.
 Software requirements are those things that the software does on
behalf of the user.
Software System Behavior
 Davis [1999] suggests that we need five major classes of things
in order to fully describe the behavior of a software system
(Figure 1).

 Inputs to the system


 Outputs from the system
 Functions of the system
 Attributes of the system
 Attributes of the system environment
Software System
Behavior

Figure 1:: System


elements
Relationship between Features and
Software Requirements
 Mapping relationship between features and software requirements.
Vision Document Feature Software Requirements
Simple descriptions of systems Express features in much more
services in brief form. detailed terms.
Cites features in user’s language. Express features in technical
terms, using one or more specific
Software requirements that must
be fulfilled to provide the
features to the user
Relationship between Features and
Software Requirements
 Suppose we are developing a defect-tracking system
 Backbone of a requirements management concept known as
"traceability“.
Vision Document Feature Software Requirements
Feature 30: The defect- SR30.1:Trending information
tracking system will provide will be provided in histogram
trending information to help the report showing time on x-axis
user assess project status. and defects on the y-axis
SR30.2: The user can enter the
trending period in units of days,
weeks or months.
SR30.3: An example trending
report is shown in Figure1.

You might also like