Environment Configuration Management

Now reading version 4.1. For the latest, read: Environment Configuration Management for version 5.0

Nexus Server Message

This documentation page references NEXUS Server (part of the deployed NEXUS solution), which has been discontinued. All your PCB design, data management and collaboration needs can now be delivered by Altium Designer and a connected Altium 365 Workspace. Check out the FAQs page for more information.

 

Parent page: Altium NEXUS 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 Altium NEXUS 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 NEXUS 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 NEXUS 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 NEXUS Server. And by associating each environment configuration with a specific user role, and in turn assigning users to those roles, the correct working environment is loaded into Altium NEXUS as soon as the user signs in to the NEXUS Server. Using this role-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 signs in to the NEXUS Server the Team Configuration Center determines, through assigned roles, which configurations (and associated data items) are available to that user. Altium NEXUS then uses the configuration data items in the relevant places.
The concept of Centralized Environment Configuration Management. When a user signs in to the NEXUS Server the Team Configuration Center determines, through assigned roles, which configurations (and associated data items) are available to that user. Altium NEXUS 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 role(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 role to see the configuration's data items (revisions of supported content types), those revisions must be shared with them.

Environment Configurations

Related article: Managing Environment Configurations

With revisions of configuration data items defined and released into a NEXUS Server, 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 NEXUS Server's browser interface.

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

Access of the Team Configuration Center's browser-based user interface - through a preferred external Web Browser.
Access of the Team Configuration Center's browser-based user interface - through a preferred external Web 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 Roles - specification of whom the environment configuration applies to. Roles themselves are simply groupings of users, defined and stored as part of the NEXUS Server's Identity Service. These are the same roles that are defined and used by the NEXUS Server to control access permissions.

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

Configuration data is stored in the NEXUS Server's database.

Connecting to the Altium NEXUS Server

Related page: Access from within the Design Software

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 role(s), each user needs to be signed in to the NEXUS Server. This is required to:

  • Provide access to the Team Configuration Service.
  • Provide access to the NEXUS Server.
  • Enable the Identity Service to recognize who you are and what role(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.

Application of Environment Configurations in Altium NEXUS

Once a user is signed into the NEXUS Server, the configuration service determines the environment configuration to be used for that user, and changes the relevant areas of the Altium NEXUS environment to enforce the permitted data elements of that configuration. If the user is assigned to several roles, and multiple environment configurations can apply, the user will be given the choice of which environment configuration to be applied when they sign-in. Choice is made from the Select a Configuration dialog.

If multiple environment configurations apply to a user, that user will be presented with the choice at the time of signing into the NEXUS Server.
If multiple environment configurations apply to a user, that user will be presented with the choice at the time of signing into the NEXUS Server.

If the user is also an Administrator for the NEXUS Server, they have the option to Work as administrator. This allows them to work within Altium NEXUS, and with the NEXUS Server, without any restrictions.

If no configuration is available for a user, then their working environment will simply be configured with the latest revision of all released Items that are supported by an environment configuration - as though a default configuration were being applied. If there is at least one released revision of a particular Data Item in the NEXUS Server, then that Item Revision will be used - no local file-based entities (e.g. templates) will be available for use.

If multiple environment configurations apply to a user, but they cancel out of choosing one, they will not be able to sign in to the NEXUS Server. They will therefore be prevented from accessing design Items in that server and any of the services provided through its installation.
If multiple configuration data items have been defined for a particular design element within an environment configuration, Altium NEXUS will be configured to provide the user with a choice from those items.
If an environment configuration applicable to a user has not been fully defined - i.e. not all data configuration items have been specified/added - those undefined elements of the environment will remain manually definable by the user. This is true also for those applicable elements that are set to Do Not Control.

Ensuring Environment Configuration Compliance

Related page: Board Design 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 role, 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 NEXUS Server.
Click  (or the  button for preferences) to access a dialog with which to choose the required Item-Revision from the NEXUS Server. 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 NEXUS Server. Once managed, the 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 NEXUS Server'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