Unified Process versus Extreme Programming - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Unified Process versus Extreme Programming

Description:

XP. Identify risk. High risk tasks early, but only if useful for current ... Discussion themes. MDD vs XP // CASE tools vs XP. Model is source vs Code is source ... – PowerPoint PPT presentation

Number of Views:55
Avg rating:3.0/5.0
Slides: 30
Provided by: geirj
Category:

less

Transcript and Presenter's Notes

Title: Unified Process versus Extreme Programming


1
Unified Process versusExtreme Programming

2
Outline
  • Compare and contrast UP and XP
  • Processes / Disciplines
  • Management
  • Artefacts
  • Risk management some thoughts

3
Unified Process
4
Process Disciplines
  • Requirements Specification (Kravspesifikasjon)
  • System Analysis (Systemanalyse)
  • Design
  • Implementation
  • Testing
  • Deployment (iverksetting)
  • Maintenance (Vedlikehold)

5
Supporting Disciplines
  • Configuration management
  • Change management
  • Environment
  • Project management
  • Time
  • Risk
  • Priorities
  • Estimation
  • Status Tracking / Follow up

6
XP key practices
  • Customer is Team Member
  • User Stories
  • Short Time Boxed Iterations
  • Pair Programming
  • Test-Driven Development
  • Collective Code Ownership
  • Sustainable Pace
  • Open Workspace
  • The Planning Game
  • Simple Design
  • Refactoring
  • Metaphor
  • (Coding standards)

7
UP Disciplines vs XP Practices
  • UP Disciplines
  • Requirements Specification
  • System Analysis
  • Design
  • Implementation
  • Testing
  • Deployment
  • Configuration management
  • Change management
  • Environment
  • Project management
  • Time
  • Risk
  • Status tracking
  • XP Practices
  • Customer in Team
  • User Stories
  • Short Time Boxed Iterations
  • Pair Programming
  • Test-Driven Development
  • Collective Code Ownership
  • Sustainable Pace
  • Open Workspace
  • The Planning Game
  • Simple Design
  • Refactoring
  • Metaphor

8
Business modelling
  • UP
  • Processes
  • Process map
  • Use Cases
  • Domain
  • Domain model ?
  • Glossary ?
  • XP
  • None?

9
Requirements Specification
  • UP
  • Use Cases
  • UML artefacts
  • Domain model
  • Dynamic models
  • Non-functional requirement
  • XP
  • User stories
  • Metaphores (?)
  • UML Model schetches
  • Non-functional requirements

10
System Analysis
  • UP
  • Subtasks
  • More detailed Use Case
  • UML Domain model
  • Prototypes?
  • XP
  • Subtasks
  • UML model schetches
  • Acceptance tests
  • Working code

11
Design
  • UP
  • UML design model
  • Class
  • Interaction
  • Packages / Modules
  • Base Architecture
  • Prototypes
  • XP
  • UML schetches
  • Simplest possible design
  • Incremental code development
  • Refactoring

12
Implementation
  • UP
  • Integrated, executable code after each iteration
  • XP
  • Integrated, executable code after each iteration
  • Test suites automatic tests

13
Testing
  • UP
  • No particular demand for test method
  • Types
  • Unit tests
  • Integration tests
  • Acceptance tests
  • (Regression testing)
  • Test first can be used
  • XP
  • Test first
  • Automatic testing
  • Acceptance Testing

14
Deployment
  • UP
  • Deployed system
  • XP
  • Deployed system

15
Configuration Management
  • UP
  • Version Control
  • Iteration releases
  • XP
  • Collective Ownership
  • Refactoring
  • Integrated, testable code
  • Iteration releases

16
Change management
  • UP
  • Requirements tracking
  • Change requests
  • XP
  • Embrace change
  • Planning game
  • Refactoring

17
Environment
  • UP
  • No particular demands for working environment
  • Artifacts important for communication
  • XP
  • Pair Programming
  • Test-Driven Development
  • Collective Code Ownership
  • Sustainable Pace
  • Open Workspace

18
Risk and priority
  • UP
  • Identify and manage risk
  • High risk tasks first
  • Prototypes
  • Base architecture
  • Prioritize use cases
  • High priority first
  • Use Case driven
  • XP
  • Identify risk
  • High risk tasks early, but only if useful for
    current user stories
  • Prioritize user stories
  • High priority first
  • User driven user in team

19
Managing time
  • UP
  • Time boxing 2 6 weeks
  • No particular method
  • XP
  • Time boxing 1 4 weeks
  • Estimate on basis of experience - velocity
  • Velocity increases

20
Project management (1)
  • UP
  • (Release planning)
  • Iteration planning
  • Follow up
  • Finished tasks
  • Unfinished tasks
  • Used time
  • Remaining time
  • Manager driven?
  • XP
  • Release planning
  • Iteration planning
  • Task planning
  • Follow up
  • Finished tasks
  • Unfinished tasks
  • Velocity
  • Developer driven?

21
Project management (2)
  • UP
  • Course plan for future iterations
  • Detailed plan for next iteration
  • Users prioritize Use Cases
  • Developers estimate tasks
  • XP
  • Developers continuously involved in estimation
  • Weekly plan stable
  • Overall plan changes continuously

22
Risk some thoughts
  • Risk in the waterfall model
  • Risk in iterative development
  • Managing risk

23
Risk in the waterfall model
24
Risk in iterative development
R I S K
T I M E
25
Risk factors (1)
  • Resources
  • Lack of people
  • Lack of money
  • Competence
  • Lack of knowledge
  • Misunderstanding requirements
  • Missing important requirements
  • Communication
  • Bad coordination
  • Misunderstandings
  • Bad chemistry

26
Risk factors (2)
  • Technical risk
  • Uncertain solution method
  • Uncertain requirements
  • Uncertain performance
  • Identify uncertain subtasks
  • Difficult
  • Uncertain of difficult
  • Uncertain extent
  • Deadlines
  • Illness
  • Underestimated size of task
  • Partners not delivering on time

27
Reducing risk
  • Manage risks
  • Identify risks
  • Assess Seriousness and Probability
  • Get an idea how to handle a risk if it occurs
  • Prioritize work according to risk level
  • High risk tasks in early iterations
  • Prototypes
  • Basic functionality used by many components
  • Consider high risk issues in early
    iterationsE.g. Many simultaneous users

28
Discussion themes
  • MDD vs XP // CASE tools vs XP
  • Model is source vs Code is source
  • Non-functional requirements in XP
  • Have XP sufficient focus?
  • Have users sufficient focus?
  • Is XP downplaying software architecture?
  • When is overall architecture introduced?
  • Can refactoring lead to good architecture?
  • Is XP too dependant on good people?
  • Very little written documents need good memory
  • Need helpful team members

29
  • Takk for oppmerksomheten!
  • ?
Write a Comment
User Comments (0)
About PowerShow.com