A Time-Saving Programming Tactic that Doesn?t Work

Let's say that you have a software project that's under severe time pressure. Let's say that this deadline is so tight that you already know it will involve many late nights of black coffee and frenetic programming. What can you do to make this process go faster?

I honestly don't know, since the correct answer will depend on one's individual circumstances. However, I can tell you how many programmers do respond under such circumstances. They decide to save time by skipping over the software planning and design phase, and immediately start coding away.

To an inexperienced or otherwise undisciplined programmer, this seems to make sense. After all, the finished product is what truly matters, right? The customer doesn't care about flowcharts, class diagrams or software architectures. All they want is something that works.

It seems to make sense, but it's a foolhardy approach. That way lies madness. We've all heard that an ounce of planning is worth a pound of cure, but in the world of software development, this adage is often forgotten.

If a real estate developer needs to get a house built quickly, does he save time by skipping over the architectural design phase? Does he decide to dispense with blueprints, and just start laying down concrete? Of course not. He knows that the results would be chaotic, and that work will progress more slowly without careful forethought and a concrete plan.

Yet that's the approach that many people take when it comes to software. They decide to just start coding away, thinking that this makes the software development process more efficient. On fairly simple projects, this might work. On anything of moderate complexity though, such an approach is doomed to fail. Sure, you may save time at first. However, without a concrete software plan and a carefully considered design, problems are bound to catch up with you before long. Many of these problems won't become clear until the testing phase comes around, and by then, it may be too late.

Sadly, such reckless thinking is often encouraged in the corporate world. Due to time constraints, a misguided manager may instruct his team to skip over the design work and just start hacking away. This makes the team seem focused and productive, but this strategy can wreak havoc on the project timeline. What's more, the resultant code is often a tangled, poorly documented, chaotic mess. If this software must be maintained for years to come, then you have a recipe for disaster.

Mind you, I'm not saying that an elaborate design is always necessary. If time is short, then one might not have the luxury of an intricate software plan with exhaustive design documentation. However, one should at least have a general software architecture laid out-one which is detailed enough to make the software development process smoother and easier. Programmers rarely err on the side of over-planning, but they frequently fall into the trap of insufficient design detail. Don't make this mistake, if you really want to save time.

About the author:

V. Berba Velasco Jr. is proud to work as a senior electrical and software engineer at Cellular Technology Ltd (http://www.immunospot.com, http://www.elispot-analyzers.de, http://www.elispot.cn) a biotechnology company that prides itself on its standards of excellence.

In The News:


pen paper and inkwell


cat break through


Microsoft CRM Integration with Lotus Notes Domino: Messaging Connector ? Future Directions

IBM Lotus Notes Domino and Microsoft CRM (Client Relation Management)... Read More

How to Choose the BEST Charting Software

I suggest that you do not spend a lot of... Read More

Microsoft CRM for Corporate Business ? Working Offline

If your company has regional and worldwide operations, you might... Read More

Microsoft CRM Integration with Microsoft Retail Management System (RMS) ? Overview

Microsoft Client Relation Management system (Microsoft CRM) and Microsoft RMS... Read More

Computer Phones ? Facts and Fallacies

The stakes are high when considering security, privacy, and savings,... Read More

EDI: Electronic Document Interchange for Microsoft Great Plains ? Overview for Software Developer/Pr

Microsoft Great Plains - Microsoft Business Solutions accounting and ERP... Read More

Implementing Microsoft CRM: setup and configuration ? notes for IT specialist

Microsoft Business Solutions CRM is web-based CRM application, deploying all... Read More

Cisco Certification: Introduction To ISDN, Part V

The major reason I recommend getting your hands on real... Read More

eCommerce development for Microsoft Great Plains: tools and highlights for programmer

Microsoft Business Solutions Great Plains, former Great Plains Software Dynamics... Read More

Software Tools To Help Your Business Sell More

Sales are all about leverage, because there is only so... Read More

Microsoft Great Plains Upgrade ? Version 8.0 Overview for IT Director/Controller

If you have Microsoft Great Plains as main accounting and... Read More

Chinese Input - Step by Step Instruction on How to Input Chinese Characters in English Windows XP

Enabling Chinese input is quick and easy, there are only... Read More

Manufacturing Solutions for Microsoft Great Plains ? Overview for Consultant

Microsoft Business Solutions Great Plains has full-featured manufacturing set of... Read More

ERP System of the Future: Database, Business Logic and Interface

We will base our prognosis on our Microsoft Business Solutions... Read More

Microsoft Great Plains Oil & Gas ? Implementation & Customization Highlights

Microsoft Great Plains serves the wide spectrum of horizontal markets.... Read More

Microsoft Great Plains Integration Manager: Using Continuum ? Overview for Developer

Microsoft Business Solutions Great Plains has I'd say end user... Read More

Spyware Statistics -- Whats New in May 2005?

Although statistics often is blamed for various deadly sins --... Read More

5 Easy File Management Tips in Microsoft Word

How many steps does it take you to locate and... Read More

Device Driver Basics

Most people understand that the "hardware" part of their computer... Read More

Causes of ERP Failures

ERP is the acronym of Enterprise Resource Planning. Multi-module ERP... Read More

Keeping Track

One of the things we can be as certain of... Read More

Making The Decision To Automate Your Software Testing

Not every software testing project can or should be automated.... Read More

Microsoft Great Plains in Metal Distribution: Implementation & Customization ? Consultant Overview

Microsoft Business Solutions Great Plains serves to the wide spectrum... Read More

Protect Your Computer...and Your Business!

We all take the computer for granted. I mean, all... Read More

Software Piracy

SOFTWARE PIRACY We regularly hear reports... Read More

Windows Screensavers Explained

In this article you will find some background information about... Read More

Microsoft Great Plains Middle East - Arabic Language Support

Microsoft Business Solutions Great Plains is marketed for mid-size companies... Read More

Your Computer May Be Infected, Heres How To Check (NOT about virus)

NOTE: Please take time to read on - it may... Read More

Make 2005 the Year You Save Time!

Today's business world is fast-paced. No matter what it is... Read More

Microsoft Great Plains SOP: Sales Order Processing

Microsoft Business Solutions Great Plains is marketed for mid-size companies... Read More

What is Fleet Maintenance Management?

Fleet Maintenance Management is a critical position in any company... Read More

CRM 101: Customer Relationship Management for Beginners

Customer Relationship Management, abbreviated "CRM," is the term for a... Read More

Hear It in Digits

Music downloads are off the charts! We're listening to digital... Read More