Software Development: A Discipline, Not an Art
By Djenana Campara
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 companys 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 codersboth internal and often others from offshore service providersmany 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.
Share this link: http://sdt.bz/28978
Most Read Latest News Blog Resources
Jama Contour 3.4 brings shared vision to align development activities with business priorities
New version of Jama’s Web application makes managing complex projects easier
|
|
Jama Software integrates Contour with Rally's leading agile lifecycle management platform
Integration aligns product vision and customer needs to daily development activities to empower Agile success an organization
|
|
Taking enterprise architecture to the business side
Startup Corso is bringing out a cloud-based planning platform that ties into business plans
|
|
Top five apps to manage your workload
Web applications offer new ways to track your “to-do” lists
|
Taking enterprise architecture to the business side
Startup Corso is bringing out a cloud-based planning platform that ties into business plans
|
|
Top five apps to manage your workload
Web applications offer new ways to track your “to-do” lists
|
|
Not so fast when it comes to testing in the cloud
Developers face outsourcing, virtual lab management and mobile devices as obstacles
|
|
Xceed releases UX-focused suite for Microsoft’s WPF
"Blendables" helps match user experiences to developer visions
|
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.
|
|
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!
|
|
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.
|
|
Facebook claims hacker cred
Facebook's SEC S-1 filing form includes a short essay on the Hacker Way by Mark Zuckerberg himself.
|
The Hidden Costs of Software Licensing
Moving beyond paper-based software licensing to more flexible, software-based licensing is a business decision. There is a growing trend tow...
|
|
Case Study: You May Need a Development Mechanic
As a contractor for a major financial player in Germany, SOBEGE, a German-based consultancy specializing in embedded IT and web services, wa...
|
|
Ensuring Software Quality at a Major International Bank
One of the world’s leading international banks has adopted AgitarOne technology for delivering generated unit tests for their Java software...
|
|
Load Testing Adobe Flex Applications
Adobe Flex applications may be different from applications you’ve worked with before. For classic HTML web applications, the server does all...
|