The Struggles of Deadlines and Agile: Are They Compatible?
Deadlines and Agile methods of software development seem to be continually at war with each other. Firm champions of Agile methods stoutly defend the method to the hilt, while customers and consumers don’t understand why they can’t just have a hard end date and be done with it. Long explanations from both sides seem to […]
Project Tips and Tricks
Deadlines and Agile methods of software development seem to be continually at war with each other. Firm champions of Agile methods stoutly defend the method to the hilt, while customers and consumers don’t understand why they can’t just have a hard end date and be done with it. Long explanations from both sides seem to skip right over the other party’s head. Tensions rise, even if these issues have been discussed before at length between the teams. Both parties feel frustrated and discouraged with each other.
Though that is a very simplified version of events, the bottom line remains much the same whenever deadlines and Agile meet. Someone doesn’t understand something and frustration builds up. How can these issues be resolved to the satisfaction of both sides?
As with many arguments, each side tends to have their own definition of the issue. Deadlines to a customer or target audience might mean a set time by which they will receive a working product, a draft of the product, or some other easily-understood (by them) item. Deadlines to a developer may mean an impossible goal or target that they are being pushed into by people who don’t seem know what they are asking for or who have difficulty communicating their vision.
Perhaps the customer may understand Agile in theory; however, when it goes into practice they are still expecting waterfall-type results. Developers do not always understand the pressures their customers may be facing and grow resentful of the new requests and change orders coming down to them. The scenarios are as diverse as the people behind them, and this common thread runs through each and every one.
The key to avoiding or minimizing the conflicts of deadlines and Agile is communication. Communicating these starting definitions on both sides should be one of the very first discussion points when you begin exploring custom solutions. After all, both parties want the same thing; they simply have different ideas about how that goal is achieved. If you can meet on the same ground, no one has to shout into the air above them and hope that something carries through.
The beauty of the Agile method for a customer is that he or she can see exactly what is going on, if the lines of communication are understandable to him. For the team behind the software, show off the work! Explain the method and use your agreed on definitions of deadlines to your client or customer when questions arise. If it’s a question of over-communicating or under-communicating, bring that up with the client as well. What level of involvement do they want? They don’t need to be part of every step but they do need to know what is happening.
Deadlines don’t have to be governed strictly by time. Depending on your definition, sprints are wonderful “deadlines” for the client. Working software, a fundamental principle of Agile, can be another. A working demonstration of a feature can also serve the same purpose of a deadline by showing progress to everyone involved. If time is an important metric to the client, try inviting them or including them on appropriate meetings. How about scheduling a demonstration or a lunch at each time point to explain in layman’s terms what has happened and what is holding up the process? Keep the customer in the loop!
The key takeaway for both parties should be that deadlines are a tool for measuring goals. To illustrate this point, think about using a ruler to mark off seven inches on a piece of paper. What will your ruler and paper look like? That’s up to you and the company you choose to work with. Make sure you both understand the other’s “ruler” right from the start. Then yes, you can have deadlines and Agile–together.
Here at Swan Software Solutions, we understand where you are coming from. We also are in very close touch with our developers and understand where they are coming from and what their thought processes are. With our pool of global talent, top-of-the-line technologies and optimized processes, we are confident in our ability to deliver the custom solutions that you need and deserve. Contact us today to start the discovery process!