software waterfall life cycle
DESCRIPTION
Requirements. Prototype. Design. Construction. Testing. Delivery and Installation. Software Waterfall Life Cycle. Concept Exploration. Operations and Maintenance. Software Design. From SWEBOK 2004. V-Model. Spiral Model. Agile Methods. Software Design. From SWEBOK 2004. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/1.jpg)
Software Waterfall Life Cycle
Requirements
Construction
Design
Testing
Delivery and Installation
Operations and Maintenance
Concept Exploration
Prototype
![Page 2: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/2.jpg)
Software Design
From SWEBOK 2004
![Page 3: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/3.jpg)
V-Model
![Page 4: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/4.jpg)
Spiral Model
![Page 5: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/5.jpg)
Agile Methods
![Page 6: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/6.jpg)
Software Design
From SWEBOK 2004
![Page 7: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/7.jpg)
Software Design Principles
• Abstraction• Coupling and cohesion
– Minimize coupling; maximize cohesion• Decomposition and modularization• Encapsulation/information hiding• Separation of interface from implementation• Sufficiency, completeness, and primitiveness
![Page 8: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/8.jpg)
Key Issues in Software Design
• Concurrency• Events• Distribution of components• Error and exception handling• Interaction and presentation• Data persistence
![Page 9: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/9.jpg)
Software Structure and Architecture
• Model/View/Controller (MVC)• Repository• Client/server, Three-tier (four-tier)• Peer-to-peer• Pipes and filters
![Page 10: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/10.jpg)
Patterns
• Reusable solutions to common object-oriented programming problems– Creational patterns
• Factory Method, Abstract Factory, Builder, Prototype, Singleton
– Structural patterns• Adapter, Bridge, Composite, Decorator, Façade, Flyweight,
Proxy– Behavioral patterns
• Chain of responsibility, Observer, Strategy, Command, Interpreter, Iterator
![Page 11: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/11.jpg)
Nonfunctional Requirements may suggest a design pattern
• “manufacturer independent”, “device independent”, “must support a family of products”– Abstract Factory Pattern
• “must interface with an existing object”– Adapter Pattern
• “must deal with the interface to several systems, some of them to be developed in the future”– Bridge Pattern
![Page 12: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/12.jpg)
Adapter Pattern
http://sourcemaking.com/design_patterns/adapter
![Page 13: Software Waterfall Life Cycle](https://reader036.vdocuments.us/reader036/viewer/2022062411/56816707550346895ddb6cdd/html5/thumbnails/13.jpg)
Strategy Design Pattern