The ground up…

August 20, 2007

Starting at the bottom of the application climb is the design specification. That can be the most time consuming part of the application and arguably the most important. I recommend Agile Development and Extreme Programming as some good reading. It’s important to start programming with a good definition if you don’t want to start more than once. However, I should mention that a truly complete specification is almost impossible to come by. Even in a small project the specification usually changes very soon (the only reason it was a small project was the spec wasn’t truly finished).

In my world you: 1). try to get a solid, hard-copy specification for an application 2). get some confirmation on the design and 3). start to quickly deliver small parts of yor application for acceptance testing from the client. This gives everybody something to feel good about and keeps you from having a overly worked-on specification for a project that is already starting to late.

Many people know what UML is and for those who don’t here is a primer. The hard-copy of a design specification can be pages of text that give you the clients ideas/instructions, but for a better start you will also have a set of visual diagrams to quickly relay key concepts to you and/or your team. These visual diagrams: Class, Use Case, Activity, Sequence and State Machine should be part of your initial efforts to define the specification before you go any farther than interface prototyping. Some would argue that you can’t start anything without these diagrams, however, I feel there are times when you need to solidify parts of the spec by getting some useful feedback from the client and that sometimes requires toys!

Up next I hope to talk about database design, where you can stick your SQL and not thinking too abstract…

As a side note (not a paid advertisement) I would recommend Agilian by Visual Paradigm as an excellent (possibly daunting at first) tool for implementing design diagrams into your application development process. A dry-erase board, notepad and copy machine works too.

One Response to “The ground up…”


  1. [...] that will be performed most often. When you start to build your database schema, look to your  class diagrams as guides and you may find the model fits nicely into tables and fields that are identical to your [...]


Leave a Reply