How-to to run a software consulting business

Getting specifications from Clients

by shabda on October 16, 2011

Once you have client who wants to work with you, the first this you need to do is to get a specification of what they want you to build. This is particularly important if you are working with a fixed price quote.

It might surprise you, but some clients do not know the specifications themselves. At least not at a level you should have before you start development.

What is a good specification?

  • (A god specification will) Establish the basis for agreement between the customers and the suppliers on what the software product is to do.*

  • It should be complete. For example, instead of saying, Foo page should have comments, it needs to specify whether the comments will be ajaxed, what type of users can leave comments and such.

  • It should be comprehensive. If your software will have 10 types of screens (or pages), the specification needs to describe the 10 types, instead of describing one and claiming that other 9 are similar.
  • It should provide the baseline test cases. How will the software will be tested. What are the criteria to pass the tests?
  • What are the external API and infrastructure it will integrate with?
  • What are the performance characteristics it needs to meet?

How to get clients to write good specifications?

Sometimes clients may be wary of writing detailed specs. If that happens

  • Remind them that these specifications help you budget and estimate time
  • Remind that these help them think through all the scenarios

What should a good spec contain

(Not are required)

  • Textual description of what the software does
  • Wireframes explaining the UI
  • Data model with the data to capture
  • User stories
  • Test plan

Did I miss anything? Email us at [email protected]
Have you joined our newsletter yet

We cover Webdev, Django, SaaS, Mobile and cloud computing and
help you “Build amazing webapps”.

Leave a Comment

Previous post:

Next post:

Turning customers to repeat customers

The best way to get business is by getting more work from an existing customer. New customers cost money to acquire. They need to be nurtured before they will get trust with you to let you work on the most... »

Turning customers to repeat customers

Moving up the value chain

  If you want to grow the business without growing headcount the only way is the provide higher end services or to sell products. Do you sell services which can be productized? Do you have technology which can be sold... »

Moving up the value chain

Keeping costs low

As you start to scale the business, the overhead costs start increasing. Eg. When you are self employed you maybe doing billable work 90% of the time. As your business grows, you will have to add admin staff, accountants and... »

Keeping costs low

Browse Agiliq

  • Home
  • About Agiliq

    We develop bespoke web applications using Django, the related Python technology stack and the Jquery javascript library. We primarily work with web development companies as technology partners.

    Copyright © 2009-2011, Agiliq. All rights reserved.