How do you approach building a large web application?

Answer by Laurence McCahill:

We start with the Lean Canvas, although we hack it a little to add in 2 more boxes – purpose and vision.

Purpose – Why are you doing what you're doing (other than the profit). Unless we know what's driving you and your team we can't help champion your cause. There's usually a motivation other than money.

Vision – What change do you want to see in the world? What does success look like to you? Unless you know what the goal is, you can't score…

Business model
You need to get the business model right before you start writing any code or perfecting any pixels. Test out lots of ideas, possible solutions and customer segments to know that there's a need for what you're building.

Create different canvases for different segments to see where the real pain lies.

Create user stories and personas to picture your audience and the real world problems you're trying to solve. e.g what would XXXX help me do? What will XXXX help me do that another app can't? Only include features that relate to a particular pain point. Here's a one page intro to customer development

More recently we've adopted a technique called Behavioural Mapping (more info here) which helps to see the gaps between your user's life today and 1 year from now). It's quick and awesome, bringing valuable insight and helping to get away from technology and features to real world use and outcomes.

Create some low-fi early prototypes (paper, wireframes, etc) and test these with your early adopters. Iterate the solution based on customer feedback rather than too many assumptions. Look for strong signals and double down on these. Always look for opportunities and be open to new ideas as the project evolves. DON'T write a 50 page technical specification or detailed schema until you've validated your business model (and even then I wouldn't recommend it). Develop prototypes rather than documenting how things would work.

First release
Release a core product/MVP with a minimum feature set. Just remember, a web app is only released not finished, so hold back on 'nice to have' features until you've tested the core. Cement the foundations in properly and it will make it easier to fit the roof and windows….

Get the balance right between perfectionism and releasing early. ie. don't release something crappy, but equally don't spend 6 months getting it perfect only to find it's a product nobody wants. It's not easy but if you get it right you'll be ahead of the game.

Add some constraints
In an ideal world you'd limit the time and budget so you then trim back on scope to fit in with this. We work on a 12 week turnaround for an MVP which focuses the efforts and help prioritise on the important stuff (anything else can wait until the next iteration).

Good luck!

View Answer on Quora


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s