Software Waterfall Life Cycle

kettleproduceSoftware and s/w Development

Dec 2, 2013 (3 years and 6 months ago)

63 views

SoftwareWaterfallLifeCycle
Software
 
Waterfall
?
Life
?
Cycle
Concept Exploration
Requirements
Prototype
Construction
Design
Construction
Testin
g
g
Delivery and Installation
Operations and Maintenance
V

Model
V
Model
SpiralModel
Spiral
 
Model
AgileMethods
Agile
 
Methods
LifeCycleHeuristics
Life
 
Cycle
?
Heuristics
•If the re
q
uirements are well‐defined 
q
–use the waterfallmodel (with prototyping)

Iftherequirementsareverycomplexand
If
 
the
?
requirements
?
are
?
very
?
complex
?
and
?
tightly coupled
–use a spiralmodel
•If the requirements are uncertain and the 
p
ro
j
ect is notlar
g
e
pj
g
–use an agilemethod, gathering and implementing 
requirements in increments
PrioritizationofRequirements
Prioritization
 
of
?
Requirements
•Essential
–Must be satisfied in next release
•Desirable
needtobeprioritizedinlightoftime

need
 
to
?
be
?
prioritized
?
in
?
light
?
of
?
time
•Optional
–Can be set aside unless you finish early
•In CS 480‐481 projects, propose three systems
Minimallyacceptable
bythefacultyadviser

Minimally
 
acceptable
?
by
 
the
?
faculty
?
adviser
–Expectedby the team, faculty adviser, and client
–Desirableby the client (doable if everything falls into 
l)
p
l
ace
)
From SWEBOK 2004
RequirementsElicitation
Requirements
 
Elicitation

RequirementSources
Requirement
 
Sources
–High level goals or visionof the software

Domain knowled
g
e
g
–Stakeholders

O
p
erational re
q
uirements
pq
–Organizational environment
•Elicitation Techni
q
ues
q
–Interviews, Scenarios (Use Cases), Prototypes, 
Facilitated Meetings, Observation
ManagingChangesinRequirements
Managing
 
Changes
?
in
?
Requirements

Changecontrolprocess(QA)
Change
 
control
?
process
?
(QA)
•Traceability

Howdoesonechangeaffectothers?
How
 
does
?
one
?
change
?
affect
?
others?
•Version control

Howarechangescommunicatedtotheteam?

How
 
are
?
changes
?
communicated
?
to
?
the
?
team?
–How are changes documented?

Statustracking

Status
 
tracking
–Pending, approved, rejected, deferred, completed, 
cancelled
UseCases
Use
 
Cases
Usedtocapturefunctionalrequirementsand
Used
 
to
?
capture
?
functional
?
requirements
?
and
?
describe the interactionsbetween various 
actors and the system
•Actorsare roles (not individuals) that have a 
goal for using the system
–Actors can be other systems or organizations
•Use Cases focus on achievin
g
 a user 
g
oal
g
g
–Use cases may have relationships (associations) 
with each other
UseCase
Scenarios
Use
 
Case
?
Scenarios

NotUML
no
standardformat
Not
 
UML

no
standard
?
format
idiifh
ildi
•A wr
i
tten 
d
escr
i
pt
i
on o
f
 t
h
e steps 
i
nvo
l
ve
d
 
i

an interaction between an actor and the 
lbiiihhi
system, a
l
ways 
b
eg
i
nn
i
ng w
i
t
h
 t
h
e pr
i
mary 
actor
WrittenUseCaseScenarios
Written
 
Use
?
Case
?
Scenarios

UseCaseName(useverb

noun)
Use
?
Case
?
Name
?
(use
?
verb
noun)
•Participating Actors 

NormalFlowofEvents(
happypath
)

Normal
?
Flow
?
of
?
Events
?
(
happy
 
path
)
–Exceptions (error conditions)

Extensions(optionalgoals)

Extensions
 
(optional
?
goals)
•Entry (pre) Conditions

Exit(post)Conditions

Exit
 
(post)
?
Conditions
•Quality Requirements
Use Case NameWithdraw Money
Participating ActorsInitiated by Customer
Communicates with Bank Accountin
g
 S
y
stem
gy
Flow of Events1.Customer inserts ATM card
2.ATM reads and validates the bank ID and account number 
withBankAccountingSystem
with
?
Bank
?
Accounting
?
System
3.Customer enters PIN number
4.ATM validates PIN with Bank Accounting System
5.Customer selects account
6.Customer enters amount to withdraw
7.ATM validates amount with Bank Accounting System
8.ATM dispenses cash and receipt
9
ATMlogstransaction
9
.
ATM
 
logs
?
transaction
10.Customer takes card, cash, and receipt
Entry‐Conditions•ATM has money and supplies
•Bank Accounting System (and network) is working
Exit‐Conditions•Customer‘s account balance is adjusted

ATM

smoneyinventoryisadjusted
ATMs
 
money
?
inventory
?
is
?
adjusted
•ATM’s supply inventory is adjusted
Quality Requirements•The Customer wait time is less than 3 seconds between steps