19
The software development lifecycle How software is made

01 the SDLC

Embed Size (px)

Citation preview

Page 1: 01 the SDLC

The software development lifecycle How software is made

Page 2: 01 the SDLC

Success = on time + within budget + it works

Page 3: 01 the SDLC

Poor requirements are wildly expensive

Page 4: 01 the SDLC

Developers and customers must agree on requirements throughout the SDLC

Page 5: 01 the SDLC

Requirements Management involves

¡  Planning the SDLC ¡  Including how to gather requirements

¡ Controlling requirements changes ¡  including scope creep

¡  Tracking progress ¡ Negotiating requirements issues ¡  Periodic, formal reviews

Page 6: 01 the SDLC

The Software development lifecycle (SDLC) is marked by a trail of documents

¡  kjl

Page 7: 01 the SDLC

These documents outline the SDLC ¡  Project charter ¡  Functional Requirements ¡ Nonfunctional requirements ¡  Use Case Diagram ¡  Use Cases ¡ Activity Diagrams ¡ CRC Cards ¡  Sequence Diagrams ¡ Collaboration Diagrams ¡  State Diagrams ¡ Class Diagrams

Page 8: 01 the SDLC

The project charter ¡  The foundation

Page 9: 01 the SDLC

Functional requirements ¡ One-sentence description ¡ What the software should do

Page 10: 01 the SDLC

Nonfunctional requirements

¡ One-sentence description ¡  Parameters

Page 11: 01 the SDLC

The use case diagram ¡  Big-picture layout of all functionality ¡  How they relate to actors and to each other

Page 12: 01 the SDLC

Use cases ¡  Text narrative ¡ What the software

should do ¡ Not how to do it

Page 13: 01 the SDLC

Activity diagrams ¡ Visual representation of a use case ¡  Industry-standard nomenclature

Page 14: 01 the SDLC

CRC cards ¡ A tool to identify software objects!¡  Completely optional!

Page 15: 01 the SDLC

Sequence diagrams ¡ A tool to expose how the objects relate to one

another ¡  Emphasizes the order in which they relate

Page 16: 01 the SDLC

Collaboration diagrams ¡ A tool to expose how the objects relate to one

another ¡  Emphasizes the relationships, not the order

Page 17: 01 the SDLC

Class diagrams ¡  Extremely low-level design of the software

Page 18: 01 the SDLC

¡  The UML is the standard language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system

Several of these artifacts are created using UML

Page 19: 01 the SDLC

Conclusion ¡  Requirements list everything that the software

must do ¡  To get these wrong is to design bad software ¡  It is ridiculously expensive to discover bad

requirements late in the lifecycle ¡  The artifacts guide the SDLC and document its

history