Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
177 commits
Select commit Hold shift + click to select a range
8051f35
Choose System Eng process and tools
gregshue Oct 27, 2025
9b2ea94
Update strictdoc to 0.16.1
gregshue Jan 7, 2026
5b8ba7e
Add shared sdoc grammar for stakeholders
gregshue Jan 8, 2026
e217521
Add shared sdoc grammar for personas
gregshue Feb 11, 2026
72c74d0
Add shared sdoc grammar for stakeholder_needs
gregshue Jan 8, 2026
1b2ce9e
Add shared sdoc grammar for stakeholder_requirements
gregshue Jan 8, 2026
db41eb3
add shared sdoc grammer for system_concept_of_operations
gregshue Feb 3, 2026
1186a94
Add shared sdoc grammar for system_validations
gregshue Jan 8, 2026
72052e2
Add shared sdoc grammar for interface_specifications
gregshue Jan 8, 2026
f342fe3
Add shared sdoc grammar for system_requirements
gregshue Jan 8, 2026
4708efc
Add shared sdoc grammar for system_verifications
gregshue Jan 8, 2026
8448946
Add shared sdoc grammar for system_architectures
gregshue Jan 8, 2026
2ddcfce
Add shared sdoc grammar for interface_requirements
gregshue Jan 8, 2026
ab4ca1a
Add shared sdoc grammar for system_element_requirements
gregshue Jan 8, 2026
d027139
Add shared sdoc grammar for system_element_verifications
gregshue Jan 8, 2026
22974fe
Add empty Problem Space Catalog doc
gregshue Jan 8, 2026
30858dd
prob: Add empty stakeholders docs [stakeholders:]
gregshue Oct 27, 2025
9103842
prob: Add empty personas docs [personas:]
gregshue Feb 11, 2026
190073c
prob: Add empty stakeholder_needs docs [stk_needs:]
gregshue Oct 27, 2025
49a673f
prob: Add empty stakeholder_requirements docs [stk_reqs:]
gregshue Oct 27, 2025
6a87e1b
Add empty system_concept_of_operations doc [sys_conops:]
gregshue Feb 3, 2026
4c07d84
Add empty system_validations docs [sys_validations:]
gregshue Oct 27, 2025
3be4ff4
Add empty shared/interface_specifications docs [ifc_specs:]
gregshue Oct 28, 2025
a965637
soi: Add empty System-of-Interest Catalog doc
gregshue Jan 8, 2026
4befb1a
soi: Add empty SAMPLE tree
gregshue Jan 8, 2026
85437f3
soi:sample: Add empty system_requirements docs [sys_reqs:]
gregshue Oct 27, 2025
41a0455
soi:sample: Add empty system_verifications docs [sys_verifications:]
gregshue Oct 27, 2025
7934250
soi:sample: Add empty system_architectures docs [sys_archs:]
gregshue Oct 27, 2025
2da9aed
soi:sample: Add empty interface_requirements docs [ifc_reqs:]
gregshue Oct 28, 2025
0517da3
soi:sample: Add empty system_element_requirements docs [sys_elem_reqs:]
gregshue Oct 27, 2025
9895a9c
soi:sample: Add empty system_element_verifications docs [sys_elem_ver…
gregshue Oct 27, 2025
1fdebfd
stakeholders: Add section Manufacturer [mfr:]
gregshue Oct 28, 2025
f3e2b44
stakeholders:mfr: Add Sponsor [spnsr:]
gregshue Oct 28, 2025
462463a
stakeholders:mfr: Add Project Manager [prj_mgr:]
gregshue Oct 28, 2025
0ee4a5d
stakeholders:mfr: Add Marketing [mktg:]
gregshue Oct 28, 2025
4c6bf0d
stakeholders:mfr: Add Suppliers
gregshue Oct 28, 2025
42ee3b3
stakeholders:mfr: Add Production Organization
gregshue Oct 28, 2025
0017ebe
stakeholders:mfr: Add Engineering [engr:]
gregshue Nov 10, 2025
eb5938d
stakeholders: Add section Markets [mkts:]
gregshue Oct 28, 2025
1ae361d
stakeholders:mkts: Add Regulating Authorities [reg_auth:]
gregshue Oct 28, 2025
ae5bdf2
stakeholders:mkts: Add Regulators
gregshue Oct 28, 2025
5aaecb6
stakeholders:mkts: Add Paying Customer
gregshue Oct 28, 2025
07e6280
stakeholders:mkts: Add section Operator/User [usr:]
gregshue Oct 28, 2025
b0dc471
stakeholders:mkts: Add Service Technician
gregshue Oct 28, 2025
39c5f9b
stakeholders:mkts:usr: Add Youth [youth:]
gregshue Oct 29, 2025
1813504
stakeholders:mkts:usr: Add Elderly [elderly:]
gregshue Oct 29, 2025
274dd23
stakeholders:mkts: Add Importer
gregshue Nov 5, 2025
6d05edc
stakeholders:mkts: Add Distributor
gregshue Nov 5, 2025
bc45143
stakeholders:mkts: Add Integrator
gregshue Nov 7, 2025
5009668
stakeholders: Add section Others [othr:]
gregshue Nov 5, 2025
d4b116d
stakeholders:othr: Add OSS Steward
gregshue Nov 5, 2025
0095a26
stakeholders:othr: Add Conformity Assessment Body
gregshue Nov 5, 2025
491aa00
stakeholders:othr: Add Market Surveillance Authority
gregshue Nov 5, 2025
cb83e7d
stakeholders:othr: Add OSS Developer
gregshue Nov 7, 2025
f47c226
stakeholders:mkts:usr: Add Engineering Student [engr_stdnt:]
gregshue Nov 5, 2025
188d463
personas: Add section Manufacturer [mfr:]
gregshue Feb 11, 2026
bb12449
personas: Add section Markets [mkts:]
gregshue Feb 11, 2026
1f557f5
personas:mkts: Add section Operator/User [usr:]
gregshue Feb 11, 2026
2c3d2d8
personas:mkt:usr: Add Esther - Engineering Student
gregshue Feb 11, 2026
bcf53a5
stk_needs: Add section Manufacturer [mfr:]
gregshue Nov 6, 2025
7462d82
stk_needs:mfr: Add section Sponsor
gregshue Nov 6, 2025
13300f7
stk_needs:mfr:spnsr: Market new product in EU targeting 1/1/2028
gregshue Nov 6, 2025
1496bc1
stk_needs: Add section Markets
gregshue Nov 6, 2025
df9fd60
stk_needs:mkts: Add section User
gregshue Nov 6, 2025
ca033fc
stk_needs:mkts:usr: Add section EngStudent
gregshue Nov 6, 2025
17c52b9
stk_needs:mkts:usr:eng_stdnt: Owner access to repair out-of-warranty …
gregshue Nov 7, 2025
7d3a5ad
stk_needs: Add section Others
gregshue Nov 7, 2025
44c077b
stk_needs:mkts:usr: Add section Youth
gregshue Nov 7, 2025
daec53e
stk_needs:mkts:usr:youth: visible device alive indication soon after …
gregshue Nov 7, 2025
c9e775a
stk_needs:mkts:usr:engr_stdnt: visible indication of digital HW held …
gregshue Nov 7, 2025
1f23402
stk_needs:mkts:usr:youth: visible indication of "bricked" device
gregshue Nov 7, 2025
334efef
stk_needs:mkts:usr: Add section Elderly
gregshue Nov 7, 2025
c1a4578
stk_needs:mkts:usr:elderly: consumer devices reboot automatically upo…
gregshue Nov 7, 2025
a275706
stk_needs: Add section Engineering
gregshue Nov 10, 2025
413601c
stk_needs:mfr:engr: Follow Sys Enginering best practices
gregshue Nov 10, 2025
c5bbb9a
stk_needs:mfr:engr: Document System Arch Decisions
gregshue Nov 10, 2025
07eb73a
stk_needs:mfr:spnsr: Use "example.com" for business URL
gregshue Nov 15, 2025
4de32b8
stk_needs:mfr:spnsr: Use "example.org" for OSS Steward URL
gregshue Nov 15, 2025
9d49cb3
stk_needs:mfr:engr: Internal name for new product-as-a-system
gregshue Nov 15, 2025
571b61b
stk_reqs: Add section Manufacturer
gregshue Nov 7, 2025
0056ca6
stk_reqs:mfg: Add section Engineering
gregshue Nov 10, 2025
5493d04
stk_reqs:mfg: Add section Marketing
gregshue Nov 10, 2025
294f187
stk_reqs: Add section Markets
gregshue Nov 7, 2025
41a1c97
stk_reqs: Add section Others
gregshue Nov 7, 2025
4ffbd98
soi:sample:sys_validations: Add section Markets
gregshue Nov 7, 2025
1de3333
soi:sample:sys_validations: Add section Others
gregshue Nov 7, 2025
8083910
stk_reqs:mfr: Released product conforms to EU CRA
gregshue Nov 7, 2025
0cadb10
stk_reqs:mkts: Add section Regulating Authorities
gregshue Nov 7, 2025
d6e6633
stk_reqs:mkts:reg_auth: Add EU CRA requirement doc (stub)
gregshue Nov 7, 2025
aa3e918
stk_reqs:mkts:reg_auth:euCRA: Annex I section (empty)
gregshue Nov 7, 2025
d135b6f
stk_reqs:mkts:reg_auth:euCRA:annexI: Part I section (empty)
gregshue Nov 7, 2025
3b39f71
stk_reqs:mkts:reg_auth:euCRA:annexI: Part II section (empty)
gregshue Nov 7, 2025
7ce8176
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (1)
gregshue Nov 7, 2025
008cf61
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2a)
gregshue Nov 7, 2025
e92cada
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2b)
gregshue Nov 7, 2025
b4831ab
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2c)
gregshue Nov 7, 2025
d6b4a95
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2d)
gregshue Nov 7, 2025
5159efc
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2e)
gregshue Nov 7, 2025
3953b9e
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2f)
gregshue Nov 7, 2025
284f223
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2g)
gregshue Nov 7, 2025
c1f0c8d
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2h)
gregshue Nov 7, 2025
2c966f6
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2i)
gregshue Nov 7, 2025
4d6ce45
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2j)
gregshue Nov 7, 2025
ae43f0f
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2k)
gregshue Nov 7, 2025
d37ff86
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2l)
gregshue Nov 7, 2025
f6ad526
stk_reqs:mkts:reg_auth:euCRA:annexI:partI: req (2m)
gregshue Nov 7, 2025
d594052
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (1)
gregshue Nov 7, 2025
09d2ea0
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (2)(a)
gregshue Nov 7, 2025
13e0d66
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (2)(b)
gregshue Nov 7, 2025
18d26ee
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (3)
gregshue Nov 7, 2025
f5e3198
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (4)(a)
gregshue Nov 7, 2025
e480f68
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (4)(b)
gregshue Nov 7, 2025
9c15a64
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (5)
gregshue Nov 7, 2025
3a8796e
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (6)
gregshue Nov 7, 2025
f56545f
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (7)
gregshue Nov 7, 2025
177e797
stk_reqs:mkts:reg_auth:euCRA:annexI:partII: req (8)
gregshue Nov 7, 2025
7f19039
stk_reqs:mkts:reg_auth:euCRA: Annex II section (empty)
gregshue Nov 7, 2025
3f22b69
stk_reqs:mkts:reg_auth:euCRA:annexII: req (1)(a)
gregshue Nov 7, 2025
6e3f057
stk_reqs:mkts:reg_auth:euCRA:annexII: req (1)(b)
gregshue Nov 7, 2025
d2d9c0e
stk_reqs:mkts:reg_auth:euCRA:annexII: req (1)(c)
gregshue Nov 7, 2025
8ecf07f
stk_reqs:mkts:reg_auth:euCRA:annexII: req (1)(d)
gregshue Nov 7, 2025
9129853
stk_reqs:mkts:reg_auth:euCRA:annexII: req (2)(a)
gregshue Nov 7, 2025
ab8dc9c
stk_reqs:mkts:reg_auth:euCRA:annexII: req (2)(b)
gregshue Nov 7, 2025
1ad2c5e
stk_reqs:mkts:reg_auth:euCRA:annexII: req (3)
gregshue Nov 7, 2025
c2b9a4e
stk_reqs:mkts:reg_auth:euCRA:annexII: req (4)
gregshue Nov 7, 2025
9da8105
stk_reqs:mkts:reg_auth:euCRA:annexII: req (5)(a)
gregshue Nov 7, 2025
7dbda1f
stk_reqs:mkts:reg_auth:euCRA:annexII: req (5)(b)
gregshue Nov 7, 2025
1b64bf4
stk_reqs:mkts:reg_auth:euCRA:annexII: req (6)
gregshue Nov 7, 2025
b307ca6
stk_reqs:mkts:reg_auth:euCRA:annexII: req (7)(a)
gregshue Nov 7, 2025
8cf74b8
stk_reqs:mkts:reg_auth:euCRA:annexII: req (7)(b)
gregshue Nov 7, 2025
5ee2a38
stk_reqs:mkts:reg_auth:euCRA:annexII: req (8)(a)
gregshue Nov 7, 2025
cafd0e6
stk_reqs:mkts:reg_auth:euCRA:annexII: req (8)(b)
gregshue Nov 7, 2025
cc6b62c
stk_reqs:mkts:reg_auth:euCRA:annexII: req (8)(c)
gregshue Nov 7, 2025
cbb5934
stk_reqs:mkts:reg_auth:euCRA:annexII: req (8)(d)
gregshue Nov 7, 2025
fd7d90b
stk_reqs:mkts:reg_auth:euCRA:annexII: req (8)(e)
gregshue Nov 7, 2025
330c8b3
stk_reqs:mkts:reg_auth:euCRA:annexII: req (8)(f)
gregshue Nov 7, 2025
a9e623b
stk_reqs:mkts:reg_auth:euCRA:annexII: req (9)
gregshue Nov 7, 2025
2415ae3
stk_reqs:mkts:reg_auth:euCRA: Annex VII section (empty)
gregshue Nov 7, 2025
66eb8e3
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (1)
gregshue Nov 7, 2025
9d8f408
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (2)
gregshue Nov 7, 2025
950ecd9
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (3)
gregshue Nov 7, 2025
70f7c1b
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (4)
gregshue Nov 7, 2025
e763090
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (5)
gregshue Nov 7, 2025
5193bef
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (6)
gregshue Nov 7, 2025
40bd6b7
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (7)
gregshue Nov 7, 2025
bae2b05
stk_reqs:mkts:reg_auth:euCRA:annexVII: req (8)
gregshue Nov 7, 2025
313d068
stk_reqs:mfr:engr: Follow SEBoK v2.12
gregshue Nov 10, 2025
dd84938
stk_reqs:mfr:engr: Requirements written in EARS
gregshue Nov 10, 2025
0fa5931
stk_reqs:mfr:engr: Arch Descriptions follow 4+1 Arch View Model
gregshue Nov 10, 2025
abb2e65
stk_reqs:mfr:engr: Tech Documents captured in StrictDoc
gregshue Nov 10, 2025
9ea47bb
stk_reqs:mfr:engr: StrictDoc config enables MermaidUML
gregshue Nov 10, 2025
6b6449e
stk_reqs:mfr:engr: Arch Docs include Decision Stmts
gregshue Nov 10, 2025
d5adf4f
stk_reqs:mfr:engr: Arch Docs include Decisions Timeline
gregshue Nov 10, 2025
24856dd
soi:sample:sys_archs: Add section Arch Decisions Timeline
gregshue Oct 29, 2025
d22b704
soi:sample:sys_archs: Add section Arch Decisions
gregshue Oct 29, 2025
179b861
soi:sample:sys_archs: Add section Logical View
gregshue Oct 29, 2025
fb20fdb
soi:sample:sys_archs: Add section Physical View
gregshue Oct 29, 2025
5870793
soi:sample:sys_archs: Add section Concurrency (Process) View
gregshue Oct 29, 2025
4c16e82
soi:sample:sys_archs: Add section Development View
gregshue Oct 29, 2025
1e17e2c
soi:sample:sys_archs: Add section Scenarios
gregshue Oct 29, 2025
39f18ea
soi:sample:sys_archs: Logical View reference
gregshue Oct 29, 2025
9c1ff39
soi:sample:sys_archs: Physical View reference
gregshue Oct 29, 2025
b00f5a8
soi:sample:sys_archs: Concurrency (Process) View reference
gregshue Oct 29, 2025
1cf9fda
soi:sample:sys_archs: Development View reference
gregshue Oct 29, 2025
ff7af9f
soi:sample:sys_archs: Scenarios reference
gregshue Oct 29, 2025
6aa51d0
soi:sample:sys_archs:Scenarios: Example UML sequence diagram
gregshue Oct 30, 2025
910aa4e
soi:sample:sys_archs:Logical: example UML state diagram
gregshue Oct 30, 2025
28c2ea8
soi:sample:sys_archs:Physical: example UML entity relationship diagram
gregshue Oct 30, 2025
73fa90c
stakeholders:mfr: Add Product Manager [prd_mgr:]
gregshue Jan 8, 2026
7d0b2e2
stk_needs: Add section Product Manager [prd_mgr:]
gregshue Nov 17, 2025
284c17b
stk_needs:mfr:prd_mgr: Operating env 0C-40C, 20%-95% RH
gregshue Nov 17, 2025
e76de0c
stk_needs:mkts:usr:engr_stdnt: Direct connect non-RJ-45 laptop to RJ-…
gregshue Nov 17, 2025
980d20a
stk_needs:mkts:usr:engr_stdnt: Direct connect laptop to 802.15.4 network
gregshue Nov 17, 2025
9baa665
stk_needs:mkts:usr:elderly: consumer devices auto apply security updates
gregshue Dec 12, 2025
b61f8d3
stk_needs:mkts:usr:engr_stdnt: postpone security updates for specifie…
gregshue Dec 12, 2025
16580ae
stk_reqs:mfg: Add section Product Manager [prd_mgr:]
gregshue Dec 12, 2025
d560ed6
stk_reqs:mfg:prod_mgr: System Internal Name SAMPLE
gregshue Dec 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
50 changes: 50 additions & 0 deletions conformance/example1/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,56 @@ data (digital and physical identifiers) and packaging the product:
- Model
- Serial Number

## Demonstrated System Engineering Process and Tools

### System Engineering Body of Knowledge (SEBoK)

This example is attempting to follow the best practices described in the
[Guide to the Systems Engineering Body of Knowledge (SEBoK)](https://sebokwiki.org/wiki/Guide_to_the_Systems_Engineering_Body_of_Knowledge_(SEBoK)).

The SEBoK Wiki Glossary quotes the following definition for the
[Vee (V) Model](https://sebokwiki.org/wiki/Vee_(V)_Model_(glossary)):

> The technical aspect of the project cycle is envisioned as a "Vee", starting with User needs on the upper left and ending with a User-validated system on the upper right. (Forsberg and Mooz 1991)

The SEBoK considers Users to be a subset of the set of Stakeholders.
This results in approximately the following Vee Model:

```
Stakeholder Needs
^
\ Stakeholder Requirements <-- proven met by -- System Validations
\ (solution constraints) ^
\ /
+--> System Requirements <--- verified by ---- System Verifications
| repeat ^ ^
| until \ System Architecture /
| directly \ decomposes System into /
| implement \ /
+--------- SysElement Requirements <------ sysElement Verification
```

Each resulting SysElement then is treated as a new System-of-interest (SOI)
and is further decomposed until it is small enough to be directly implemented
and verified.


### International Council on System Engineering (INCOSE)

This example also attempts to write requirements following the
[International Council on Systems Engineering](https://www.incose.org/) recommendations.
A soft copy of their [Guide to Writing Requirements Summary Sheet](https://portal.incose.org/commerce/store?productId=commerce-merchandise%23INCOSE-GUIDEWRITINGREQSUM)
may be purchased from the INCOSE store by non-members for $0.00 (zero).

The example content is initially being captured using the open-source
tool [StrictDoc](https://github.com/strictdoc-project/strictdoc),
which is a FOSS software tool for technical documentation and requirements management.
StrictDoc has been successfully used for technical documentation certified by
Comment thread
gregshue marked this conversation as resolved.
the European Space Agency. It supports the following features key to this example:
- document creators can specify their own document node types,
- node relationship directions and trace analysis,
- support for generating graphs from editable textual graph descriptions (Mermaid UML)


## Comments

Expand Down
1 change: 1 addition & 0 deletions conformance/example1/content/src/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
__pycache__
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
[DOCUMENT]
Comment thread
gregshue marked this conversation as resolved.
MID: 43b3bf7d570d4089b3cd76a4c765cd62
Copy link
Copy Markdown

@stanislaw stanislaw Dec 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed on the call, here's a note on structuring chapters in requirement specifications:

Splitting by requirement types does not scale as well as splitting by the functional decomposition.

Let's say you have a system with functions F1, F2, F3.

Here's what does not scale very well:

Requirements doc:

- Functional requirements
  - F1
  - F2
  - F3
- Performance requirements
  - F1  
  - F2
  - F3
- Interface requirements
  - F1
  - F2
  - F3

With this kind of decomposition, each function, e.g., F1, get fragmented a lot and understanding the whole function becomes problematic.

The approach that scales better:

Requirements doc:

- F1
  - Functional requirements
  - Performance requirements
  - Interface requirements
- F2
  - Functional requirements
  - Performance requirements
  - Interface requirements
- F3
  - Functional requirements
  - Performance requirements
  - Interface requirements

This way, one can get a better understanding of F1, F2, F3, ... because all their requirements are nicely co-located.

With this approach, the non-functional / cross-cutting requirements can still be arranged by types, forming the structure:

Requirements doc:

(all functional requirements)
- F1
  ... functional, performance, interface
- F2
  ... functional, performance, interface
- F3
  ... functional, performance, interface
...
(cross-cutting, not attached to a single function, applicable to many functions or the entire product)
- Quality requirements 
- Maintainability requirements
- Other cross-cutting

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@stanislaw I think organizing primarily by function makes sense for the system_requirements document(s). The system_architecture process identifies and delegates responsibilities to system elements and the interfaces between system elements.

In many cases a single system function is achieved through the interaction of multiple system elements. Those interactions are internal interfaces shared between participating elements. An interface_specification describes all the interactions across the interface.

It seems to me that the interface_requirements document simply pulls together all the requirements for a single interface. I don't know if this aggregation makes evaluating/selecting or specifying an interface any easier.

TITLE: Interface Requirements
OPTIONS:
ENABLE_MID: True

[GRAMMAR]
IMPORT_FROM_FILE: @sample_interface_requirements_grammar

[TEXT]
MID: 9be29edda6c5401fbb2a05ff71cd0fd0
STATEMENT: >>>
SPDX-License-Identifier: Apache-2.0
<<<

[TEXT]
MID: 1d78c62fa24740e49fd245550e11dd13
STATEMENT: >>>
From `SEBoK Wiki Glossary - interface <https://sebokwiki.org/wiki/Interface_(glossary)>`_:

- A shared boundary between two functional units, defined by various characteristics pertaining to the functions, physical signal exchanges, and other characteristics. (ISO/IEC 1993)

- A hardware or software component that connects two or more other components for the purpose of passing information from one to the other. (ISO/IEC 1993)

- To connect two or more components for the purpose of passing information from one to the other. (ISO/IEC/IEEE 2009)
<<<
51 changes: 51 additions & 0 deletions conformance/example1/content/src/SOI/SAMPLE/sdoc/index.sdoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
[DOCUMENT]
TITLE: SAMPLE

[TEXT]
STATEMENT: >>>
SPDX-License-Identifier: Apache-2.0
<<<

[TEXT]
STATEMENT: >>>
The System-of-Interest named SAMPLE is the top-level system in this example.

It is expected to be composed of the following subsystems:

.. raw:: html

<pre class="mermaid">
---
title: Topology of Systems-of-Interest
---
stateDiagram-v2

state SAMPLE {
TBD_Security_Vulnerability_Reporting: TBD <br/> Security <br/> Vulnerability <br/> Reporting <br/> Server
TBD_Desktop_SW: TBD <br/> Desktop SW
TBD_Mobile_SW: TBD <br/> Mobile SW
TBD_Devices: TBD <br/> Device(s)
TBD_Cloud_SW: TBD <br/> Cloud SW
TBD_Digital_Component_Update_Server: TBD <br/> Digital <br/> Component <br/> Update <br/> Server
}

</pre>
<<<

[DOCUMENT_FROM_FILE]
FILE: ../system_requirements/sdoc/index.sdoc

[DOCUMENT_FROM_FILE]
FILE: ../system_verifications/sdoc/index.sdoc

[DOCUMENT_FROM_FILE]
FILE: ../system_architectures/sdoc/index.sdoc

[DOCUMENT_FROM_FILE]
FILE: ../interface_requirements/sdoc/index.sdoc

[DOCUMENT_FROM_FILE]
FILE: ../system_element_requirements/sdoc/index.sdoc

[DOCUMENT_FROM_FILE]
FILE: ../system_element_verifications/sdoc/index.sdoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,187 @@
[DOCUMENT]
MID: af66c5de119447b58b950dd710d34b8a
TITLE: System Architecture(s)
OPTIONS:
ENABLE_MID: True

[GRAMMAR]
IMPORT_FROM_FILE: @sample_system_architectures_grammar

[TEXT]
MID: 84713f51e27b4ea4bc3242a8e2f1fba7
STATEMENT: >>>
SPDX-License-Identifier: Apache-2.0
<<<

[TEXT]
MID: 0f68a238be874bdcb25a5fbb9f9bcb5c
STATEMENT: >>>
From `SEBoK Wiki Glossary - Architecture <https://sebokwiki.org/wiki/Architecture_(glossary)>`_:

- fundamental concepts or properties of a system in its environment embodied in its elements, relationships, and in the principles of its design and evolution (ISO/IEC/IEEE 2015, Section 4.5)

- The organizational structure of a system or component; the organizational structure of a system and its implementation guidelines. (ISO/IEC 2009, 1)

- Fundamental concepts or properties of a system in its environment embodied in its elements, relationships, and in the principles of its design and evolution. (ISO/IEC 2011, section 3.2)
<<<

[[SECTION]]
MID: 8ecb476dee204236beaca929246ca738
TITLE: Architecture Decision Timeline

[[/SECTION]]

[[SECTION]]
MID: 36617eaf332a4efda48b7b596c66e413
TITLE: Architecture Decisions

[[/SECTION]]

[[SECTION]]
MID: e5076a1d1494497e88e7df3bc0dea09a
TITLE: Logical View

[TEXT]
MID: 671e4f76645344f1b0b35ee9f60b75bb
STATEMENT: >>>
From `4+1 Architectural View Model <https://en.wikipedia.org/wiki/4%2B1_architectural_view_model>`_:

The logical view is concerned with the functionality that the system provides to end-users. UML diagrams are used to represent the logical view, and include class diagrams, and state diagrams. (Mikko Kontio (2008, July) Architectural manifesto: Designing software architectures, Part 5)
<<<

[TEXT]
MID: d5312fdaf0de42658b9d2287c3eea317
STATEMENT: >>>
.. raw:: html

<pre class="mermaid">
---
title: Example UML State Diagram
---
stateDiagram-v2

productMfg: Product Manufacturer
productMfgWebsite: Product Mfg. Website
productMfgSupport: Product Mfg. Customer Support
productSecurityReporting: Product Mfg. <br/> Security Reporting

state productMfg {
direction LR

productMfgWebsite
productMfgSupport
productSecurityReporting
}

Customer

Product

</pre>
<<<

[[/SECTION]]

[[SECTION]]
MID: 2f6357676b7148049baec8001b7d464b
TITLE: Physical View

[TEXT]
MID: 7949001aaf3a413797d5022c40669144
STATEMENT: >>>
From `4+1 Architectural View Model <https://en.wikipedia.org/wiki/4%2B1_architectural_view_model>`_:

The physical view (aka the deployment view) depicts the system from a system engineer's point of view. It is concerned with the topology of software components on the physical layer as well as the physical connections between these components. UML diagrams used to represent the physical view include the deployment diagram. (Mikko Kontio (2008, July) Architectural manifesto: Designing software architectures, Part 5)
<<<

[TEXT]
MID: 85c0235670da4549884201f91ff364a0
STATEMENT: >>>
.. raw:: html

<pre class="mermaid">
---
title: Example UML Entity Relationship
---
erDiagram
CUSTOMER ||--o{ ORDER : places
ORDER ||--|{ LINE-ITEM : contains
CUSTOMER }|..|{ DELIVERY-ADDRESS : uses

</pre>
<<<

[[/SECTION]]

[[SECTION]]
MID: 2fe14357b35b4f0aa9b184fdb1abe15c
TITLE: Concurrency (Process) View

[TEXT]
MID: 5d6d15025b8d486a8aabf215fdf7e40b
STATEMENT: >>>
From `4+1 Architectural View Model <https://en.wikipedia.org/wiki/4%2B1_architectural_view_model>`_:

The process view deals with the dynamic aspects of the system, explains the system processes and how they communicate, and focuses on the run time behavior of the system. The process view addresses concurrency, distribution, integrator, performance, and scalability, etc. UML diagrams to represent process view include the sequence diagram, communication diagram, activity diagram. (Hui, LM; Leung, CW; Fan, CK; Wong, TN (2004). "Modelling agent-based systems with UML". Proceedings of the Fifth Asia Pacific Industrial Engineering and Management Systems Conference.), (Mikko Kontio (2008, July) Architectural manifesto: Designing software architectures, Part 5)
<<<

[[/SECTION]]

[[SECTION]]
MID: 06283fdaa2da401788553f0cdfa4cbd3
TITLE: Development View

[TEXT]
MID: 652c07a9ceb0481f8819db9c28251c0e
STATEMENT: >>>
From `4+1 Architectural View Model <https://en.wikipedia.org/wiki/4%2B1_architectural_view_model>`_:

The development view (aka the implementation view) illustrates a system from a programmer's perspective and is concerned with software management. UML Diagrams used to represent the development view include the Package diagram and the Component diagram. (Mikko Kontio (2008, July) Architectural manifesto: Designing software architectures, Part 5)
<<<

[[/SECTION]]

[[SECTION]]
MID: 29a05dd3c9504eb1a78b28a8e1cfc71d
TITLE: Scenarios

[TEXT]
MID: 63b5a1579fa944dc8456deaf2e1d4405
STATEMENT: >>>
From `4+1 Architectural View Model <https://en.wikipedia.org/wiki/4%2B1_architectural_view_model>`_:

The description of an architecture is illustrated using a small set of use cases, or scenarios, which become a fifth view. The scenarios describe sequences of interactions between objects and between processes. They are used to identify architectural elements and to illustrate and validate the architecture design. They also serve as a starting point for tests of an architecture prototype. This view is also known as the use case view.
<<<

[TEXT]
MID: e0dab2b7af414a92855ef3613ccba1b1
STATEMENT: >>>
.. raw:: html

<pre class="mermaid">
---
title Example UML Sequence Diagram
---
sequenceDiagram

%% Set non-default presentation order of participants
participant A as Alice<br/>Johnson
participant J as John
participant C

C -->> A : Clock chimes

activate A
A ->> J : How are you?

activate J
note over J : John thinks for a moment

J ->> A : Fine
deactivate J
deactivate A

</pre>
<<<

[[/SECTION]]
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
[DOCUMENT]
MID: 9a5689a75c354b019acf55761ae02ca7
TITLE: System Element Requirements
OPTIONS:
ENABLE_MID: True

[GRAMMAR]
IMPORT_FROM_FILE: @sample_system_element_requirements_grammar

[TEXT]
MID: 2f9e70c900604e35a4a61961afb6e19b
STATEMENT: >>>
SPDX-License-Identifier: Apache-2.0
<<<

[TEXT]
MID: 49ebfa8c1d414aa2aa66aff2153c2f13
STATEMENT: >>>
From `SEBoK Wiki Glossary - system element <https://sebokwiki.org/wiki/System_Element_(glossary)>`_:

- A member of a set of elements that constitutes a system. A system element is a discrete part of a system that can be implemented to fulfill specified requirements. A system element can be hardware, software, data, humans, processes (e.g., processes for providing service to users), procedures (e.g., operator instructions), facilities, materials, and naturally occurring entities (e.g., water, organisms, minerals), or any combination. (ISO/IEC 15288:2015)
<<<
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
[DOCUMENT]
MID: 97fadfb8f97a481a8205cf619c53f4f6
TITLE: System Element Verifications
OPTIONS:
ENABLE_MID: True

[GRAMMAR]
IMPORT_FROM_FILE: @sample_system_element_verifications_grammar

[TEXT]
MID: 715801b3dc784aefab88fe5afc443e3e
STATEMENT: >>>
SPDX-License-Identifier: Apache-2.0
<<<

[TEXT]
MID: 849ea88ccbf040bcbce53b9c15dbf7f8
STATEMENT: >>>
From `SEBoK Wiki Glossary - verification <https://sebokwiki.org/wiki/Verification_(glossary)>`_:

- Confirmation, through the provision of objective evidence, that specified (system) requirements have been fulfilled. (ISO/IEC 2008, section 4.38)

- Verification is a set of activities that compares a system or system element against the required characteristics. This includes, but is not limited to, specified requirements, design description and the system itself. The system was built right. (ISO/IEC/IEEE 2015, 1, Section 6.4.6)

- The evaluation of whether or not a product, service, or system complies with a regulation, requirement, specification, or imposed condition. It is often an internal process. Contrast with validation. (PMI 2013)

- The process of evaluating a system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase. (IEEE 1012-2004, 3.1.36)

- Process of providing objective evidence that the software and its associated products comply with requirements for all life cycle activities during each life cycle process, satisfy standards, practices, and conventions during life cycle processes, and successfully complete each life cycle activity and satisfy all the criteria for initiating succeeding life cycle activities. (IEEE 829-2008, 3.1.54)
<<<
Loading