In the world of software development, the two most common management methodologies are Waterfall and Agile. Both methods have their own set of guidelines and best practices that outlines the steps and processes involved in the creation of software, and provide a framework for planning, organising, and managing software projects, from requirements gathering to testing and deployment. Our approach is to typically use a combination of the two methodologies.  

Waterfall

The Waterfall methodology is a sequential approach to software development where each phase of the project must be completed before moving on to the next. The phases typically include requirements gathering, design, development, testing, and deployment. The main advantage of the Waterfall approach is that it allows for clear planning and organization, and it can be easier to control costs and schedules. However, the downside is that it can be rigid and doesn't allow for much flexibility. If changes need to be made during the project, it can be difficult to incorporate them into the schedule and budget.

Agile

Agile is a flexible, iterative approach to software development that prioritises collaboration and adaptability. Instead of a sequential approach, Agile divides the project into smaller, more manageable chunks called sprints. After each sprint, the team gets feedback, makes necessary adjustments, and moves on to the next sprint. The Agile approach is designed to be flexible and adaptable, allowing for changes and adjustments to be made as the project progresses. The main advantage of the Agile approach is that it allows for rapid delivery and can be more responsive to changes in the market or project requirements. However, the downside is that it can be less predictable and harder to control costs and schedules.

Our Approach

At the start of a custom software project, we'll work towards creating an initial version or Minimum Viable Product (MVP). This first version allows our customers to get a first look and a chance to test it, and give feedback so any necessary changes can be made while the project is still in its infancy. In these early stages, the Waterfall methodology is often the most suitable approach. This method involves planning and executing each phase of the project in a linear, sequential manner. It provides a clear roadmap for the project, making it easier to manage expectations, allocate resources, and track progress. 

Once the first main version (which is typically the version after the MVP) has been delivered, we'll typically then switch to Agile working. Agile is an iterative approach that allows our team to adapt to changes and prioritise work based on feedback and requests from customers. It's well-suited to projects that involve a lot of uncertainty or where requirements are likely to change frequently. By using Agile, our team will be able to respond to requests for changes quickly, delivering new features and improvements to customers in a timely manner. This approach encourages collaboration between the development team and the customers, resulting in a product that meets their needs and is built in a way that aligns with their business goals.

Customer Portal

Our new online client portal is a game-changer for the way customers communicate their needs and interact with us. The portal was created with the goal of streamlining communication and improving the overall experience for our customers. It replaces the previously used methods of using emails and shared spreadsheets, making the process of requesting changes, reporting bugs, and managing budgets more efficient and user-friendly.

One of the key benefits of the client portal is that it provides a centralised platform for our customers to enter and prioritise their 'wish list' of changes, report bugs, and set a monthly development budget/cap. All communication is stored in one place, eliminating the need for multiple emails and shared spreadsheets, making it easier for customers to keep track of their requests and for our team to manage them efficiently.

With the client portal, customers have complete control over their development budget, setting a monthly cap and ensuring their expenses stay within their budget constraints. 

Our goal with the client portal is to simplify the process of requesting changes and reporting bugs. We believe this will lead to improved communication and collaboration between customers and our development team, resulting in software that better meets the customers' needs and supports their business goals.

Planning