roadmap
play

Roadmap SE process management Waterfall model Incremental methods - PowerPoint PPT Presentation

Roadmap SE process management Waterfall model Incremental methods Agile/XP methods Iterative / spiral methods (eg, RUP) Evolutionary methods V-Model CMMI 320312 Software Engineering (P. Baumann) 1 Spiral Model


  1. Roadmap  SE process management • Waterfall model • Incremental methods • Agile/XP methods • Iterative / spiral methods (eg, RUP) • Evolutionary methods • V-Model  CMMI 320312 Software Engineering (P. Baumann) 1

  2. Spiral Model  Objective setting • Identify objectives for this phase risk assessment objective & reduction  Risk assessment & reduction • Risks assessed • activities to reduce key risks  Development & validation start • Choose any development model development validation  Planning deployment feedback • Review prototype 1 planning prototype 2 • Plan next spiral phase prototype n 320312 Software Engineering (P. Baumann) 2

  3. Spiral Model: The Rules  Process is spiral rather than sequence with backtracking  loop in spiral = one phase in the process  No fixed phases • …such as specification or design • loops in spiral chosen depending on what is required  Risks explicitly assessed & resolved throughout the process  Probably suitable for small/medium size high-risk, high-change projects 320312 Software Engineering (P. Baumann) 3

  4. [Rational] Unified Process (RUP) Model  Software process based on Unified Modeling Language (UML) • use-case driven …supports req -to-spec transition • architecture-centric …supports factorization/modularization • iterative and incremental …supports project management  Normally described from 3 perspectives: • dynamic perspective: phases over time • static perspective: process activities • practice perspective: suggests good practice 320312 Software Engineering (P. Baumann) 4

  5. UP Phases  Inception • Establish business case  Elaboration elaboration construction • understanding of problem domain & system architecture inception  Construction transition • System design, programming, testing production  Transition • Deploy system in operative Release environment Software increment  Production • Support & maintain 320312 Software Engineering (P. Baumann) 5

  6. UP Phases phases: inception elaboration construction transition production Workflows: Requirements Analysis Design Implementation Test Support Iterations #1 #2 #n-1 #n 320312 Software Engineering (P. Baumann) 6

  7. UP Key Points Rational Unified Process: increased flexibility by combining  • generic process model • incremental ideas • evolutionary ideas (prototyping! see next) Core characteristic:  separates activities from phases 320312 Software Engineering (P. Baumann) 10

  8. Evolutionary Development  Exploratory development • work with customers • evolve final system from initial outline specification • start with well-understood requirements, add new features as proposed by customer similar to incremental / iterative approach  Throw-away prototyping • Goal: understand system requirements, not to build a deliverable • start with poorly understood requirements to clarify what is really needed 320312 Software Engineering (P. Baumann) 12

  9. Prototyping  For some large systems, incremental development & delivery may be impractical • especially true when multiple teams working on different sites  Alternative: Prototyping • experimental system developed as basis for formulating requirements • thrown away when system specification agreed  prototype = initial version of a system used to • demonstrate concepts try out design options •  prototype can be used in: • requirements engineering process help with requirements elicitation & validation • design processes explore options, develop UI design • testing process run back-to-back tests 320312 Software Engineering (P. Baumann) 13

  10. Back-to-Back Testing Test data System Application prototype system Results comparator Difference report 320312 Software Engineering (P. Baumann) 14

  11. Throw-Away Prototypes Prototypes should be discarded after development  as they are not a good basis for a production system: • may be impossible to tune the system to meet non-functional requirements • Prototypes normally undocumented • prototype structure usually degraded through rapid change • prototype probably will not meet normal organisational quality standards 320312 Software Engineering (P. Baumann) 15

  12. When Incremental Dev, When Prototype?  incremental development : deliver working system to end-users • development starts with requirements best understood  throw-away prototyping: validate or derive system requirements • prototyping process starts with requirements poorly understood 320312 Software Engineering (P. Baumann) 16

  13. Evolutionary Development: Appraisal  Problems • Lack of process visibility • Systems are often poorly structured • Special skills (e.g. in languages for rapid prototyping) may be required  Applicability • For small or medium-size interactive systems • For well isolated parts of large systems (e.g. the user interface) • For short-lifetime systems 320312 Software Engineering (P. Baumann) 17

  14. Roadmap  SE process management • Waterfall model • Incremental methods • Agile/XP methods • Iterative / spiral methods (eg, RUP) • Evolutionary methods • V-Model  CMMI 320312 Software Engineering (P. Baumann) 18

  15. Vorgehens-Modell  = Development Standard for IT Systems of the Federal Republic of Germany • German national standard, mandatory for gov (and sometimes industry) procured projects • Status: V-Model XT (Feb 2005), see www.v-modell-xt.de  features • process model for planning and realizing development projects • considering entire system (!) life cycle • responsibilities of each participant ("who" has to do "what" and "when") • ...rather detailed  Classification: waterfall++, " can be mapped to UP " 320312 Software Engineering (P. Baumann) 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend