|
|||||
VU
Information
System (CS507)
The
first increment is usually the core
product which addresses the
basic requirements of the system.
This
maybe
either be used by the client or subjected to
detailed review to develop a plan for the
next increment.
This plan
addresses the modification of the core
product to better meet the needs of the
customer, and the
delivery of
additionally functionality. More
specifically, at each
stage
·
The
client assigns a value of
functionality to each module not
yet implemented
·
The
developer estimates cost of developing
each module
·
The
resulting value-to-cost ratio is the
criterion used for selecting
which module is delivered next
Essentially
the module with the highest value-to-cost
ratio is the one that provides the client
with the most
functionality
(value) for the least cost.
Using this method the client has a usable
product at all of the
development
stages. Modules are also
selected on the basis of the customer
requirements and needs
apart
from
the value to cost
ratio.
20.1
Characteristics of the Incremental
Model
·
The
system development is broken into
many mini development
projects
·
Partial
systems are successively
built to produce a final total
system.
·
Highest
priority requirements tackled
early on.
·
Once
an incremented portion is developed,
requirements for that increment
are frozen.
20.2
Incremental Model-Evaluation
Benefits
·
Working
functionality is produced earlier
computation of value to cost
ratio
·
Reduces
risks of change in user
requirements
·
Provides
clients flexibility in decision
making.
·
Risk
management is incremental
·
Smaller
scope for change in user
requirements
85
VU
Information
System (CS507)
Criticism
·
Larger
picture cannot be seen until the entire
system is built
·
Difficult
to break down the total
system at early stage of
product development to determine
reasonable
increments
Iterative
Models
Iterative
models are an approach for
developing systems based on
producing deliverables
frequently/repetitively.
Each iteration, consisting of
requirements, analysis & design,
implementation and
testing,
results in the release of an executable
subset of the final product.
These subsets grows
incrementally
from
iteration to iteration to become the
final system. The Procedure
itself consists of three
basic steps.
·
The
Initialization step -- creates a
base version of the system. The
goal for this initial
implementation is
to
create a product to which the
user can react.
·
The
Iteration step -- The
iteration step
involves
·
The
redesign and implementation of a
task from project control
list. The goal for the
design and
implementation
of any iteration is to be simple,
straightforward, and modular, supporting
redesign
at
that stage or as a task
added to the project control
list.
·
The
analysis of the current version of the system.
The analysis of an iteration is
based upon user
feedback
and the program analysis facilities
available. It involves analysis of the
structure,
modularity,
usability, reliability, efficiency, and
achievement of goals. The
project control list
is
modified
in light of the analysis
results.
·
The
Project Control List -- To
guide the iteration process, a
project control list is
created that
contains
a record of all tasks that
need to be performed. It includes
n
·
New
features to be implemented, and
·
Areas
of redesign of the exiting
solution.
The
control list is constantly being revised
as a result of the analysis
phase.
20.3
Iterative Models
Evaluation
Harms
The
Iterative Model can lead to
"scope creep," since user
feedback following each
phase may lead to
increased
customer demands. As users see the
system develop, they may realize the
potential of other
system
capabilities which would
enhance their work.
Benefits
·
In
fact, the context of multiple iterations
provides advantages in the use of
measuring various
aspects
of
product development, such as
·
Effort
to date
·
Changes,
·
Defects,
·
Logical,
physical, and dynamic
attributes,
·
Environmental
considerations.
86
VU
Information
System (CS507)
·
The
customer can tell how
product characteristics like
size, complexity, coupling, and cohesion
are
increasing
or decreasing over time.
·
One
can monitor the relative change of the
various aspects of the product or
can provide bounds
for
the
measures to signal potential
problems and
anomalies.
20.4
Incremental vs.
Iterative
These
sound similar, and sometimes
are equated but there is a
subtle difference:
·
Incremental:
add to the product at each
phase
·
Iterative:
re-do the product at each
phase
Example
Building
a House
·
Incremental:
Starts with a modest house,
keep adding rooms and
upgrades to it.
·
Iterative:
The design/construction map of the
house is amended and
improved and repeated
until
all the requirements are
fulfilled.
87
Table of Contents:
|
|||||