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.
Each time a user is added to the installation, the level of access rights for the new user must be determined. The "Add User" dialog box contains a check box labeled "Read only". When selecting this check box, the new user can read files but not change them. If these levels of access rights are adequate nothing further needs to be done to to enhance security.


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.