IBM Corp. this month, along with a host of other companies, proposed the creation of a set of common practices and methods for developing software within the open-source Eclipse Foundation.
In order to create the new streamlined process, called the Eclipse Process Framework, IBM is contributing a subset of the company’s Rational Unified Process (RUP) product, according to Per Kroll, a manager with IBM Rational Software. RUP is a customizable framework used to manage large software development projects, and Kroll estimates that IBM is contributing about 15 per cent of the product to Eclipse.
Fifteen other companies have signed on to contribute code and processes to the proposed framework, including Cap Gemini Ernst & Young, Covansys Corp., Number Six Software Inc., Armstrong Process Group Inc., Object Mentor Inc. and Bedarra Research Labs.
Kroll said providing a more predictable methodology for software development projects will help developers build more reliable applications with more efficiency and less cost.
According to IBM, nearly half of internally developed software projects cost more than expected, 90 per cent are completed after their original deadline and 30 per cent end up cancelled. Moreover, 15 to 20 per cent of all software bugs reach customers, costing the U.S. economy an estimated US$60 billion a year, according to the Standish Group.
“We have a huge failure rate of [software development] projects in the industry,” Kroll said. Chris Armstrong, president of Armstrong Process Group, a New Richmond, Wis.-based organizational development company that co-submitted the Eclipse proposal with IBM, compared the current state of software development to the state of manufacturing at the turn of the 20th century. He said that once the manufacturing industry came up with common practices that could be reused across the industry, productivity increased dramatically.
Armstrong believes the same improvements can be realized in software with a common methodology that encompasses all of the complex steps involved in software development.
“To me, it represents a significant step toward a major increase in maturity for the industry,” he said. “The more stability and predictability there is in the software development process, the more likely as an industry we’ll do a much better job at it.”
The Eclipse Process Framework is meant to be cross-platform, which means developers can use it to build applications in either Java or Microsoft .Net development environments.