software engineering process models pavel agejkin
TRANSCRIPT
![Page 1: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/1.jpg)
Software engineeringProcess models
Pavel Agejkin
![Page 2: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/2.jpg)
Software engineering layers
![Page 3: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/3.jpg)
Generic process framework activities• Communication• Planning• Modeling• Construction• Deployment
![Page 4: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/4.jpg)
Umbrella activities
• Software project tracking and control• Risk management• Software quality assurance• Technical reviews• Measurement• Software configuration management• Reusability management• Work product preparation and production
![Page 5: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/5.jpg)
![Page 6: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/6.jpg)
General principles
• The Reason It All Exists• KISS (Keep It Simple, Stupid!)• Maintain the Vision• What You Produce, Others Will Consume• Be Open to the Future• Plan Ahead for Reuse• Think!
![Page 7: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/7.jpg)
Generic process model
• Linear process flow• Iterative process flow• Evolutionary process flow• Parallel process flow
![Page 8: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/8.jpg)
![Page 9: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/9.jpg)
Waterfall Model
![Page 10: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/10.jpg)
Incremental Process Model
![Page 11: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/11.jpg)
Evolutionary Process Models : Prototyping
![Page 12: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/12.jpg)
Evolutionary Process Models : Spiral Model
![Page 13: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/13.jpg)
Evolutionary Process Models : Spiral Model
![Page 14: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/14.jpg)
Specialized Process Model
• Component-Based development• Formal Methods Model• Aspect-Oriented Software Development
![Page 15: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/15.jpg)
Unified Process
![Page 16: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/16.jpg)
Personal Software Process (PSP)
• Planning• High-level design• High-level design review• Development• Postmortem
![Page 17: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/17.jpg)
Team Software Process (TSP)
• Project launch,• High-level design • Implementation• Integration and test• Postmortem
![Page 18: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/18.jpg)
Manifesto for Agile Software DevelopmentWe are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a planThat is, while there is value in the items on the right, we value the items on the left more.
![Page 19: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/19.jpg)
Change cost vs time in development
![Page 20: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/20.jpg)
Agility principles
• 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. • 2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s
competitive advantage. • 3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter
timescale. • 4. Business people and developers must work together daily throughout the project. • 5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the
job done. • 6. The most efficient and effective method of conveying information to and within a development team is face-to-face
conversation. • 7. Working software is the primary measure of progress.• 8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a
constant pace indefinitely• 9. Continuous attention to technical excellence and good design enhances agility. • 10. Simplicity—the art of maximizing the amount of work not done—is essential. • 11. The best architectures, requirements, and designs emerge from self– organizing teams. • 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly
![Page 21: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/21.jpg)
Human factors
• Competence• Common focus• Collaboration• Decision-making ability• Fuzzy problem-solving ability• Mutual trust and respect• Self-organization
![Page 22: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/22.jpg)
Extreme Programming (XP)
Values:• Communication• Simplicity• Feedback• Courage (discipline)• Respect
![Page 23: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/23.jpg)
Industrial XP ( IXP)
![Page 24: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/24.jpg)
Feature Driven Develoment
![Page 25: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/25.jpg)
Scrum
![Page 26: Software engineering Process models Pavel Agejkin](https://reader035.vdocuments.us/reader035/viewer/2022081514/56649da85503460f94a94987/html5/thumbnails/26.jpg)
Kanban