Best approach to develop a GUI tool that integrates Simulink, code generation, testing, and documentation workflows

32 views (last 30 days)
I'm planning to develop a custom tool—specifically a GUI—that orchestrates the development workflow in MATLAB/Simulink. This includes integration with Simulink models, code generation, document generation, testing, static analysis, and other related tasks. I’m aware that MATLAB provides toolboxes for each of these areas, but my goal is to streamline the process and provide a unified interface to control and coordinate the entire flow.
What would be the best approach to implement such a tool?
Should I build the GUI entirely using MATLAB (e.g., App Designer or programmatic UI components), or would it be better to leverage Java, considering that MATLAB supports Java integration?
Any guidance or examples from similar projects would be greatly appreciated.

Accepted Answer

Satyam
Satyam on 21 Nov 2025 at 5:36
Edited: Satyam on 21 Nov 2025 at 5:37
If your goal is to create a unified interface for managing MATLAB/Simulink workflows, the most practical and supported approach is to build the GUI entirely in MATLAB using App Designer or programmatic UI components. This ensures tight integration with Simulink APIs, toolboxes for code generation, testing, and analysis, and simplifies deployment. While Java integration is possible, it adds complexity and is only recommended if you need advanced UI features beyond MATLAB’s capabilities.
You can refer to this example to control a Simulink Simulation with App Designer https://www.mathworks.com/help/simulink/ug/control-a-simulink-simulation.html
To integrate different stages of the workflow into your GUI, you can leverage MATLAB and Simulink APIs that provide programmatic control over models, code generation, testing, and reporting. Below are the key integration points you should consider:
  • Simulink Model Control: Use functions like load_system, set_param, and sim to load, configure, and run models.
  • Code Generation: Automate builds using slbuild or Embedded Coder APIs for generating C/C++ code.
  • Testing: Utilize Simulink Test APIs such as sltest.testmanager for creating and executing test cases.
  • Static Analysis: Integrate Simulink Check or Polyspace APIs for model and code compliance checks.
  • Documentation: Generate reports using MATLAB Report Generator (rptgen) or Simulink Report tools.
I hope it would solve your query.
  1 Comment
Arturo Torres-Romero
Arturo Torres-Romero on 1 Dec 2025 at 18:05
thanks so much fo this info. That makes sense. I will start doing some prototypes and proof of concept using the Matlab GUI capabilities.

Sign in to comment.

More Answers (0)

Categories

Find more on Code Generation in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!