The software development process can often be hard to understand or visualise because of its virtual nature. Yet it is important to get to grips with it if you are planning on getting a software application built. We've put together this scenario that everyone can all relate to. It should help you to understand the software development process better and make it easier for you to get what you want out of your development or build.
Building a software application goes through the same process as building a house.
Building requirements or Functional requirement
The first thing you do is decide what you want in your house - how many rooms, bathrooms, storage, car parks etc. and a rough plan of where you would like things to go. This is the equivalent of a functional requirement.
Estimate of cost
You then take your functional requirement to an architect who will give suggestions on better ways to meet the requirements and options to improve the functional requirements. The architect can then provide you with an estimate of cost. In the building industry this is typically done on a square meter basis. In a software application, this is considerably more complex.
Plans and System specification
If the estimate meets your budget, you then contract the architect to draw up the plans for the house which indicate load bearing weights, materials to use, utilities, etc. This is the equivalent of a system specification.
Quote and Time lines
The system specification is then used to contract a builder to quote on the build stage of the project. If you accept the quote you pay the builder a progress payment so the builder has the funds available to commit the resources to the build. Timelines for the build are determined. Quite often the builder is working on other builds, so the time line is determined from this. This is the equivalent of the software development process.
Additions & Alterations
Any additions and alterations to the existing plans are taken back to the architect who incorporates them into the plan and the builder then quotes on making the changes and specifies the extra time required to complete the build. Once the quote is approved, the changes are integrated into the build and the timelines are adjusted appropriately.
Milestones
As the build progresses, the project manager reports to you on the progress of the build and requests progress payments as milestones are reached.
Review and testing
On completing the build you review the building and anything that doesn’t meet the plans, or isn't working as it should be, is addressed by the builder. This is the equivalent of user acceptance testing.
Handover and warranty period
After the building has been accepted, handover is performed and the final payment for the build is made. The warranty period then comes into effect.
Development is the process of designing and building applications to perform specific business functions on the Internet or desktop environment. Find out more about Expert's development process or contact us to get a quote