18
(1) Introduction to Project Management: Issue Driven Project Management Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii Honolulu HI 96822

Introduction to Issue Driven Project Management

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Introduction to Issue Driven Project Management

(1)

Introduction to Project Management:

Issue Driven Project Management

Philip Johnson

Collaborative Software Development Laboratory

Information and Computer Sciences

University of Hawaii

Honolulu HI 96822

Page 2: Introduction to Issue Driven Project Management

(2)

Objectives Begin to understand the complexities involved in software project management.

Gain experience with a very simple approach to project management for small group use.

Page 3: Introduction to Issue Driven Project Management

(3)

Software Project Management Effective project management depends upon (among other things):•The size of the team;•The characteristics of the project;•The personalities of the team members;•The needs of the customer(s).•The technology to be developed.

It is extremely difficult to teach, and extremely difficult to practice.

Page 4: Introduction to Issue Driven Project Management

(4)

Beginner Project Management Here are some key characteristics of a successfully managed project:•There is a task for you to work on;•You know what task to work on;•When you’re done with a task, you know what task to do next;•You are rarely blocked waiting for someone else to complete a task;•Completing a task brings the project closer to completion;•The state of the project is visible at all times to all team members;•Breakdowns in project management can be recognized by everyone, quickly.

Page 5: Introduction to Issue Driven Project Management

(5)

Issue-Driven Project Management The simplest approach I know that satisfies all of the goals on the last slide.

Rules:•Divide up the work into tasks. •No task takes longer than 2 days.•Each task is specified by an Issue.•Each Issue has a single owner.•At all times, every person has an open task that they are responsible for completing.•Every commit specifies an Issue in its log comment.

Page 6: Introduction to Issue Driven Project Management

(6)

Issues provide: project history, current status,

future direction Issues with status=“Closed”•Every task that has been completed on this project.

Closed issues sorted by owner:•What each person in the group has accomplished on this project.

Issues with status=“Started”•What each person is currently working on.

Issues with status=“New”•Work that is known to be needed but not yet worked on.

Page 7: Introduction to Issue Driven Project Management

(7)

Google Project Hosting Issues Provides a nice visual interface for IDPM if you change from the default setting to:•Rows: Owner•Columns: Status•Cells: Tiles•Display as: Grid

You can set the default axes for Grid View in the Admin panel to get this view easily.

Page 8: Introduction to Issue Driven Project Management

(8)

Upcoming Tasks

Page 9: Introduction to Issue Driven Project Management

(9)

In progress tasks

Page 10: Introduction to Issue Driven Project Management

(10)

Completed Tasks

Page 11: Introduction to Issue Driven Project Management

(11)

Tasks by a project member

Page 12: Introduction to Issue Driven Project Management

(12)

Commits All* work associated with the project should be captured as a task.

Every task is represented as an issue.

Therefore, every commit should be associated with a task.

Start each commit log entry with [Issue <N>] and Google will auto-link the log to the issue.

Page 13: Introduction to Issue Driven Project Management

(13)

Issue linking with commits

Page 14: Introduction to Issue Driven Project Management

(14)

The meaning of All* Realistically, there are always small tasks (5-10 minutes) that fall into the cracks and don’t warrant an Issue.

Therefore, there will be a small number of commits that don’t have an associated issue.

If more than ~10% of your commits don’t have an issue, then your tasks/issues do not effectively represent your project’s history, state, and progress.

Page 15: Introduction to Issue Driven Project Management

(15)

Maintaining this management system

Do not try to create issues for the entire project at the beginning (you will fail).

Instead:•Have meetings every 1-2 days to create the next set of issues.•Stay just enough ahead of the project so that no one ever completes all their issues (until just before the meeting)

This system requires frequent face-to-face meetings to be effective project management!

Page 16: Introduction to Issue Driven Project Management

(16)

How does IDPM satisfy the key characteristics?

There is a task for you to work on;•It's one of the New Issues that you own;

You know what task to work on;•That's decided at the daily meeting;

When you’re done with a task, you know what task to do next;•Pick the next New Issue that you own;

You are rarely blocked waiting for someone else to complete a task;•Those are resolved at the daily meeting;

Page 17: Introduction to Issue Driven Project Management

(17)

Key Characteristics (cont) Completing a task brings the project closer to completion;•Unimportant tasks get discarded at the meeting;

The state of the project is visible at all times to all team members;•See the Issue page.

Breakdowns in project management can be recognized by everyone, quickly.•Someone who doesn't have any tasks;•Someone who is not completing tasks;•Someone who is blocked for too long;

Page 18: Introduction to Issue Driven Project Management

(18)