In our personal opinion, we believe the waterfall development is not the best idea if you are a technology startup. If you are using the waterfall development method, you will find that it treats the requirements, design, testing and coding of your project as individual components and as completely separate phases of your software project. In the startup world, like everywhere else, everything is always changing, but here at a faster pace, this setup can end up being very risky.
The development team is forced to cut testing short, which makes the project suffer in the long run.
Another aspect of software development is that working software is never produced until the end of the project, the client would not really know where they stand until they reach the end if they are using the waterfall development method. In our mind, the last 20% of the project seems to be longer than the previous 80% already worked on.
Neither clients nor developers are completely sure whether they are going to deliver or receive everything on time until the end, by when it is usually too late even for damage control. There are risks with the technology since no one can test out the product nor the architecture until the team is done with the project.
HOW TO HANDLE PROJECTS WHEN THEY OVERRUN THE INITIAL ESTIMATES?
This happens quite a bit and lets’ face it, often there is nothing much we can do about it. It is a frightful issue but we have to tackle it head on. A recent study on about 50,000 different software projects showed that most projects either overrun, cost, time or both. Let’s break these down further and take a closer look at the numbers.
The average cost overrun of the projects the study went through was 189% of the initially mentioned cost estimate. To add some more numbers to better understand this instance, a development company mentioned that a project would cost $100,000 but after all the work was done it ended up costing $189,000.
The average time overrun of projects from timelines provided at the beginning of the project to what actually pans out is 222%. From the sample that was researched, one-third experienced overruns of 200 – 300%. Adding an example with a few numbers, if you were told a project would take 5 months to get done, be prepared to receive the completed project in about 11 months.
The Iron Triangle of Software Development
This refers to a triangle with three points, price, time and scope, where any one of the three points would have to be flexible, while the other two can stay constant.
The major reason why so many software development companies fail is that clients set unrealistic goals of the iron triangle of software development Scope (Requirements) Time (Duration) Price (Cost)
The largest issue is pushing the development team to deliver a project matching all three constraints. It is not always possible and if it is, chances are that the product received would be of an inferior quality. If the team you are working with is working towards giving you a very good product, it would either be late or go over budget. If you are trying to build the best product, you have to make sure that you understand how the Iron triangle works.
The iron triangle states that of the three sides mentioned, scope, time and price, you have to be willing to make a change to at least one of them, otherwise your project will suffer.
When you end up defining the price, timelines, and requirements, you are restricting the development team from maneuvering around and they have their hands tied.
Change the image of an iron triangle to maybe an elastic triangle, where you would have to change one of the requirements to give the development team room to work. Software development cannot be predicted 100% and there is always room for error, so being lenient with one of the dimensions is something that can guarantee quality work within the other two requirements.