Documentation in the Waterfall and Spiral methods Steven Boyer UAH - CPE658 – Spring 2012 1

Preview:

Citation preview

Documentation inthe Waterfall and Spiral methods

Steven BoyerUAH - CPE658 – Spring 2012

1

Overview of Processes

2

What’s what?

• Waterfall– Early model– Invites failure – all

testing at the end of the project

– All requirements realized up front

– No room for error– Requirements

developed, everything works to that

3

4

5

What’s what? – cont.

• Spiral– Envisioned by Barry Boehm (1986)– Waterfall-like, over iterations– “Documents [are] produced when they are required… All

documents will not be created at the beginning of the process, nor all at the end (hopefully). Like the product they define, the documents are works in progress. The idea is to have a continuous stream of products produced and available for user review.” - NASA Software Safety Guidebook.

• NASA-GB-8719.13, March 31, 2004

– Based around risk assessments6

7

What’s what? – cont.

• Agile– Small builds over the course of a small period of time– Implement small number of features at a time– Examples

• Zombies• iAds• WiFi

– Working software over big documents– Less documents produced vs. other methods

• Customer involved more closely• Doesn’t need to have a formal document as they’re with the team

every meeting

8

What’s what? – cont.

9

Everyone’s favorite topic:Documents!

10

Why?

• Show that you have some kind of process• That you’re developing it to spec.• Every requirement has a place and is tested• It’s required (internal purpose, deliverable, for

CPE658 grade, etc.)

11

Which Ones Will This Presentation Highlight?

• SRS –Requirements – what the project is built to

• SDP – Design Plan – How it’s going to be built• SDD – Design Document – How it’s been built• STP – Test Plan – How it’s going to be tested• STD – Test Description – How to test it

12

Quick Note About Information Regarding Agile Process

• I e-mailed back and forth with Alex Mabry (Software Engineer with Adtran)– “Nope. We aren't required to produce any of

those.”• E-mailed with Jay Olive (works on project

using Agile at the Software Engineering Directorate and has document requirements)

• Questions went un-answered– E-mails ignored

13

Requirements SpecificationsWaterfall

• Built early into the project• All future work is tied to this document• If a feature is implemented that isn’t directly

tied to this, can be seen as a waste of time that can be spent elsewhere

• Requirements Phase

14

15

Requirements SpecificationsSpiral

• In the Development & Test quadrant,• In the Next Iteration Quadrant• In the Requirements Quadrant

• Repeats over every arc

16

17

Development PlanWaterfall

• Document on how you plan to develop the project

• Activities outlined and detailed• Changes are going to happen and document is

expected to be revised over the course of the project

• Design Phase

18

19

Development PlanSpiral

• Updated in the Next Iteration Quadrant after an arc finishes

• Incremental and repeats every arc

20

21

Design DocumentWaterfall

• Detailing HOW the project is designed• Classes, algorithms, data structures, etc.

• Spans over the Design and Implementation Phases

22

23

Design DocumentSpiral

• Development & Test Quadrant– Drafted after several arcs

• Again, iterative

– Each arc is a prototype• Iterating towards the final goal of a well-designed

system that’s well documented

– Completed in the final stages of the last arc

24

25

https://uah-course-scheduler.googlecode.com/svn/trunk

Test PlanWaterfall

• How you are going to test• Describes the plans for the Formal

Qualification Test

• Verification Phase

26

27

28

Test PlanSpiral

• Development & Test Quadrant– Over all arcs

• Next iteration Quadrant before the last arc starts

29

30

Test DescriptionWaterfall

• Describes the test preparations, test cases, and test procedures to do a formal test

• Verification Phase

31

32

33

Test DescriptionSpiral

• Development & Test Quadrant on the last arc• Developed over each arc

34

35

Summary

36

SRS

Waterfall• First step: the requirement

phase

Spiral• Development & Test

quadrant• Next Iteration Quadrant• Requirements Quadrant

• OVER EVERY ARC

37

SDP

WaterfallSecond Step: Design phase

SpiralNext Iteration Quadrant after

an arc

38

SDD

Waterfall• Third Step: Design and

Implementation phases

Spiral• Development & Test

Quadrant drafted after several arcs, finished up along the last arc

39

STP

WaterfallFourth Step: Verification phase

SpiralDevelopment & Test Quadrant

across arcsNext Iteration Quadrant before

the last arc starts

40

STD

WaterfallFourth Step: Verification phase

SpiralDevelopment & Test Quadrant

on the last arc

41

Questions?

42