October 17, 2005—IBM 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 percent 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, Number Six Software, Armstrong Process Group, Object Mentor, and Bedarra Research Labs.
Kroll said that 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 percent are completed after their original deadline, and 30 percent end up cancelled. Moreover, 15 percent to 20 percent of all software bugs reach customers, costing the U.S. economy an estimated 0 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, Wisconsin-based organizational development company that cosubmitted 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.
Armstrong said, however, that it's unlikely that developers building software using .Net will use the Eclipse Process Framework because Microsoft has its own methodology and best processes for software development called the Microsoft Solutions Framework (MSF).
Microsoft's framework, however, has proprietary processes that do not support software development for other platforms, he said. For instance, Microsoft has its own metamodel for its development process rather than using the Object Management Group's (OMG's) Software Process Engineering Metamodel (SPEM), an industry standard for software development, Armstrong said.
According to Microsoft, however, MSF was based on a simplified version of SPEM and is consistent with the OMG's metamodel.
A Microsoft spokeswoman said in a statement that the software company plans to improve the MSF by offering two process templates for the framework within its collaborative development version of Visual Studio 2005, Visual Studio 2005 Team System.
MSF for Agile Software Development enables iterative software development enhanced with features like risk management, release management, and design for operations, while MSF for CMMI (Capability Maturity Model Integration) Process Improvement provides connections to the CMMI process to enable organizations to implement mature software development practices and drive business capability quickly, according to the spokeswoman.
Microsoft plans to release new editions of Visual Studio 2005 at an event in San Francisco on November 7.
It will likely take one to two months for Eclipse board members to review the proposal for the Eclipse Process Framework, IBM's Kroll said, after which time they will vote on whether or not they will take on the proposed project.