The majority of companies now either use scrum or they think they probably should be, but do they know why? Is it because they understand the benefits it can bring or is it because they feel they have to describe themselves as agile because we'll everyone is right?
Iteration with Purpose
Even when applying a waterfall methodology you would attempt to split up the building of a system into chunks, the question to ask is why iterate rather than gradually build?
The goal of a sprint (or a group of 2 or 3 sprints that might form a release) should be to continually and rapidly deliver working software to a client. You don't know your building the right thing until your clients tell you that you are, getting this feedback early and often is they key to validating your product or service.
Sprints aren't about splitting up the work required to build a large system, they are providing a way to start with a small working variant of your product (an MVP) and then continually iterate on that product to deliver more and more value to a client.
The delivery on a weekly basis of working software to the client should be the measure of success.
Can't We All Just Get Along
Another key aspect to agile is how the work gets done, its all about the team.
A team of talented, well motivated people is best placed to know how problems are best solved, they should be trusted to do so. Let the business define the problems, let the team decide on the solutions.
The team should be a tight-knit bunch who are continually communicating, not in meetings but face to face whenever they need each other to bounce ideas around.
The teams focus should be on delivering quality code that does just enough to give the client the next iteration.
Times they are a Changing
Agile is about taking a dose of reality, the world and the people in it (who we usually refer to as users) are complicated. Its difficult to predict what they want and its always subject to change.
Painstakingly trying to figure them out and spending a long time to build what you think they're dreaming of is a gamble that very often isn't going to pay off and will consume a lot of resource in doing so.
Instead embrace the change, give them what they want by constantly asking them to validate your ideas.
Continually give them something new to play with, don't give them promises, aspirations or dreams give them working software over and over again.
No comments:
Post a Comment