SourceTOAD Expertise

  • drupal logo

    Mythtv

    The Home brew PVR Project for the people
  • Joomla logo

    Joomla

    The award winning Content Management System and Web Framework
  • SugarCRM logo

    SugarCRM

    The industry standard Open Source software for Customer Relationship Management
  • drupal logo

    phpbb

    The popular Web forum package written in the PHP
  • drupal logo

    Drupal

    The Open Source Website Engine for everyone
  • Wordpress logo

    Wordpress

    The Open Source Blogging and Publishing platform
How to Build a Good Scope for Yourself and Your Developer
Written by Greg Ross-Munro   
Monday, 21 December 2009 19:00

Our clients come from a dramatically diverse pool of expectations and experience. Often, we’re managing the development of a web application for an insurance company one day and an iPhone game for a one-man start-up the next. About 80% of our projects start with an idea our client envisioned would solve a business need, and they normally have a pretty good idea of what they want and how they want it to work. In a perfect world, everyone who was not a professional programmer would understand IT systems well enough to explain their ideas in such a way that a developer would be able to KNOW exactly what they were being asked to build. In a perfect world, programmers would have the communication skills necessary to explain the limitations and ask the questions they would need to fully understand the client’s needs.

Unfortunately this is not a perfect world, so we end us with developers and clients going back and forth trying to arrive at the same destination. It can really help things move more smoothly if you have a very specific scope to start with (especially when you are building it yourself). Also, code, like art, is never truly finished, and as a result we will always have bugs. Now, unless you are interested in hiring a QA firm, you will probably be doing you bug checking yourself. So here are some tips to help you with the process of scoping a project and bug tracking it. These may seem extremely obvious to many, but it wouldn’t hurt to make sure you’re doing some of these things.

Scoping:

1. When you’re building a project, it’s a good idea to have a nice paragraph or two explaining why you are building the thing. Understanding the motivation behind an application can help a developer choose a certain route to take in building it.

2. Build a skeleton version of what you’re going to have made. Discuss the main parts of the system and use the SAME name for the SAME part consistently. E.g.:

a. A website that allows people to register for free tickets to concerts

b. Consisting of:

i. A homepage

ii. A registration page

iii. A profile editing page

iv. An About Us page

v. A Contact Us Page

 

Flow Chart

 

c. An administrative end to edit the content of the home page and the about us page, as well as enter new concerts.

d. Logic that will match people by their zip code to the category of concerts they enjoy.

3. Imagine that this is your table of contents now. Each of those sections should have its own paragraph describing (in plain English) what the intention of the section is and anything specific the programmer should know.

4. Make a flow diagram! Flow charts help people like us see how the process should work. If you are lucky enough to be a Mac user, I highly recommend Omnigraffle for making flows, and if you’re a Microsoft user, Visio is pretty good as well.

 

 

5. Don’t be afraid to sound like you are talking to the mentally disabled. It is much better to be overly specific rather than vague with something like, “then make it work whichever way you think is best,” and then be unhappy with the result.

6. Make lots of pictures and give lots of examples. Screencast is free and easy to use, and it can really help you show a developer what you’re thinking

These few tips might help you have a better experience and a better relationship with your friendly neighborhood developer, but if you’re in Kansas City and your developer is in Tampa Florida, they can completely save a project.

Next time, I’ll give you some tips on how to bug test and report the bugs to your developer, so stay tuned!


Rate this article

(0 votes)

Latest articles from Greg Ross-Munro