It takes a lot of hard work, creativity and dedication to develop a product that is both functional and appealing to consumers. When appropriately executed, product development can result in increased profits for businesses, a broader user base or creating something truly beneficial to society.
Allia invited me, Jackson Howell from Riselabs, to present an Allia Impact Accelerator workshop on Product Development. I will share the slides used during the presentation in this article, including the content and sub-context.
Who is Jackson Howell?
I am the entrepreneur behind Riselabs, OKButton, BoxLokr and other startup ideas. At Riselabs, I help clients develop products specifically in digital technology and online.
What the workshop is about
During the workshop, we covered the following topics:
- What is an SRS?
- Will it fly?
- Validating your idea
- What’s an MVP?
- The “Concierge” MVP
- Finding resources or DIY
- Budgeting & Funding
- Timelines (and expectations)
- Intellectual Property & Contracts
Technical documentation is a written description of how to design, build, and test a product. It is necessary because it helps ensure that everyone involved in creating the product understands the requirements and can work efficiently and effectively to produce a high-quality product. Good technical documentation can help reduce mistakes and misunderstandings, saving time and money in the long run.
A great resource: https://stackoverflow.blog/2020/04/06/a-practical-guide-to-writing-technical-specs/
Points to consider about technical documentation:
- You’re excited! It’s go time! Right?
- You’ve got your idea in your head, but you need to slow down
- Have you written it out?
- Could you hand someone a document that explains it all?
- What about someone not in your industry/area?
- How deep are the docs? Do they explain the top-level or all of the details?
- Have you consulted with an expert?
- Please keep it simple in the intro; go nuts on the detail
- List EVERYTHING (even obvious stuff)
- Have you written out all your endpoints?
- Use cases?
User cases are scenarios that describe how a user might interact with a product. They are a way to specify the required behaviour of a system clearly and concisely. By writing user cases, you can ensure that your product meets the needs of your users.
There are different types of user cases, but the most common are:
1. Use case: This type of use case describes how a user will use the product. It includes information about the goals of the user, the steps they will take to achieve those goals and any possible problems they might encounter.
2. System use case: This type describes how a user will use the system. It includes information about how users will access the system, what functions it will perform, and any possible problems.
3. Scenario: A scenario is a specific instance of a use case or system use case. It includes all the details necessary to describe how the product will be used in a particular situation.
4. Story: A story is a narrative description of a scenario that uses one or more personas to illustrate how the product might be used. Stories can help you better understand how users might interact with your product and can be used to generate ideas for new features or functionality.
SRS (Software Requirements Specification)
An SRS, or software requirements specification, is a document that describes the functionality of a software product. It includes a detailed description of what the software should do and any constraints on how it should be built. The SRS is used as a blueprint during the software development process and can be used to verify that the final product meets the requirements.
Points raised during the workshop on your SRS:
- An SRS is a lot deeper than writing your ideas out
- A dev company can help you write this (which might be wise) – but they will charge for the time!
- An SRS is your blueprint for building your product.
Will it fly?
Market demand assesses whether there is a need for the product. This includes assessing the size of the target market, the competition, and the potential customers’ willingness to pay for the product.
Technical feasibility assesses whether you can build the product with available resources. This includes assessing the team’s technical skills, the availability of technology, and the time required to develop the product. Do you have the skills to build the product? Will you need external support?
Financial viability assesses whether the product can be developed and sold profitably. This includes assessing the costs of developing and marketing the product, the expected revenue from sales, and the business’s profitability.
Scale viability. One of the most important factors to consider when launching a new product is whether it can scale. This term refers to the ability of a product to grow and meet the increasing demands of customers. If your product can’t handle that growth, it (and you) will quickly become overwhelmed and fail.
Validating your idea
The best way to validate your idea is to get feedback from potential users. You can do this through user research, surveys, interviews, or focus groups.
Surveys are a type of user research that involves asking questions to a group of people. Surveys can collect quantitative data about a population, such as their demographics or opinions about a product.
Interviews are a type of user research that involves talking to people one-on-one to understand their needs and how they interact with products. Interviews can generate qualitative data about users, such as their opinions or behaviours.
Focus groups are a type of user research that involves bringing together a group of people to discuss a topic. You can use focus groups to generate ideas for new features, understand user behaviours, or assess the usability of a product.
When validating your idea, focus on the following:
- Get real-world advice: speak to an expert, developer or (risky) a dev company (risk: they may not be honest if an idea is not viable!).
- Get friends/colleagues involved, but be mindful that friends will usually always be positive (even about a bad idea).
- Put your idea out there and be humble – let the world tell you.
- Leave nothing to chance – get it written down and documented!
Building a prototype
Building a prototype is an excellent way to test if your product will fly.
A prototype is a simplified version of the product that allows you to test its functionality and get feedback from users. Building a prototype can help you validate your idea, assess user needs, and identify any problems with the product before you invest too much time and money in development.
Assessing your idea
Once you have user feedback, assessing your idea is essential to ensure it is feasible and viable. This assessment should consider the technical feasibility of the product, the market demand for the product, and the financial viability of the business. By considering all of these factors, you can make sure that your product is something that can you can successfully develop and sell.
MVP (Minimal Viable Product)
“If you are not embarrassed by your first product, you launched too late.”
– American entrepreneur Reid Hoffman
An MVP is a scaled-down, prototype version of your product that allows you to test its feasibility and viability with potential users. It is vital to build an MVP before investing too much time and money in development, as it can help you validate your idea, assess user needs, and identify any problems with the product.
Building an MVP can be an excellent way to get feedback from users without spending too much time or money on development. It is crucial to keep the MVP simple, as the goal is to test the concept, not the product itself.
We discuss an MVP in more detail in this article https://riselabs.co.uk/blog/why-you-should-consider-building-an-mvp/.
Concierge MVPs involve assisting your users to achieve their goals manually to validate whether there is a demand for what you’re offering – and building a product isn’t even required.
I learnt the term from Eric Ries, the author of Lean Startup.
For example, if you are building a food delivery service, the first version of your product, such as an app or a website, may simply be an online form. You then take a user’s order manually to the restaurant by calling them directly, placing the order and paying over the phone. You then deliver the food to the user personally – but the user is non-the-wiser about how the whole process worked, and they assume it was all automatic with connected systems.
Creating a concierge MVP is a great way to test a concept without investing in the design or development of anything complicated (and costly).
DIY, Teams and Resources
There are several online tools and resources that you can use to build your product without hiring developers. These tools allow you to create prototypes and test your product with users without writing any code.
- How complex is your MVP?
- Could you build it yourself with a basic website, WordPress, SquareSpace, Shopify etc.?
- How could you save money at this stage to prove and validate your idea?
- Remember: it doesn’t have to be perfect – it can suck for the first version!
- You will learn a lot about the process and development requirements
- Never releasing anything is pointless
- Don’t be shy! The internet is full of early concepts.
Tools such as Proto.io and InVision allow you to create prototypes of your product, while services such as UserTesting.com will enable you to test your prototypes with real users. These tools and services are affordable and easy to use, making them a great option for businesses that want to develop their product without investing in development costs.
Finding Resources – what will you need?
When it comes to finding developers to help build your product, many online resources can help. One option is to post a job listing on online job boards, such as Indeed or Monster if you want to hire long-term. This will allow you to connect with developers looking for new opportunities.
Shorter freelance or contractor hiring
Another option is to search online for development firms or individual developers, such as freelancers or contractors, through online directories such as PeoplePerHour or Upwork. You can also find reviews of development firms and individual developers on sites like Clutch or Glassdoor.
For example, Riselabs has worked with multiple developers from Upwork, spending over $60,000 on the platform so far.
Finally, you can reach out to your network of friends and colleagues for referrals. If someone you know has worked with a good developer, they may be able to refer you to them.
Budget & Costs
How much does a typical web development project cost in pounds?
This is a difficult question to answer, as the cost of a web development project can vary greatly depending on the scope and complexity of the project. However, some ballpark figures for common web development projects include:
- A simple website design project typically costs between £1,000 and £3,000
- A more complex website design project with custom functionality or eCommerce integration typically costs between £3,000 and £10,000
- A custom web application typically costs between £10,000 and £50,000
An MVP may cost considerably less as it will utilise fewer features, thus reducing the time required to develop the first version.
The budget can go fast!
Developing software can be costly, and knowing how quickly you can burn through a budget is important. It is easy to underestimate the time and resources required to build a functional and appealing product, so it is important to be realistic about what is possible within your budget.
If you are not careful, you can quickly overrun your budget by underestimating the time and resources required for the development.
It is essential to have a clear idea of what you want to build and how much it will cost and be realistic about the time required for the development. Working with a developer or development firm can help you better understand the costs and time needed for your project.
It is also essential to be mindful of the ongoing costs associated with software development. For example, you may need to budget for continued support and maintenance after the product’s initial launch.
Timelines & Expectations
- Set an estimated delivery date; it’s good to work to a target date
- Check your resources’ realistic deadline; if anyone hesitates, revise the deadline!
- Ask your developers to create sprints: ask what they will do and when they will do it.
- Make sure you have enough time for design! UX is important; don’t rush it
- Be aware of any unknowns that might cause a delay
Depending on the project’s complexity, it can take a few weeks to several months to build a typical web development product. It is important to be realistic about the time required for development and factor in potential delays.
When working with a developer or development firm, it is crucial to establish clear timelines and expectations upfront. This will help to avoid any misunderstandings or delays down the road.
It is also important to remember that software development is a process that can take time – it is not something that you can rush without compromising quality.
The best way to ensure a successful product launch is to allow enough time for development and testing. Establishing clear timelines and expectations will help to ensure that you can hit your target launch date.
The information below is provided as information only and not as legal advice! We recommend speaking to a legal professional when protecting your IP.
Intellectual property (IP) is a legal term that refers to creations of the mind, such as inventions, literary and artistic works, symbols, names, images, and designs used in commerce. IP is protected by law and can be licensed, sold, or transferred to others.
In software development, intellectual property can include the software product’s source code, the website or app’s design, or any other creative work related to the project. Protecting your intellectual property from unauthorised use or copying is vital and establishing clear ownership rights.
However, be mindful that many projects – especially MVPs – often can be built from a combination of pre-existing technology, making it difficult to protect all aspects of your IP.
It is important to consult with a legal professional experienced in intellectual property law to determine which type of protection is best for your software development project.
After all this preparation, what is the typical development process?
Once you have a validated and feasible idea, it’s time to start developing your product! We can divide the development process into four main stages: ideation, design, development, and testing.
Ideation is the process stage where you generate ideas for the product, such as brainstorming features, defining the product’s purpose, and creating a concept.
Design is the process stage of turning your ideas into a tangible product – we create wireframes, prototypes, and user flows.
Development is the stage of the process where you build the product. This includes writing code, designing graphics, and developing algorithms.
Testing is the stage of the process where you assess the quality of the product. This includes usability testing, performance testing, and compatibility testing.
5. Releasing the product
After you have developed and tested your product, it’s time to release it to the world! This stage includes creating a marketing plan, launching the product, and post-launch support.
6. Creating a marketing plan
A marketing plan is a document that outlines how you will market your product. This includes identifying your target market, creating marketing materials, and setting a budget.
7. Launching the product
Launching the product is when you make it available to the public. You can do this through a website, an app store, or a distribution platform.
8. Post-launch support
Post-launch support is the stage of the process where you provide customer support and make sure the product is running smoothly. This includes fixing bugs, adding new features, and providing customer service.
Product development can be a challenging and exciting process. It requires a lot of creativity, hard work, and dedication to create a product that is functional and appealing to consumers. Product development processes may result in significant rewards for businesses! You can improve your chances of success by considering all the elements involved in creating a product.
Work with Riselabs to develop your product.
At Riselabs, we don’t believe in luck; we believe the right people make things work like clockwork. Talk to us today about building a team to develop your product.