Design Version Control System for Expert
Introduction
The DVCS subsystem of CELEBRITY
CAD suite provides significant improvement in management of
complex designs, design reuse and teamwork management. The most important
features of DVCS are the means for version tracking and team design
coordination. Projects within DVCS follow the client-server architecture.
The shared project files are saved into the Repository. The Repository
is a special DVCS database controlled by the DVCS server process. When
sharing a project between two or more developers, the Repository enables
the task to be accomplished quickly and efficiently. When adding a file
to DVCS, the file is backed up in the Repository and made available
to other people. Changes that have been made to the file are saved,
however, old versions can be recovered at any time. Members of a team
can access the latest version of any cell, make changes, and save a
new version of the cell in the database. DVCS project organization makes
team coordination easy and intuitive. When a project is connected to
DVCS, the DVCS server makes it easy to share and secure different versions
of a selected set of cells.
Before users can add projects to the Repository, they must create one
or more projects in the working directory. After creating a project,
the user can add projects from their computer to the Repository.
DVCS can maintain multiple versions of cells, including a record of
the changes to the file from version to version. Version control addresses
the following areas:
- Team coordination - making sure that only one person at a time is modifying a cell. This prevents cells from accidentally being replaced by another user's changes
- Version tracking - tracking old versions of cells , which can be retrieved for change tracking and other purposes
The working area is the directory where the user actually works with their design. When "Check Out Project" or "Get Project" is selected, DVCS copies the item into the working area. After making changes to the project and checking it in, DVCS copies it from the working area back into the DVCS database. From then on, DVCS manages the working project by creating cells as needed on the computer when projects are checked out.
Figure 1. Design version control interface.
The "Cell Management" dialog displays important status information, such as current connected projects, search criteria, status of cells, and so on. Some of this information is shown in columns, and other information is shown in the additional "Details" and "History" dialog boxes.
When a cell is checked in, this dialog shows the corresponding timestamp and user name.
Figure 2. Cell history dialog box.
Version Control and History
DVCS provides version control and history services, to ensure that each version of a cell is recoverable. The unique version of a cell is registered each time when a changed cell is checked in. The unique internal version of a project is maintained by DVCS during any changes made in the project. The user has no control over these numbers. Every version of every cell and project in DVCS has a version number. The version number is always an integer number and it never decreases with time.
- Assigned automatically by DVCS
- Always an integer numeric value
- Always increases to next integer number
- Increases each time an action that affects storage is taken on a cell or project, such as adding or checking in
- Displayed in history and cell properties dialog boxes
- Cannot be edited or changed by user
User Management, Security, Access Rights
DVCS uses the operation system user maintenance means to control the rights of access to DVCS. DVCS Administrator can add and delete users, assign access rights to projects, and change their access to DVCS. When new users are added, by default they have full access to a project.
When you install DVCS, the default security system is enabled. The administrator can, however, customize security in the installation to allow only specific users to have access to certain projects and certain commands.
Default Security
Default security in DVCS installation is simple. The administrator has only two levels of access rights to choose from when adding new users to the DVCS installation:
- Read-only rights: The user can see everything in DVCS but can change nothing.
- Read/write rights: The user can see and change anything in the DVCS database.
Setting Security for DVCS Administrator
All DVCS security is governed by DVCS Administrator. Any user can be assigned DVCS Administrator, so access to the Administrator program is protected. To grant Administrator rights to users and setup Repository, an existing Administrator must use Server Administrator utility.
Project Security / User Access Rights
Project security in DVCS is based on user access rights. Each project is accessible only to those users who have the appropriate rights. Each command can be used only by those users who have the rights associated with that command.
There are four user access rights, described in the following table.
| Rights | Description |
|---|---|
| Administrator | Add new project and delete existing project by using such commands as Add Project To DVCS, Delete Project from DVCS. |
| Full access | Add new cells and delete existing cells by using such commands as Add, Delete, and Rename. Change technology by using Check Out Project, Check In Project. |
| Change | Modify cells by commands Check Out, Check In, and Undo Check Out. |
| Read-Only | View, but not change, files by using such commands as View, Get, Get Version. |
| No access | No access to project. |
Note: Each access level includes all the levels that precede it. For example,
the Change rights includes the Read-Only rights.
Conclusion
Design Version Control System used together with Expert
Layout Editor and other CELEBRITY CAD tools significantly
enhances productivity for large projects in multiuser design environment.
This is achieved by its advanced capabilities, such as concurrent access
to shared design files, version control and security enforcement.
At the same time, a single designer will benefit from better project manageability
delivered by DVCS. For a single-user mode, the installation and running
of DVCS is extremely simple and transparent, and it does not carry any
setup and training overhead usually associated with complex systems.