Introduction to Issue Driven Project Management

2,152
-1

Published on

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
2,152
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introduction to Issue Driven Project Management

  1. 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
  2. 2. Objectives <ul><li>Begin to understand the complexities involved in software project management. </li></ul><ul><li>Gain experience with a very simple approach to project management for small group use. </li></ul>
  3. 3. Software Project Management <ul><li>Effective project management depends upon (among other things): </li></ul><ul><ul><li>The size of the team; </li></ul></ul><ul><ul><li>The characteristics of the project; </li></ul></ul><ul><ul><li>The personalities of the team members; </li></ul></ul><ul><ul><li>The needs of the customer(s). </li></ul></ul><ul><ul><li>The technology to be developed. </li></ul></ul><ul><li>It is extremely difficult to teach, and extremely difficult to practice. </li></ul>
  4. 4. Beginner Project Management <ul><li>Here are some key characteristics of a successfully managed project: </li></ul><ul><ul><li>There is a task for you to work on; </li></ul></ul><ul><ul><li>You know what task to work on; </li></ul></ul><ul><ul><li>When you ’re done with a task, you know what task to do next; </li></ul></ul><ul><ul><li>You are rarely blocked waiting for someone else to complete a task; </li></ul></ul><ul><ul><li>Completing a task brings the project closer to completion; </li></ul></ul><ul><ul><li>The state of the project is visible at all times to all team members; </li></ul></ul><ul><ul><li>Breakdowns in project management can be recognized by everyone, quickly. </li></ul></ul>
  5. 5. Issue-Driven Project Management <ul><li>The simplest approach I know that satisfies all of the goals on the last slide. </li></ul><ul><li>Rules: </li></ul><ul><ul><li>Divide up the work into tasks. </li></ul></ul><ul><ul><li>No task takes longer than 2 days. </li></ul></ul><ul><ul><li>Each task is specified by an Issue. </li></ul></ul><ul><ul><li>Each Issue has a single owner. </li></ul></ul><ul><ul><li>At all times, every person has an open task that they are responsible for completing. </li></ul></ul><ul><ul><li>Every commit specifies an Issue in its log comment. </li></ul></ul>
  6. 6. Issues provide: project history, current status, future direction <ul><li>Issues with status= “Closed” </li></ul><ul><ul><li>Every task that has been completed on this project. </li></ul></ul><ul><li>Closed issues sorted by owner: </li></ul><ul><ul><li>What each person in the group has accomplished on this project. </li></ul></ul><ul><li>Issues with status= “Started” </li></ul><ul><ul><li>What each person is currently working on. </li></ul></ul><ul><li>Issues with status= “New” </li></ul><ul><ul><li>Work that is known to be needed but not yet worked on. </li></ul></ul>
  7. 7. Google Project Hosting Issues <ul><li>Provides a nice visual interface for IDPM if you change from the default setting to: </li></ul><ul><ul><li>Rows: Owner </li></ul></ul><ul><ul><li>Columns: Status </li></ul></ul><ul><ul><li>Cells: Tiles </li></ul></ul><ul><ul><li>Display as: Grid </li></ul></ul><ul><li>You can set the default axes for Grid View in the Admin panel to get this view easily. </li></ul>
  8. 8. Upcoming Tasks
  9. 9. In progress tasks
  10. 10. Completed Tasks
  11. 11. Tasks by a project member
  12. 12. Commits <ul><li>All* work associated with the project should be captured as a task. </li></ul><ul><li>Every task is represented as an issue. </li></ul><ul><li>Therefore, every commit should be associated with a task. </li></ul><ul><li>Start each commit log entry with [Issue <N>] and Google will auto-link the log to the issue. </li></ul>
  13. 13. Issue linking with commits
  14. 14. The meaning of All* <ul><li>Realistically, there are always small tasks (5-10 minutes) that fall into the cracks and don ’t warrant an Issue. </li></ul><ul><li>Therefore, there will be a small number of commits that don ’t have an associated issue. </li></ul><ul><li>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. </li></ul>
  15. 15. Maintaining this management system <ul><li>Do not try to create issues for the entire project at the beginning (you will fail). </li></ul><ul><li>Instead: </li></ul><ul><ul><li>Have meetings every 1-2 days to create the next set of issues. </li></ul></ul><ul><ul><li>Stay just enough ahead of the project so that no one ever completes all their issues (until just before the meeting) </li></ul></ul><ul><li>This system requires frequent face-to-face meetings to be effective project management! </li></ul>
  16. 16. How does IDPM satisfy the key characteristics? <ul><li>There is a task for you to work on; </li></ul><ul><ul><li>It's one of the New Issues that you own; </li></ul></ul><ul><li>You know what task to work on; </li></ul><ul><ul><li>That's decided at the daily meeting; </li></ul></ul><ul><li>When you ’re done with a task, you know what task to do next; </li></ul><ul><ul><li>Pick the next New Issue that you own; </li></ul></ul><ul><li>You are rarely blocked waiting for someone else to complete a task; </li></ul><ul><ul><li>Those are resolved at the daily meeting; </li></ul></ul>
  17. 17. Key Characteristics (cont) <ul><li>Completing a task brings the project closer to completion; </li></ul><ul><ul><li>Unimportant tasks get discarded at the meeting; </li></ul></ul><ul><li>The state of the project is visible at all times to all team members; </li></ul><ul><ul><li>See the Issue page. </li></ul></ul><ul><li>Breakdowns in project management can be recognized by everyone, quickly. </li></ul><ul><ul><li>Someone who doesn't have any tasks; </li></ul></ul><ul><ul><li>Someone who is not completing tasks; </li></ul></ul><ul><ul><li>Someone who is blocked for too long; </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×