From 4d1d9830d51d3df59cadaa0ac9c9b004f2cb0d17 Mon Sep 17 00:00:00 2001 From: liamfallon Date: Thu, 30 May 2019 20:53:05 +0000 Subject: Design and Public API documentation completed. The draw.io diagrams are in Gerrit. If the page is ever deleted, they will be lost. They ae now saved in XML format in gerrit. The design documentation links to the examples in github rather than quoting them in the document. General tidy up and cleaning of links, rewording, and reformatting of desgin document. Added missing diagram to the Design document. Updated and tidied up the internal PAP/PDP document. General improvement of documentation. Issue-ID: POLICY-1676 Change-Id: Ie5c9f32693f047beafe14a3e412a32cdf9ed6fde Signed-off-by: liamfallon --- docs/architecture/images/ClassStructure.svg | 2 ++ docs/architecture/images/DesignTimeComponents.svg | 2 ++ docs/architecture/images/PFDesignAndAdmin.svg | 2 ++ docs/architecture/images/PFHighestLevel.svg | 2 ++ docs/architecture/images/PolicyExecution.svg | 36 ++-------------------- docs/architecture/images/PolicyExecutionFlow.svg | 34 ++++++++++++++++++++ docs/architecture/images/TOSCAPolicyConcepts.svg | 2 ++ docs/architecture/images/ToscaPolicyStructure.png | Bin 26067 -> 0 bytes docs/architecture/images/detailed.png | Bin 214476 -> 0 bytes docs/architecture/images/execution.png | Bin 104106 -> 0 bytes docs/architecture/images/highest.png | Bin 40638 -> 0 bytes docs/architecture/images/objectmodel1.png | Bin 186880 -> 0 bytes docs/architecture/images/objectmodel2.png | Bin 170899 -> 0 bytes 13 files changed, 46 insertions(+), 34 deletions(-) create mode 100644 docs/architecture/images/ClassStructure.svg create mode 100644 docs/architecture/images/DesignTimeComponents.svg create mode 100644 docs/architecture/images/PFDesignAndAdmin.svg create mode 100644 docs/architecture/images/PFHighestLevel.svg create mode 100644 docs/architecture/images/PolicyExecutionFlow.svg create mode 100644 docs/architecture/images/TOSCAPolicyConcepts.svg delete mode 100644 docs/architecture/images/ToscaPolicyStructure.png delete mode 100644 docs/architecture/images/detailed.png delete mode 100644 docs/architecture/images/execution.png delete mode 100644 docs/architecture/images/highest.png delete mode 100644 docs/architecture/images/objectmodel1.png delete mode 100644 docs/architecture/images/objectmodel2.png (limited to 'docs/architecture/images') diff --git a/docs/architecture/images/ClassStructure.svg b/docs/architecture/images/ClassStructure.svg new file mode 100644 index 00000000..650e5a31 --- /dev/null +++ b/docs/architecture/images/ClassStructure.svg @@ -0,0 +1,2 @@ + +

MicroService



[Not supported by viewer]

PDPGroup



[Not supported by viewer]
1
1
1..n
1..n

PDPSubGroup



[Not supported by viewer]

PDP



[Not supported by viewer]
1
1
1..n
1..n

<<enumeration>>
PDPType


PDP-X
PDP-D
PDP-A
[Not supported by viewer]
1
1

PDP-X



[Not supported by viewer]

PDP-D



[Not supported by viewer]

PDP-A



[Not supported by viewer]

Kubernetes



[Not supported by viewer]
manages
manages
0..n
[Not supported by viewer]

PolicyImpl



[Not supported by viewer]

XACMLPolicyImpl



[Not supported by viewer]

DroolsPolicyImpl



[Not supported by viewer]

ApexPolicyImpl



[Not supported by viewer]
1
1
executes
executes
0..n
[Not supported by viewer]

PolicySet



[Not supported by viewer]
executes
executes
1
1
1
1
1
1
1..n
1..n
All the PDPs in a given PDPSubGroup instance must be of the same type
[Not supported by viewer]

PolicyTypeImpl



[Not supported by viewer]

<<TOSCA>>
Policy



[Not supported by viewer]
has implementation
has implementation
n
[Not supported by viewer]
1
1
is specified by
is specified by
n
[Not supported by viewer]
1
1

<<TOSCA>>
PolicyType



[Not supported by viewer]
is defined by
is defined by
n
[Not supported by viewer]
1
1
\ No newline at end of file diff --git a/docs/architecture/images/DesignTimeComponents.svg b/docs/architecture/images/DesignTimeComponents.svg new file mode 100644 index 00000000..3766c4cc --- /dev/null +++ b/docs/architecture/images/DesignTimeComponents.svg @@ -0,0 +1,2 @@ + +

<<enumeration>>
PDPType


PDP-X
PDP-D
PDP-A
[Not supported by viewer]

XACMLPolicy



[Not supported by viewer]

DroolsPolicy



[Not supported by viewer]

ApexPolicy



[Not supported by viewer]
1
1

XACMLImpl



[Not supported by viewer]

DroolsImpl



[Not supported by viewer]

ApexImpl



[Not supported by viewer]

PolicyTypeImpl



[Not supported by viewer]
1
1
PolicyTypeXACML


[Not supported by viewer]

<<TOSCA>>
PolicyType



[Not supported by viewer]

PolicyTypeDrools



[Not supported by viewer]

PolicyTypeApex



[Not supported by viewer]
1
1

PolicyCreator



[Not supported by viewer]
applies
applies
1
1
1
1
parameterizes
parameterizes
1
1
1
1
creates
creates
1
1
1
1

PDPXCreator



[Not supported by viewer]

PDPDCreator



[Not supported by viewer]

PDPACreator



[Not supported by viewer]
1
1
implements
implements
m
m
n
n

<<TOSCA>>
Policy



[Not supported by viewer]
\ No newline at end of file diff --git a/docs/architecture/images/PFDesignAndAdmin.svg b/docs/architecture/images/PFDesignAndAdmin.svg new file mode 100644 index 00000000..f91d3084 --- /dev/null +++ b/docs/architecture/images/PFDesignAndAdmin.svg @@ -0,0 +1,2 @@ + +
PolicyDevelopment
PolicyDevelopment
Portal
Portal
PolicyDevAPIUser
PolicyDevAPIUser
PolicyDistribution
PolicyDistribution
SDC
SDC
PolicyDevGUI
PolicyDevGUI
PolicyDB
PolicyDB
PolicyAdminGUI
PolicyAdminGUI
PolicyAdministration
PolicyAdministration
PolicyAdminAPIUser
PolicyAdminAPIUser
PolicyExecution
PolicyExecution
DMaaP
DMaaP
AsyncCaller
AsyncCaller
SyncCaller
SyncCaller
Policy Artifacts and Metadata
PDP Group and Subgroup Definitions
Policy to PDP Group and Subgroup Mappings
[Not supported by viewer]
CRUD API for Policy Groups and Sub-Groups
API for Policy Deployment
CRUD API for Policy Groups and Sub-Groups<br>API for Policy Deployment
Policies for a given
domain execute in a
PDP Group. PDP Groups
have subgroups for each
PDP type in a PDP group
[Not supported by viewer]
Deploy
Retire
Archive
Upgrade
Rollback
[Not supported by viewer]
CRUD API for Policy Artifacts
CRUD API for Policy Artifacts
Policy Framework Component
Policy Framework Component
Other Component
Other Component
\ No newline at end of file diff --git a/docs/architecture/images/PFHighestLevel.svg b/docs/architecture/images/PFHighestLevel.svg new file mode 100644 index 00000000..9f1afd6a --- /dev/null +++ b/docs/architecture/images/PFHighestLevel.svg @@ -0,0 +1,2 @@ + +
PolicyDevelopment
PolicyDevelopment
PolicyDB
PolicyDB
PolicyAdministration
PolicyAdministration
PolicyExecution
PolicyExecution
Policy Framework Component
Policy Framework Component
Other Component
Other Component
\ No newline at end of file diff --git a/docs/architecture/images/PolicyExecution.svg b/docs/architecture/images/PolicyExecution.svg index c9b2f7f6..23a00770 100644 --- a/docs/architecture/images/PolicyExecution.svg +++ b/docs/architecture/images/PolicyExecution.svg @@ -1,34 +1,2 @@ -Policy ExecutionREQUESTORREQUESTORRESPONDEERESPONDEEPDPPDPalt[Synchronous Invocation]1Execute Policywait2Policy Execution Result[Asynchronous Invocation]3Execute Policy4Policy Execution Result \ No newline at end of file + +
PDPGroup
PDPGroup
PDPGroup
PDPGroup
PDPGroup
PDPGroup
PDPSubGroup
PDPSubGroup
PDPSubGroup
PDPSubGroup
PDP-X
PDP-X
PDP-X
PDP-X
PDP-A
PDP-A
PDP-A
PDP-A
PDP-A
PDP-A
PDPSubGroup
PDPSubGroup
PDP-D
PDP-D
PDP-D
PDP-D
PDP-D
PDP-D
PolicyAdministration
PolicyAdministration
DMaaP
DMaaP
AsyncCaller
<div>AsyncCaller</div>
SyncCaller
SyncCaller
Each PDP is deployed as a Kubernetes Pod
[Not supported by viewer]
In Kubernetes, a PDPSubGroup is a Kubernetes Deployment
[Not supported by viewer]
\ No newline at end of file diff --git a/docs/architecture/images/PolicyExecutionFlow.svg b/docs/architecture/images/PolicyExecutionFlow.svg new file mode 100644 index 00000000..c9b2f7f6 --- /dev/null +++ b/docs/architecture/images/PolicyExecutionFlow.svg @@ -0,0 +1,34 @@ +Policy ExecutionREQUESTORREQUESTORRESPONDEERESPONDEEPDPPDPalt[Synchronous Invocation]1Execute Policywait2Policy Execution Result[Asynchronous Invocation]3Execute Policy4Policy Execution Result \ No newline at end of file diff --git a/docs/architecture/images/TOSCAPolicyConcepts.svg b/docs/architecture/images/TOSCAPolicyConcepts.svg new file mode 100644 index 00000000..fd8f18e6 --- /dev/null +++ b/docs/architecture/images/TOSCAPolicyConcepts.svg @@ -0,0 +1,2 @@ + +Policy+ properties:property definition list+ targets: string[]+ triggers: trigger listPolicyType+ properties: property definition list+ targets: string[]+ triggers: trigger listTrigger+ event_type: string (event name)+ schedule: TimeInterval+ target_filter: event filter+ condition: constraint clause+ constraint: constraint clause+ period: scalar-unit.time+ evaluations: integer+ method: string+ action: string or operation
specification
of
[Not supported by viewer]
1
1
0..n
0..n
can be
triggered by
[Not supported by viewer]
0..n
0..n
0..n
0..n
triggers
triggers
0..n
0..n
0..n
0..n
\ No newline at end of file diff --git a/docs/architecture/images/ToscaPolicyStructure.png b/docs/architecture/images/ToscaPolicyStructure.png deleted file mode 100644 index f1e6cb47..00000000 Binary files a/docs/architecture/images/ToscaPolicyStructure.png and /dev/null differ diff --git a/docs/architecture/images/detailed.png b/docs/architecture/images/detailed.png deleted file mode 100644 index 9ac8cf30..00000000 Binary files a/docs/architecture/images/detailed.png and /dev/null differ diff --git a/docs/architecture/images/execution.png b/docs/architecture/images/execution.png deleted file mode 100644 index 4e564856..00000000 Binary files a/docs/architecture/images/execution.png and /dev/null differ diff --git a/docs/architecture/images/highest.png b/docs/architecture/images/highest.png deleted file mode 100644 index bfe07ae8..00000000 Binary files a/docs/architecture/images/highest.png and /dev/null differ diff --git a/docs/architecture/images/objectmodel1.png b/docs/architecture/images/objectmodel1.png deleted file mode 100644 index ef3c7d12..00000000 Binary files a/docs/architecture/images/objectmodel1.png and /dev/null differ diff --git a/docs/architecture/images/objectmodel2.png b/docs/architecture/images/objectmodel2.png deleted file mode 100644 index 44f79746..00000000 Binary files a/docs/architecture/images/objectmodel2.png and /dev/null differ -- cgit 1.2.3-korg