WinSDE System Manager

This document is intended for configuration managers.

WinSDE System Manager manages SDE systems. It shows SDE systems  as tree structure placed under a common root, and makes it possible to manage SDE systems.

Using WinSDE System Manager you can:

Initiate SDE System Structures

When you start to implement a complete new product, you will create one or several new SDE system where you will deposit your files (source code, documents, etc.) and keep them under version control.

You can use the following functions:

You can also rename a system, a configuration, or a subsystem and delete them.

Creating an SDE System

When you create a system you create some directories which you are the owner of. The specified system is created directly under the system root. An SDE system contains different configurations. The first configuration, by default named 1.0-0, is created under the system.

When a system and its first configuration is created, you can create subsystems, which are placed under the system configuration. Every subsystem contains a RCS sub-directory, called RCS library. The RCS library include versioned files, i.e. those files consist of several file versions.

Creating a Subsystem

You can create as many subsystems as you wish.  Normally one subsystem will include files that are used for building a relative independent part of the entire system. Usually a subsystem will include files of a Microsoft Developer Studio project or a Visual Basic project.

It is a good practice to have many subsystems than one or just a few big subsystems containing a  lot of files.

Creating a New Configuration


When you start with new development or maintenance work, you create a new configuration from an existing one.

The new configuration will in the beginning of the new development process be very similar to the old configuration. All the subsystems are copied to the new configuration but the RCS libraries are not directly copied. 

There are two different ways to create a new configuration:

When you create a new configuration, select if you want to update the new configuration with files.

Note: Checking out all files and creating new RCS libraries can be time consuming!


Baselines are created periodically. Different kind of baselines exist, - periodical baselines which identify the file versions used in the build procedure, baselines defining a specific milestone, alpha or beta releases, and a baseline defining the items used for building the final release. In all cases the purpose of a baseline creation is providing a possibility to recreate work products from a previous phase. The baseline support in WinSDE is provided with baselining item versions by a baseline name.

All configuration items (source code, build procedures, project settings and documentation) must be baselined.

Change Requests describes the changes formally introduced in baselines.

Baseline/Release Activities

When you want to make a new product release, you create a baseline on the system level, i.e. in WinSDE you tag item versions with a baseline name. When you have created the baseline, you can check out the file versions in it and build the system. When you have got the produced components, you can copy them to a new product version structure. WinSDE System Manager gives you the following support:

Cleanup a system configuration

sm7.gif (4442 bytes)

Before the final system build, you may want to delete all the files placed in the system structure. This function will remove all the files you do not need to have in the configuration.


Show Versioned Files

sm5.gif (11045 bytes)

The function Show (Find) Versioned Files makes it possible to search for file versions that match different criteria. For example, you can get a list of specific file versions of the entire system configuration or a part of it, you can check if all files are ready to be included in the new baseline (no files are unstable), and you can check if there are any locked files in the system, for a specific user or for all users.

Create a baseline

You  create a baseline by putting a symbolic name on the selected file versions. You can do it by the Create Baseline Function.

sm8.gif (9196 bytes)

You enter a baseline name and select file versions. You can select  latest versions or specific states. The default state values are Stable and Unchanged. In this case it is assumed that developers have defined status Stable on the files they have changed or/and tested.

You can check out these files simultaneously, if you specify it in the check-box "Update working directory with Baselined files"

Update Working Directory

sm9.gif (8663 bytes)

To build the system configuration you must check out all the files. You can define if all directories should be updated, and if files should be overwritten. You must select which versions you want to check out. The default value is to check out file versions with a baseline name. It is however possible to check out latest versions, versions having specific states, or with specific dates.

Copy files to a product release

A product release is a subset of one or several system configurations. Not all files from the system configurations are included into a product. For this reason it is necessary to describe which files belong to a product, or more precisely to a product release. Files that belong to a product release are described in Product Definition Files (PD files).

A PD file contains the following information:

The format of the PD file is as follows:
    /* comment */
    source destination; commands ! file description

PD files are processed by the cpp preprocessor which means that it is possible to use statements like
    #include “file”
       #define name definition
or conditional statements.

The item source denotes a file specification of the component(s) to be copied. Any legal filename specification can be used (including the characters *,%,[]).
The item destination denotes the directory where the files should be copied to. The first part of the directory (root) should be specified by the variable PRODUCT_ROOT. This variable denotes the root of a product version.

One of the features of the PD file is the include statement, which makes it possible to have several PD files describing the components of a product release.  The top level PD file (configuration level) should refer to PD files from the subsystem by using the include statement.

You can copy the files specified in the PD files to a product release by executing the pcopy command, or by issuing Copy to Product function.

sm10.gif (7844 bytes)

In the Copy to Product function you have to specify the PD file name and the product destination directory. You can edit the PD file, or read it. The PD file will be taken from the current system path (which might be a configuration, but also a subsystem). By selecting different options you can choose to copy or just list files which are supposed to be copied to the product structure.

WinSDE System Manager - Top