The software forge – of which the best-known example is probably SourceForge – is one of the many innovations introduced by free software. It's a way of facilitating an open, collaborative approach to software development. Given that it works so well for community free software projects and commercial open source products and their external developers, why not try applying it *within* an enterprise?
That's pretty much the question that some people at SAP have been asking:
This article describes our experiences using open source software development practices at SAP. SAP is a major software developer and leader in business applications. We’ve found that open source practices can complement traditional top-down software development with bottom-up collective intelligence. Software forges offer a mechanism for advancing the adoption of open source best practices within corporations... We illustrate our experiences using SAP’s own internal software forge, called SAP Forge, and compare our experiences with those from other large software companies.
They define a software forge as follows:
an extensible Web-based platform that integrates best-of-breed software tools for collaborative software development. SourceForge (sourceforge.net) is the best-known example on the Internet, hosting the largest collection of open source projects of any forge. Other examples are BerliOS (berlios.de), Codehaus (codehaus.org), and Tigris (tigris.org). A software forge has two main views:
a project portfolio view that lets a developer browse and find projects, and
a project view that provides the developer tools for working on a specific project.
Developers who navigate to a particular project will see a project-specific view, which typically has two parts:
a listing of the different tools available for the project, and
a view specific to a selected tool.
A good software forge supports the whole software development process from idea generation, project definition, and product management to configuration management, build support, and bug tracking. The forge integrates all the tools supporting these activities in one interface and makes navigating among them easy. All projects use the same tools, so developers can easily switch between projects.
Project forges differ from CASE tools in that their design centers on open collaboration, making it easy to find a project, read about it, understand it, and contribute as a volunteer.
This is all good stuff. The only thing that leaves me perplexed is the fact that all this openness is happening inside a company that is one of the most vocal and powerful supporters of software patents in Europe. That's paradoxical because software patents are the antithesis of open source and its methodology. If SAP gets its way on software patents, it will be pointless for others in the company to set up software forges, since the legal issues surrounding open, collaborative development will make that prohibitively complex and expensive to police.