Of paramount concern in managing large development efforts is the need to ensure that the application remains relevant and maintainable and can be kept up-to-date with the requirements of the rest of the organization. The danger of a long running project managed by a limited pool of developers is that the original requirements and goals of the system can be lost in the face of multiple enhancements. This can lead to a system that is arcane, does not reflect the actual needs of the department, and (most importantly) is over-reliant on the internal knowledge of the development team. This poses a substantial risk to the business that relies on the system for day-to-day operation. Fortunately there is a long standing body of Industry Best Practices that have been used to successfully manage the lifecycle of large-scoped projects. h3. Industry Best Practices The principal means of managing large software projects is to ensure that the problem domain and the software system are well understood. In a corporate sense, this means that the workflow, project history, system concept, design and implementation are fully documented and kept up-to-date throughout the product lifecycle. Such practice requires diligent management, as it is in the nature of people and organizations to lapse into ad-hoc knowledge and provincialism.
Pictures from Dive trip aboard the Truth Aquatics Vision in July 2006: Channel Islands 2006-07-15.