An English client tasked us with a very challenging project. In a situation, where the client used exclusively Waterfall to manage their projects, we had to deliver a project with fixed regulatory requirements, constantly changing over time, by a challenging fixed deadline, and obtain product certification, critical for our client’s entire business . This project took us on a true journey of knowledge, one that revealed many possibilities. Find out where it got us and how it all eventually turned out.
The aim of this project was to develop and certify web-based energy software according to four energy standards on the UK market for our British client. Within ten months, we had to completely revamp four calculators used to calculate the energy performance of buildings and obtain certification for integration with government systems. The deadline was extremely challenging: the government provided a time frame that was 40 % shorter than it provided for similar projects in the past. Delivery and certification of such a complex product in the energy industry within ten months presented an enormous challenge. The complexity of this project was exacerbated by the fact that regulator inputs and project requirements were constantly changing, as the British Energy Standards were being written based on our feedback as well.
Since the overall deadline was determined by the regulator and regulatory requirements seemed to be clearly defined in advance, using Waterfall methodology definitely appeared to be the right choice. However, we encountered various challenges during the project’s course: the regulator and the client were constantly changing requirements, while the deadline remained unchanged. Since the client required us to adhere to the original management system, we tried to get a handle on the project by introducing a parallel Waterfall, i.e. by dividing the project into several parallel parts, each of which we managed separately but simultaneously using Waterfall methodology. It was immediately clear that this would not help us achieve the objectives in a timely manner even after addition of members to the project team.
We took the following measures:
During the introduction of Agile methodology in this project, we relied on the following attributes:
- Preparation of enterprise architecture: we used the benefits of changes in the architecture of systems we had previously implemented, which allowed work to take place in parallel and ensured it was possible to share and change critical parts of the code.
- Long-term concept: in several previous projects, we had prepared the company for the upcoming changes and laid the foundations for agile methodology.
- Communication: we were looking for flexible parts of the project, i.e. requirements, that we could negotiate with the client. In this way we were at least partially able to manage the supplied product range in time, depending on what changes to the assignment landed on our desks. The client could see which parts were finished and functional, and could prioritize in time.
The introduction of the principles of Agile Development Management proved to be successful as only Agile was able to achieve the project’s overall objectives. Only two of the seven companies on the UK market with energy performance certificates managed to successfully deliver their certified products to the market within the required deadline, including our client. The software was delivered on time and in the required quality. Our client thereby gained a huge competitive advantage that was reflected in an increased number of customers and thus revenues. By switching to an Agile Management System we ensured the project’s success for our client, as we were almost the only ones on the market able to respond to the project’s constantly changing. Yet isn’t a constantly changing world a very common phenomenon these days, or even an expectation? We think so. Adoption of elements of Agile Software Development Management is therefore a necessary step for companies operating in today’s world. In addition, we believe that while Agile may have potential for a company in the area of processes, the Cloud will change efficiency and corporate management philosophy in general. Agile thinking will prepare a company for doing business in a Cloud environment, which presents huge opportunities and a number of open doors for companies today.