before the code is written: 8 steps to get you prepared to build
TRANSCRIPT
Before the Code is Written: The 8 Steps of the Prep Cycle
June 20, 2013
Adam McGowanadam@�re�eld.com
Jeremy Sewelljeremy@�re�eld.com
http://www.�re�eld.comContact Us
You have an idea for a startup.
You're sure it will be a success if you can just get it built. Once you get enough users, investors will be knocking down your door for a piece of the action. With some capital in your pocket, you'll grow the business and your IPO won't be far o�.
HOLD ON.Before you put that expensive champagne on ice...
Let's talk a little about that �rst step: Turning an idea into a functioning application.
A lot of entrepreneurs want to start by hiring a designer and a developer, putting them in a room, and telling them what to build. This could work for
some, but a majority of time, it doesn't.
Whenever we begin an engagement with a new client or start a new internal project, we go through what we
call a Prep Cycle.
From having built a number of minimum viable products (MVPs) for clients and advising lots of entrepreneurs (at various stages), we've come up with a set of initial work that needs to
happen prior to bringing on any additional resources.
The Prep Cycle is when we make hard decisions, challenge initial assumptions, and set the plan to
move forward with the best chance for success — not just for the initial development, but also for the
building of the business.
We break the output of the Prep Cycle into the following 8 steps.
1. EVALUATE TEAM AND ROLES
We begin by assessing the individuals involved. What is their
expertise, domain knowledge, relevant skills, connections,
and availability? What are their strengths we can capitalize
upon? Are there gaps that we will need to �ll with other
cofounders or advisors? This isn't about the resources
necessary for designing and developing an application. This
is about the people that will manage the business, present
to investors, and sell the product.
2. SOLIDIFY BUSINESS OBJECTIVES
How will the app make money? How will it be funded until it
does? This is one of the most crucial steps that often gets
overlooked by overzealous entrepreneurs. We look at
overarching assumptions, �nancial projections, the market
penetration strategy, and the competitive landscape. We
need to make sure the business model makes sense and
when you hit your target audience — whether its partners,
customers, or investors — they are going to respond and
understand your mission and your value.
3. PARE DOWN KEY FUNCTIONALITY
We believe in an agile approach and when starting any new
venture, we believe you start with only the most crucial
features and functionality. We start by determining the key
interactions that will make the product successful and
outline the base functionality necessary. With a concrete
foundation, other features can be added, pivots can be
made, and user feedback can be addressed. We list out the
key functionality, debate �ercely, and continue to re�ne
until only the most essential features remain.
4. EXPLORE CREATIVE DIRECTION
This isn't the time for designing every button and detail, but
we like to begin by thinking about a design direction and a
communication strategy. We need to make sure all
collaborators are onboard with a tone and style that
matches the intended audience. Does the name of the
application make sense? Is success dependent upon certain
creative direction? Sometimes this will be as simple as an
interim logo, font choice, and color palette. Other times,
we'll produce a few mockups as a proof of concept.
5. CREATE USER FLOWS AND WIREFRAMES
Once we've set the base functionality and considered
creative requirements, we begin with a simple set of
diagrams that outline the overall layout, �ows, and user
experience. We don't believe in laying out every single view
of the application or writing long functional specs. We know
that we'll learn a lot once development begins and we want
to be prepared to change direction as need, but these basic
wireframes will create consensus and set a roadmap.
6. DETERMINE TECHNOLOGY REQUIREMENTS
There are a plethora of development languages, platforms,
APIs, and integrations that should be considered. We let the
necessary functionality drive these choices. We consider the
immediate and future requirements in determining needs
for hosting, database management, and coding.
7. ESTIMATE NECESSARY RESOURCES
By this point, we have a good grasp on what needs to be
built and we're in a position to make accurate forecasts on
the e�ort and resources necessary to launch successfully. For
some this means it's time to get started. For others, this is
the point when they go out to raise capital to move forward.
8. SET SCHEDULE AND MILESTONES
Now that we've de�ned our team, outlined the product, and
established the necessary resources to move forward, we set
concrete milestones and goals. Everyone has their
assignments and we're now in a position to get started.
This is where the real fun begins.