| What is VC/m? | VC/m is a complete version control, configuration management and process control system, designed with Caché, Ensemble and M installations in mind. |
| What is configuration management? | Configuration management with VC/m means control over which version of each piece of code is in each location. This means, for example, that two or more locations can be kept exactly parallel. It also allows clear distinctions to be drawn between development, test and live locations. |
| What is version control? | Version control with VC/m means that each previous version of the code or file is stored in a central library so that it is always available for reference and comparison. |
| What is process control? | Process control with VC/m means control over who can move which items to where and in what circumstances. It makes it much easier for all employees to follow your company procedures. |
| How will VC/m help software developers? | VC/m takes away all the worries about which version of code is in which location, where to find the latest source and whether other developers are working on the same code at the same time. |
| How will VC/m help project managers? | VC/m gives you confidence that the right version of each item is included in a software release. Reporting facilities enable you to analyze work in progress and monitor the progress of each project against its deadline. |
| What kinds of source can be managed with VC/m? | VC/m has component drivers which manage all text files, binary files, M routines and M globals. It also has drivers for many Ensemble- and Caché-specific components, including class definitions, Caché Server Pages & Rules, and .MACs. |
| Does VC/m manage each component separately? | Each routine, file, M global or M global sub-tree is stored in VC/m as a 'component'. VC/m allows you to group components which belong together, so that they are always managed as a unit. For example, an html file can be grouped with the images which belong on the page. This group of components is called an 'object'. |
| What happens if the components are stored in different places? | VC/m uses 'logical locations'. These may include more than one physical area. For example, an object could consist of a CSP text file and an M routine. VC/m can be configured to place the text file in a specified directory and the M routine in a specified namespace. The user only has to make one transfer of the object. |
| How are transfers controlled? | In VC/m, no object can be moved between 2 logical locations unless a route between the locations has been defined. This provides control over which paths the objects may follow. The route also controls who can make the transfer, and various other parameters. For example, when an object is transferred (checked out) from the library, typically a new version of the object is created for the new development work. |
| How does VC/m cope if different objects should be treated differently? | VC/m uses 'systems' to group objects according to their treatment. These can be used, for example, to separate different software applications. They can also be used, for example, if certain documents need to be vetted by the legal team before publication. |
| Some objects are customized for certain customers. How will VC/m manage these? | An object base can have more than one 'variant'. These can be used, for example, for a customer-specific amendment, or for English and German-language versions. |
| How can VC/m keep multiple locations in sync? | In VC/m, automatic transfers are triggered when a specific set of conditions are met. They can be used, for example, to keep multiple locations in sync - when a user copies an object to one of the locations, it is automatically copied to all the others. |
| How does VC/m control concurrent development? | Each object version has a master copy and VC/m will never allow this to be overwritten. This provides protection for developers. If two pieces of development have gone on simultaneously, VC/m will not allow both to be returned to the library unless the work has been merged. Valuable source code is never lost. |
| How will VC/m integrate with our company's existing procedures? | The VC/m configuration management procedures are fully configurable. This means that each installation is uniquely tailored to match the company's requirements. The level of control can be suited to any company size and culture. |
| How does VC/m integrate with editors? |
Pre-defined editor interfaces are included for common editors. These provide the user with information about the status of an object, and alert them if they try to edit objects which have not been checked out. Interfaces which are available include Serenji, Caché Studio, Microsoft Word and the Visual Basic Editor. Facilities are available to enable integration with other products. |
| What platforms does VC/m work on? |
VC/m works on Windows, UNIX /Linux and OpenVMS operating systems. It runs on Caché, Ensemble and several M implementations, including GT.M, DSM and MSM. It can also be configured for transfers across M implementations or operating systems. |
| What is the interface like? |
The majority of VC/m procedures can be performed using the browser-based client interface, which runs on Internet Explorer. All operations and set-ups can also be done with the M character-based interface. |
Copyright 1997, 2005 George James Software.