worry about when to branch, the CM tool will announce when branching is required. Changes are promoted and the CM tool identifies if there are any dependant changes that also need promotion. The CM tool identifies the alignment of revisions for a baseline or for a user context - no need to do branching and labelling for this, as the change packages contain all the necessary information.
3G Administration and Performance
A 3G tool, even though it is more complex than a 2G tool, must bring down the level of administration, significantly. And it must permit the prospective customer to perform a rapid evaluation and roll-out of the solution without having to commit significant budget - time, infrastructure or money. Key advances for a 3G solution include:
- Low administration operation
- Full interoperability between big and little endian architectures, without loss of functionality
- Platform independent customization capabilities
- Fast roll-out, for evaluation and for production use
- Painless upgrade capability with virtually no down-time
- Basic multi-site capability for working among a few different sites
- Easy scalability to support thousands of users
Show me a CM tool that meets these criteria, and I'll show you a CM Admin team that is happy. It doesn't consume their time, they can upgrade their hardware and switch from Windows to Linux, or vice versa with no down time. It wasn't a big deal to evaluate or to put into production - if they decide they don't have the budget right now, no big deal to back it out. And they don't have to worry about infrastructure upgrades until they go over a few hundred users. Some of the users can even work off site. A few tools out there can pretty well cover these criteria, largely because of their architecture. Others are bogged down in the complexity of the infrastructure and the associated administration that goes with the infrastructure, whether hardware (e.g. highly tuned servers) or software (e.g. Database).
Next up is the Process advances.
A 3G CM tool will have a sophisticated state-based workflow capability tightly integrated with a task-based project management capability to give a fully unified process model. A state-based workflow is not just a way of implementing rules and triggers. It provides a means of specifying states and transitions, of putting rules and triggers on each transition, of specifying the permissions and/or roles required for a transition.
Project management capabilities provide a living Work Breakdown Structure (WBS) capability where activities can be broken down into tasks and sub-tasks. When integrated with state-based workflow, some of the tasks will automatically appear in the WBS, and be assigned to the appropriate resources, because of a feature or a build reaching a specific state. Prioritized to-do lists (task lists) should drive each team member forward, especially in an agile development shop using an iterative integration approach.
Process advances for 3G tools include:
- Integrated Process Workflow Capability
- Access permissions beyond those offered by the file/network system
- A seamless integration of Configuration, Change and Product Management functionality
- Extensive and easy customization of process, user interface and data schema
- Support for end-to-end traceability, interactively and through reports. From products and requirements to builds and test cases.
- Real-time metrics to support timely decisions and process improvement
- Advanced data import, export and reporting capabilities
- Integrated Project Management with WBS (Work Breakdown Structures) Support and Planning and Projection capabilities
- Integrated Requirements Management and Test Suite Management with Traceability
3G Process affects a number of management applications encompassing a significant portion of the development cycle. In a 3G CM tool, it is not sufficient to glue together these applications. They