![Page 1: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/1.jpg)
Choosing commercial software development process
Uladzimir Liashkevich, © 2009
![Page 2: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/2.jpg)
Development process
• Software engineering – systematic and disciplined approach
• Code & fix - hack until it works
• Software development methodologies• Waterfall• Spiral model• Rational Unified Process• Agile development• Lean development
![Page 3: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/3.jpg)
Waterfall: theory
![Page 4: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/4.jpg)
Waterfall: how it works
![Page 5: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/5.jpg)
Waterfall: time-to-market
• Safeguard – Ballistic Missile Defense System• No late changes in requirements• 6 years of development• 5k person-years• $25 bln• Terminated after 133 days of operation – new missiles
were faster, than anti-missile missiles
![Page 6: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/6.jpg)
Waterfall: target aiming
![Page 7: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/7.jpg)
Waterfall: target aiming
![Page 8: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/8.jpg)
Waterfall: target aiming
![Page 9: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/9.jpg)
Waterfall: cost of change
![Page 10: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/10.jpg)
Waterfall: problems
• Planning doesn’t work• Business may change faster than software is
developed• Changes in requirements are not easy• Cost of change• Progress is not clear
![Page 11: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/11.jpg)
Solution
• Communication & Feedback• Continuous
• Software development as social activity• It is not about applying math methods
![Page 12: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/12.jpg)
Agile manifesto
• Individuals and interactions over processes and tools
• Working software over comprehensive documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan
![Page 13: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/13.jpg)
Agile vs Waterfall
Scope
Time
Quality
Resources
![Page 14: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/14.jpg)
Team building
• Feature team• Sits together
• Common goal• Motivated individuals• Team building is hard
![Page 15: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/15.jpg)
Involve customer
• Product owner• Daily collaboration
• Product backlog• User stories• Prototyping
• Prioritizing backlog
![Page 16: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/16.jpg)
Iterative development• Working software is the measure of success• Continuously deliver value
• Early and often• Valuable feedback
• Iteration planning• High priority user stories• Story estimates• Acceptance criteria• Iteration scope
• Implementation• Tough things first• Technical tasks as a part of user stories• Complete features• Continuous communication
![Page 17: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/17.jpg)
Typical Agile life-cycle
![Page 18: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/18.jpg)
Agile: target aiming
![Page 19: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/19.jpg)
Agile: target aiming
![Page 20: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/20.jpg)
Agile: target aiming
![Page 21: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/21.jpg)
Quality
• Quality is free• Only if you are ready to pay for it
• External quality• Zero defect principle
• Internal quality• Technological debt
![Page 22: Development Process For Commercial Software Development](https://reader035.vdocument.in/reader035/viewer/2022062513/554f9240b4c905d25b8b5277/html5/thumbnails/22.jpg)
Questions?