16
PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Embed Size (px)

Citation preview

Page 1: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

PRJ566: Project Planning and Management

Choosing Iterations in terms the importance of use cases

Page 2: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Iterative Development

• Reference: Agile & Iterative Development, by Craig Larman, 2004, Addison Wesley.

Page 3: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

What we have done to date

• Choose a project• Write a project proposal• Write the initial PID• Create a Use Case Diagram incorporating

the features of the system from the project proposal and the PID

• Create Design Templates for Reports and Screens

Page 4: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Now a very important decision

• How are we going to develop the final design of our project?– What iteration will we do first?

Page 5: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Iterative Development

• lifecycle is composed of several iterations in sequence

• each sequence is a self-contained mini project

Page 6: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Iterative Development

iteration n+1

Feedback

n=0 to …

System grows inincrements

Typically, no less than 3 iterationsLarger systems may have more than 30

Initial high level

requirements,Vision

Page 7: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Iterative Development

• Each Iteration– plan

• tasks, estimates, milestones• length of time

– track progress• adjust scope if required

– analyze, design, model– plan and code tests– code (production level!)– test– review

Page 8: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Iterative Development

• Planning Each Iteration– Choose most important use cases based on

• Highest Risk

• Widest Coverage (architectural significance)

• Highest Business Value

Page 9: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Highest Risk

• Technical complexity

• Factors such as uncertainty of effort, quality of design, team remaining together, necessary skill base

Page 10: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Widest Coverage

• All major parts of the system should at least be touched on in early iteration

• For example, early use cases and scenarios may be chosen that require execution across many of the components (from UI to database)– These are architecturally significant use

cases

Page 11: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Highest Business Value

• Functions of highest business value need at least partial implementation in earlier interations

• This gives customer stakeholders evidence that the team is aware of the functions important to their business

• This also increases customer stakeholder sense of collaboration with the development team.

Page 12: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Why prioritize use cases?

• Use cases are prioritized in order that the most important ones can be dealt with in early iterations.

• The type of use case specification that is written is determined by the importance of the use case.

Page 13: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Types of Use Case specifications

• “Fully Dressed”

• “Casual”

Reference: Applying UML and Patterns; An Introduction to Object-Oriented Analysis and Design and Iterative Development, 3rd ed, by Craig Larman, 2005, Prentice Hall.

Page 14: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Types of Use Case Specifications

• “Fully Dressed”– You will use a slight variation of the template that you

used in SYS366/466

– Written only for the most important use cases

Page 15: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Types of Use Case Specifications

• “Casual”– Informal paragraph format

– A collection of related success (HD) and failure (EX) scenarios

– We will provide you with examples and a template when you are ready for your second iteration

Page 16: PRJ566: Project Planning and Management Choosing Iterations in terms the importance of use cases

Now over to you

• Using this grid, you are to prioritize each use case from your posted use case diagram in terms of Risk, Coverage, or Business Value. You are to explain the importance of the use case and specify whether the use case specification should be written in “fully dressed” or “casual” format.