Software Development: A Discipline, Not an Art



Email    print   
November 15, 2005 —  (Page 1 of 3)
For years, companies producing software have treated the development process as an art. Unlike the other operations of the company that are monitored, managed and measured using formal business process, software development projects are often the result of ad hoc decisions and activities, with few metrics available to gauge the status or efficiency of a development effort.

The result? By not managing software as the critical business asset it is, companies face escalating development costs, mounting code quality and security issues, and continuous product delays. This art-based, ad hoc approach to software development impacts a company’s top and bottom line, erodes its ability to compete in a fast-paced market, diminishes its brand, and weakens its reputation with prospects, customers, partners and investors.

‘Art’ History
The root cause of why companies revert to treating software development as an art stems from the traditional way in which applications are developed over time.

Typically, the first release of a software product is built on an understandable and orderly architecture, reflects customer requirements and is created by a stable and dedicated team of developers and managers. These greenfield development projects may not rely on formal processes and tools, but the project itself tends to be organized, and the codebase is built from scratch to meet the initial product requirements.

The real problems arise with subsequent releases. Ironically, over time development projects are the victims of their own success. With a successful application launch, management and customers will demand a continuous stream of updates that add new features and capabilities to the once relatively elegant and simple codebase. Follow-on development efforts must overcome three major hurdles: new development teams, an existing code and constantly shifting requirements.

By the time the second or subsequent releases of an application gain momentum, the original development team has disbanded.

The new team is usually composed of a few holdovers as well as new coders—both internal and often others from offshore service providers—many of which have no knowledge of the original architecture, design decisions and codebase. And instead of the ability to create a pure architecture that reflects current project requirements, the new team must modify the application or create new modules on top of an existing, increasingly bloated codebase.




Pages 1 2 3 


Share this link: http://sdt.bz/28978
 
Most Read Latest News Blog Resources

Add comment


Name*
Email*  
Country     


  • Comment
Loading




close
NEXT ARTICLE
New York City to open Academy for Software Engineering
High school would give foundational education in technology Read More...
 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 

Download Current Issue
FEBRUARY 2012 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?


 
blogs tab
Agility, mom, and apple pie
If we're to evaluate the state-of-the-art in software development, we should start with the values espoused in the Agile Manifesto.
02/07/2012 11:57 AM EST

RIM woos developers with free tablet
How do you get more apps ported to the BlackBerry PlayBook? By giving every developer a free tablet, of course!
02/04/2012 01:57 PM EST

GitHire: Use Headhunters to Find Your Perfect Programmer
Are you a hiring manager tired of scouring the job boards? Check out this new service that will find 5 people interested in your jobs.
02/03/2012 12:17 PM EST

Facebook claims hacker cred
Facebook's SEC S-1 filing form includes a short essay on the Hacker Way by Mark Zuckerberg himself.
02/02/2012 08:26 AM EST

Ryan Dahl steps down
Ryan Dahl, creator of Node.js, steps back from his position as gatekeeper for the project.
02/01/2012 04:58 PM EST

Bloomberg opens its API
Bloomberg's APIs could lead to a future standard for accessing market data.
02/01/2012 04:41 PM EST

 
Events calendar tab
2/13/2012 to 2/16/2012
Santa Clara
TechWeb

2/26/2012 to 2/29/2012
San Francisco
BZ Media

2/27/2012 to 3/2/2012
San Francisco
RSA

3/4/2012 to 3/7/2012
Las Vegas
IBM Tivoli

3/5/2012 to 3/9/2012
San Francisco
TechWeb