Environment Configuration Management in Altium On-Prem Enterprise Server

Give the same design project to a variety of designers, and their resulting efforts will undoubtedly differ in various ways, shapes and forms. After all, each designer brings to the table their own set of design traits, level of experience, and working preferences. But while the extent of these different approaches may sit fine in offices and labs across different companies and product disciplines, the visibility of such differences becomes more than a blip on the radar when they are working for the same design team within the same organization.

Facilitating enterprise-level enforcement of a designer's work environment - to ensure that they are following the required standards expected by that organization for design, documentation, and production - the Enterprise Server installation provides the Team Configuration Center.

Team Configuration Center

The role of the Team Configuration Center is simplicity itself - to give the organization centralized control over the environment its designers operate in. It achieves this through the definition and management of Environment Configurations. These are used to constrain each designer's Altium Designer working environment to only use company-ratified design elements, including schematic templates, output job configuration files, and workspace preferences. In other words, it facilitates Centralized Environment Configuration Management.

The Team Configuration Center - sometimes referred to as TC2 - is delivered as a service through the Enterprise Server installation; the Team Configuration Service.

Any number of environment configurations may be defined through the Center's dedicated browser interface. The data used and enforced by each configuration - referred to as Configuration Data Items - are sourced from the Workspace. And by associating each environment configuration with a specific user group, and in turn assigning users to those groups, the correct working environment is loaded into Altium Designer as soon as the user connects to the Workspace. Using this group-based approach ensures that a designer always gets the setup they are entitled to, no matter whether they have their own PC, or are sharing a single PC with fellow designers.

The following image provides a graphical overview of the concept of Centralized Environment Configuration Management.

The concept of Centralized Environment Configuration Management. When a user connects to the Workspace, the Team Configuration Center determines, through assigned groups, which configurations (and associated data items) are available to that user. Altium Designer then uses the configuration data items in the relevant places.
The concept of Centralized Environment Configuration Management. When a user connects to the Workspace, the Team Configuration Center determines, through assigned groups, which configurations (and associated data items) are available to that user. Altium Designer then uses the configuration data items in the relevant places.

Configuration Data Items

Before you can delve into creation and definition of environment configurations, you need to first define the required configuration data items - the constituent elements of the configurations. These are the design elements that the user - whose assigned group(s) determine the configuration(s) available - is permitted to use. In other words, a configuration defines and enforces the set of configuration data items available to the user.

Each configuration data item is simply a revision of a content type that is supported for use by, and assignment to, an environment configuration.

Currently, the following types of content can be used with environment configurations:

Note that a configuration can only include the revision of one Altium Designer Preferences Item. For other supported content types, a configuration can use as many configuration data items as required. In addition, the same data item can be used across multiple environment configurations.
For members of an assigned group to see the configuration's data items (revisions of supported content types), those revisions must be shared with them.

Environment Configurations

Related page: Managing Environment Configurations

With revisions of configuration data items defined and released into a Workspace, you now have the fundamental blocks with which to define the environment configurations themselves. Environment configurations are defined from within the Team Configuration Center, accessed through the Workspace's browser interface.

Access to the interface is made by signing into the Workspace through a browser. Once there, navigate to the Admin - Configurations page. Note that this page is only accessible when you are signed in to the Workspace with administrative rights (are a member of the Administrators group).

Access of the Team Configuration Center's browser-based user interface - through a preferred external browser.
Access of the Team Configuration Center's browser-based user interface - through a preferred external browser.

The interface allows for an administrator to craft one or more environment configurations, depending on the needs of the organization. Each configuration requires the definition of:

  • Configuration name - a meaningful name, perhaps reflective of the people whose working environment it is to govern.
  • Configuration data - the elemental constraints of the configuration. The revisions of supported data items that can be validly used by a user targeted by the configuration.
  • Target groups - specification of whom the environment configuration applies to. These are the same groups that are defined and used by the Workspace to control access permissions.

An example defined environment configuration.
An example defined environment configuration.

Configuration data is stored in the Workspace's database.

Application of Environment Configurations in Altium Designer

Related page: Accessing Your Workspace

In order to facilitate environment configuration management and to enforce environment configurations applicable to each and every user in an organization, based on their assigned group(s), each user needs to be connected to the Enterprise Server Workspace. This is required to:

  • Provide access to the Team Configuration Service.
  • Provide access to the Workspace.
  • Enable the Identity Service to recognize who you are and what group(s) you have been assigned to. The correct environment configuration(s) can then be applied. This becomes especially important in working environments where shared computers are the norm.

Once a user is connected to the Workspace, the configuration service determines the environment configuration to be used for that user, and changes the relevant areas of the Altium Designer environment to enforce the permitted data elements of that configuration. If the user is assigned to several groups, and multiple environment configurations can apply, the user will be given the choice of which environment configuration to be applied when they sign in.

Ensuring Environment Configuration Compliance

Related page: Design Project Release

When it comes time to release a board design project, the process involved ensures the highest integrity for the design data and, more importantly, the generated manufacturing data which the Supply Chain will ultimately use to turn your design labor into physical reality. As part of the release process, validation checks can be inserted to ensure, for example, that electrical and design rules are checked and are being adhered to. After all, stringent validation can pick up any missed issues that can lead to costly re-spins.

As part of this validation stage in the release process, you can also include an Environment Configuration Compliance Check. This provides a means to conclusively test and enforce the use of company-authorized data elements in a design. Simply put, if you are not using data items permitted through the environment configuration available for use by your assigned group, the release will fail. This prevents a 'loose cannon' approach to design and ensures adherence to, and compliance with, the working design environments determined centrally at the enterprise level.

Add an output generator of this type from the Validation Outputs section of the OutJob file. Configuration of the conditions of the check is performed in the Environment configuration compliance setup dialog. These conditions determine:

  • Which revisions of Schematic Template Items can be used by source schematic documents in the design. One or more Schematic Template Item Revisions may be added to the list.
  • Which revisions of Outputjob Items can be used for generation of outputs from the design. One or more Outputjob Item Revisions may be added to the list.
  • Which revision of an Altium Designer Preferences Item must be used at release time. A single Altium Designer Preferences Item Revision may be specified.
  • Whether or not all parts used in the design must be sourced from a Workspace.
Click  (or the  button for preferences) to access a dialog with which to choose the required Item-Revision from the Workspace. To remove an entry select it, then click the button. For Preferences the entry, once made, cannot be deleted, but you can select a different Item Revision, or simply disable the option.
Ensure the Environment configuration compliance check is added to the required source Output Job file and configured BEFORE releasing that Output Job file to the target Workspace. A Workspace OutJob file - specifically the configuration of an output generator - can not be changed. You would need to make changes to the source file and re-release into the next planned revision of the target Item (as an administrator, and using the Workspace's Direct Editing methodology).

Add and configure an Environment configuration compliance check as part of your overall validation regime during board design release.
Add and configure an Environment configuration compliance check as part of your overall validation regime during board design release.

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Content