Slide 1

ITEC 370
Lecture 27
Life-cycles(3)
Review
• Questions?
• F give update on project (demo optional)
• Case study
– Actual focus of project (long/short term)
– Time of project
– Who is it developed for
– Testing in actual environment
Life-cycles
Objectives
• Look at variations on the Waterfall
– Not radical departures (Scrum / xP)
Life-cycles
V-Model
• Variation on the Waterfall
• Second side of the V refers back to other
side to make sure it is correct
Life-cycles
Incremental
/ Iterative
• Goal: Design, implementation testing
happens multiple times (Bite off small
chunks)
• Evolution of the waterfall model
• Adds in flexibility
• Adds in a higher cost due to more repeats
Life-cycles
Spiral
model
• Go beyond 1 cycle
• Back in 86…
• Each iteration was 6
months
• Requirements / prototyping
• Waterfall cycle
• Testing / Planning for next time
Life-cycles
Similarities
• All are focused on the basic components
of a software project lifecycle
– Requirements
– Design
– Implementation
– Testing
• Organization is a bit different
Life-cycles
Pro/con
• Allows for a lot of reuse from waterfall
• Isn’t that different from waterfall, suffers
most of the same problems
• Corrects some flaws, but allows “statusquo” to continue
• Easy to come up with / understand
Life-cycles
TDD
• Test driven development
• Need to add a feature?
– Write a test first
– Check to see if software system supports test
– If it fails, write code so that it supports test
– Check all other tests to make sure they don’t
fail
– Add code to system
• Guides development of system
Life-cycles
Lean
• Don’t like heavyweight processes? Time to
go on a diet…
• Principles
–
–
–
–
–
–
–
Eliminate waste
Amplify learning
Decide as late as possible
Deliver as fast as possible
Empower team
Build integrity
See the whole
Life-cycles
Outside
• Get inspiration from other fields
• 7 habits of highly effective people
– Be proactive
– Begin with the end in mind
– Put first things first
– Think win-win
– Seek first to understand then be understood
– Synergize
– Sharpen the saw
Life-cycles
In the end
•
•
•
•
•
Who is your client?
Who is on your team?
What resources are available?
What time-table are you using?
What are the requirements for the project?
Life-cycles
Eye on
prize
• Goal is to setup an environment for
developing software
• Ways to increase success
• Not as simple as it sounds
• Quality people are not always going to
save the day
• Repeatability
• Feature rich / bug free
Life-cycles
Review
• Other methods of developing software
• Not as “involved” as agile
• Reuses a lot of the waterfall knowledge
Life-cycles