It’s a simple fact. Your customers often don’t know what they want from an application. At least not until they see an early version they can respond to. That’s why Waverley uses iterative methods to develop software.
Iterative software development methods and sharp developers quickly separate the good ideas from the bad. These methods let you see fully working versions sooner. They give you and your customers more opportunities to adjust and prioritize the requirements.
Faster iterations produce a better result for customers and they shorten your time to completion.
For larger projects where the requirements are relatively well-known, the Rational Unified Process has proven to be the best method to use for our customers.
The following are two examples of projects where Waverley used RUP. Both of these projects were well suited for RUP because so much information was available at the beginning of the project. The customers knew exactly what they wanted to build. They had a well-defined list of requirements and a written specification. Each of these projects had to accommodate a well-known protocol.
For projects where requirements are not well-understood, agile development works well. Why? Because Waverley can quickly produce a working version that you can show your customers and get early feedback.
This company wanted to develop a set of administrative tools to support the deployment of real-time games. The problem? It was a long list of tools. A very long list.
The company had difficulty prioritizing the list; everything seemed important. It also couldn’t plan the project more than a month in advance. This was a clear case for Agile development.
Waverley worked with the company to pick the most important tools, developed them, completed a release, and then worked with the client to select the next few tools to develop. We constantly produced working versions, each contained the next group of the most important features on their list.
Imagine a large manufacturing company; it’s in the heartland of the U.S. and it’s a company where planning is part of its DNA.
This company intended to build a new application for its franchises and corporate sales organization. The application was largemost of the software would run on a Windows client.
Initially the client specified a Waterfall model with a fixed set of requirements. But the requirements kept changing. And changing. Something had to give.
Eventually the client agreed to try Agile development. Instead of atempting to agree on all the requirements, we focused on the most critical ones over the course of a series of releases.
Waverley and the client finished the project on schedule. What’s more, it was so successful that the company is now adopting Agile methods across all of its software development projects.
It’s typical for Waverley clients to adopt some of our engineering practices. We believe sharing best practices is an important aspect of engaging with clients.