One of typical requirements of design environments including software development environments and VLSI design by CAD/CAM systems is complex objects and versions. Concurrency control of complex objects and versions has been studied separately. But as a complex object consists of component objects having many versions and a new version derivation changes the configuration of the complex object, concurrency control scheme must deal with complex objects and versions together.
In this thesis, we propose VC graph which can represent both the complex objects and their version structure into one graph structure, extended lock modes and locking protocols on VC graph. Operations using the proposed lock modes on VC graph include those manipulating versions and complex objects, changing the version graph and check-out/check-in. The proposed lock modes and locking protocols are proved to preserve the consistency of design databases.