The technology industry is coalescing around open standards, which are proving better than proprietary systems in serving the needs of our highly interconnected, global society. This includes standards efforts within organizations like the Object Management Group for Unified Modeling Language and Model Driven Architectures; W3C for XML and Web services; Eclipse for development tools and the Java Community Process for J2EE.
One of the most significant benefits of adopting standards is that they allow software developers to put their energy and innovation skills toward projects that actually solve a business problem, as opposed to spending time tediously developing a project's "plumbing."
The average IT company spends roughly 40% of its time on integration, a pure overhead cost providing no true value to the business. The most significant benefits of utilizing open standards in development are facilitating reuse, improving requirements management and easing testing.
Reusing code, templates, documentation and processes across an organization has been one of the holy grails of open standards for decades. Reusing code and other assets across an organization creates organizational standards that, like industry standards, help to decrease time to market.
Reuse also reduces risk. Because a certain design has already been tested and used with other projects, there is far less concern that it will not work during testing and implementation. As standards are produced, teams realize increased productivity and quality and decreased costs. Reuse can be applied to code, design, process guidelines and templates, documentation, configuration information, tests and test management, style guides, reporting and data analysis.
There is a huge opportunity to build domain-specific reusable frameworks based on open computing technology. The platform independence and flexibility offered by service-oriented architectures and standards such as the reusable asset specification will make it more economical to invest in developing reusable frameworks.
Open standards also improve requirements management. Developers will spend increasing amounts of time tying together existing services to support a rapidly evolving business. With a loosely defined set of specifications, requirements can often seem like a moving target. Requirements are now frequently managed by business managers so that they can see the impact of their decisions on the business. Therefore, they are more aware of the value that it brings them. Creating and maintaining a complete, consistent and accurate set of requirements often falls low on the priority list of developers, so a degree of automated assistance is required. Open standards help to create the common understanding between business managers, developers and end users.
At this point, some might argue that the line between effective requirements management and automated testing may blur somewhat.
Open standards will have a major impact on testing in the near future. The Eclipse Test and Performance Tools Project Platform, formerly Hyades, enables tool integration through open standards. It supplies extensible frameworks and services for test and performance tools that are used throughout the application development lifecycle, and supports a spectrum of standalone and highly distributed, embedded enterprise computing systems. This creates a closer coupling between development and operations testing. This has a number of benefits, such as allowing operations to diagnose problems by running test scripts used by the development organization.
Software is no longer a luxury, it is a survival pre-requisite. It gains a role that transcends business modeling and simulation, to driving corporate business process through software development. Within the broader aspect of software, open standards offer the added benefit of allowing us to not only design, build and test software, but to free our minds to innovative approaches to doing this.
The goal of software development has been to help companies work better and more reliably. Open standards take this to the next level, offering customers ways to work smarter allowing for faster turn-around times and increased interoperability.
About the Author
Gina Poole, vice president, developer relations, IBM Software Group. IBM developerWorks has become the cornerstone of IBM's developer relations program, building a worldwide developer community that favors open standards. Through the efforts of Gina and her team, registration for developerWorks has grown to more than 4.5 million users.