As detailed in the Capstone Project Brainstorming Homework, you will craft a cumulative independent capstone project in week 5 of this course. You will be required to submit a project proposal to your instructor before you begin. This proposal will outline your minimum viable product (MVP), and the developmental roadmap you’ll follow to create it.
Before we begin proposals, let’s learn more about minimum viable products and the benefits they offer. This will help ensure you approach your capstone project in the most efficient manner, and have a functioning application to demonstrate at the end of this course.
In web development, MVP stands for minimum viable product. As the name implies, this is the minimum or most basic iteration or version of an application that fulfills the sole purpose it is meant to achieve. That is, the problem the application is meant to solve, or the service it is supposed to offer to the user.
Let’s look at an example of an MVP. Consider the following quote from Gerry Clap’s response to the question ”What is a minimum viable product?” on Quora:
Let's pretend you're building a startup with the goal of creating the best donut ever.
The product team starts off by building a plain donut. At this point it's considered an MVP. The product works, but it's probably not quite the best donut product out there. Now the team can ask their customers questions about the donut, like:
- What do like the most about the donut?
- If you could choose any topping, what topping would you add?
- Would you prefer a donut in a different shape?
- And, so on.
Using this newfound validated learning from their customers, the team can create a better donut. But, depending on the context of the customers that provided feedback, the team can have wildly varying results:
- In this particular case, it's to add candy sprinkles.
- In a different market, with different customers, those customers may of wanted a chocolate donut.
- If the team spoke to customers in another country, they may of [sic] wanted a strawberry donut._
By following this MVP process to create our product, we reap two distinct benefits:
We have a functioning product completed sooner. While it may not have all the fancy features we envision, it’s better to prioritize building functioning prototype with fewer features than to attempt adding too many features at once, and fail to provide a functioning project by the deadline. You can always add those extra features after your basic MVP is finished.
We can also gather user feedback before adding extra features. After creating your MVP sample users can beta test it and provide feedback. This allows you to determine what additional features users actually want.
As described here, you will submit a project proposal to your instructor, then work toward developing your MVP before integrating additional features. Let’s walk through what this workflow will look like:
In your proposal you will identify the primary goal or purpose of the application. What problem is this project meant to solve? What service is it meant to offer the user?
You will also determine the bare minimum features and functionalities your application requires to meet that goal or purpose.
If necessary, your instructor will provide feedback on your project idea and scope before week 5.
As you begin developing your project, focus only on the MVP features you identified in your proposal.
Once that functionality is present, commit and push to master. The development process isn’t over, but you can rest-assured that you’ll have a functioning version ready to go. As you know, additional features should be developed on their own branches, and only pushed to master when you confirm they’re 100% functional and pass all tests.
Gather feedback. Ask potential users what features they would like to see. If you complete your MVP before the end of week 5, ask your peers or instructor for feedback. If you complete it just before Friday, use the trade show as an opportunity to gather feedback.
Continue adding features to improve your project’s functionality and user experience. Take user feedback into account when deciding which extra features to implement before presenting your project to potential employers at Demo Day.
Are you ready? Continue on to the next lesson to see the proposal template, and begin constructing your own MVP.