How do I know if my software project will be successful?
This is a question we get asked quite frequently. It’s a very difficult one to answer when it comes to software innovation, as there is no single answer and the path to success is different for everyone. People often fear software development projects due to the investment required. This usually causes them to constantly question the trust that they’re putting into their software developers.
So, how do we remove that fear around the success of a software development project? Unfortunately, there’s no right or wrong answer. However, it can be addressed in a multitude of different ways. In this article we will share some of our processes that work well when de-risking a project.
The Two Key Software Development Project Risks
There are two things you need to be aware of when dealing with the risk of software development.
1. Software developers
The delivery of the functional requirements and technical competency of your developers.
2. Assumptions about users
Will users actually use the software you’re building? Keep in mind that only your assumptions won’t be enough to set your project for success. Assumptions are unvalidated information that is based on what we think a person or a user is going to do or want from the software. They must be discovered and either validated or removed.
To help you validate and remove assumptions, we go through a Discovery Phase. During this phase, we’re creating the requirements backlog and clickable prototypes that we can take to the end-users of the software. We identify assumptions to test before we actually build. We test and from those tests, we learn. We want to ensure that all assumptions are validated before we go into development, so we are sure what gets built adds value to the solution. This means we’re building user designed solutions, not just a shopping list of requirements. It de-risks the project to ensure that what is built will be used.
We strongly encourage our clients to go through the following tools before proceeding to the development. The Business Model Canvas, the Persona Builder, and User Interviews are probably the most important to validate your assumptions if you’re considering a software development project. You can bring these results to any software developer and it will provide useful context when building the project.
1. The Business Model Canvas
If you’re running your own business already, you’re probably aware of this. However, if you’re creating a new product or service that’s related to a software product, this might be something you should consider, sit down, and review.
We recommend you attempt the business model canvas first, before proceeding to the rest of the exercises. This will consist your list of assumptions and the other two activities are just going to help you validate the assumptions identified here.
2. User Personas
Personas are the various groups of people that are going to use the software. During the software development process, we refer to them as our users. Different users will have different goals and motivations. If you only focus on one or a few users, the other users may not be fully pleased. Make sure to write down who they are, what their behaviours are, their goals, beliefs and values. In doing so, you can use that to inform both the business canvas and which users you’re going to interview.
3. Discovery Interviews
We strongly recommend interviewing as many people as possible from each of your personas. That could be your staff, customers, and even strangers on the street. The more interviews you do the more patterns you will uncover, and the more learnings you would be able to validate. Researchers recommend doing somewhere between 50 – 80 of these interviews and try a combination of qualitative and quantitative interviews. The more you know your customer, the more you know the user, and the better customer-software fit you’re going to have.
We adopt an agile approach to building software. We scope for a period of time, build, and scope again. That creates a build, measure, and learn feedback cycle for the MVP.
Conclusion & Resources
There are also some other great resources to help. If you’re in Canada, make sure to look into Bank Development Canada (BDC). A fantastic program that gives that early stage validation and lays out other helpful resources.
Or if you’re a female founder, there’s a female founders impact program available.
So, how do you know your project is going to succeed? It’s all about de-risking your path to success. Ensure that the user is the absolute focus of development, your assumptions are validated, and these learnings are brought back into the software. We hope you find these insights valuable as you start building your innovative software with us.