The methodology we use: Agile
We use Agile methodology to get projects delivered. This enables the team to manage a project by breaking it up into several stages. Agile involves constant collaboration with all of the stakeholders and continuous improvement and iteration at every stage. It is performed in a constant cyclical process of planning, executing and evaluating until the project is completed.
We’ve found that by being both adaptable and flexible, this methodology provides better results whose benefits are two-fold. For the team, because it focuses on enabling teams to deliver in workable increments so that they can react quicker to changes required and more importantly, for the client, because it means value can be released incrementally throughout the project.
Sprints tend to be bound by time, 2 weeks is usual and tasks are allocated to a sprint so at the end of the sprint, the next sprint and new tasks, commence.
A sprint can take the form of one project that commences and ends in just one cycle.
Or it can take the form of two sprints which break down the sprint into smaller chunks before the project cycle is completed.
Or it can take the form of three or more sprints which break the sprint down into manageable chunks so that at the end of each sprint a piece of work is released and completed.
Notes from a Scrum Master
Jodie Cann, Project Manager
As a vendor there are numerous obstacles that you are required to overcome when running a project in an agile manner. I have had first-hand experience of some of these obstacles including working across multiple time zones, varying public holidays and accessibility to subject matter experts.
Below are points that I have learned about project managing using Agile.
It’s a team effort
As a Scrum Master my role is to facilitate the team, to allow them to reach their goals without any impediments and to continuously encourage, support and empower them through the life cycle of the project. But it is the team that truly is the central mechanism to the success of the project, with everyone bringing an array of different skills, personality and ways of working.
Team contribution and involvement with planning, goal setting, retrospectives and lessons go a long way to ensuring that the project is a success.
Promoting team engagement throughout all stages of the project also assists in stimulating a culture that fosters problem solving and direct communication – a key attribute to aiding the continuous fast-paced nature of an Agile project.
Set agendas for ceremonies/meetings
Working across multiple time zones means that there is a finite timeframe to schedule meetings which allows the whole team to be involved.
By adding agendas to ceremonies, it allows the team to stay focused and address the issue in hand. As a Scrum Master it is key to keep the ball rolling and encourage participation from the whole team in the meetings. After all, two heads are always better than one.
Smaller user stories
Within Agile size really does matter and smaller user stories will be welcomed across the team. It allows for functionality to be delivered in continuous increments while still adding business value.
To gauge the size of a user story, pointing is a useful ceremony to embed into your agile project. The points allocated must be decided collectively by the team, extremities are discussed, and a consensus of a point associating to the effort and the size of the user story is agreed.
There are many scales that can be used to estimate stories, we have used the Fibonacci scale. This is a process that has pulled the team together, acting as a lighthouse from which the team can base their thinking.
I find this is a great ceremony to schedule for a Friday afternoon – adding some light-hearted card games to end the week with.
Regular project demos
Project demos are a great way for the team to showcase their progress to the client. It creates a forum for feedback and kudos. It is also a great ceremony and check point to identify changes that may be required. Any observations of future change should be handled like new functionality and added to the backlog.
Demos should be led by the team, and we have found this very useful for adding personality to the project – something that is crucial when working across a project where you may never meet the client in person.
Retrospective meetings should occur at the end of a sprint, they allow the team to reflect and identify what went well, what did not go so well and what could be done differently during the next sprint. Most importantly they also give kudos to those who have shone throughout the sprint.
These meetings create a forum for the team to be constructive and suggest new ways of working. It also allows for the team to highlight excellence, share lessons learnt and creates motivation for the team.
I believe it is fundamentally the prime ingredient to a happy project team. A happy project team creates a happy environment which leads to a successful project.
Across the numerous frameworks such as Scrum and XP, communication is vital. This will lead to a self-organised team, enable incremental releases to run successfully and allow ceremonies to run smoothly.
What is a Ceremony?
Agile ceremonies are four events that occur during a Scrum sprint. These are Sprint Planning, Daily Stand-Up, Sprint Review, and Sprint Retrospective.
What is a Sprint?
A sprint is a defined period of time for creating a feature and making it ready for review. Teams plan a single sprint at a time and adapt future sprints based on the outcome of the previous one. Although each sprint is planned separately, the number and length of sprints in a project will have been determined at the beginning of the project.
What is a Scrum?
Scrum is a framework for project management. It encompasses roles, meetings, tools that help the team to structure their work.
What are User Stories?
A user story is an informal, general explanation of a software feature written from the perspective of the end user or customer. They consist of the role of the user, their goal and the benefit it will bring.