Custom software projects can be challenging if you’ve never been involved with one. They require a unique approach because the exact needs of a system can rarely be fully defined before development begins. While it’s hopeful to believe that all requirements of the system can be known upfront, this almost never happens in reality.
It’s okay to not know everything.
When we discuss a custom software development project with our clients, the majority only have a concept or a pain point that needs to be addressed, and are uncertain how to go about it. If that’s you, you’re not alone. After all, your focus is on improving your business and not designing software. That’s why we’re here for you.
Most projects will begin with an understanding of the challenges that need to be solved and a high-level roadmap to navigate them. As development proceeds, unforeseen issues or needs inevitably arise and must be addressed. This can be challenging if the project is months into development and a significant pivot must occur. One of our answers to this challenge is the creation of a concept ‘blueprint’.
You wouldn’t build a house without a blueprint.
‘Blueprint’ is our term for scoping out a project as a separate deliverable prior to doing any programming. But it’s far more than putting together a couple of graphs or relationship diagrams that roughly outline the major pieces of the project. We hold discovery meetings, gather requirements, and create a set of mockups to map out the major needs of the system. Then we’ll work with you to review and refine until we’ve captured the scope of the custom software project. We then collect all the information and provide it to you in a branded document.
But is that really Agile development?
You may be thinking… “Wait a second, building a Blueprint is not Agile!” But in fact, it actually allows the Agile process to work better. The intent of the Agile process is that we build the solution iteratively, allowing us to change our mind about features as we build the solution. The key to that is “as we build the solution.” We absolutely still use an Agile, flexible development process while we’re coding and testing, but we know from experience it helps immensely if proper planning and conversation happens before any development is started. This aligns the team on the goal of the solution and allows people to think ahead about what “may” be built. It even gives the development team a chance to give a high level estimate as to what the solution will take to build. This upfront planning makes sure everyone on the team is aligned. Then, once that occurs, we allow ourselves to discover new efficiencies and paths to the goal while we develop, which is truly the intent of the Agile process and where it thrives.
Benefits of the concept blueprint
One of the biggest benefits of the blueprinting process is potentially uncovering some of those unforeseen needs or issues before a single line of code has been set. In fact, we celebrate this as we’ve found a better way of solving our challenges and delivering a better service. Not to mention that this can help avoid costly pivots late into the project. Other benefits include:
- Confidence that everyone has a clear, shared vision of the end product
- More complete and accurate estimation of the project
- Documentation that the client can present to other stakeholders
- Save time and money by making revisions before any programming begins
- Discovery of possible challenges or roadblocks early in the process
- The cost is applied towards your custom software development when you are ready to get started
This process has proved very popular as the initial blueprint project cost is typically quite a bit lower than a full custom software project. It also helps provide much clearer information to help our clients decide if the time is right to move forward with their project. As an added benefit, the cost of the blueprint is then subtracted from the custom software project price if the client does decide to move forward. We’ve even created a sample document so you can see what a typical blueprint looks like.
This is just one of the ways Dorian Solutions goes above and beyond to ensure our clients have the information to feel confident in trusting us with their needs. We fully believe that business is personal, and want to provide the best experience and grow a partnership that helps our clients succeed.