Scrum is an agile project management framework that takes complex projects and splits them up into smaller, more manageable increments called sprints. Each of our sprints is a two week period and prioritizes the completion of essential features first before moving on to the next sprint.
Why use sprints?
There are many benefits. Working in increments allows us to get projects and products to market faster due to increased productivity and prioritization. It also helps us better manage hours and resources required to complete the project.
Why not use sprints?
A scrum approach can be overkill for very simple and well-defined projects. In our business, these are rare, but we will estimate out a “scope of work” project if we feel it’s in our client’s best interest.
What’s the difference?
A lot of agencies approach a new project with a defined and billable scope of work. In fact, most requests for a proposal will specifically ask for a scope of work to be defined and an exact cost associated with that scope of work. But we’ve found that’s like asking us to quote how much building a house will be when you don’t know how many rooms will be in the house, or where it is, or who will be living in it. We could make assumptions, but it’s likely we would be wrong.
However, because this is demanded so often, a common solution is for an agency to inflate the cost so that it covers any potential unknowns. Sometimes you may end up with a 4 bedroom house at the cost of a 3 bedroom house, but more likely you’ll pay for a mansion and get a shack.
Scrum methodology allows us to admit what we do and don’t know and gradually work toward a solution. It usually balances out risks as well, since we don’t promise things we aren’t even aware of, and you don’t get overcharged to cover the unknown.
Is project management time included in each sprint?
We don’t include project management in our sprints because every client is different. Clients who we have earned the trust of don’t require as much management time, especially for well-defined projects. Complex experimental projects with a client who we’re still getting to know may have a lot of project management time. We do our best to include an estimate of time based on our past experiences before beginning a phase or sprint.
Well what is included in each sprint?
Usually, a sprint has the following components:
Prioritization :
An initial meeting in which we prioritize individual tasks for the sprint based on how critical / urgent they are to the completion of the project.
Detailed Requirements Gathering :
A follow-up meeting (or meetings) in which we assign requirements to each task. Assets needed, dependencies, and general feedback are given at this point.
Work Toward the Goal :
The bulk of each sprint takes place here as it focuses entirely on the completion of previously established tasks and goals.
QA / Acceptance Testing :
Time at the end of each sprint reserved to test for and fix any pixel perfect, security, functionality, or user experience issues.
Analysis and Report :
A short analysis and report document brings each sprint to a close. Client considerations, changes to the project requirements, and updates to sprint scheduling will be addressed here before moving on to the next sprint or completing the project.
What about stuff that just doesn’t fit into a sprint?
If it’s an issue we should have caught during the QA / Acceptance Testing phase (e.g. code errors), we usually cover it at no extra cost. All other add-ons or change requests will incur additional fees billed under a separate time and materials agreement if they don’t warrant an entire sprint.
Have more questions about our current project management approach? Drop us a note in the comments below!