What Is Agile Methodology?
The Rocketmakers crew work to the beat of an Agile drum. Our experience over decades of software delivery shows that things always change throughout the course of a project - whether the prioritisation of tasks, the competitive environment, changes in personnel or any other variables. This is why we use Agile methodology.
An Agile methodology recognises the dynamic nature of software development. It acknowledges that development priorities can and will change - influenced by factors such as user feedback, commercial considerations, competitive activities and technological advances. Our process combines a broad road-map (backlog) for the key deliverables with more accurate three to four week development periods (sprints). This helps us to estimate and plan much more accurately and prioritise and refine tasks more effectively as we are looking just a short distance ahead.
However, although it’s possible to tentatively estimate potential project costs, it’s not feasible to view these estimates as fixed and final. Ongoing prioritisation decisions must be made throughout the development process in order to arrive at the best outcome, given available time and budget.
Working with your Agile team
Your project manager will help you to understand the rhythm, routine, and structures of the Agile process (we call them ceremonies). Together you will set up a backlog (long list of tasks and requirements), prioritise that backlog (to select the priorities for the next sprint) and plan and estimate sprints with the help of your development team.
You will remain in touch with your team regularly through sprint planning, retrospective sessions (to evaluate the progress and effectiveness of the last sprint) and regular standup (update) meetings.
Dual Track Agile
An extension to the traditional Agile process used in software development, Dual Track Agile adds an extra track for design activity working one sprint ahead of development. This means that you can go from discovering something about your product in the wild, to delivering a new feature to your users in as little as two sprints (around 4-6 weeks!)
Agile ceremonies
- Backlog setup
- Backlog grooming
- Sprint planning and estimating
- Sprint grooming
- Sprint retrospective
- Stand-ups
Epics and Stories
We break your project down into logical pieces of functionality. Each piece, often centred on the user's ability to perform a set of related tasks, or around a particular business function is called an 'Epic'. Further, each epic is broken down into a number of smaller developments called a 'Story' ****that can be delivered by a single developer in a reasonable time (ideally between 0.5 and 2 days) and tested in its own right.
What is a Backlog?
- A Backlog is the list of all the individual stories that we need to complete in order to finish this phase of your project (and sometimes beyond that too).
- We will have gathered some information to help populate your backlog during our initial meetings and workshops. We will both continue to add items to the backlog (and remove them) as the product develops and you learn more - but you own the backlog, not us.
What is a Sprint?
- We attempt to lock down scope, budget and time scale in small chunks - this allows for change and reduces risk as much as possible. Each chunk is a sprint, and is a selection of items from the top of the prioritised backlog - hopefully the most important ones.
- Sprints can be planned in advance as far as we like, but it is sensible to have one or two future sprints planned. The Sprint we are currently working on is 'committed' and we should avoid changing it - if it really has to change we should stop the sprint and start a new one.
- Sprint grooming is the process of creating a well-defined Sprint that is ready to be committed from the backlog of work that has been proposed. We do this by:
undefinedundefined - We commit a sprint when we are ready to start developing it. Once a sprint is committed, changing things is painful. You can’t just add features to a committed sprint without affecting cost or timescale or affecting/disrupting the current scope of the sprint.
- We should groom at least next sprint while current one is underway. As the customer you are part of this process, helping us to prioritise and providing inputs and information. You need to schedule time for this. Your Project Manager will advise what is needed.