Once a design is considered ready for flight into the wider world, it needs to be released - a process that can often be underestimated.
Without a regimented and fundamentally-sound release process, tracking an ever-maturing product over time can be fraught with any number of pitfalls. Just imagine needing to go back and release a previous revision of your product, only to find that all required source design files were never included, as a snapshot, with that particular release! That's OK, just get the generated output files from the relevant folder(s) for that release - trusty Gerbers and any additional fabrication and assembly information, that's all that's really needed anyway. But imagine those 'trusty' outputs have been overwritten, or become corrupt somehow. If only the release process were more robust.
Altium NEXUS answers this call by providing powerful, high-integrity board design release management. The board design release process is automated, enabling you to release your board design projects without the risks associated with manual release procedures. When a particular project is released, a snapshot of the design source is taken and archived along with any generated output - which represents a tangible product that is made from that design project and sold by the company. Release data is stored in revisions of the relevant project-related Item in the target managed content server:
PCB Project Design Item - the snapshot of the design, including all source documents. Released into a separate Item in the server, allowing you to keep your valuable IP aside from the generated fabrication and assembly data needed by external parties to build the product.
PCB Fabrication Data Item - the data set required by the fabrication house for manufacture of the bare board.
PCB Assembly Data Item - the data set required by the assembly house in order to populate the bare board with specified components, in accordance with a Bill of Materials. A unique Item is used for the base (fully populated) design, and each defined variant for the design (assembled variants).
Generated data from a board design is securely stored in the managed content server within revisions of project-related Items. This high-integrity data is then used by the supply chain to build the required revision of the product.
The overall result is the highest-integrity board design release management possible. Not only is your actual design project tightly monitored, backed-up, and managed in a version-controlled Design Repository, but also too, the releases of its data in a similar manner within the target server - robust, safe, secure.
In conjunction with the managed content server, Altium NEXUS offers the ability to work with an advanced project construct in the form of a Managed Project. Stored within a server-based Design Repository, a managed project harnesses the server's version control and design collaboration capabilities to provide a refined approach to centralized design for small or large design teams. Thanks to the intelligence built in to the server, tasks such as VCS operations are simplified and automated, and additional design collaboration features such as user access control (sharing), commenting and notifications are integrated with Altium NEXUS. The end result is a robust and secure project storage format and location that can become the central point for collaborative project design. For more information, see Managed Projects and Releasing a Design.
Integration with version control. If your project is under version control, then the system requires all files to be checked in and up to date before releasing. This ensures that no "private copy" of an essential design document is ever allowed to sit on an engineer's hard drive - with the potential of becoming lost. This simple rule can save hours down the track in costly searching for the right set of design documents that were used to generate a released product.
'One-shot releasing'. The system only allows you to release once to any given revision of a targeted Item. In fact, a successful release results in committing (storing) the release data in the referenced Item Revision, then closes that revision. No further data can be generated and released into that same revision.
Automated and repeatable design release process. One-touch releasing - no manual stages or risks. From taking the snapshot of the design files, through validation, and output generation, there is no interaction. If a part of the process fails, the release fails. Simple as that. And you get to review all generated data before final committal of the release data into the Item Revision in the target server.
Ability to validate the design as an integral part of the design release process. The release process works from a 'locked down' snapshot of the design source (including dependencies) and pre-release validation is almost sure to have been performed prior to initiating release. But for additional peace of mind and to ensure the integrity of the design data, you can optionally add validation checks into the release process 'flow', through appropriately-configured Output Job Configurations. Standard ERC checking for the source schematics and DRC checking of the PCB, but also the ability to check that the source project and PCB are in-sync, and comparison of footprints on the board against their source library to ensure they are up-to-date, and matched. The release will fail if any validation checks are not passed successfully.
If you're using managed components in your design, you can add and configure an additional validation check - Component State Checking. This checks for components that are in restricted states. As part of configuration, you determine the action to be taken for each currently defined state, of each currently defined lifecycle definition in the target server; no action, a warning, or generate an error. The latter will prevent release of the design. In addition, running the check will generate a handy HTML-based report, allowing you to see at-a-glance which design components are not in valid states.
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.
All generated data files from the design release process can be optionally prefixed with the Item ID and the Item Revision ID, ensuring there can be no ambiguity as to which revision of which Item the data is to be used to build.
Publishing. Offering the ability to publish release data directly from a managed content server to a shared storage medium, such as Amazon S3, FTP servers, Box.com, or a simple network-based folder. This facilitates easy sharing of server data in a secured way, without providing outside parties access to that server.
The release process itself is performed using Altium NEXUS's Project Releaser, the user-interface to which is provided courtesy of a dedicated view - the Release view.
The Release view - the user interface to the Project Releaser. Hover over the image to see the appearance when you have invoked a process to release and then publish to an integrated PLM instance.
The Project Releaser caters for all types of PCB project - unmanaged/non-version-controlled, under external VCS control, or managed through a managed content server - by offering two modes of operation:
Online Mode - releasing all generated data to revisions of Items in a target managed content server. You don't even have to remember to increment Item Revisions, it is all handled for you. And if you have a process defined for releasing to a PLM instance through the Project Releaser, starting that process will add an additional stage to the view for doing just that.
Offline Mode - releasing all generated data into a folder-based structure, which can be optionally wrapped up in a single Zip file.
With the Release view in Online Mode, the release process is a staged flow, with the entries on the left-hand side of the view showing you at-a-glance, which stage you are currently at:
Configure Server Release - this stage of the release process is where you specify the type(s) of data that you wish to generate (Source Data (always generated), Fabrication Data, Assembly Data (for base design and each detected variant)).
Validate Project - this next stage of the release process is run automatically when one or more Validation-type reports are detected in assigned OutJob file(s). All defined validation output generators, defined in an Output Job file assigned to the data item being released, are run.
Generate Data - this next stage of the release process is run automatically. This is where all other outputs - defined in the OutJob file(s) assigned to the included Data Items - are run, to generate the data to be released into the relevant target items in the server.
Review Data - with all validation checks passed, and output data generated, this stage of the release process allows you to review the generated data.
If you choose to use the Prepare & Release or Prepare & Release & Publish to PLM commands (from the menu associated to the button), the Project Releaser will not pause at the Review Data stage.
Upload Data - after confirming the release in the previous stage, this next stage is automatically entered. It simply presents progress of data upload into the revisions of the relevant data Items in the target server.
Execution Report - this is the final stage of the process, providing a summary of the release. Navigation links are provided to quickly browse to the generated Item Revisions in the Explorer panel. If you have accessed the Project Releaser as part of a process to release and publish to a PLM, then the button will be presented. Click this to continue the underlying workflow for the process, to publish to the PLM.
If you choose to use the Prepare & Release & Publish to PLM command (from the menu associated to the button), the Project Releaser will not pause at the Execution Report stage, and no button will be presented.
Publish to PLM - this stage is only present when running the release under the relevant activated process (for releasing and then publishing to a PLM). This stage is entered automatically when the button is clicked in the previous stage (or entered directly if the Prepare & Release & Publish to PLM command (from the menu associated to the button), was used). The Login Credentials dialog will appear. Enter the Username and Password for your PLM instance, and select the PLM Template you want to use (which appears in the form <PLMInstance>:<PublishingTemplate>).
Note that your PLM instance login credentials are only required for the first time you publish to that instance. These will then be stored with the NEXUS Server. After that, any publishing of that project to that same PLM instance will proceed directly, in accordance with the defined workflow and chosen publishing template.
If you're publishing for the first time and part numbers (on the PLM side) are not yet associated with the managed project, those part numbers will be created in the PLM and associated to the project as part of that initial publication. You also have the ability to define component entries for NEXUS managed components in the PLM instance, as part of the publishing operation - to get a BOM of components within the PLM (optional, based on the publishing templated defined and used when publishing the project to the PLM instance).
If your project currently has no Output Job file(s) associated to it, the Project Releaser will detect this, and you will be asked if you wish to create default ones.
A very powerful aspect of the Project Releaser, is that it will detect defined variants for your design and create Assembly Data sets for each, ready for release.
The system naturally prevents any modification of design files between preparing the release and releasing the data to the target server. If you do change design files in any way, the release process will terminate, and you will return to the initial stage, prior to release preparation.
With the Project Releaser, you'll be able to generate your manufacturing data with simplified ease, and with the highest integrity. And you'll also be able to survey the fruits of that generation before you commit to finalizing the release (viewing Gerbers/ODB++ data in the CAM Editor for example), ensuring that the data you have generated is exactly the data required to get your board manufactured on time, first time.
For released data generated from a board design project (PCB Fabrication Data, PCB Assembly Data, and PCB Project Design Items only), you have the ability to directly publish that data from your managed content server, or Output Job, to a storage space, such as Box.com, Amazon S3, an FTP server, or a simple folder location on a shared network. In terms of distribution and collaboration, this provides an unparalleled advantage in a world where the collective members of the overall 'product team' - the design team, the manufacturing team and all others involved in the process of getting a product from thought to reality - are often dispersed around the globe.
Publishing is a matter of defining a Publishing Destination and then uploading the released data for the required Item Revision to that destination. From the manufacturing plant in China, to the design teams in Kiev, Stanstead Abbotts, and San Diego, and to the Project Director in-flight somewhere across the Pacific, everyone that needs to know about the new release can be invited with a link to the published folder - shared (and controlled) access to view, discuss, and utilize the data with which to build the Item.
Publish your released data to a storage space and share information between team members across the globe.
You can also define and activate processes for publishing to a PLM. The following sample process definitions are available with your installation of the NEXUS Server - part of the Project Activities process theme - to perform this standard publishing (i.e. not publishing as part of the Project Releaser, as described previously):
Publish to PLM (latest) - standard publish of released managed project outputs to the integrated PLM instance. The workflow diagram is shown below.
Publish to PLM (User selects) - publish of released managed project outputs to the integrated PLM instance, but with the user able to select exactly which outputs get published. The workflow diagram is shown below.
These process definitions cannot be activated and used as is. Each of these is therefore more like a 'template' - edit to suit your company's requirements, name, and save as a new process definition, which you can then activate and use.
Standard publish to PLM processes (with or without user selection) can be accessed from within Altium NEXUS from the Project » Project Activities sub-menu for the active project.
Accessing activated processes for standard publishing of a managed project's released data to a PLM instance, from within Altium NEXUS.
Also accessible from the Project Activities context sub-menu, accessed by right-clicking on the entry for the design project in the Projects panel.
From the NEXUS Server's browser interface, the activated process definition can be accessed from the detailed view for a managed project, by clicking the button.
Accessing activated processes for standard publishing of a managed project's released data to a PLM instance, from the NEXUS Server's browser interface.
Altium NEXUS provides for web-based markup and commenting capabilities through the concept of Web Review.
The Altium Web Review feature provides universal access to PCB project documents through a standard web browser. Much more than just a web-based viewer, the Web Review's advanced browser technology allows users to navigate through the project structure, interact with design documents, extract information about elements in the design and highlight areas or objects for commenting notes.
When viewing documents the visual quality of schematics and PCBs are not compromised by its web format, which also provides full pan and zoom capabilities, and in the case of PCB documents, a high-quality interactive 3D view of the board.
Functionality is automatically included at time of release, so that you can enjoy the fruits of this functionality, without having to perform any setup.
As an independent browser based view platform, the Web Review feature offers interactive read-only access to design documents without the need to open the project in the design editing environment. Others that are working on the design, such as the engineer who 'owns' it, will not be affected by actions in the Web Review space – except for any related comment notifications.
The Web Review feature can be accessed from both the NEXUS design space (client) and from the NEXUS Server's own browser interface. Any user that has access rights (suitable sharing permissions) to open a project may select it for viewing in the Web Review interface, whether it's opened from the design or server side. This allows users without access to the NEXUS design client, such as a team manager or a librarian for example, to interact in detail with project documents and also view a range of important data – all that's required is a NEXUS Server user account and appropriate privileges.