Establishing and exceeding client expectations is key to any successful services company. This starts very early in the relationship and needs to continue throughout the life of the engagement.
So, how do we begin setting expectations, even before a project is sold? By making sure that the Business Development Consultant is armed with tools to put the client at ease and responding quickly to client requests.
In the case of agile development, the best way to set client expectations are:
1.Develop a firm understanding of what the client wants their system to be: spend time with the client, understand the system, and conceptualize look and features.
2.Use your understanding to provide an estimate to the client.
3. Outline your assumptions in the estimate and over-communicate those assumptions.
1 and 3 are probably the same regardless of approach. In the case of agile development, you need to provide an estimate that details both the expected features of a system and the number of sprints that you believe will be required to complete, test, and deliver those features.
This means an estimate in both time and money for delivery.
Many agile development experts would tell you that you can’t estimate a software project. At Amadeus Consulting we disagree strongly with that point of view.
The keys to careful estimation are: deep understanding, expressing assumptions, and using the estimation process we’ve developed over 20 years as a custom software firm.
There are kinds of software projects that are harder to estimate than others (R&D, Application Rebuilds, Integration-Intensive Projects, and Co-Development to name a few) and all software projects that we encounter will have unknowns that have to be figured out along the way. That doesn’t mean that, with care and consideration, they can’t be estimated, it’s just a bit more complicated.
The estimate and the documented assumptions provide a guideline for the development team and the client to help manage the projects. Of course there will be changes, increases, decreases, and alteration of all types. By setting expectations and managing the project in accordance with those original expectations, you set yourself up for a much better project with fewer surprises along the way.