By Gautham Nagesh
May 13, 2009
With the introduction of Web sites such as Recovery.gov and a new federal chief information officer, the White House has made it clear it will use technology as the main vehicle for creating a more open, accessible government.
Faced with posting unprecedented amounts of data online and increasing public access to their internal processes, agencies are scrambling to figure out how to comply with President Obama's mandate for transparency. One way is to apply open source principles to software development. The approach allows agencies to customize information systems to improve data sharing across government as well as with industry and citizens.
Traditionally, agencies have purchased proprietary software programs, which are either custom-built by a contractor or purchased commercially and configured to meet the agency's needs. Unlike proprietary products, which only the vendor can customize, open source software allows users to alter source code, making programs adaptable to a variety of missions and easier to update.
The approach relies on software developers to exchange information that will address vulnerabilities and enhancements, allowing agencies to update the products themselves rather than waiting for vendors to release patches and upgrades.
Open source applications, such as Linux and Apache, most often feed the back end of networks- operating systems, security programs, Web servers and databases. But they are quickly making their way to the desks of users. Members of the intelligence community, for example, use them to share information on investigations. The Defense Information Systems Agency announced in March its plans to open source a suite of 50 applications for human resources, training, security, acquisition and other related functions. This will allow agencies to streamline and share information inside and outside the Defense Department.
The General Services Administration is adopting open source principles to consolidate eight IT systems into one acquisition platform to allow agencies to share contracting data. In its solicitation for bids on the project, GSA said vendors must develop open source applications so other companies can compete for subsequent contracts for enhancements.
"The benefits are increased competition, increased security and a higher quality of code," says Chris Fornecker, director of GSA's office of acquisition systems.
Unlike proprietary software, outside software developers can examine an application's code and highlight vulnerabilities or inefficiencies that might otherwise go undetected. Contractors are likely to spend more time and effort perfecting their programs, knowing that others can examine their work in-depth, he says.
Some see the flexibility and access that open source code provides as a security risk, because hackers or enemy states also might be able to find a weakness and penetrate systems. But Peter Gallagher, a partner in the federal civilian agencies branch at Unisys Federal Systems, says in many cases these applications are more secure because so many developers are scrutinizing the code.
"Most people have come to understand that security through obscurity-the proprietary model-isn't as good as open source," Gallagher says. "We used to think if you expose code, it will expose the systems. We now realize it exposes the problems and they get fixed more quickly."
John Weathersby Jr., executive director of the Open Source Software Institute, agrees. "But there are no silver bullets," he says. "Security is a process, not an application."
The movement toward open source in government is "inevitable," Gallagher says, noting that it is pivotal to streamlining software acquisition. Agencies have to realize how much they could save by reusing the source code from other software projects, he says, especially since most applications share numerous functions.
"Reuse saves you money and makes you more competitive," he says. "A bunch of developers can work together so we don't overwrite each other's code."
It spares agencies from reinventing the wheel, according to Gallagher, and paying multiple developers to replicate the same functionalities.
The first step is changing the mindset of program managers and contracting officers who assume that software must be proprietary or custom-built to meet an agency's requirements. Proprietary software is "part of our culture, especially within the Defense marketplace," Weathersby says. "They must be willing to let go of some control and being responsive to the notion that good ideas can come from anywhere."<-- management matters -->
By Gautham Nagesh
May 13, 2009