Part 1: Experience Next Design
In this section, you’ll learn the basics by actually working with Next Design.
First, install Next Design and explore the sample project included in the Embedded Software Development Base Package to familiarize yourself with the user interface, terminology, and basic modeling operations.
Step
Let's explore the key features of Next Design in this order.
1. Let's get ready
Install Next Design
Procedure
First, download and install Next Design.
Please refer to the separate email for instructions on how to download the software.
procedure
- The first time you launch Next Design, the license registration screen will appear.
- If you are using the trial version, select [Trial] from the [License Type] drop-down menu on the left and click the [Register] button.
Goal
Once license registration is complete, the Next Design start screen will appear.
With the trial version, you can use all features equivalent to those of the Enterprise Edition and Architect Edition for 90 days after registration is complete.
Install the Sample Project
Details of the Implementation
The Next Design sample projects become available once you install the additional packages.
In this user guide, we will cover the "Embedded Software Development Base Package" (package name:Embedded Software DevBase) Use the sample project included in ().
procedure
- Launch Next Design, select [File] > [Manage Extensions] from the ribbon to open the [Manage Extensions] dialog box.
- In the [Manage Extensions] dialog, select [Denso Create Official] from the list on the left to display the official packages in the list in the center.
- Select [EmbeddedSoftwareDevBase] from the list in the center to view the package details.
- Click the [Install] button to install the package.
- Next, you'll need to install the related packages. In this case, do not restart Next Design; simply proceed to the next step.
Goal
Follow the instructions Embedded Software DevBase You can install the package.
Install the related packages
Details of the Implementation
To enable the display of views such as state transition tables included in the sample, use the UML/SysML package (package name:UML/SysML) will also be installed.
If you have already installed the UML/SysML package, proceed to Step 4 and restart Next Design.
procedure
- In the [Manage Extensions] dialog, select [Denso Create Official] from the list on the left, and scroll down the list in the center.
- Select [UmlSysml] from the list in the center to view the package details.
- Click the [Install] button to install the package.
- Once the installation is complete, restart Next Design to enable the package.
- After restarting, verify that [Embedded Software Development] and [UML/SysML] are displayed in the sample projects on the Start screen.
- Click [Embedded Software Development] in the sample projects list to open the sample.
Goal
Follow the instructions to install the package, and then restart Next Design. You will then be able to open [Embedded Software Development] from the sample projects on the Start screen.
2. Let's give it a try
Check out the sample project
Details of the Implementation
Open the sample project [Embedded Software Development] (hereinafter referred to as “the sample”) from the Next Design startup screen, and review Next Design’s screen layout and basic terminology while looking at the actual screens.
procedure
- When you launch Next Design, the [Start Screen] appears, displaying [Templates] for starting new projects and [Sample Projects] that contain example models.
- If you click [Embedded Software Development] in the sample projects to open the sample, the screen will appear as shown below.
- (A) Top of the screen: [Ribbon]-style menu
- (B) Left side: [Model Navigator] in tree format
- (C) Center: [Main Editor] for editing models
The individual nodes displayed in a tree structure in the [Model Navigator] on the left are called [Models]. These models have a hierarchical structure.
- When you expand the tree in the [Model Navigator] and select a model, the model's contents—that is, the design information—will be displayed in the [Main Editor].
Embedded Software Development / Software Component Design / Application Layer / Calculation of Vehicle-to-Vehicle Distance Deviation
- At the top right of the [Main Editor], you'll find a list of representation options for that model, such as [Unit and Specification List], [Static Structure Diagram], and [Type Definition List]. These are called [Views]. Selecting one of them allows you to switch the model's representation.
- If you select [View] > [Pane] > [Subeditor] from the ribbon, the [Subeditor] will appear next to the [Main Editor] on the right.
- In the subeditor, you can select display modes such as [Manual], [Detailed], and [Input] from the drop-down list at the top. Of these, [Detailed] mode is the one most commonly used.
In Detailed Mode, the model displayed in the sub-editor automatically changes in response to selection operations performed in the main editor.
Goal
By working with the sample, you'll understand the basic screen layout and learn how to switch between the model and the view.
Experience Editing Models and Updating Views
Details of the Implementation
Edit a part of the model and see how the changes are automatically reflected in the other views.
procedure
- As in the previous steps, select the following model to display the [Unit and Specifications List] view.
Embedded Software Development / Software Component Design / Application Layer / Vehicle Speed Deviation Calculation
- Verify that the following model is included among the models displayed in the tree grid view.
Vehicle Speed Deviation Calculation / Target Vehicle Speed Calculation
- When you switch to the [Static Structure Diagram] view, the model's structure is displayed in ER diagram format. Verify that the [Target Speed Calculation] model you just reviewed appears on the left side of the diagram.
- Double-click the text “[Target Vehicle Speed Calculation]” on the diagram, add “[Process]” at the end, and change the model name to “[Target Vehicle Speed Calculation Process].”
- Switch to the [Unit and Specifications] view to verify that the model name change has been reflected here as well.
Goal
You can see that this system prevents inconsistencies in design information by separating the model—which centrally manages the design information—from the views, which switch between different representations of that information.
3. Let's experience the design process
Understanding the Design Process
Summary
In this section, we’ll walk through a more specific design process, switching between the sample views provided, to experience how to use Next Design to advance the software design.
Proposed Design Process
The sample has already been fully designed. If you are designing from scratch, you will need to follow the instructions in the sample manual; however, in this section, we will focus only on the following key points from the overall design process to give you a hands-on experience.
- Designing the overall structure of the architecture
- View an overview of the architecture's static structure
- Designing individual behaviors using optimal design methods
Detailed Explanation
- When designing the overall structure, you can use diagram-style views to get a grasp of the overall structure as you design.
- By switching views, you can view a table summarizing your design results. Reviewing each column in the table makes it easier to spot omissions or data entry errors.
- You can design behavior using predefined design methods such as sequence diagrams, state machine diagrams, and state transition tables.
Goal
By proceeding with the design while selecting the appropriate views according to the design workflow, you can maintain a consistent presentation style and ensure the integrity of the design information, thereby preventing omissions and errors.
Designing the overall structure of the architecture
Details of the Implementation
In the early stages of design, we use an ER diagram view—which allows for graphical representation—to design the overall structure of the architecture and gain a broad perspective on the subject of the design.
By using an ER diagram view, you will experience how it enables you to visualize and understand the static structure of the target model and the relationships between its components.
procedure
- As in the previous steps, if you open the following model and display the [Static Structure] view, the overall structure of the architecture, organized by layers and components, will be displayed as a diagram.
Embedded Software Development / Software Architecture Design / ADAS ECU Component Integration
💡 Tip:
If the image is too large and you need to scroll, hold down the right mouse button and drag on the image to pan the screen up, down, left, or right. - In an ER diagram, layers and components are represented as a nested structure, and related models are connected, allowing you to intuitively grasp the structure and relationships of the design subject.For example, within the [APP Layer] box, there are blocks representing the three components—[Vehicle Speed Deviation Calculation], [Inter-Vehicle Distance Deviation Calculation], and [Target Control]—and it is clear that they are related to other components.
- From that state, if you use the subeditor's [Details] mode, you can view the big picture in the ER diagram while simultaneously checking the details of the selected component in the subeditor.
Goal
In the early stages of design, you will come to understand that by using ER diagrams and sub-editors together, you can proceed with structural design while maintaining a bird’s-eye view of the entire system under design.
View an overview of the architecture's static structure
Details of the Implementation
While designing the overall structure in the ER diagram view, switch to the tree grid view to review the static structure of the hierarchical architecture at a glance.
The tree grid view displays the hierarchical model structure in tabular form while preserving its hierarchy, allowing you to view names and items together—making it easier to spot omissions or input errors in your design.
procedure
- As in the previous steps, select the following model and switch to the [Components & Specifications] view to display the components under the layer in a tree grid format.
Embedded Software Development / Software Architecture Design / ADAS ECU Component Integration
- When you check that the components under each layer are arranged in a tree structure, you'll see that you can view them all at a glance while maintaining their parent-child relationships.
- If you follow the elements through the hierarchy shown below, you can verify that the structure you saw in the diagram is represented as the same model in the list as well.
ADAS ECU Component Integration / APP Layer / Vehicle Speed Deviation Calculation
- As you navigate the parent-child relationships in the list, you can edit or verify the values in the [Description] column.
- By selecting a row from the [Main Editor] list and using the [Details] mode in the sub-editor, you can edit or view the details of individual elements in any view.
Goal
By viewing the list in a tree-grid format, you can get an overview of the structure being designed and its individual items, and you’ll understand that you can design by switching between views depending on your purpose.
Regardless of which view you use for design, the design information is always kept consistent. This is because the design information is centrally managed as part of the model.
Designing individual behaviors using optimal design methods
Details of the Implementation
The sample supports the following design methods for the dynamic behavior of software.
- Sequence Diagram
- DFD
- State Machine Diagram / State Transition Table
- Flowchart
You'll experience how applicable design methods are already prepared based on the design subject, allowing you to design without hesitation about how to express your ideas.
procedure
- Select the following model in the Model Navigator to display the [Details] view.
Embedded Software Development / Software Component Design / Application Layer / Vehicle Speed Deviation Calculation
- With the subeditor displayed in [Details] mode, select the [Vehicle Speed Deviation] row under [Sequence Diagram] in [Dynamic Design] in the main editor. This will display the [Sequence Diagram] view in the subeditor, allowing you to edit it.
- Similarly, in the [Details] view of the main editor, if you select the [Vehicle Speed Deviation] row under [DFD] in [Dynamic Design], the [DFD] view will appear in the sub-editor, allowing you to edit it.
procedure
- Select the following model in the Model Navigator to display the [Details] view.
Embedded Software Development / Software Component Design / Application Layer / Calculation of Vehicle-to-Vehicle Distance Deviation
- In the [Details] view of the main editor, select the [Vehicle-to-Vehicle Distance Settings] row under [Dynamic Design] > [State Machine Diagram]. This will display the [State Machine Diagram] view in the sub-editor, allowing you to edit it.
You can also switch from the [State Machine Diagram] view to the [State Transition Table] to edit it.
procedure
- Select the following model in the Model Navigator to display the [Details] view.
Embedded Software Development / Software Component Design / Application Layer / Vehicle Speed Deviation Calculation / Target Vehicle Speed Calculation / Target Vehicle Speed Setting
- If you scroll to the bottom of the [Details] view in the main editor, the [Flowchart] entry will appear. When you select the [Flowchart] row, the [Flowchart] view will appear in the sub-editor, allowing you to edit it.
Goal
You will understand how to select the optimal design methodology based on the design target and use dedicated views tailored to that methodology to design individual behaviors. Even when designing behaviors, you can proceed with the design using views suited for embedded software development while maintaining a centralized model.
4. Let's Experience Traceability
Design Based on Requirements
Open in a new window
Open in a new window
Details of the Implementation
One of Next Design’s unique features is the ability to derive models from upstream processes. By using requirements as input for the design process, this feature naturally ensures traceability, eliminating the need to re-establish traceability after the design is complete.
Here, you will experience how trace information is automatically recorded as you proceed with the design by deriving design models related to the requirement model through drag-and-drop operations between the main editor and the sub-editor.
procedure
- Select the next requirement model in the Model Navigator to display the [Requirement List] view in the main editor.
Embedded Software Development / Software Requirements Analysis / Advanced Driver Assistance Systems (ADAS) Software Development / ADAS ECU Control Software
- Switch the subeditor's display mode to [Manual] so that the specified model is always displayed in the subeditor.
- Drag the next model to be designed from the Model Navigator. When you drop that model at the top of the subeditor, it will be displayed in the subeditor. Make sure the [Components & Specifications] view is displayed.
Embedded Software Development / Software Architecture Design / ADAS ECU Component Integration
⚠️ Note:
When doing this, please start dragging while holding down the mouse button in the Model Navigator. If you release the mouse button, that model will be selected and displayed in the main editor. - Right-click any model in the main editor, then click [Tree] > [Expand All] from the context menu to display all elements of the selected model.
Similarly, expand all the subeditor trees to display all the elements of the model being designed.
With this, the requirements model is displayed in the main editor and the target model is displayed in the sub-editor, so we are now ready to design the target model using the requirements model as input.
- The sample has already been designed, and trace lines indicating trace information are displayed between the elements of the requirements model on the left and the elements of the design model on the right. This cross-editor trace feature allows you to verify the relationship between requirements and the design as you design.
- We derive the design model from the requirements model as follows.
Requirement Model: Line 16 of the Main Editor [While driving with cruise control at a constant speed...]
Design Model Location: Line 5 of the Sub-Editor [Functional Specifications]When you hover over the rightmost column of the requirements model shown above in the main editor, a gray [+] icon appears. Drag that [+] icon and drop it onto the location in the design model shown above in the sub-editor where you want to add it. With this single action, a new element is added to the design model and connected to the requirements model via a trace line.
- To draw trace lines between elements in the existing requirements model and elements in the design model, drag the [+] icon from the requirements model and drop it onto the orange [○] icon displayed in the leftmost column of the existing design model. This also allows you to add trace information manually at a later time.
Goal
By using “Model Derivation”—a feature unique to Next Design—to derive a design model from a requirements model, you’ll see that traceability information is automatically recorded as you design. This ensures comprehensive traceability while eliminating redundant work.
Verify traceability across processes
Open in a new window
Open in a new window
Details of the Implementation
Next Design has a dedicated screen for verifying traceability.
In Trace View, trace information is displayed across multiple lanes for linked models, allowing you to view cross-process traceability at a glance.
In this section, you'll experience how to use Trace View to verify traceability from requirements to design and from design to test, identify any omissions, and jump to specific models to review details.
procedure
- Click [Traceability] > [View] > [Trace] on the ribbon to display the Trace view.
- To switch the display target, select one of the following options from the [Display Target] menu at the top of the Trace View.
Software Requirements → Component Specifications → Unit Specifications
Based on the information preconfigured in the options according to the objective, models corresponding to the requirements, design, and detailed design are arranged in multiple lanes, allowing users to verify the relationships across processes.
- Right-click any model in each lane, select [Tree] > [Expand All] from the context menu, and view all elements. This displays the trace information established between models in each process as a graph, allowing you to trace the information across processes.
- When you click on any model in the lane, the models associated with it in the trace information are highlighted across all processes, which helps with impact analysis during requirement changes or design changes.
- Use the coverage rate displayed at the bottom of each lane and the icons displayed to the left and right of each element to check for missing trace information. The coverage rate allows you to understand the correspondence between processes, and the [!] icon helps you identify models lacking trace information, enabling you to quickly locate potential omissions.
- Similarly, you can verify the adequacy of the tests for the design by selecting and switching between the following options under [Display Targets].
Software Component Design — Software Component Testing — Test Results
These options can be freely added or modified depending on the development process and traceability verification requirements.
- If you want to view details about a specific model, right-click it and select [View in Editor] from the context menu. The model will then appear in the editor, allowing you to immediately investigate any omissions you noticed in the Trace View, as well as the model's design information.
Note that the trace page and the model are displayed in separate tabs. You can drag the trace page tab up or down to detach it into a separate window, allowing you to view the trace page and the model at the same time.
Goal
By utilizing trace information between models and the Trace View, which provides an overview of that information, you can understand the entire cycle—from verifying cross-process traceability to reviewing the details of individual models as needed.
Let's move on.
In the next section, you'll get a firsthand look at how Next Design can help you in your work.


