-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdetect_definitions.sysml
More file actions
372 lines (359 loc) · 17 KB
/
detect_definitions.sysml
File metadata and controls
372 lines (359 loc) · 17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
package DETECT_Sizing {
doc Acknowledgement
/* This file contains content from DETECT model file for SysML v1.6 by Daniel Hettema, OUSD (R&E).
* Original content is dedicated to the Public Domain.
* Modifications Copyright (c) 2025 Sensmetry.
*/
doc Description
/* Determine DE Ecosystem Sizing */
requirement def Criteria_Def {
subject de_tool_ecosystem = DETECT_Input::de_ecosystem;
attribute weight defined by ScalarValues::Rational [0..1];
}
requirement def DE_Ecosystem_req_Def {
subject de_tool_ecosystem = DETECT_Input::de_ecosystem;
attribute weight defined by ScalarValues::Rational [0..1];
}
requirement valid_criteria : Criteria_Def;
requirement valid_requirement : DE_Ecosystem_req_Def;
package DETECT_enumerations {
doc
/* The Enumerated Values are value attributes that are assigned to each of the size
* parameter enumerations. The value assigned to parameters that indicate a large DE
* ecosystem development effort is a 3, the value assigned to a medium ecosystem size
* parameter is a two and a value of one is assigned to a small ecosystem effort.
*
* The value enumerations can be changed as desired. If for example the value of 3 is
* changed to a 10 then every size parameter that was assigned the value of 3 will change
* to a 10.
*
* This scoring scale can be adjusted as needed.
*/
attribute def Attr_with_value {
doc
/* Generic attribute definition for all enumerations containing nested "value"
* attribute
*/
attribute value : ScalarValues::Natural default 0;
}
enum def Ecosystem_size_e {
Small;
Medium;
Large;
TBD; // selection placeholder;
}
enum def Automation_e specializes Attr_with_value {
'Manual, Low Automation' { redefines value = 1; }
'Moderate, Adoption of autonomous platforms, Ongoing integration efforts' {
redefines value = 2;
}
'Autonomous, Enterprise-Level, Full Automation' {
redefines value = 3;
}
TBD { redefines value = 0; } // selection placeholder;
}
enum def CollaborationPartners_e specializes Attr_with_value {
'0 (regional)' { redefines value = 1; }
'1-5' { redefines value = 2; }
'>5' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def Enclaves_e specializes Attr_with_value {
'1-10 enclaves' { redefines value = 1; }
'11-50 enclaves' { redefines value = 2; }
'50 + enclaves' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def EngineeringDomains_e specializes Attr_with_value {
'<=2' { redefines value = 1; }
'>2' { redefines value = 2; }
'>5' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def GeographicLocations_e specializes Attr_with_value {
'1' { redefines value = 1; }
'2-5' { redefines value = 2; }
'>5' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def LifecyclePhases_e specializes Attr_with_value {
'1-2' { redefines value = 1; } // AMBIGUITY!!! (when the number of lifecycle phases ecosystem supports is '2')
'2 to 3' { redefines value = 2; } // AMBIGUITY!!! (when the number of lifecycle phases ecosystem supports is '2')
All { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def ProjectDeliverables_e specializes Attr_with_value {
'10s' { redefines value = 1; }
'100s' { redefines value = 2; }
'1000s' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def Storage_e specializes Attr_with_value {
Gigabytes { redefines value = 1; }
Terabytes { redefines value = 2; }
Petabytes { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def Tenants_e specializes Attr_with_value {
'Single application, single DB' { redefines value = 1; }
'Multi application, single DB' { redefines value = 2; }
'Multi application, multi DB' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
enum def Users_e specializes Attr_with_value {
'1-100' { redefines value = 1; } // AMBIGUITY!!! (when the number of supported users is '100')
'100-1000' { redefines value = 2; } // AMBIGUITY!!! (when the number of supported users is '100')
'>1000' { redefines value = 3; }
TBD { redefines value = 0; } // selection placeholder;
}
}
// DETECT USER DEFINITION
part def DETECT_user {
doc
/* A person using DETECT method to evaluate DE tool. */
}
use case def DETECT_use_case_Def {
attribute uc_status defined by status_e default status_e::Red;
}
// DIGITAL ENGINEERING ECOSYSTEM SIZE DEFINITION
part def DE_Ecosystem {
item inputs {
attribute <Q1> number_of_users : DETECT_enumerations::Users_e {
doc Question
/* How many people do you expect will be using the DE ecosystem being developed? */
doc Description
/* This parameter describes the **number of users** that one might think of when
* sizing their DE ecosystem effort.
*
* **Small DE Ecosystem**
*
* - Typically does not require additional services or software tools for license
* and user account administration
* - Manual administration is feasible
*
* **As User Base Grows**
*
* - Even within a single domain, managing licensing and user accounts manually
* becomes challenging
* - Increased tooling in the DE ecosystem becomes necessary for effective
* administration
*/
}
attribute <Q2> number_of_partners : DETECT_enumerations::CollaborationPartners_e {
doc Question
/* How many partners will need to use the DE ecosystem being developed? */
doc Description
/* This parameter describes the **number of partners** that are anticipated to be
* using and interacting with the DE ecosystem.
*
* As this number grows, so will the size of the DE ecosystem. More collaboration
* partners will suggest an increase in the **infrastructure**, **people**, and
* **organization** that will have to be involved. Adding just **1 to 5
* collaboration partners** is estimated to be a medium-sized scope. It also implies
* that there would need to be a medium number of **enclaves** and **tenants**.
*/
}
attribute <Q3> engineering_domains : DETECT_enumerations::EngineeringDomains_e {
doc Question
/* How many engineering domains need to use the DE ecosystem being developed? */
doc Description
/* This parameter describes the **number of engineering domains** that are expected
* to be required to perform the necessary engineering for a given product.
*
* **Examples of Engineering Domains**
*
* - Systems engineering
* - Mechanical engineering
* - Software engineering
* - Analysis domain
*
* **Impact on Ecosystem**
*
* - **Small number of domains** (e.g., a purely mechanical product) → Fewer tools
* required → Less tool-to-tool integration needed
* - **Multiple domains** → More tools and capabilities required → Increased
* integration complexity
*/
}
attribute <Q4> geographic_locations : DETECT_enumerations::GeographicLocations_e {
doc Question
/* How many geographic locations will be connected by the DE ecosystem being
* developed?
*/
doc Description
/* This parameter represents the number of different geographic locations that
* the users will be in when using the DE ecosystem that is being developed.
*/
}
attribute <Q5> lifecycle_phases : DETECT_enumerations::LifecyclePhases_e {
doc Question
/* How many of your Lifecycle Phases need to be supported by the DE ecosystem being
* developed?
*/
doc Description
/* This parameter refers to the **number of life-cycle phases** the DE ecosystem is
* intended to support, using the **Adaptive Acquisition Framework, Major Capability
* Pathway** as a reference.
*
* **Life-Cycle Phases**
*
* - **MSA** - Material Solutions Analysis
* - **TMRR** - Technology Maturation & Risk Reduction
* - **EMD** - Engineering & Manufacturing Development
* - **PD** - Production & Deployment
* - **O&S** - Operation & Support
*
* **Scope Considerations**
*
* - Working in **only one phase** → May not need tools that support all life-cycle
* phases
* - **Example:** Capturing the full bill of materials (BOM) for an operational
* system throughout its lifetime via a full-scale PLM ecosystem is orders of
* magnitude more scope than managing pre-Milestone-A trade study data
*/
}
attribute <Q6> automation : DETECT_enumerations::Automation_e {
doc Question
/* What degree of automation is desired for the DE ecosystem being developed? */
doc Description
/* Levels of automation in digital engineering can be categorized into several
* stages, each representing a different degree of automation and integration.
*
* **Automation Levels**
*
* 1. **Manual**
*
* - Tasks performed entirely by humans without automated assistance
* - **Integration:** Low
* - **Level of effort:** High
*
* 2. **Assisted**
*
* - Humans perform tasks with tools/software providing guidance
* - **Integration:** Moderate
* - **Level of effort:** Moderate
*
* 3. **Semi-Automated**
*
* - Some tasks automated, human intervention still required
* - **Integration:** High
* - **Level of effort:** Moderate to Low
*
* 4. **Fully Automated**
*
* - Tasks performed entirely by automated systems with minimal human oversight
* - **Integration:** Very High
* - **Level of effort:** Low
*
* 5. **Autonomous**
*
* - Systems operate independently, making decisions and adapting to changes
* - **Integration:** Fully Integrated ecosystem required
* - **Level of effort:** Very Low
*
* **Summary**
*
* As automation increases, integration becomes more seamless and human effort
* decreases. This progression enables more efficient and reliable operations,
* reducing human error and increasing productivity. For example, a fully automated
* manufacturing line can operate continuously with minimal human intervention,
* leading to higher output and consistency.
*/
}
attribute <Q7> job_series {
doc Question
/* TBD */
doc Description
/* TBD */
}
attribute <Q8> enclaves : DETECT_enumerations::Enclaves_e {
doc Question
/* How many enclaves are needed to support the number of people, geographic
* locations, engineering domains, and collaboration partners for the DE
* ecosystem being developed?
*/
doc Description
/* This parameter is **derived** based on collaboration partners, domains, and
* organizations that are to work within the DE ecosystem.
*
* **What Enclaves Represent**
*
* - Number of **organizational boundaries** that may be part of the DE ecosystem
* - **Distinct networks**, often segregated by constraints such as:
*
* - Classification level
* - Intellectual Property (IP) constraints
* - Business constraints
*/
}
attribute <Q9> tenants : DETECT_enumerations::Tenants_e {
doc Question
/* Which set of situations most closely matches the DE ecosystem planned to be
* developed?
*/
doc Description
/* This parameter would likely be **derived** based on the following factors that
* are to work in the DE ecosystem being developed:
*
* - **Collaboration partners**
* - **Engineering domains**
* - **Organizations**
*/
}
attribute <Q10> project_deliverables : DETECT_enumerations::ProjectDeliverables_e {
doc Question
/* What is the order of magnitude of deliverables anticipated? */
doc Description
/* This parameter is about the **order of magnitude of deliverables/decisions**
* that will need to be supported by the DE ecosystem.
*
* **Impact on Ecosystem**
*
* - **Smaller number** → Fewer customizations, reports, queries, data flows, etc.
* needed
* - **Larger number** → More extensive tooling and data management capabilities
* required
*
* **Note** In Digital Engineering, deliverables are tied to decisions where many
* data products are required.
*/
}
attribute <Q11> storage : DETECT_enumerations::Storage_e {
doc Question
/* What is the order of magnitude of the amount of data that is anticipated to be
* stored?
*/
doc Description
/* This parameter helps determine **how much storage** needs to be included in your
* DE ecosystem solution.
*
* **Considerations**
*
* - The more storage required, the "larger" the storage solution will need to be
* - Consider both current needs and anticipated growth over the project lifecycle
* - Factor in data retention requirements, backups, and redundancy needs
*/
}
}
derived attribute system_size_number : ScalarValues::Natural {
/* A parameter aggregating the values of each user input, used to determine size of the
* anticipated Digital Engineering Ecosystem
*/
}
derived attribute system_size : DETECT_enumerations::Ecosystem_size_e {
/* A parameter defining size of the anticipated Digital Engineering Ecosystem, which
* value (enum) is derived by calculation
*/
}
}
enum def status_e {
Green {
doc
/* The feature is implemented */
}
Red {
doc
/* The feature is NOT implemented */
}
}
}