memo_architecture_implementation_software_structure
SysML API
Namespace hierarchy
memo → memo::architecture → memo::architecture::implementation → memo::architecture::implementation::software → memo::architecture::implementation::software::structure
Packages
| Package |
memo_architecture_implementation_software_structure |
Imports
| Visibility |
Target |
| private |
Metaobjects::SemanticMetadata |
| private |
ScalarValues::* |
| private |
memo_core_common::* |
| private |
memo_core_enumerations::* |
| private |
memo_core_relationships::* |
| private |
memo_architecture_logical_structure::* |
Declarations
| Name |
SysML kind |
Description |
Specializes |
SoftwareElement |
part def |
Software element definition specializing MemoPart. |
MemoPart |
SoftwareSystem |
part def |
Software system definition specializing SoftwareElement. |
SoftwareElement |
ModuleKind |
enum def |
Controlled values for module: unit, code, firmware. |
— |
SoftwareModule |
part def |
Software module definition specializing SoftwareElement. |
SoftwareElement |
Algorithm |
part def |
Algorithm definition specializing MemoPart. |
MemoPart |
DataModel |
part def |
Data model definition specializing MemoPart. |
MemoPart |
ConfigurationArtifact |
part def |
Configuration artifact definition specializing MemoPart. |
MemoPart |
DataItem |
item def |
Data item definition specializing MemoItem. |
MemoItem |
SOUPSoftwareModule |
part def |
Soupsoftware module definition specializing SoftwareModule. |
SoftwareModule |
OTSSoftwareModule |
part def |
Otssoftware module definition specializing SOUPSoftwareModule. |
SOUPSoftwareModule |
SbomFormatKind |
enum def |
Controlled values for sbom format: spdx, cycloneDx, other. |
— |
SBOMEntry |
part def |
An SBOM is a document; its entries are inventory records. An entry names one software element and says what is known about it as shipped. Vulnerabilities, anomalies and risks are separate objects that point at the entry; they are not attributes of the document. |
MemoPart |
SoftwareBillOfMaterials |
part def |
Software bill of materials definition specializing MemoPart. |
MemoPart |
DependsOnSoup |
connection def |
Typed relationship from MemoPart to SoftwareElement. |
MemoRelationship |
SoftwareElement
abstract part def SoftwareElement specializes MemoPart
| Property |
Value |
| Description |
Software element definition specializing MemoPart. |
| Kind |
part def |
| Abstract |
Yes |
| Specializes |
MemoPart |
| Owning package |
memo_architecture_implementation_software_structure |
SoftwareSystem
part def SoftwareSystem specializes SoftwareElement
| Property |
Value |
| Description |
Software system definition specializing SoftwareElement. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
SoftwareElement |
| Owning package |
memo_architecture_implementation_software_structure |
ModuleKind
| Property |
Value |
| Description |
Controlled values for module: unit, code, firmware. |
| Kind |
enum def |
| Abstract |
No |
| Specializes |
— |
| Owning package |
memo_architecture_implementation_software_structure |
SoftwareModule
part def SoftwareModule specializes SoftwareElement
| Property |
Value |
| Description |
Software module definition specializing SoftwareElement. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
SoftwareElement |
| Owning package |
memo_architecture_implementation_software_structure |
Algorithm
part def Algorithm specializes MemoPart
| Property |
Value |
| Description |
Algorithm definition specializing MemoPart. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
MemoPart |
| Owning package |
memo_architecture_implementation_software_structure |
DataModel
part def DataModel specializes MemoPart
| Property |
Value |
| Description |
Data model definition specializing MemoPart. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
MemoPart |
| Owning package |
memo_architecture_implementation_software_structure |
ConfigurationArtifact
part def ConfigurationArtifact specializes MemoPart
| Property |
Value |
| Description |
Configuration artifact definition specializing MemoPart. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
MemoPart |
| Owning package |
memo_architecture_implementation_software_structure |
DataItem
abstract item def DataItem specializes MemoItem
| Property |
Value |
| Description |
Data item definition specializing MemoItem. |
| Kind |
item def |
| Abstract |
Yes |
| Specializes |
MemoItem |
| Owning package |
memo_architecture_implementation_software_structure |
SOUPSoftwareModule
part def SOUPSoftwareModule specializes SoftwareModule
| Property |
Value |
| Description |
Soupsoftware module definition specializing SoftwareModule. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
SoftwareModule |
| Owning package |
memo_architecture_implementation_software_structure |
OTSSoftwareModule
part def OTSSoftwareModule specializes SOUPSoftwareModule
| Property |
Value |
| Description |
Otssoftware module definition specializing SOUPSoftwareModule. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
SOUPSoftwareModule |
| Owning package |
memo_architecture_implementation_software_structure |
| Property |
Value |
| Description |
Controlled values for sbom format: spdx, cycloneDx, other. |
| Kind |
enum def |
| Abstract |
No |
| Specializes |
— |
| Owning package |
memo_architecture_implementation_software_structure |
SBOMEntry
part def SBOMEntry specializes MemoPart
| Property |
Value |
| Description |
An SBOM is a document; its entries are inventory records. An entry names one software element and says what is known about it as shipped. Vulnerabilities, anomalies and risks are separate objects that point at the entry; they are not attributes of the document. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
MemoPart |
| Owning package |
memo_architecture_implementation_software_structure |
SoftwareBillOfMaterials
part def SoftwareBillOfMaterials specializes MemoPart
| Property |
Value |
| Description |
Software bill of materials definition specializing MemoPart. |
| Kind |
part def |
| Abstract |
No |
| Specializes |
MemoPart |
| Owning package |
memo_architecture_implementation_software_structure |
DependsOnSoup
connection def DependsOnSoup :> MemoRelationship
| Property |
Value |
| Description |
Typed relationship from MemoPart to SoftwareElement. |
| Kind |
connection def |
| Abstract |
No |
| Specializes |
MemoRelationship |
| Owning package |
memo_architecture_implementation_software_structure |
Source
architecture/implementation/software/structure/memo_software_structure.sysml
package memo_architecture_implementation_software_structure {
private import Metaobjects::SemanticMetadata;
private import ScalarValues::*;
private import memo_core_common::*;
private import memo_core_enumerations::*;
private import memo_core_relationships::*;
private import memo_architecture_logical_structure::*;
abstract part def SoftwareElement specializes MemoPart {
attribute safetyClass : SafetyClassKind;
attribute complexity : ComplexityKind;
}
part def SoftwareSystem specializes SoftwareElement {
attribute operatingSystem : String;
}
enum def ModuleKind {
enum 'item';
enum unit;
enum 'package';
enum 'library';
enum code;
enum firmware;
}
part def SoftwareModule specializes SoftwareElement {
attribute moduleKind : ModuleKind;
attribute responsibility : String;
attribute iec62304Role : String[0..1];
attribute implementationLanguage : String[0..1];
attribute namespacePath : String[0..1];
attribute libraryVersion : String[0..1];
attribute internallyDeveloped : Boolean[0..1];
attribute firmwareTarget : String[0..1];
attribute updateMechanism : String[0..1];
}
part def Algorithm specializes MemoPart {
attribute algorithmKind : String;
attribute inputSummary : String;
attribute outputSummary : String;
attribute clinicalPerformanceClaim : String;
}
part def DataModel specializes MemoPart {
attribute schemaReference : String;
attribute persistenceScope : String;
}
part def ConfigurationArtifact specializes MemoPart {
attribute configurationScope : String;
attribute version : String;
}
abstract item def DataItem specializes MemoItem {
attribute schemaIdentifier : String;
attribute schemaVersion : String;
attribute :>> encoding : String;
attribute :>> timestampRequired : Boolean;
}
part def SOUPSoftwareModule specializes SoftwareModule {
attribute supplier : String[0..1];
attribute version : String[0..1];
attribute knownAnomalies : String[0..1];
attribute riskAcceptance : String[0..1];
attribute soupClassification : SOUPClassificationKind[0..1];
}
part def OTSSoftwareModule specializes SOUPSoftwareModule {
attribute licenseExpression : String;
attribute packageUrl : String;
attribute checksum : String;
}
enum def SbomFormatKind {
enum spdx;
enum cycloneDx;
enum other;
}
part def SBOMEntry specializes MemoPart {
attribute componentName : String;
attribute version : String;
attribute supplier : String;
attribute licenseExpression : String;
attribute checksum : String;
attribute packageUrl : String;
attribute bomReference : String;
ref inventoriedElement : SoftwareElement[0..1];
}
part def SoftwareBillOfMaterials specializes MemoPart {
attribute sbomFormat : SbomFormatKind;
attribute specVersion : String;
attribute generationTool : String;
attribute generatedOn : String;
part sbomEntry : SBOMEntry[0..*];
}
connection def DependsOnSoup :> MemoRelationship {
end component : MemoPart :>> source;
end soupItem : SoftwareElement :>> target;
}
abstract connection dependsOnSoupLinks : DependsOnSoup[*];
metadata def <dependsOnSoup> DependsOnSoupMetadata :> SemanticMetadata {
:> annotatedElement : SysML::ConnectionDefinition;
:> annotatedElement : SysML::ConnectionUsage;
:>> baseType = dependsOnSoupLinks meta SysML::Usage;
}
}