Project Management Toolkit
Kanban is a visual system for managing work as it moves through a process. Kanban visualizes both the process (the workflow) and the actual work passing through that process. The goal of Kanban is to identify potential bottlenecks in your process and fix them so work can flow through it cost-effectively at an optimal speed or throughput.
The Kanban Method is an evolutionary improvement process. It helps you adopt small changes and improve gradually at a pace and size that your team can handle easily. It encourages the use of the scientific method – you form a hypothesis, you test it and you make changes depending on the outcome of your test… Your key task is to evaluate your process constantly and improve continuously as needed and as possible.
Kanban Boards in GitHub
The Kanban Method is an evolutionary improvement process. It helps you adopt small changes and improve gradually at a pace and size that your team can handle easily. It encourages the use of the scientific method – you form a hypothesis, you test it and you make changes depending on the outcome of your test… Your key task is to evaluate your process constantly and improve continuously as needed and as possible.
Just like GitHub pages are a powerful feature available in each repository, GitHub also has project management tools built right in.
- At the top of your repo, click on Projects
- Select New Project
- Name and describe your board purpose, and select Templates
- Choose the Basic Kanban option
- Create four boards:
- Ideas
- To Do
- Doing
- Done
- Brainstorm project tasks with your team for the coming week and add all of the cards to To Do
- Assign immediate tasks to each person, add their names to their cards, and move to Doing
- Update the board each week with completed tasks, new assignments, and new tasks
One thing that takes practice is breaking complex operations down into discrete tasks. Think about this like wedding planning - sending out invitations is one task, booking a venue another, etc. But you can break down a task like invitations much further:
- create invite list
- acquire addresses
- track RSVPs
- finalize attendance list
You can create one large task with a check-list of sub-tasks, or a set of distinct tasks. Both are viable ways to organize the work.
As a general rule of thumb when using project boards to manage a team, I would group tasks only if they will all be done by the same person in the same time period. If one person is tasked with sending out invites, and another with collecting RSVPs and collating to the final attendee list, split them up.
Note a check-box is created like this:
* [ ] finalize attendance list
And to close it add an X to the box:
* [X] finalize attendance list
- finalize attendance list
Lab Deliverables:
For your lab assignment this week split the rubric into tasks on your Kanban board on GitHub and make a preliminary plan for team members to take the lead on specific tasks.
You will find the final project rubric here:
When you have your kanban board set up and ready for inspection have one team member submit the link to the instructor.