Example of a list of Requirements for a Simple Application

This web page is an example of a simple application (it is a web form): http://mummey.com/contactus.aspx. This form allows a visitor to enter his or her email address, a message and click on a submit button. When the user submits the required data, the data is sent in email form to a general mail box at mummey.com. An application of this size and complexity will take a programmer about 15 minutes to write. A full hour if you throw in testing, handing off to the client for user testing, writing proper documentation and publishing to production. However, this estimate could go up to several hours if you wanted the programmer to create artwork.

If you wanted a simple application like the one listed above, your requirements to a programmer would translate to something like this:

  1. One form that displays 6 items (welcome verbiage, navigation of some kind, graphics, form fields of email address and comments and a submit button).  We will provide the images and descriptions of the items to the programmer.
  2. The visitor to the form should be able to enter their email address, a message and then submit the message via a submit button.
  3. When the visitor submits the form by clicking on a submit button, the visitor email address and the message the user entered will be submitted as an email to this email address: xxxxx@xxxxx.com.

I need a programmer to write an application for me, where do I start?

Before finding a programmer, understand the basic application life cycle.  It is something like this:

  • Client comes up with a list of requirements (be as specific as possible).
  • Programmer is given requirements to study
  • Programmer gives estimate of time and cost of job based on requirements given
  • Programmer builds application
  • Client tests application and the programmer fixes any bugs in the application – this step loops until user agrees product is good. DANGER – it is in this step that scope creep can show its expensive head.  Scope creep is when a client at this point adds more requirements to the application, this is very easy to do because the client is excited about the project and the programmer is excited about the work and making the client happy.  If more requirements are thrown into the project at this point, the client needs to understand that the original estimate of cost and time no longer apply.  It is best to meet with programmer with a new set of requirements so the programmer can establish a new estimate of cost and time and if this new estimate exceeds the timeline of the client, then the application needs to be pushed to production as is with the original requirements and a new timeline/cost should be established for Phase II (new set of requirements) of the application with the programmer.
  • Programmer publishes the application to production.
  • Programmer delivers documentation in electronic form the client. Two forms of documentation are delivered: a user guide and a tech guide.  The user guide is a detailed step by step document of how a person would actually use the application (covering all of its features).  The tech guide is a detailed document containing the actual code of the application (or a link to where the actual code can be found), any passwords required of the application, detailed information regarding the database (if the application uses a database) and the language the application is written in.  The tech guide is to be given to any future programmers who may have to work on the application after the original programmer has won the lottery and moved to California:)
  • Client pays programmer.

Blog at WordPress.com.

Up ↑