# A quick intro to managing software projects
---
1. **A quick intro to managing software projects**
2. [Issue management and estimation](https://hackmd.io/@fac/B1AL4V3ML#/)
3. [The Build Sprint](https://hackmd.io/@fac/S1ZTP6UcI#/)
4. [A quick intro to product management](https://hackmd.io/@fac/BkJLkLxnr#/)
5. [The Design Sprint](https://hackmd.io/@fac/rySEBaUq8)
---
## Scrum(TM)
A widely-used software development method.
---
Why even bother?
---
Scrum is not the only way to manage software projects. It has it's detractors. In certain circumstances it's a complete waste of time, but it has some significant benefits.
---
1. Very widely used;
2. Provides structure;
3. Good for managing client expectations.
---
## A Scrum glossary
---
### User story
An action that a user might want to perform.
---
### User story
*"As a...
I want...
So that..."*
---
### Backlog
All uncompleted user stories.
---
### [Project board](https://help.github.com/en/github/managing-your-work-on-github/about-project-boards)
*"Kanban"*
Where you track your user stories.
---
### Product Owner
Your client and the sole person responsible for managing the backlog.
---
### Sprint
A fixed period of development time during which the team will not respond to new change requests.
---
#### Sprint length
Two weeks is typical, but for the purposes of getting familiar with the process, go for a weekly cycle.
---
### Sprint backlog
A prioritised backlog of all the user stories that the team estimates will be completed in the next sprint.
---
### Sprint planning
Where the team reprioritises user stories and agrees the next sprint backlog.
---
### Sprint review
- Sprint retrospective
- Backlog refinement
- Estimates vs actual progress
---
#### Sprint retrospective
(Stop,) go, continue.
---
#### Backlog refinement
Amend, update, re-order the product backlog.
----
#### Estimates vs actual progress
Compare user story estimates with the actual number of user stories completed.
---
### The daily stand-up
Take turns to answer three questions.
Standing makes it quicker.
Appoint a facilitator.
---
#### Three-item agenda:
1. What have you done since the last stand-up?
2. What are you working on next?
3. What is blocking your progress?
---
The facilitator (or *"scrum master"*) leads the stand-up and is responsible for resolving blockers.
---
### RECAP
- Scrum(TM)
- User story
- Backlog, project board
- Product owner
- Sprint, sprint backlog
- Sprint planning, sprint review
- Daily stand-up
---
## A final thought
---
Always have **a single source of truth**.
Don't ever attempt to manage a project via email.
---
2. [Issue management and estimation](https://hackmd.io/@fac/B1AL4V3ML#/)
{"title":"A quick intro to managing software projects","breaks":true,"metaMigratedAt":"2023-06-19T14:00:22.024Z","metaMigratedFrom":"YAML","description":"A quick intro to managing software projects","contributors":"[{\"id\":\"8719d6dc-d98a-4680-91f3-8a21fcb8ec84\",\"add\":5527,\"del\":4433},{\"id\":\"2967aacf-1990-431e-b963-91e79ce4a2bf\",\"add\":694,\"del\":134},{\"id\":\"3bd43981-0858-4e2b-a511-ecd7fba2d230\",\"add\":2121,\"del\":1005}]"}