Main Content

About Design Evolutions

Design evolutions help you model and analyze your engineering process. A design evolution is a snapshot of all files included in a project. When developing a new design or troubleshooting an existing design, you may add or remove files from the design, or create different versions of files in your design. By creating evolutions at key stages in your design process, you can manage and compare different versions of a design during the course of your work. The relationships between evolutions and the metadata associated with evolutions help you to understand the big-picture trajectory of your design process, including why certain design decisions were made.


The Design Evolution Manager is available on MATLAB® Online™ only and requires a Simulink® license.

Evolutions and Evolution Trees

Evolutions are alternative versions of project files that you have stored, similar to a revision control submission. An evolution is a snapshot of a particular version of your files contained in a project. Each evolution you create has metadata associated with it where you can add additional descriptive information about the version of the design that is captured in the evolution. An evolution tree is a visual representation of a collection of related but different versions of your design stored as evolutions.

This figure shows an example of a small evolution tree. An evolution tree has two important elements:

  • Evolution nodes, visualized as boxes in the evolution tree.

  • Connectors between evolution nodes, visualized as arrows between evolutions. Connectors contain information about the changes between the design versions.

Screenshot of an example evolution tree.

Evolutions have parent-child relationships in the evolution tree. The first evolution you create is the Baseline evolution, which is the reference point for the evolution tree. The Baseline evolution is parent to all following evolutions. Each subsequent evolution you create is a child of the previous evolution. A child evolution represents a change or set of changes made to the design since its parent evolution was saved. The connectors between evolutions contain metadata about the changes that have occurred between the parent evolution and the child evolution. You can create branches in your evolution tree by having multiple child evolutions under a single parent evolution.

The shape of the evolution tree visually maps to your design process. Your evolution tree may be linear, indicating that each evolution is a continuation of the same design path. Or, your evolution tree may branch if you explore multiple design directions within one evolution tree. You can use evolutions and branches in the evolution tree to explore different design ideas, perform trade studies, or troubleshoot an existing design. Evolutions can be used to record successful design directions and also to keep a record of unsuccessful design ideas. At any point, you can trace back through your evolution tree to understand why particular changes were made to the design.

See Also


Related Topics