This lab is to get you and your team to focus on managing your communication be effectively employing the core agile tools:
- The Kanban board
- The Burndown chart
- Daily standups
The first task for the entire team is to create user stories for the features they want to include in the home automation system. These should be in the format:
As a ROLE I want to be able to PURPOSE so that JUSTIFICATION.
You should create a word document called User Stories under the documents tab in your MS Teams page and carefully record these.
During this lab you will be organising the team into two smaller teams of between 3 and 4 members. If you existing team is only small (up to 5) you don't need to carry out this step.
Start by picking team names, these should be sub-species of the main team's animal, for example Tabby or Spaniel.
To ensure both smaller teams are equally balanced, start by appointing a scrum master for each team who should create a new Team in MS Teams. Let them both have access to an up to date skills competency matrix and take it in turns to pick members, making sure they have all the key positions filled. Once the teams are selected, the members of each should be added to the new Team in MS Teams.
Each team should now pick one of the user stories to work on over the next 2 weeks, making a note in the document to show which one they have picked. From this point onwards each team will work independently.
Since the team is much smaller, you should find it easier to find a common timeslot each day to carry out the 15 minute standup meeting (in fact with the team much smaller you might not need so long). Discuss what time suits, given you will need to meet at this time every day. Once this has been agreed you need to use MS Teams to set up a recurring video slot.
Now each team should take their chosen user story and create a textfile with a .feature
extension. In this they should define the problem using the Gherkin DSL. This should include:
- The feature (user story).
- The scenarios (functional requirements).
- The annotations (steps to achieve each functional requirement).
- Tags (to organise the information).
When your small team is happy with the feature you should use a tool such as FeatureBook to build your documentation. It would be a good idea to generate a printable PDF and print copies of this ready for the next task.
Each team will need to create a Kanban tab in their project space, this is an instance of a Planner document. Create three columns as shown in the lecture slides, To Do, In Progress and Done. Distribute copies of the specification (from the previous step) and work together to define a list of the small tasks needed to complete it. These should be entered as tasks directly into the To Do column of the board but not assigned to anyone.
Now each person in the team should pick a task, drag it to the middle In Progress and assign it to themselves (this should not be done by the Scrum Master). As they finish a task it should be moved to the Done column and checked to show it is finished. The person should then pick another task from the first column, assign it to themselves and move to the middle column.
Please make sure you all connect to the online standup at the appointed time. If you have the MS Teams app installed you will see the meetings in your calendar and set a reminder. Once you are connected (with camera and microphone enabled) you should each answer the following questions:
- What have I done since the last meeting (yesterday)? If you were unable to do anything be honest about it and give your reasons.
- What will I aim to complete before the next meeting (tomorrow)? Again, if you can't spend any time on the project its best to be open and honest.
- Have you encountered any problems?
Once everyone has finished, the Scrum Master should review the progress (burndown) using the two charts in the Kanban board and let the team know whether the project is ahead or behind schedule and by how much.
There is a recorder tool in MS Teams which will allow you to record the video meeting. You should make use of this to record a couple of the meetings and review then later to help improve your technique.
There is a screen sharing feature in MS Teams, the Scrum Master should use this to update the team during the meetings by displaying the Kanban board and burndown/progress charts.