01 the sdlc
TRANSCRIPT
![Page 1: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/1.jpg)
The software development lifecycle How software is made
![Page 2: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/2.jpg)
Success = on time + within budget + it works
![Page 3: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/3.jpg)
Poor requirements are wildly expensive
![Page 4: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/4.jpg)
Developers and customers must agree on requirements throughout the SDLC
![Page 5: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/5.jpg)
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](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/6.jpg)
The Software development lifecycle (SDLC) is marked by a trail of documents
¡ kjl
![Page 7: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/7.jpg)
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](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/8.jpg)
The project charter ¡ The foundation
![Page 9: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/9.jpg)
Functional requirements ¡ One-sentence description ¡ What the software should do
![Page 10: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/10.jpg)
Nonfunctional requirements
¡ One-sentence description ¡ Parameters
![Page 11: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/11.jpg)
The use case diagram ¡ Big-picture layout of all functionality ¡ How they relate to actors and to each other
![Page 12: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/12.jpg)
Use cases ¡ Text narrative ¡ What the software
should do ¡ Not how to do it
![Page 13: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/13.jpg)
Activity diagrams ¡ Visual representation of a use case ¡ Industry-standard nomenclature
![Page 14: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/14.jpg)
CRC cards ¡ A tool to identify software objects!¡ Completely optional!
![Page 15: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/15.jpg)
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](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/16.jpg)
Collaboration diagrams ¡ A tool to expose how the objects relate to one
another ¡ Emphasizes the relationships, not the order
![Page 17: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/17.jpg)
Class diagrams ¡ Extremely low-level design of the software
![Page 18: 01 the SDLC](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/18.jpg)
¡ 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](https://reader034.vdocuments.net/reader034/viewer/2022042516/558cfd6fd8b42a5b4b8b45a5/html5/thumbnails/19.jpg)
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