Skip to content

Commit

Permalink
Merge pull request #890 from umm0/profile-operations
Browse files Browse the repository at this point in the history
Profile operations, merge current discussion state as of 24-09-27
Merged after Operations profile meeting
  • Loading branch information
umm0 authored Sep 27, 2024
2 parents 94a566c + 9228f15 commit eb1651c
Showing 1 changed file with 34 additions and 20 deletions.
54 changes: 34 additions & 20 deletions model/Operations/Operations-classes-draft.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Classes draft
## main draft
```mermaid
---
title: SPDX Operations Profile
Expand All @@ -11,11 +13,12 @@ classDiagram
Agent <|-- Person
Agent <|-- Country
Relationship <|-- OperationsAssessmentRelationship
Relationship <|-- Delivery
OperationsAssessmentRelationship <|-- ExportControlAssessmentRelationship
OperationsAssessmentRelationship <|-- ObligationsAssessmentRelationship
OperationsAssessmentRelationship <|-- ApplicationFactsAssessmentRelationship
OperationsAssessmentRelationship <|-- DeliverableFactsAssessmentRelationship
OperationsAssessmentRelationship <|-- SupplierDeliverableFactsAssessmentRelationship
Delivery <|-- ApplicationFacts
Delivery <|-- DeliverableFacts
Delivery <|-- SupplierDeliverableFacts
note for Organization "ID \naddress \nwebsite"
note for OperationsAssessmentRelationship "Inspired by VulnAssessmentRelationship"
Expand Down Expand Up @@ -54,6 +57,9 @@ namespace OperationsClasses {
+ publishedTime: DateTime[0..1]
+ modifiedTime: DateTime[0..1]
+ withdrawnTime: DateTime[0..1]
}
class Delivery {
}
class ExportControlAssessmentRelationship{
+ notRequired: Boolean[1]
Expand All @@ -68,28 +74,28 @@ namespace OperationsClasses {
+ Obligation: String [0..n]
}
class ApplicationFactsAssessmentRelationship{
class ApplicationFacts{
+ productOwner: Person[0..1]
+ documentationLink
+ productAccessURL
+ documentationLink: security/locator[0..n]
+ productAccessURL: security/locator[0..n]
+ applicationFactsComment: comment[0..n]
+ distributionTarget
+ distributedDeliverables
+ technicalDeployment
+ contact
+ contact: Agent [1]
+ scope
+ relationType
+ supplyChainContext
+ supplyChainContext: String[1]
+ releaseCycles
+ fossComplianceBundleProvision
+ contractSetup
+ fossTermsTowardsCustomer
+ distributionTermsTowardsCustomer
+ customerFossContact: Person[0..n]
}
class DeliverableFactsAssessmentRelationship{
class DeliverableFacts{
+ swLanguage
+ dependencyManager
+ dependencyManager: Agent[1]
+ packageManager
+ environmentFramework
+ applicationCategory
Expand All @@ -104,16 +110,20 @@ namespace OperationsClasses {
+ deliverableReview: QandA[0..n]
+ deliverabelComment: comment[0..n]
}
class SupplierDeliverableFactsAssessmentRelationship{
class SupplierDeliverableFacts{
+ supplierName
+ deliverableFromSupplier
+ fossTermsTowardsSupplier
+ distributionTermsFromSupplier
+ fossComplianceBundleConsumption
+ supplierFossContact
+ ?supplierFossContact: Person[1]
+ supplierDeliverableFactsComment: comment[0..n]
}
}
```
## nonElementClasses
```mermaid
classDiagram
namespace OperationsNonElementClasses {
class QandA{
+ question: String[0..1]
Expand All @@ -131,11 +141,15 @@ namespace OperationsNonElementClasses {
+ includesArtificialIntelligence: Boolean
}
}
namespace Enumerations {
class CountryCode{
<<Enumeration>>
}
class classificationSystem{
<<Enumeration>>
}
}
```
## Enumerations
- CountryCode
- Enumeration, external provider (official country code)
- classificationSystem
- Enumeration, possibly external provider

# Notes
- remove 'supplierFossContact' from 'SupplierDeliverableFacts'?
- this is probably better tracked in CRM and linked to 'Agent' class supplier information
- 'Delivery' as its own relationship rather than part of an assessment?

0 comments on commit eb1651c

Please sign in to comment.