Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PlantUML Macro
title(Placeholder) PolicyDesign
@startuml
participant API_User

box "PolicyDesign" #LightBlue
  participant PolicyDesign
  database PolicyDB
end box

autonumber

API_User --> PolicyDesign : Get Policy Type Reference
PolicyDesign --> PolicyDB : Get Policy Type Artifact and Metadata
PolicyDesign --> API_User : Return Policy Type Reference and Metadata
API_User --> PolicyDesign : Get Policy Reference and Metadata
PolicyDesign --> PolicyDB : Get Policy Metadata
alt Policy Artifact exists
  PolicyDesign --> API_User : Return Policy Reference and Metadata
else Policy Artifact does not exist
  PolicyDesign --> API_User : Return New Policy Reference and Empty Metadata
end

API_User --> API_User : Create Policy Editing and Generation Session
activate API_User
loop
  API_User --> PolicyDesign : Use Policy Type specification get Policy ParmaetersParameters from user
end
API_User --> PolicyDesign : Create Policy
PolicyDesign --> PolicyDesign : Create Policy
activate PolicyDesign
deactivate PolicyDesign
PolicyDesign --> PolicyDB : Save Policy Artifact and Metadata
PolicyDesign --> API_User : Policy Creation Result
deactivate API_User
@enduml

...

The sequence diagram below is a high level view of SDC-triggered concrete policy generation for some arbitrary entity EntityA. The parameters to create a policy are read from a TOSCA Policy specification read from a CSAR received from SDC.

PlantUML Macro
title(Placeholder) Model Driven Policy Design
@startuml

participant SDC
participant DMaaP

box "PolicyDesign" #LightBlue
  participant PolicyDesignSDCHandlerPolicyDistribution << API_User >>
  participant ConcretePolicyDesignPolicyDesign
end box

autonumber
PolicyDesignSDCHandlerPolicyDistribution --> DMaaP : Subscribe for SDC Notifications on Entries of Interest
SDC --> DMaaP : New Entry of Interest: EntityA
DMaaP --> PolicyDesignSDCHandlerPolicyDistribution : New Entry of Interest: EntityA

PolicyDesignSDCHandlerPolicyDistribution --> ConcretePolicyDesignPolicyDesign : Get Policy Reference
ConcretePolicyDesignPolicyDesign --> PolicyDesignSDCHandlerPolicyDistribution : Return Policy Reference and Metadata

PolicyDesignSDCHandlerPolicyDistribution --> PolicyDesignSDCHandlerPolicyDistribution : Create Policy Editing and Generation Session
activate PolicyDesignSDCHandlerPolicyDistribution
loop
  PolicyDesignSDCHandlerPolicyDistribution --> ConcretePolicyDesignPolicyDesign : Set Models, Rules, Tasks and Flow for Policy
end
PolicyDesignSDCHandler Use Policy Type specification to read Policy Parameters from TOSCA specification in CSAR
end
PolicyDistribution --> ConcretePolicyDesignPolicyDesign : Generate Policy
ConcretePolicyDesignPolicyDesign --> PolicyDesignSDCHandlerPolicyDistribution : Policy Generation Result
deactivate PolicyDesignSDCHandlerPolicyDistribution

@enduml

PolicyDesign contains a component PolicyDesignSDCHandler for managing SDC-triggered concrete policy creation and update requests. PolicyDesignSDCHandler is an API_User, it uses the Policy Design API to execution policy creation and update. It reads the information it needs to populate the policy template from SDC and then uses this information to automatically generate a policy.

...