October 07, 2015 The Mechanics of MVP Software Development MVP software development is a lot like maintaining a prized vehicle. There are teams, processes and procedures that keep things running smoothly. Jamie Bolseth MVP software development is a lot like maintaining a prized vehicle. There are teams, processes and procedures that keep the car running smoothly — like an oil change or rotating your tires. Similarly the Agile process keeps MVP app development projects on track. A window into Agile methodology Agile development methodology is substantially different from the more sequential waterfall style of project management. Rather than completing project phases in a predefined order like a car on an assembly line, teams using Agile methodology revisit requirements, development and design throughout the course of the project during incremental sprints. At the end of each sprint, a shippable product increment is created. Using Agile Methodology, every two-weeks teams hold a period of planning, development, progress and review called a sprint. Teams running an Agile process for their MVP software development can inspect and evolve during the course of the project, recalibrating the release, optimizing value and re-steering the course of the project if needed. Highly Agile organizations met their goals and business intent 75% of the time compared to the 56% who met their goals and intent using another project management methodology or without a structured approach all together. Assembling iterative, interdependent development teams Conceptualization and ideation are the initial project stages that ensure Agile product development is well-positioned for success. Collaboration during the course of the project is essential. Thus, choosing the right team can spell the difference between a model project or a mammoth disaster. Have a clear understanding of your need before you approach a mobile app development company. Know what purpose you want your solution to serve. Determining your users and business needs will help guide initial strategy discussions with the software provider you choose. If you maintain an ongoing relationship with a mobile software provider and are debating bringing your next project to them, review past results carefully. Sometimes you just have to cut the cord. Consider this scenario. You released an app or web solution a year or two ago with one partner. Lately, things just haven’t been functioning as they should. How do you know whether you should cut ties and begin work with a new provider or adapt your current solution? Look for these tell-tale signs your relationship with your current software provider has run its course: Your software partner isn’t full-service. The inability to reach users on mobile or through a web browser is another flashing red beacon to move on to something new. This is where your users are and want to be. Your solution needs to be available there too. You’ve excessively customized the white-label solution you first released. This red flag also screams, “Time to build a new product.” If you have needs greater than what a basic solution can provide, it’s time to begin working with a team who can help you realize them. Your current provider has become notorious for over-extending on projects. When mobile app development companies overextend beyond their capabilities and over promise beyond what they can deliver, there are very real costs associated. The costs beyond just development dollars are important too. What does over-schedule and over-budget delivery mean for businesses? It might mean the launch of a new brand or other internal software is delayed, or the growth of your business is constrained. Worst of all, a competitor may beat you to market. You feel compelled to review the review. After each sprint review, assess the progress. Ask yourself whether the work completed by your provider matches your expected timeline and budget. If not, be vocal. Your mobile app development partner should be guiding the process, not the other way around. If you’re bringing more ideas and process to the table then they are, there’s a problem. If you determine it’s necessary to start working with a new partner, ask yourself these questions so you have answers when your new partner asks you. Who are my users? What are their business needs? What value will my app add? What are the high-level features under consideration? Once you’ve chosen your software provider whether that means sticking with your current provider or finding a new team, the real work can begin. Understanding MVP software development Markedly different from its meaning in sports, in web or mobile app software development MVP stands for the Minimum Viable Product. This is the first complete representation of the product with a limited feature set defined during prioritization. The end-result is the leanest first version of the app that satisfies client needs and offers users value. Defining your MVP and confirming your provider can help you realize it is the second step to running an effective project. Clarifying your needs and setting your priorities Your needs and priorities will inform your MVP. The best partners ask about your users and business needs to help you set the requirements of your app and the features you need to achieve the behavior and actions you expect to see. Your partner can play a role many within an internal organization cannot. They can be the “objective mediator” helping to call out value in certain features and point out where costly pitfalls may be lurking. It’s easy to get side-tracked by priority assignments that are passed “down the food chain” — so to speak. Rather than a VP calling out a feature as a “good idea” and it bubbling to the top due to the social authority associated with the request, you provider can help you weight the benefits or challenges with each internal ask as the project progresses. The key to a successful project is coming to an understanding with your software provider about what you both expect to see in the final project. The right software development partner should spend a lot of time asking about the features of the project from your users’ perspective. Sign of success: Your software partner asks questions from the user’s perspective. Your software development partner should work with you to understand your basic needs, business objectives and goals. Design software users can’t resist and keep them coming back. A user’s experience accessing software depends on the amount of value they gain from it. At the very beginning of your process, think about what your user needs and expects from your solution. As you work with a software partner to map how users move through your app, portal or website, break their actions into steps. Then create an interface that guides them seamlessly through each. Put yourself in your user’s shoes. The best strategists, designers and developers are empathetic. They adopt their users’ mindset and think about the features and experience that would provide the most value. Focus on the core. Back to our car analogy, just as an engine powers movement. The list of features you prioritize will guide momentum during the MVP software development process. Without requirement gathering and feature prioritization, the product owner and project manager won’t have enough information to set a team loose designing and developing the project because they won’t have enough information to understand the project cost and time required. The race to feature complete The “race to feature complete” is the risk management and development strategy we use to identify, plan and develop core functionality. Once you’ve worked with a software partner to define your MVP, you’ve identified a given number of features to complete before launch. Let’s say there are 10. Work on those features until they are functional but not polished. Then use your extra time and budget before launch to double back and take higher priority features from “good” to “perfect.” For example, suppose you’re working on a reader app. You could spend hours finessing the page turn animation. Or, you could code it so it’s workable, and return to polish later. Don’t get stuck in a continuous loop perpetually fixing and editing one feature. If feature complete isn’t achieved and the app doesn’t launch the component you spent so much time on — won’t matter anyway. Understand the cost of veering outside scope. Caution: Backtracking, rework and adding additional “bells and whistles” to the first release are key culprits responsible for driving up costs and pushing out your completion timetable. Prioritizing your features is crucial to staying on schedule and on budget. If you are on a tight deadline to complete core functionality, avoid the temptation to backtrack and add more features halfway through. This only serves to divert you from the core capabilities your solution needs to launch. Instead add them to the backlog. If you do choose to add features to your first iteration or reprioritize functionality, understand the cost. Don’t let perfection stand between you and working software. There’s always the opportunity to fine-tune in future iterations of your initial MVP concept. Continue working through the feature backlog after launch. Software development is a balancing act between time and value. How can you release an app that offers maximum functionality in the shortest time frame? In determining and working toward the software MVP defined during feature prioritization, additional functionality will remain in the backlog. Subsequent releases will involve working through the backlog. That’s why it’s important to make sure you haven’t bitten off more than you can chew with your MVP. You will revisit the backlog anyway. In some instances, you may groom the backlog and reprioritize features as you race to feature complete so previously high priority functionality may be exchanged for something with higher business value. Remember your teams are human. Sprint planning is integral to the success of a software development project. The meetings allow each team member to realistically estimate how long each task will take. It’s important to remember resources are not machines. Setting realistic timelines together safeguards everyone from overcommitting and under delivering during the development process. Why release a lean version of an MVP? Limiting the features in your first full iteration of the product allows you to gather user intelligence with less effort expended. Maybe your customer intelligence and a premonition you have every day at 3pm tells you your mobile or web app idea is a winner. An MVP allows you to put the voodoo aside and concentrate on a working representation of your concept. Remember: Simple experiences standout. When in doubt — simplify. Creating value for your users isn’t achieved by providing every feature imaginable, it’s achieved by choosing only the features users need. Research your target audience. It’s easy to say yes to features you think users may want. Instead, let your conclusions be driven by data, established use patterns and user empathy. It’s difficult to have a lot of features and a clear user experience at the same time. Tags MobileAgile Software ProcessDevelopment Share Share on Facebook Share on LinkedIn Share on Twitter Share Share on Facebook Share on LinkedIn Share on Twitter Sign up for our monthly newsletter. Sign up for our monthly newsletter.