systemlink-cli 1.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- slcli/__init__.py +1 -0
- slcli/__main__.py +23 -0
- slcli/_version.py +4 -0
- slcli/asset_click.py +1289 -0
- slcli/cli_formatters.py +218 -0
- slcli/cli_utils.py +504 -0
- slcli/comment_click.py +602 -0
- slcli/completion_click.py +418 -0
- slcli/config.py +81 -0
- slcli/config_click.py +498 -0
- slcli/dff_click.py +979 -0
- slcli/dff_decorators.py +24 -0
- slcli/example_click.py +404 -0
- slcli/example_loader.py +274 -0
- slcli/example_provisioner.py +2777 -0
- slcli/examples/README.md +134 -0
- slcli/examples/_schema/schema-v1.0.json +169 -0
- slcli/examples/demo-complete-workflow/README.md +323 -0
- slcli/examples/demo-complete-workflow/config.yaml +638 -0
- slcli/examples/demo-test-plans/README.md +132 -0
- slcli/examples/demo-test-plans/config.yaml +154 -0
- slcli/examples/exercise-5-1-parametric-insights/README.md +101 -0
- slcli/examples/exercise-5-1-parametric-insights/config.yaml +1589 -0
- slcli/examples/exercise-7-1-test-plans/README.md +93 -0
- slcli/examples/exercise-7-1-test-plans/config.yaml +323 -0
- slcli/examples/spec-compliance-notebooks/README.md +140 -0
- slcli/examples/spec-compliance-notebooks/config.yaml +112 -0
- slcli/examples/spec-compliance-notebooks/notebooks/SpecAnalysis_ComplianceCalculation.ipynb +1553 -0
- slcli/examples/spec-compliance-notebooks/notebooks/SpecComplianceCalculation.ipynb +1577 -0
- slcli/examples/spec-compliance-notebooks/notebooks/SpecfileExtractionAndIngestion.ipynb +912 -0
- slcli/examples/spec-compliance-notebooks/spec_template.xlsx +0 -0
- slcli/feed_click.py +892 -0
- slcli/file_click.py +932 -0
- slcli/function_click.py +1400 -0
- slcli/function_templates.py +85 -0
- slcli/main.py +406 -0
- slcli/mcp_click.py +269 -0
- slcli/mcp_server.py +748 -0
- slcli/notebook_click.py +1770 -0
- slcli/platform.py +345 -0
- slcli/policy_click.py +679 -0
- slcli/policy_utils.py +411 -0
- slcli/profiles.py +411 -0
- slcli/response_handlers.py +359 -0
- slcli/routine_click.py +763 -0
- slcli/skill_click.py +253 -0
- slcli/skills/slcli/SKILL.md +713 -0
- slcli/skills/slcli/references/analysis-recipes.md +474 -0
- slcli/skills/slcli/references/filtering.md +236 -0
- slcli/skills/systemlink-webapp/SKILL.md +744 -0
- slcli/skills/systemlink-webapp/references/deployment.md +123 -0
- slcli/skills/systemlink-webapp/references/nimble-angular.md +380 -0
- slcli/skills/systemlink-webapp/references/systemlink-services.md +192 -0
- slcli/ssl_trust.py +93 -0
- slcli/system_click.py +2216 -0
- slcli/table_utils.py +124 -0
- slcli/tag_click.py +794 -0
- slcli/templates_click.py +599 -0
- slcli/testmonitor_click.py +1667 -0
- slcli/universal_handlers.py +305 -0
- slcli/user_click.py +1218 -0
- slcli/utils.py +832 -0
- slcli/web_editor.py +295 -0
- slcli/webapp_click.py +981 -0
- slcli/workflow_preview.py +287 -0
- slcli/workflows_click.py +988 -0
- slcli/workitem_click.py +2258 -0
- slcli/workspace_click.py +576 -0
- slcli/workspace_utils.py +206 -0
- systemlink_cli-1.3.1.dist-info/METADATA +20 -0
- systemlink_cli-1.3.1.dist-info/RECORD +74 -0
- systemlink_cli-1.3.1.dist-info/WHEEL +4 -0
- systemlink_cli-1.3.1.dist-info/entry_points.txt +7 -0
- systemlink_cli-1.3.1.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# Exercise 7-1: Create and Schedule Test Plans — Instructor Setup Guide
|
|
2
|
+
|
|
3
|
+
Supporting training data for **Exercise 7-1: Create and Schedule Test Plans**.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This example provisions the infrastructure needed for the guided and unguided
|
|
8
|
+
scheduling exercise. Students create a test plan for a battery pack product,
|
|
9
|
+
schedule it on an environmental chamber using the Scheduling Assistant, and
|
|
10
|
+
review work across multiple calendar views.
|
|
11
|
+
|
|
12
|
+
## Quick Start
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
# Preview what will be created (recommended before running)
|
|
16
|
+
slcli example install exercise-7-1-test-plans -w <workspace> --dry-run
|
|
17
|
+
|
|
18
|
+
# Install into the target workspace
|
|
19
|
+
slcli example install exercise-7-1-test-plans -w <workspace>
|
|
20
|
+
|
|
21
|
+
# Remove all provisioned resources when the session ends
|
|
22
|
+
slcli example delete exercise-7-1-test-plans -w <workspace>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Resources Provisioned
|
|
26
|
+
|
|
27
|
+
| Type | Count | Details |
|
|
28
|
+
| ---------- | ----- | ------------------------------------------------------ |
|
|
29
|
+
| Location | 1 | Battery Testing Lab (Austin, TX) |
|
|
30
|
+
| Product | 1 | Model ABC — Battery Packs family |
|
|
31
|
+
| System | 1 | Chamber B (thermal cycle test stand) |
|
|
32
|
+
| Asset | 1 | Slot_01 — Fixture on Chamber B |
|
|
33
|
+
| DUT | 1 | BAT-DUT-C01 |
|
|
34
|
+
| Workflow | 1 | Battery Test Plan Workflow (full state machine) |
|
|
35
|
+
| Template | 1 | Blank Test Plan |
|
|
36
|
+
| Work Order | 1 | Battery Validation – Model ABC |
|
|
37
|
+
| Work Item | 1 | Thermal Cycle Test (pre-created test plan, state: NEW) |
|
|
38
|
+
|
|
39
|
+
**Total: 9 resources**
|
|
40
|
+
|
|
41
|
+
## Exercise Alignment
|
|
42
|
+
|
|
43
|
+
### Guided Steps
|
|
44
|
+
|
|
45
|
+
| Exercise section | Resource used |
|
|
46
|
+
| ------------------------------------- | ------------------------------------------------- |
|
|
47
|
+
| Start from Work Orders | Work Order: **Battery Validation – Model ABC** |
|
|
48
|
+
| Create test plan — product family | Product: **Model ABC** (family: Battery Packs) |
|
|
49
|
+
| Create test plan — select template | Template: **Blank Test Plan** |
|
|
50
|
+
| Create test plan — select DUT | DUT: **BAT-DUT-C01** |
|
|
51
|
+
| Scheduling Assistant — select system | System: **Chamber B** |
|
|
52
|
+
| Scheduling Assistant — select fixture | Asset/Fixture: **Slot_01** |
|
|
53
|
+
| Verify Fixture Allocation | Fixture column shows **Slot_01** on the work item |
|
|
54
|
+
| Adjust schedule from DUT | Assets > **BAT-DUT-C01** > Work Items |
|
|
55
|
+
| View schedule for a specific system | Systems > **Chamber B** > Schedule tab |
|
|
56
|
+
|
|
57
|
+
### Unguided / Assess Your Skills
|
|
58
|
+
|
|
59
|
+
| Skill step | Resource used |
|
|
60
|
+
| ---------------------------------- | ---------------------------------------------- |
|
|
61
|
+
| Create test plan from a work order | Work Order: **Battery Validation – Model ABC** |
|
|
62
|
+
| Create test plan from a DUT | DUT: **BAT-DUT-C01** > Work Items tab |
|
|
63
|
+
|
|
64
|
+
## Instructor Notes
|
|
65
|
+
|
|
66
|
+
- The **Thermal Cycle Test** work item is pre-created (linked to the work order)
|
|
67
|
+
so students can practice the Scheduling Assistant steps immediately after
|
|
68
|
+
completing the Create test plan wizard.
|
|
69
|
+
- **Slot_01** is an `asset` with `assetType: FIXTURE` on Chamber B.
|
|
70
|
+
It appears in the Scheduling Assistant's fixture picker and in the
|
|
71
|
+
Fixtures column of the Work Items table.
|
|
72
|
+
- **BAT-DUT-C01** shares the same naming convention as the DUTs
|
|
73
|
+
in exercise-5-1-parametric-insights (e.g. `BAT-DUT-C01`).
|
|
74
|
+
- All resources share the tag `exercise-7-1-test-plans`, which the cleanup
|
|
75
|
+
command uses to delete only exercise resources without touching other data.
|
|
76
|
+
|
|
77
|
+
## Cleanup
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
slcli example delete exercise-7-1-test-plans -w <workspace>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Deletion order (respects dependencies):
|
|
84
|
+
|
|
85
|
+
1. `work_item`
|
|
86
|
+
2. `work_order`
|
|
87
|
+
3. `testtemplate`
|
|
88
|
+
4. `workflow`
|
|
89
|
+
5. `dut`
|
|
90
|
+
6. `asset` (fixture Slot_01)
|
|
91
|
+
7. `system` (Chamber B)
|
|
92
|
+
8. `product` (Model ABC)
|
|
93
|
+
9. `location` (Battery Testing Lab)
|
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
---
|
|
2
|
+
# SLE Example Configuration: Exercise 7-1 - Create and Schedule Test Plans
|
|
3
|
+
format_version: "1.0"
|
|
4
|
+
name: "exercise-7-1-test-plans"
|
|
5
|
+
title: "Exercise 7-1: Create and Schedule Test Plans"
|
|
6
|
+
description: |
|
|
7
|
+
Training data for Exercise 7-1: Create and Schedule Test Plans.
|
|
8
|
+
|
|
9
|
+
Provisions the infrastructure required to complete the test plan scheduling
|
|
10
|
+
exercise using the SystemLink Scheduling Assistant. A battery pack product
|
|
11
|
+
(Model ABC), an environmental chamber system (Chamber B), a fixture slot
|
|
12
|
+
(Slot_01), and a DUT (BAT-DUT-C01) are created so students can:
|
|
13
|
+
|
|
14
|
+
1. Create a test plan (work item) named "Thermal Cycle Test" for Model ABC.
|
|
15
|
+
2. Use the Scheduling Assistant to assign Chamber B + Slot_01 + BAT-DUT-C01.
|
|
16
|
+
3. Drag the test plan onto the calendar timeline.
|
|
17
|
+
4. Review scheduled work across the Operations > Schedule view and
|
|
18
|
+
the Chamber B system Schedule tab.
|
|
19
|
+
5. Adjust the schedule from the DUT's Work Items tab.
|
|
20
|
+
|
|
21
|
+
A starter work order ("Battery Validation – Model ABC") and a blank test
|
|
22
|
+
plan work item are also included so the unguided / assess-your-skills steps
|
|
23
|
+
work without additional setup.
|
|
24
|
+
|
|
25
|
+
author: "NI"
|
|
26
|
+
created_date: "2026-02-25"
|
|
27
|
+
updated_date: "2026-02-25"
|
|
28
|
+
tags:
|
|
29
|
+
- "training"
|
|
30
|
+
- "exercise-7-1"
|
|
31
|
+
- "test-plans"
|
|
32
|
+
- "scheduling"
|
|
33
|
+
- "battery"
|
|
34
|
+
|
|
35
|
+
estimated_setup_time_minutes: 3
|
|
36
|
+
required_systemlink_version: "2024.1"
|
|
37
|
+
target_workspace: null
|
|
38
|
+
|
|
39
|
+
resources:
|
|
40
|
+
|
|
41
|
+
# ==========================================================================
|
|
42
|
+
# LOCATION
|
|
43
|
+
# ==========================================================================
|
|
44
|
+
|
|
45
|
+
- type: "location"
|
|
46
|
+
name: "Battery Testing Lab"
|
|
47
|
+
properties:
|
|
48
|
+
description: "Primary facility for battery pack qualification and thermal cycling"
|
|
49
|
+
address: "1000 Electrochemical Drive"
|
|
50
|
+
city: "Austin"
|
|
51
|
+
state: "TX"
|
|
52
|
+
country: "USA"
|
|
53
|
+
building: "Test Hall B"
|
|
54
|
+
id_reference: "loc_batlab"
|
|
55
|
+
tags: ["exercise-7-1-test-plans"]
|
|
56
|
+
|
|
57
|
+
# ==========================================================================
|
|
58
|
+
# PRODUCT
|
|
59
|
+
# ==========================================================================
|
|
60
|
+
|
|
61
|
+
- type: "product"
|
|
62
|
+
name: "Model ABC"
|
|
63
|
+
properties:
|
|
64
|
+
description: "48 V lithium-ion battery pack for industrial automation"
|
|
65
|
+
family: "Battery Packs"
|
|
66
|
+
category: "Energy Storage"
|
|
67
|
+
manufacturer: "DemoPower Systems"
|
|
68
|
+
part_number: "BAT-MODEL-ABC-001"
|
|
69
|
+
id_reference: "prod_abc"
|
|
70
|
+
tags: ["exercise-7-1-test-plans"]
|
|
71
|
+
|
|
72
|
+
# ==========================================================================
|
|
73
|
+
# TEST SYSTEM
|
|
74
|
+
# ==========================================================================
|
|
75
|
+
|
|
76
|
+
# Students select "Chamber B" in the Scheduling Assistant (step 3 of the
|
|
77
|
+
# "Schedule the Test Plan" section).
|
|
78
|
+
- type: "system"
|
|
79
|
+
name: "Chamber B"
|
|
80
|
+
properties:
|
|
81
|
+
description: "Environmental thermal chamber for battery pack cycling tests"
|
|
82
|
+
location_id: "${loc_batlab}"
|
|
83
|
+
serial_number: "CHB-SN-20240601-002"
|
|
84
|
+
status: "operational"
|
|
85
|
+
id_reference: "sys_chamber_b"
|
|
86
|
+
tags: ["exercise-7-1-test-plans"]
|
|
87
|
+
|
|
88
|
+
# ==========================================================================
|
|
89
|
+
# FIXTURE
|
|
90
|
+
# ==========================================================================
|
|
91
|
+
|
|
92
|
+
# Students select "Slot_01" as the fixture for Chamber B in the Scheduling
|
|
93
|
+
# Assistant and verify the Fixtures column shows Slot_01 afterwards
|
|
94
|
+
# (Verify Fixture Allocation section).
|
|
95
|
+
- type: "asset"
|
|
96
|
+
name: "Slot_01"
|
|
97
|
+
properties:
|
|
98
|
+
description: "Fixture slot 1 in Chamber B — primary DUT mounting position"
|
|
99
|
+
system_id: "${sys_chamber_b}"
|
|
100
|
+
location_id: "${loc_batlab}"
|
|
101
|
+
model_name: "Fixture Slot"
|
|
102
|
+
vendor_name: "DemoPower Systems"
|
|
103
|
+
serial_number: "SLOT-CHB-01"
|
|
104
|
+
assetType: "FIXTURE"
|
|
105
|
+
id_reference: "asset_slot01"
|
|
106
|
+
tags: ["exercise-7-1-test-plans"]
|
|
107
|
+
|
|
108
|
+
# ==========================================================================
|
|
109
|
+
# DUT — BAT-DUT-C01
|
|
110
|
+
# ==========================================================================
|
|
111
|
+
|
|
112
|
+
# Students select this DUT in the Scheduling Assistant (DUT section) and when
|
|
113
|
+
# browsing Systems Management > Assets > BAT-DUT-C01 > Work Items.
|
|
114
|
+
- type: "dut"
|
|
115
|
+
name: "BAT-DUT-C01"
|
|
116
|
+
properties:
|
|
117
|
+
description: "Model ABC battery pack under thermal validation in Chamber B"
|
|
118
|
+
system_id: "${sys_chamber_b}"
|
|
119
|
+
location_id: "${loc_batlab}"
|
|
120
|
+
part_number: "BAT-MODEL-ABC-001"
|
|
121
|
+
model_name: "Model ABC"
|
|
122
|
+
model_number: "BAT-MODEL-ABC-001"
|
|
123
|
+
vendor_name: "DemoPower Systems"
|
|
124
|
+
serial_number: "BAT-SN-C01-20250915"
|
|
125
|
+
bus_type: "CAN"
|
|
126
|
+
id_reference: "dut_c01"
|
|
127
|
+
tags: ["exercise-7-1-test-plans"]
|
|
128
|
+
|
|
129
|
+
# ==========================================================================
|
|
130
|
+
# WORKFLOW (required by the test template / work item state machine)
|
|
131
|
+
# ==========================================================================
|
|
132
|
+
|
|
133
|
+
- type: "workflow"
|
|
134
|
+
name: "Battery Test Plan Workflow"
|
|
135
|
+
properties:
|
|
136
|
+
description: "Work item state machine for battery pack test plans"
|
|
137
|
+
actions:
|
|
138
|
+
- name: "START"
|
|
139
|
+
displayText: "Start Test"
|
|
140
|
+
executionAction:
|
|
141
|
+
type: "MANUAL"
|
|
142
|
+
action: "START"
|
|
143
|
+
- name: "END"
|
|
144
|
+
displayText: "End Test"
|
|
145
|
+
executionAction:
|
|
146
|
+
type: "MANUAL"
|
|
147
|
+
action: "END"
|
|
148
|
+
states:
|
|
149
|
+
- name: "NEW"
|
|
150
|
+
dashboardAvailable: false
|
|
151
|
+
defaultSubstate: "NEW"
|
|
152
|
+
substates:
|
|
153
|
+
- name: "NEW"
|
|
154
|
+
displayText: "New"
|
|
155
|
+
availableActions: []
|
|
156
|
+
- name: "DEFINED"
|
|
157
|
+
dashboardAvailable: false
|
|
158
|
+
defaultSubstate: "DEFINED"
|
|
159
|
+
substates:
|
|
160
|
+
- name: "DEFINED"
|
|
161
|
+
displayText: "Defined"
|
|
162
|
+
availableActions: []
|
|
163
|
+
- name: "REVIEWED"
|
|
164
|
+
dashboardAvailable: false
|
|
165
|
+
defaultSubstate: "REVIEWED"
|
|
166
|
+
substates:
|
|
167
|
+
- name: "REVIEWED"
|
|
168
|
+
displayText: "Reviewed"
|
|
169
|
+
availableActions: []
|
|
170
|
+
- name: "SCHEDULED"
|
|
171
|
+
dashboardAvailable: true
|
|
172
|
+
defaultSubstate: "SCHEDULED"
|
|
173
|
+
substates:
|
|
174
|
+
- name: "SCHEDULED"
|
|
175
|
+
displayText: "Scheduled"
|
|
176
|
+
availableActions:
|
|
177
|
+
- action: "START"
|
|
178
|
+
nextState: "IN_PROGRESS"
|
|
179
|
+
nextSubstate: "IN_PROGRESS"
|
|
180
|
+
showInUI: true
|
|
181
|
+
- name: "IN_PROGRESS"
|
|
182
|
+
dashboardAvailable: true
|
|
183
|
+
defaultSubstate: "IN_PROGRESS"
|
|
184
|
+
substates:
|
|
185
|
+
- name: "IN_PROGRESS"
|
|
186
|
+
displayText: "In Progress"
|
|
187
|
+
availableActions:
|
|
188
|
+
- action: "END"
|
|
189
|
+
nextState: "PENDING_APPROVAL"
|
|
190
|
+
nextSubstate: "PENDING_APPROVAL"
|
|
191
|
+
showInUI: true
|
|
192
|
+
- name: "PENDING_APPROVAL"
|
|
193
|
+
dashboardAvailable: true
|
|
194
|
+
defaultSubstate: "PENDING_APPROVAL"
|
|
195
|
+
substates:
|
|
196
|
+
- name: "PENDING_APPROVAL"
|
|
197
|
+
displayText: "Pending Approval"
|
|
198
|
+
availableActions: []
|
|
199
|
+
- name: "CLOSED"
|
|
200
|
+
dashboardAvailable: false
|
|
201
|
+
defaultSubstate: "CLOSED"
|
|
202
|
+
substates:
|
|
203
|
+
- name: "CLOSED"
|
|
204
|
+
displayText: "Closed"
|
|
205
|
+
availableActions: []
|
|
206
|
+
- name: "CANCELED"
|
|
207
|
+
dashboardAvailable: false
|
|
208
|
+
defaultSubstate: "CANCELED"
|
|
209
|
+
substates:
|
|
210
|
+
- name: "CANCELED"
|
|
211
|
+
displayText: "Canceled"
|
|
212
|
+
availableActions: []
|
|
213
|
+
id_reference: "wf_battery_testplan"
|
|
214
|
+
tags: ["exercise-7-1-test-plans"]
|
|
215
|
+
|
|
216
|
+
# ==========================================================================
|
|
217
|
+
# TEST TEMPLATE — "Blank Test Plan" base for the exercise
|
|
218
|
+
# ==========================================================================
|
|
219
|
+
|
|
220
|
+
# Students choose "Blank Test Plan" in the Create a Test Plan wizard (step 5
|
|
221
|
+
# of the Create a Test Plan section). This template is the selectable option.
|
|
222
|
+
- type: "testtemplate"
|
|
223
|
+
name: "Blank Test Plan"
|
|
224
|
+
properties:
|
|
225
|
+
description: "General-purpose blank test plan template for battery pack work items"
|
|
226
|
+
template_group: "Battery Packs"
|
|
227
|
+
type: "testplan"
|
|
228
|
+
workflow_id: "${wf_battery_testplan}"
|
|
229
|
+
product_families: ["Battery Packs"]
|
|
230
|
+
part_numbers: ["BAT-MODEL-ABC-001"]
|
|
231
|
+
id_reference: "tt_blank_testplan"
|
|
232
|
+
tags: ["exercise-7-1-test-plans"]
|
|
233
|
+
|
|
234
|
+
# ==========================================================================
|
|
235
|
+
# WORK ORDER — "Battery Validation – Model ABC"
|
|
236
|
+
# ==========================================================================
|
|
237
|
+
|
|
238
|
+
# The starting point for the guided exercise: Operations > Work Orders >
|
|
239
|
+
# "Battery Validation – Model ABC" > Work Items tab > Create test plan.
|
|
240
|
+
- type: "work_order"
|
|
241
|
+
name: "Battery Validation – Model ABC"
|
|
242
|
+
properties:
|
|
243
|
+
description: "R&D work order requesting thermal testing on new battery pack design"
|
|
244
|
+
work_order_type: "validation"
|
|
245
|
+
status: "new"
|
|
246
|
+
priority: "high"
|
|
247
|
+
scheduled_start: "2026-03-01T09:00:00Z"
|
|
248
|
+
scheduled_end: "2026-03-05T17:00:00Z"
|
|
249
|
+
reserved_systems:
|
|
250
|
+
- "${sys_chamber_b}"
|
|
251
|
+
reserved_assets:
|
|
252
|
+
- "${dut_c01}"
|
|
253
|
+
id_reference: "wo_battery_validation"
|
|
254
|
+
tags: ["exercise-7-1-test-plans"]
|
|
255
|
+
|
|
256
|
+
# ==========================================================================
|
|
257
|
+
# WORK ITEM — starter "Thermal Cycle Test" test plan
|
|
258
|
+
# ==========================================================================
|
|
259
|
+
|
|
260
|
+
# Students create this test plan from the work order's Work Items tab.
|
|
261
|
+
# After creation they open it in the Scheduling Assistant via the "..." menu.
|
|
262
|
+
- type: "work_item"
|
|
263
|
+
name: "Thermal Cycle Test"
|
|
264
|
+
properties:
|
|
265
|
+
description: "Temperature cycling sequence for battery pack validation"
|
|
266
|
+
work_item_type: "testplan"
|
|
267
|
+
test_template_id: "${tt_blank_testplan}"
|
|
268
|
+
work_order_id: "${wo_battery_validation}"
|
|
269
|
+
scheduled_dut: "${dut_c01}"
|
|
270
|
+
scheduled_system: "${sys_chamber_b}"
|
|
271
|
+
assigned_operator: ""
|
|
272
|
+
priority: "high"
|
|
273
|
+
expected_duration_minutes: 120
|
|
274
|
+
acceptance_criteria: "All thermal cycle measurements within specification limits"
|
|
275
|
+
id_reference: "wi_thermal_cycle"
|
|
276
|
+
tags: ["exercise-7-1-test-plans"]
|
|
277
|
+
|
|
278
|
+
cleanup:
|
|
279
|
+
order:
|
|
280
|
+
- "work_item"
|
|
281
|
+
- "work_order"
|
|
282
|
+
- "testtemplate"
|
|
283
|
+
- "workflow"
|
|
284
|
+
- "dut"
|
|
285
|
+
- "asset"
|
|
286
|
+
- "system"
|
|
287
|
+
- "product"
|
|
288
|
+
- "location"
|
|
289
|
+
filter_tags: ["exercise-7-1-test-plans"]
|
|
290
|
+
require_confirmation: true
|
|
291
|
+
|
|
292
|
+
validation:
|
|
293
|
+
require_workspace: true
|
|
294
|
+
|
|
295
|
+
post_install:
|
|
296
|
+
instructions: |
|
|
297
|
+
✓ Exercise 7-1 resources installed successfully!
|
|
298
|
+
|
|
299
|
+
Resources created:
|
|
300
|
+
- 1 location: Battery Testing Lab
|
|
301
|
+
- 1 product: Model ABC (Battery Packs)
|
|
302
|
+
- 1 system: Chamber B
|
|
303
|
+
- 1 fixture: Slot_01 (asset on Chamber B)
|
|
304
|
+
- 1 DUT: BAT-DUT-C01
|
|
305
|
+
- 1 workflow: Battery Test Plan Workflow
|
|
306
|
+
- 1 template: Blank Test Plan
|
|
307
|
+
- 1 work order: Battery Validation – Model ABC
|
|
308
|
+
- 1 work item: Thermal Cycle Test
|
|
309
|
+
|
|
310
|
+
Ready for Exercise 7-1 — guided steps:
|
|
311
|
+
1. Navigate to Operations > Work Orders and open "Battery Validation – Model ABC".
|
|
312
|
+
2. In the Work Items tab, select Create test plan, select Blank Test Plan,
|
|
313
|
+
configure the name as "Thermal Cycle Test" and the DUT as "BAT-DUT-C01".
|
|
314
|
+
3. In the test plan details, open the "..." menu > Open in scheduling assistant.
|
|
315
|
+
4. Select "Chamber B" as the system and "Slot_01" as the fixture.
|
|
316
|
+
5. Select "BAT-DUT-C01" as the DUT.
|
|
317
|
+
6. Drag the test plan onto tomorrow morning at 9:00 AM and save.
|
|
318
|
+
|
|
319
|
+
Unguided / Assess Your Skills:
|
|
320
|
+
- Navigate to Operations > Work Orders, open "Battery Validation – Model ABC",
|
|
321
|
+
and create an additional test plan from it.
|
|
322
|
+
- Navigate to Assets, open "BAT-DUT-C01", and create a test plan
|
|
323
|
+
from the DUT's Work Items tab.
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
# Specification Compliance Analysis Notebooks
|
|
2
|
+
|
|
3
|
+
Complete set of Jupyter notebooks for performing specification compliance analysis on test data within SystemLink.
|
|
4
|
+
|
|
5
|
+
## Notebooks Included
|
|
6
|
+
|
|
7
|
+
### 1. Spec Compliance Calculation
|
|
8
|
+
|
|
9
|
+
- **Purpose**: Calculate compliance metrics (min, max, mean, median) for parametric specifications
|
|
10
|
+
- **Inputs**: Specification data and measurement results
|
|
11
|
+
- **Outputs**: Compliance report (uploaded to product)
|
|
12
|
+
- **Interface**: File Analysis
|
|
13
|
+
|
|
14
|
+
### 2. Spec Analysis & Compliance Calculation
|
|
15
|
+
|
|
16
|
+
- **Purpose**: Combined workflow for specification analysis and compliance calculation
|
|
17
|
+
- **Inputs**: Spec files and measurement data
|
|
18
|
+
- **Outputs**: Detailed compliance analysis
|
|
19
|
+
- **Interface**: File Analysis
|
|
20
|
+
|
|
21
|
+
### 3. Specfile Extraction and Ingestion
|
|
22
|
+
|
|
23
|
+
- **Purpose**: Extract specification data and ingest into SystemLink
|
|
24
|
+
- **Inputs**: Excel specification files (see template below)
|
|
25
|
+
- **Outputs**: Structured specification data ingested into SystemLink
|
|
26
|
+
- **Interface**: File Analysis
|
|
27
|
+
|
|
28
|
+
## Template File
|
|
29
|
+
|
|
30
|
+
A sample specification template file (`spec_template.xlsx`) is included in this example directory. This file demonstrates the required Excel format for the **Specfile Extraction and Ingestion** notebook.
|
|
31
|
+
|
|
32
|
+
### Template Structure
|
|
33
|
+
|
|
34
|
+
The template includes two sheets:
|
|
35
|
+
|
|
36
|
+
1. **SpecTemplate** (Documentation)
|
|
37
|
+
|
|
38
|
+
- Instructions for the spec file format
|
|
39
|
+
- Column type definitions
|
|
40
|
+
- Data structure requirements
|
|
41
|
+
- Condition format examples
|
|
42
|
+
|
|
43
|
+
2. **Example Part** (Sample Data)
|
|
44
|
+
- Complete example with 5 sample specifications
|
|
45
|
+
- Demonstrates all column types (STD, COND, INF)
|
|
46
|
+
- Shows proper formatting and data types
|
|
47
|
+
|
|
48
|
+
### Excel Format Requirements
|
|
49
|
+
|
|
50
|
+
**Column Types:**
|
|
51
|
+
|
|
52
|
+
- **STD (Standard)**: Core specification fields (Spec ID, Name, Min, Max, etc.)
|
|
53
|
+
- **COND (Condition)**: Conditional specifications (temperature ranges, voltage conditions, etc.)
|
|
54
|
+
- **INF (Information)**: Custom properties and metadata
|
|
55
|
+
|
|
56
|
+
**File Structure:**
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
Row 1: Column type designation (STD, COND, or INF)
|
|
60
|
+
Row 2: Category (column B) and Spec Type (column C) - e.g., "parametric" or "functional"
|
|
61
|
+
Row 3: Column headers (mapped to spec fields)
|
|
62
|
+
Row 4+: Specification data
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
**Standard Columns (STD):**
|
|
66
|
+
|
|
67
|
+
- Spec ID (required, unique identifier)
|
|
68
|
+
- Name (specification name)
|
|
69
|
+
- Min, Typical, Max (limits for parametric specs)
|
|
70
|
+
- Unit (measurement unit)
|
|
71
|
+
- Category, Block, Symbol (organization fields)
|
|
72
|
+
|
|
73
|
+
**Condition Format Examples:**
|
|
74
|
+
|
|
75
|
+
- Discrete values: `[1,2,3]` or `[A,B,C]`
|
|
76
|
+
- Numeric range: `[0..10]` (min to max)
|
|
77
|
+
- Range with discrete: `[1..5,2.5]` (range plus intermediate values)
|
|
78
|
+
|
|
79
|
+
## Usage
|
|
80
|
+
|
|
81
|
+
After installation, notebooks are available in your workspace with the File Analysis interface configured.
|
|
82
|
+
|
|
83
|
+
### Running via CLI
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
# List published notebooks
|
|
87
|
+
slcli notebook list -w <workspace-id>
|
|
88
|
+
|
|
89
|
+
# Execute a notebook
|
|
90
|
+
slcli notebook execute run -i <notebook-id> -w <workspace-id>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
### Running via SystemLink Web Interface
|
|
94
|
+
|
|
95
|
+
1. Navigate to File Analysis in your workspace
|
|
96
|
+
2. Select a specification compliance notebook
|
|
97
|
+
3. Upload your specification file or measurement data
|
|
98
|
+
4. Run the notebook
|
|
99
|
+
|
|
100
|
+
## Requirements
|
|
101
|
+
|
|
102
|
+
- SystemLink Enterprise 2024.1 or later
|
|
103
|
+
- Python 3.9+ with required scientific packages
|
|
104
|
+
- Access to measurement data and specification definitions
|
|
105
|
+
- Excel files (.xlsx) for spec file ingestion
|
|
106
|
+
|
|
107
|
+
## Key Features
|
|
108
|
+
|
|
109
|
+
- **Condition Mapping**: Intelligent mapping between specification and measurement conditions
|
|
110
|
+
- **Unit Conversion**: Automatic unit conversion for compatible measurements
|
|
111
|
+
- **Compliance Calculation**: Min/Max/Mean/Median compliance across measurement sets
|
|
112
|
+
- **Report Generation**: Excel report generation with compliance results
|
|
113
|
+
- **Data Validation**: Comprehensive validation of input data formats
|
|
114
|
+
- **Flexible Schema**: Support for parametric and functional specifications
|
|
115
|
+
|
|
116
|
+
## Rules and Constraints
|
|
117
|
+
|
|
118
|
+
### Condition Mapping
|
|
119
|
+
|
|
120
|
+
- Spec and measurement conditions must have compatible units or both be unitless
|
|
121
|
+
- Unit conversion only supported for compatible base units
|
|
122
|
+
- Missing conditions handled gracefully
|
|
123
|
+
|
|
124
|
+
### Measurement Data
|
|
125
|
+
|
|
126
|
+
- Measurement data should be stored in base units
|
|
127
|
+
- Non-numeric or empty values are filtered out
|
|
128
|
+
- Unit compatibility checked before inclusion
|
|
129
|
+
|
|
130
|
+
### Compliance Calculation
|
|
131
|
+
|
|
132
|
+
- Only valid, unit-compatible measurements included
|
|
133
|
+
- Statistical functions (min, max, mean, median) calculated per specification
|
|
134
|
+
- Results formatted for Excel export
|
|
135
|
+
|
|
136
|
+
## Notes
|
|
137
|
+
|
|
138
|
+
- Each notebook includes detailed documentation about its operation
|
|
139
|
+
- Examples and usage patterns are embedded in each notebook
|
|
140
|
+
- Refer to SystemLink documentation for File Analysis interface details
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
---
|
|
2
|
+
# SLE Example Configuration: Spec Compliance Analysis Notebooks
|
|
3
|
+
format_version: "1.0"
|
|
4
|
+
name: "spec-compliance-notebooks"
|
|
5
|
+
title: "Specification Compliance Analysis Notebooks"
|
|
6
|
+
description: |
|
|
7
|
+
A complete example providing Jupyter notebooks for performing specification
|
|
8
|
+
compliance analysis on test data. Includes notebooks for BDC extraction,
|
|
9
|
+
spec compliance calculation, and compliance analysis workflows.
|
|
10
|
+
|
|
11
|
+
Notebooks are published to SystemLink with the File Analysis interface,
|
|
12
|
+
enabling seamless integration with test data and measurement workflows.
|
|
13
|
+
|
|
14
|
+
author: "NI"
|
|
15
|
+
created_date: "2025-12-30"
|
|
16
|
+
updated_date: "2025-12-30"
|
|
17
|
+
tags:
|
|
18
|
+
- "analysis"
|
|
19
|
+
- "compliance"
|
|
20
|
+
- "notebooks"
|
|
21
|
+
- "file-analysis"
|
|
22
|
+
|
|
23
|
+
estimated_setup_time_minutes: 5
|
|
24
|
+
required_systemlink_version: "2024.1"
|
|
25
|
+
target_workspace: null
|
|
26
|
+
|
|
27
|
+
resources:
|
|
28
|
+
# Specification Template File (created first so product can reference it)
|
|
29
|
+
- type: "file"
|
|
30
|
+
name: "spec_template.xlsx"
|
|
31
|
+
properties:
|
|
32
|
+
file_path: "spec_template.xlsx"
|
|
33
|
+
description: "Example Excel template for specification ingestion. Upload this file and run the SpecfileExtractionAndIngestion.ipynb notebook to see how specifications are extracted and ingested into SystemLink."
|
|
34
|
+
tags: ["template", "specification"]
|
|
35
|
+
id_reference: "file_spec_template"
|
|
36
|
+
tags: ["example"]
|
|
37
|
+
|
|
38
|
+
# Product for Spec Compliance (created after file so it can reference file ID)
|
|
39
|
+
- type: "product"
|
|
40
|
+
name: "Spec Compliance Example Product"
|
|
41
|
+
properties:
|
|
42
|
+
description: "Example product for specification compliance analysis demonstration"
|
|
43
|
+
tags: ["example", "spec-compliance"]
|
|
44
|
+
file_id_references: ["file_spec_template"]
|
|
45
|
+
id_reference: "prod_spec_example"
|
|
46
|
+
tags: ["example"]
|
|
47
|
+
|
|
48
|
+
# Spec Compliance Calculation Notebook
|
|
49
|
+
- type: "notebook"
|
|
50
|
+
name: "Spec Compliance Calculation.ipynb"
|
|
51
|
+
properties:
|
|
52
|
+
# File path relative to example directory
|
|
53
|
+
file_path: "notebooks/SpecComplianceCalculation.ipynb"
|
|
54
|
+
# Notebook interface for File Analysis
|
|
55
|
+
notebook_interface: "File Analysis"
|
|
56
|
+
description: "Calculate compliance and generate reports for parametric specifications"
|
|
57
|
+
tags: ["spec-compliance", "analysis"]
|
|
58
|
+
id_reference: "nb_spec_calc"
|
|
59
|
+
tags: ["example"]
|
|
60
|
+
|
|
61
|
+
# Spec Analysis & Compliance Calculation Notebook
|
|
62
|
+
- type: "notebook"
|
|
63
|
+
name: "Spec Analysis Compliance Calculation.ipynb"
|
|
64
|
+
properties:
|
|
65
|
+
file_path: "notebooks/SpecAnalysis_ComplianceCalculation.ipynb"
|
|
66
|
+
notebook_interface: "File Analysis"
|
|
67
|
+
description: "Combined spec analysis and compliance calculation workflow"
|
|
68
|
+
tags: ["spec-analysis", "compliance"]
|
|
69
|
+
id_reference: "nb_spec_analysis_calc"
|
|
70
|
+
tags: ["example"]
|
|
71
|
+
|
|
72
|
+
# Specfile Extraction and Ingestion Notebook
|
|
73
|
+
- type: "notebook"
|
|
74
|
+
name: "SpecfileExtractionAndIngestion.ipynb"
|
|
75
|
+
properties:
|
|
76
|
+
file_path: "notebooks/SpecfileExtractionAndIngestion.ipynb"
|
|
77
|
+
notebook_interface: "File Analysis"
|
|
78
|
+
description: "Extract and ingest specification data from specfiles"
|
|
79
|
+
tags: ["spec-extraction", "data-ingestion"]
|
|
80
|
+
id_reference: "nb_spec_extraction"
|
|
81
|
+
tags: ["example"]
|
|
82
|
+
|
|
83
|
+
cleanup:
|
|
84
|
+
order: ["notebook", "file", "product"]
|
|
85
|
+
filter_tags: ["example"]
|
|
86
|
+
require_confirmation: true
|
|
87
|
+
|
|
88
|
+
post_install:
|
|
89
|
+
instructions: |
|
|
90
|
+
All specification compliance analysis resources have been published to your workspace.
|
|
91
|
+
|
|
92
|
+
Created Resources:
|
|
93
|
+
- Product: Spec Compliance Example Product (for organizing spec data)
|
|
94
|
+
- Notebooks:
|
|
95
|
+
* Spec Compliance Calculation.ipynb: Run compliance calculations on measurement data
|
|
96
|
+
* Spec Analysis Compliance Calculation.ipynb: Combined analysis and compliance workflow
|
|
97
|
+
* SpecfileExtractionAndIngestion.ipynb: Extract and ingest specification data
|
|
98
|
+
- Files:
|
|
99
|
+
* spec_template.xlsx: Example Excel template for specification ingestion
|
|
100
|
+
|
|
101
|
+
All notebooks are configured with the File Analysis interface and can be run directly
|
|
102
|
+
from the SystemLink file explorer or invoked programmatically.
|
|
103
|
+
|
|
104
|
+
GETTING STARTED:
|
|
105
|
+
1. The "spec_template.xlsx" file is a ready-to-use example that demonstrates the
|
|
106
|
+
Excel format required for spec files.
|
|
107
|
+
2. Use this template as a reference when preparing your own specification files.
|
|
108
|
+
3. Upload your spec file to the File service and associate it with the product.
|
|
109
|
+
4. Run the "SpecfileExtractionAndIngestion.ipynb" notebook to extract and ingest
|
|
110
|
+
specs into your product.
|
|
111
|
+
|
|
112
|
+
For detailed usage and format documentation, refer to the example README.
|