Componentization Using Referenced Projects
For a large modeling project, organizing the project into components facilitates:
Component reuse
Modular, team-based development
Unit testing
Independent release of components
Projects supports large-scale project componentization by allowing you to reference other projects from a parent project. A collection of parent and referenced projects constitutes a project reference hierarchy. Project referencing provides these benefits:
A parent project has access to a referenced project’s project paths, entry-point shortcuts, and source control information. For example, from a parent project, you can display the hierarchy of referenced projects. You can select a referenced project and then view, edit, and run files that belong to the referenced project.
Through a referenced project, your team can develop a component independent of other components.
In a referenced project, you can test the component separately.
In a parent project, you can set a checkpoint and then compare the referenced project against the checkpoint to detect any changes.
This project hierarchy illustrates the use of parent and referenced projects as components of a large project.
Through the Transistor Development project, a team independently creates and tests a library of blocks. The team makes the library available to other developers by exporting release versions, for example, version 2.3.
Through the Radio Development project, another team develops and tests the Radio system. This team requires:
Version 2.3 of the Transistor component. The team sets up the Radio Development project to reference the Transistor Release V2.3 project.
Tools to plot signals, for example, MATLAB® files that are not distributed to customers. The team sets up the Radio Development project to reference the Plotting Tools Development project.
When the Radio system is ready for customers, the team exports a release version, for example, version 4.1.
Related Topics
- How to Organize Large Projects into Components (3 min, 32 sec)
- Organize Large Modeling Projects
- Component-Based Modeling Guidelines
- Add or Remove a Reference to Another Project
- View, Edit, or Run Referenced Project Files
- Extract a Folder to Create a Referenced Project
- Manage Referenced Project Changes Using Checkpoints
- Organize Projects into Components Using References and Git Submodules