App Development – Mobile Apps and Web-Based
If you’d like to have a mobile app or web-based system, the most important part of that is getting it developed. The development includes working out the functionality, implementing that functionality, testing it and releasing so it is available to use. Historically, the most common approach was a ‘waterfall’ approach, however in more recent times an approach using ‘agile’ methodology is often preferred.
What is Agile Methodology?
Agile methodology is an iterative approach to development, that uses ‘sprints’ – typically 1 or 2 weeks long. During each sprint a number of work items are worked on, each of which is prioritised. Once a sprint is complete, the customer is able to feedback. This is then used to plan the next sprint – reprioritising, adjusting or creating new work items as required. The agile approach is often implemented using what is known as SCRUM.
Planning an App Project?
Our agile approach delivers high-quality apps faster, with flexibility to adapt as your needs evolve.
What is Waterfall?
The waterfall approach to development is a more traditional sequential approach. As the waterfall name suggests, it breaks the project into a number of phases. It is not possible to go to the next until the previous has been completed. These phases are typically:
- Define requirements
- Design (both visual and architecture)
- Implementation
- QA and testing
- Deployment / release
- Support and maintenance
Agile vs Waterfall for App Development

Agile and waterfall are quite contrasting approaches, with some significant differences. Each approach has a number of advantages and disadvantages.
| Agile | Waterfall | |
| Feature Changes | Changes are encouraged – and can be accommodated and prioritised | Defined at the start, little flexibility to change these (without adding to the scope and cost) |
| Client Involvement | Client (often known as a ‘stakeholder’) needs to be closely involved regularly | Client is most involved at the start and during key milestones |
| Feedback Speed | First feedback is fairly early during development and then regularly then onwards | Feedback at key milestones only. First feedback is often fairly near the end of the development |
| Testing | Done throughout the development, easier to fix when found earlier | Often done at the end, can be harder to fix at that stage |
| Cost / Funding | Uses a time-based approach – e.g. 5 man-days / week. (We also provide a range for total cost, based on baseline requirements) | Fixed cost, based on features and requirements as defined at the start. Any changes require quoting and additional cost |
Which Approach is Best for App Development?
For app development (including both mobile apps and web-based software), the best approach depends on the size of the project. For a very small project with fixed requirements the waterfall approach can work best. However for the majority of projects, the agile approach works better. Overall the agile approach would prove to be lower cost than waterfall and deliver a better quality product faster. Agile has a key advantage in that the detail of requirements are not needed at the start – these can be discovered and refined as the project progresses.
We use agile for the majority of our developments. The exception is for small developments with few requirements, where we use a waterfall approach. Even for developments using the agile approach, we do however provide a top level ballpark estimate (based on what we know) to help with overall cost / budgeting.

