One of the many challenges of software development and maintenance is the need to collaborate among many constituents and stakeholders. For example, clients interact with software development organizations; software-development organizations consist of many developers and maintainers within the same location and across different locations; and the development organization often outsources some of the testing efforts to independent test agencies. Each of these parties may reside in different locations, often across many very disparate time zones. And, due to intellectual property constraints, they often cannot share all code and information. We have investigated this aspect of software engineering and have developed a vision for a system that would enable these parties to interact in a way that overcomes some of the constraints.