What Does It Take To Develop Good Software?

by Michael Cannon in Tech · 0 comments

It takes a variety of resources such as people, money, time, and materials to build to a successful software package. The package size doesn’t really matter for all of the activities mentioned below are hit upon at some point in the development process.

Since computer science began in the 1950′s to present, it has been found that 85% of all software projects are failures. Many reasons contribute to failed software through breaking project schedules, busting time and materials budgets, not completing a project, to even successfully delivering a package but the client doesn’t use it for lack of quick reference documentation.

In other statistics and through personal experience, I’ve found this to be true, 35% to 75% of an allotted schedule should be contributed to the planning of a successful project. However, in reality, it seems that barely 10% to 25% of a schedule is spent in planning and the rest is in coding, debugging, and too many rewrites.

Despite my own personal preference to get coding quickly, I dislike writing bad code over and over again from the lack of proper documented specifications and guidelines. Yes, I’ve learned the hard way that even on a 10-hour project, I should spend a couple of hours planning so that it doesn’t become a profit losing 20-hour project.

The following activities are all components to effective software development.

  • System Specification
  • Requirements Analysis
  • Architectural Design
  • Detailed Design
  • Coding and Debugging
  • Unit Testing
  • System Testing
  • Maintenance

When followed sequentially or through a mixed cycle, a projects success will greatly increase. Please understand though, a successful project needs commitment and buy-in from all parties involved otherwise, a creeping may come into play and morale drops from lack of an clear end point.

When working with a client and first discussing a web development project I use the below as a quick way to discuss with them functions that need to be discussed in the long run for a triumphant project.

  • Analysis
  • Design
  • Coding
  • Testing and Delivery
  • Maintenance

Through these and the explanation of various Internet technologies out there; I help clients understand that a web site does take more work than just typing it into Microsoft Word and uploading it as a HTML document. A website can be built that way, but many limitations are thereby set in place.

A first-rate project no matter how small nor large is not cheap, but can come inexpensively through the use of Open Source code bases (I’ll explain this in a future article). Fortunately the days of $250/hour coding are passing and becoming a much more reasonable $65/hour to $150/hour depending upon project complexity and technologies being used.

In closing, I’d like to emphasize the fact that good projects take resources, through planning commitment and project specification commitments though, expenditures are minimized.

Before your next project starts, contact me to increase your chances of a first-rate, successful project completion.

9/30/2001 – Originally posted

Be Sociable, Share!

Related Entries

About Michael Cannon

Hello, I'm Michael Cannon, Peichi's smiling man, an adventurous water-ratchief technology officer, cyclist, poet, WWOOF'er and world traveler.

Previous post:

Next post: