New Version from M.Alessandrini
diff --git a/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc b/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc
index 773124b..bc11abb 100644
--- a/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc
+++ b/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc
@@ -566,6 +566,8 @@
 
 ==== GridFailureInformationFE (frontend tier)
 
+(Git-Project: _gridFailureInformation.frontend/grid-failure-information-app_, *SIT-FE*)
+
 The frontend component implements the concept of a single-page application (SPA). The framework used is Angular5.
 
 It divides the gridFailureInformationFE into three layers:
@@ -606,9 +608,24 @@
 RestService --> ViewModel_API__DTO
 ----
 
+==== Grid Failure Frontend Map- and Table-app
+
+(Git-Project: _gridFailureInformation.frontend/grid-failure-information-map-app_,
+_gridFailureInformation.frontend/grid-failure-information-table-app_ and grid-failure-information-web-comp, *SIT-WEB-FE*)
+
+Two web components representing the embeddable SIT-Web-Frontend for the internet
+
+
+==== Grid Failure Web-Cache Service
+
+(Git-Project: _gridFailureInformation.frontend/grid-failure-information-web-cache_, *SIT-Web-Cache-Service*)
+
+...as described above...
 
 ==== grid-failure-information (backend tier)
 
+(Git-Project: _gridFailureInformation.backend/gfsBackendService_, *SIT-BE*)
+
 The backend tier contains five components which can be summarized in three layers:
 
 . *Presentation layer* - Represented by
@@ -653,12 +670,14 @@
     component GridFailureInformationDB
 }
 
-Repository --> ContactBaseDataDB
+Repository --> GridFailureInformationDB
 ----
 
-==== ContactBaseData-DB (database tier)
+==== GridFailureData-DB (database tier)
 
-The ContactBaseData-DB is realized as a relational database system.
+
+
+The GridFailure-DB is realized as a relational database system.
 
 .Database tier
 [options="header"]
@@ -666,12 +685,47 @@
 ----
 
 node DBMS {
-    component ContactBaseDataDB
+    component GridFailureDB
 }
 ----
 
+==== AdressImport
 
-==== Program Configuration
+(Git-Project: _gridFailureInformation.backend/addressImport_)
+
+Separate component that manages the import of adresses and stations for the grid failure information system.
+
+
+==== MailExport
+
+(Git-Project: _gridFailureInformation.backend/mailExport_, *ExportJobs*)
+
+Microservice that is part of the export jobs in the diagram above. This service is responsible
+for the distribution and sending of e-mails.
+
+==== SAMO-Interface
+
+(Git project: _gridFailureInformation.backend/SAMO-Interface_, *ImportJobs*))
+
+Microservice that is part of the import jobs in the diagram above. The service manages the
+import of messages from the external SAMO system. It is a file based import, that needs
+the correct configuration of an import file directory.
+
+==== StoerungsauskunftInterface
+
+(Git-Project: _gridFailureInformation.backend/stoerungsauskunftinterface, *ImportJobs* & *ExportJobs*)
+
+Stoerungsauskunftinterace is an Microservice that provides a bi-directional interface to the web site "Störungsauskunft.de".
+It is able to import and to export failure informations from/to Störungsauskunft.de.
+
+==== Test importer
+
+(Git-Project: _gridFailureInformation.backend/testImportGridFailures, *ImportJobs* )
+
+Testimport microservice that can be used to test the import mechanism and the correctness of the rabbitMQ configuration.
+
+====
+
 
 <<<
 
diff --git a/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc.html b/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc.html
deleted file mode 100644
index 838be48..0000000
--- a/src/main/asciidoc/architectureDocumentation/architectureDocumentation.adoc.html
+++ /dev/null
@@ -1,2009 +0,0 @@
-  <html>
-    <head>
-      <meta charset="utf-8">
-      <title>openKonsequenz - Architecture of the module &#39;Grid Failure Information&#39;Create Repository</title>
-      <style>
-        #wrapper {width: 960px; margin: 0 auto;}
-        /* Asciidoctor default stylesheet | MIT License | https://asciidoctor.org */
-/* Uncomment @import statement to use as custom stylesheet */
-/*@import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700";*/
-article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}
-audio,video{display:inline-block}
-audio:not([controls]){display:none;height:0}
-html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}
-a{background:none}
-a:focus{outline:thin dotted}
-a:active,a:hover{outline:0}
-h1{font-size:2em;margin:.67em 0}
-abbr[title]{border-bottom:1px dotted}
-b,strong{font-weight:bold}
-dfn{font-style:italic}
-hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}
-mark{background:#ff0;color:#000}
-code,kbd,pre,samp{font-family:monospace;font-size:1em}
-pre{white-space:pre-wrap}
-q{quotes:"\201C" "\201D" "\2018" "\2019"}
-small{font-size:80%}
-sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}
-sup{top:-.5em}
-sub{bottom:-.25em}
-img{border:0}
-svg:not(:root){overflow:hidden}
-figure{margin:0}
-fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}
-legend{border:0;padding:0}
-button,input,select,textarea{font-family:inherit;font-size:100%;margin:0}
-button,input{line-height:normal}
-button,select{text-transform:none}
-button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}
-button[disabled],html input[disabled]{cursor:default}
-input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}
-button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}
-textarea{overflow:auto;vertical-align:top}
-table{border-collapse:collapse;border-spacing:0}
-*,*::before,*::after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}
-html,body{font-size:100%}
-body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}
-a:hover{cursor:pointer}
-img,object,embed{max-width:100%;height:auto}
-object,embed{height:100%}
-img{-ms-interpolation-mode:bicubic}
-.left{float:left!important}
-.right{float:right!important}
-.text-left{text-align:left!important}
-.text-right{text-align:right!important}
-.text-center{text-align:center!important}
-.text-justify{text-align:justify!important}
-.hide{display:none}
-img,object,svg{display:inline-block;vertical-align:middle}
-textarea{height:auto;min-height:50px}
-select{width:100%}
-.center{margin-left:auto;margin-right:auto}
-.stretch{width:100%}
-.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}
-div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr}
-a{color:#2156a5;text-decoration:underline;line-height:inherit}
-a:hover,a:focus{color:#1d4b8f}
-a img{border:0}
-p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}
-p aside{font-size:.875em;line-height:1.35;font-style:italic}
-h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:"Open Sans","DejaVu Sans",sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}
-h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#e99b8f;line-height:0}
-h1{font-size:2.125em}
-h2{font-size:1.6875em}
-h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}
-h4,h5{font-size:1.125em}
-h6{font-size:1em}
-hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}
-em,i{font-style:italic;line-height:inherit}
-strong,b{font-weight:bold;line-height:inherit}
-small{font-size:60%;line-height:inherit}
-code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;color:rgba(0,0,0,.9)}
-ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
-ul,ol{margin-left:1.5em}
-ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em}
-ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}
-ul.square{list-style-type:square}
-ul.circle{list-style-type:circle}
-ul.disc{list-style-type:disc}
-ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
-dl dt{margin-bottom:.3125em;font-weight:bold}
-dl dd{margin-bottom:1.25em}
-abbr,acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}
-abbr{text-transform:none}
-blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}
-blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}
-blockquote cite::before{content:"\2014 \0020"}
-blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,.6)}
-blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}
-@media screen and (min-width:768px){h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}
-h1{font-size:2.75em}
-h2{font-size:2.3125em}
-h3,#toctitle,.sidebarblock>.content>.title{font-size:1.6875em}
-h4{font-size:1.4375em}}
-table{background:#fff;margin-bottom:1.25em;border:solid 1px #dedede}
-table thead,table tfoot{background:#f7f8f7}
-table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}
-table tr th,table tr td{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}
-table tr.even,table tr.alt{background:#f8f8f7}
-table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6}
-h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-.05em}
-h1 strong,h2 strong,h3 strong,#toctitle strong,.sidebarblock>.content>.title strong,h4 strong,h5 strong,h6 strong{font-weight:400}
-.clearfix::before,.clearfix::after,.float-group::before,.float-group::after{content:" ";display:table}
-.clearfix::after,.float-group::after{clear:both}
-:not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;-webkit-border-radius:4px;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}
-:not(pre)>code.nobreak{word-wrap:normal}
-:not(pre)>code.nowrap{white-space:nowrap}
-pre{color:rgba(0,0,0,.9);font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;line-height:1.45;text-rendering:optimizeSpeed}
-pre code,pre pre{color:inherit;font-size:inherit;line-height:inherit}
-pre>code{display:block}
-pre.nowrap,pre.nowrap pre{white-space:pre;word-wrap:normal}
-em em{font-style:normal}
-strong strong{font-weight:400}
-.keyseq{color:rgba(51,51,51,.8)}
-kbd{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em white inset;box-shadow:0 1px 0 rgba(0,0,0,.2),0 0 0 .1em #fff inset;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}
-.keyseq kbd:first-child{margin-left:0}
-.keyseq kbd:last-child{margin-right:0}
-.menuseq,.menuref{color:#000}
-.menuseq b:not(.caret),.menuref{font-weight:inherit}
-.menuseq{word-spacing:-.02em}
-.menuseq b.caret{font-size:1.25em;line-height:.8}
-.menuseq i.caret{font-weight:bold;text-align:center;width:.45em}
-b.button::before,b.button::after{position:relative;top:-1px;font-weight:400}
-b.button::before{content:"[";padding:0 3px 0 2px}
-b.button::after{content:"]";padding:0 2px 0 3px}
-p a>code:hover{color:rgba(0,0,0,.9)}
-#header,#content,#footnotes,#footer{width:100%;margin-left:auto;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}
-#header::before,#header::after,#content::before,#content::after,#footnotes::before,#footnotes::after,#footer::before,#footer::after{content:" ";display:table}
-#header::after,#content::after,#footnotes::after,#footer::after{clear:both}
-#content{margin-top:1.25em}
-#content::before{content:none}
-#header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}
-#header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}
-#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}
-#header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap}
-#header .details span:first-child{margin-left:-.125em}
-#header .details span.email a{color:rgba(0,0,0,.85)}
-#header .details br{display:none}
-#header .details br+span::before{content:"\00a0\2013\00a0"}
-#header .details br+span.author::before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,.85)}
-#header .details br+span#revremark::before{content:"\00a0|\00a0"}
-#header #revnumber{text-transform:capitalize}
-#header #revnumber::after{content:"\00a0"}
-#content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}
-#toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}
-#toc>ul{margin-left:.125em}
-#toc ul.sectlevel0>li>a{font-style:italic}
-#toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}
-#toc ul{font-family:"Open Sans","DejaVu Sans",sans-serif;list-style-type:none}
-#toc li{line-height:1.3334;margin-top:.3334em}
-#toc a{text-decoration:none}
-#toc a:active{text-decoration:underline}
-#toctitle{color:#7a2518;font-size:1.2em}
-@media screen and (min-width:768px){#toctitle{font-size:1.375em}
-body.toc2{padding-left:15em;padding-right:0}
-#toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}
-#toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}
-#toc.toc2>ul{font-size:.9em;margin-bottom:0}
-#toc.toc2 ul ul{margin-left:0;padding-left:1em}
-#toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}
-body.toc2.toc-right{padding-left:0;padding-right:15em}
-body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}
-@media screen and (min-width:1280px){body.toc2{padding-left:20em;padding-right:0}
-#toc.toc2{width:20em}
-#toc.toc2 #toctitle{font-size:1.375em}
-#toc.toc2>ul{font-size:.95em}
-#toc.toc2 ul ul{padding-left:1.25em}
-body.toc2.toc-right{padding-left:0;padding-right:20em}}
-#content #toc{border-style:solid;border-width:1px;border-color:#e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;-webkit-border-radius:4px;border-radius:4px}
-#content #toc>:first-child{margin-top:0}
-#content #toc>:last-child{margin-bottom:0}
-#footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}
-#footer-text{color:rgba(255,255,255,.8);line-height:1.44}
-#content{margin-bottom:.625em}
-.sect1{padding-bottom:.625em}
-@media screen and (min-width:768px){#content{margin-bottom:1.25em}
-.sect1{padding-bottom:1.25em}}
-.sect1:last-child{padding-bottom:0}
-.sect1+.sect1{border-top:1px solid #e7e7e9}
-#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}
-#content h1>a.anchor::before,h2>a.anchor::before,h3>a.anchor::before,#toctitle>a.anchor::before,.sidebarblock>.content>.title>a.anchor::before,h4>a.anchor::before,h5>a.anchor::before,h6>a.anchor::before{content:"\00A7";font-size:.85em;display:block;padding-top:.1em}
-#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}
-#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#ba3925;text-decoration:none}
-#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#a53221}
-details,.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}
-details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}
-.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}
-table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}
-.paragraph.lead>p,#preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}
-table.tableblock #preamble>.sectionbody>[class="paragraph"]:first-of-type p{font-size:inherit}
-.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}
-.admonitionblock>table td.icon{text-align:center;width:80px}
-.admonitionblock>table td.icon img{max-width:none}
-.admonitionblock>table td.icon .title{font-weight:bold;font-family:"Open Sans","DejaVu Sans",sans-serif;text-transform:uppercase}
-.admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}
-.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}
-.exampleblock>.content{border-style:solid;border-width:1px;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;-webkit-border-radius:4px;border-radius:4px}
-.exampleblock>.content>:first-child{margin-top:0}
-.exampleblock>.content>:last-child{margin-bottom:0}
-.sidebarblock{border-style:solid;border-width:1px;border-color:#dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;-webkit-border-radius:4px;border-radius:4px}
-.sidebarblock>:first-child{margin-top:0}
-.sidebarblock>:last-child{margin-bottom:0}
-.sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}
-.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}
-.literalblock pre,.listingblock>.content>pre{-webkit-border-radius:4px;border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}
-@media screen and (min-width:768px){.literalblock pre,.listingblock>.content>pre{font-size:.90625em}}
-@media screen and (min-width:1280px){.literalblock pre,.listingblock>.content>pre{font-size:1em}}
-.literalblock pre,.listingblock>.content>pre:not(.highlight),.listingblock>.content>pre[class="highlight"],.listingblock>.content>pre[class^="highlight "]{background:#f7f7f8}
-.literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}
-.listingblock>.content{position:relative}
-.listingblock code[data-lang]::before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}
-.listingblock:hover code[data-lang]::before{display:block}
-.listingblock.terminal pre .command::before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}
-.listingblock.terminal pre .command:not([data-prompt])::before{content:"$"}
-.listingblock pre.highlightjs{padding:0}
-.listingblock pre.highlightjs>code{padding:1em;-webkit-border-radius:4px;border-radius:4px}
-.listingblock pre.prettyprint{border-width:0}
-.prettyprint{background:#f7f7f8}
-pre.prettyprint .linenums{line-height:1.45;margin-left:2em}
-pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}
-pre.prettyprint li code[data-lang]::before{opacity:1}
-pre.prettyprint li:not(:first-child) code[data-lang]::before{display:none}
-table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}
-table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}
-table.linenotable td.code{padding-left:.75em}
-table.linenotable td.linenos{border-right:1px solid currentColor;opacity:.35;padding-right:.5em}
-pre.pygments .lineno{border-right:1px solid currentColor;opacity:.35;display:inline-block;margin-right:.75em}
-pre.pygments .lineno::before{content:"";margin-right:-.125em}
-.quoteblock{margin:0 1em 1.25em 1.5em;display:table}
-.quoteblock>.title{margin-left:-1.5em;margin-bottom:.75em}
-.quoteblock blockquote,.quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}
-.quoteblock blockquote{margin:0;padding:0;border:0}
-.quoteblock blockquote::before{content:"\201c";float:left;font-size:2.75em;font-weight:bold;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}
-.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}
-.quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}
-.verseblock{margin:0 1em 1.25em}
-.verseblock pre{font-family:"Open Sans","DejaVu Sans",sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}
-.verseblock pre strong{font-weight:400}
-.verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}
-.quoteblock .attribution,.verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}
-.quoteblock .attribution br,.verseblock .attribution br{display:none}
-.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}
-.quoteblock.abstract blockquote::before,.quoteblock.excerpt blockquote::before,.quoteblock .quoteblock blockquote::before{display:none}
-.quoteblock.abstract blockquote,.quoteblock.abstract p,.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{line-height:1.6;word-spacing:0}
-.quoteblock.abstract{margin:0 1em 1.25em;display:block}
-.quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}
-.quoteblock.excerpt,.quoteblock .quoteblock{margin:0 0 1.25em;padding:0 0 .25em 1em;border-left:.25em solid #dddddf}
-.quoteblock.excerpt blockquote,.quoteblock.excerpt p,.quoteblock .quoteblock blockquote,.quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}
-.quoteblock.excerpt .attribution,.quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}
-table.tableblock{max-width:100%;border-collapse:separate}
-p.tableblock:last-child{margin-bottom:0}
-td.tableblock>.content>:last-child{margin-bottom:-1.25em}
-td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}
-table.tableblock,th.tableblock,td.tableblock{border:0 solid #dedede}
-table.grid-all>thead>tr>.tableblock,table.grid-all>tbody>tr>.tableblock{border-width:0 1px 1px 0}
-table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}
-table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}
-table.grid-rows>thead>tr>.tableblock,table.grid-rows>tbody>tr>.tableblock{border-width:0 0 1px}
-table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}
-table.grid-all>*>tr>.tableblock:last-child,table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}
-table.grid-all>tbody>tr:last-child>.tableblock,table.grid-all>thead:last-child>tr>.tableblock,table.grid-rows>tbody>tr:last-child>.tableblock,table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}
-table.frame-all{border-width:1px}
-table.frame-sides{border-width:0 1px}
-table.frame-topbot,table.frame-ends{border-width:1px 0}
-table.stripes-all tr,table.stripes-odd tr:nth-of-type(odd),table.stripes-even tr:nth-of-type(even),table.stripes-hover tr:hover{background:#f8f8f7}
-th.halign-left,td.halign-left{text-align:left}
-th.halign-right,td.halign-right{text-align:right}
-th.halign-center,td.halign-center{text-align:center}
-th.valign-top,td.valign-top{vertical-align:top}
-th.valign-bottom,td.valign-bottom{vertical-align:bottom}
-th.valign-middle,td.valign-middle{vertical-align:middle}
-table thead th,table tfoot th{font-weight:bold}
-tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}
-tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:rgba(0,0,0,.8);font-weight:bold}
-p.tableblock>code:only-child{background:none;padding:0}
-p.tableblock{font-size:1em}
-ol{margin-left:1.75em}
-ul li ol{margin-left:1.5em}
-dl dd{margin-left:1.125em}
-dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}
-ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:.625em}
-ul.checklist,ul.none,ol.none,ul.no-bullet,ol.no-bullet,ol.unnumbered,ul.unstyled,ol.unstyled{list-style-type:none}
-ul.no-bullet,ol.no-bullet,ol.unnumbered{margin-left:.625em}
-ul.unstyled,ol.unstyled{margin-left:0}
-ul.checklist{margin-left:.625em}
-ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}
-ul.checklist li>p:first-child>input[type="checkbox"]:first-child{margin-right:.25em}
-ul.inline{display:-ms-flexbox;display:-webkit-box;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}
-ul.inline>li{margin-left:1.25em}
-.unstyled dl dt{font-weight:400;font-style:normal}
-ol.arabic{list-style-type:decimal}
-ol.decimal{list-style-type:decimal-leading-zero}
-ol.loweralpha{list-style-type:lower-alpha}
-ol.upperalpha{list-style-type:upper-alpha}
-ol.lowerroman{list-style-type:lower-roman}
-ol.upperroman{list-style-type:upper-roman}
-ol.lowergreek{list-style-type:lower-greek}
-.hdlist>table,.colist>table{border:0;background:none}
-.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}
-td.hdlist1,td.hdlist2{vertical-align:top;padding:0 .625em}
-td.hdlist1{font-weight:bold;padding-bottom:1.25em}
-.literalblock+.colist,.listingblock+.colist{margin-top:-.5em}
-.colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}
-.colist td:not([class]):first-child img{max-width:none}
-.colist td:not([class]):last-child{padding:.25em 0}
-.thumb,.th{line-height:0;display:inline-block;border:solid 4px #fff;-webkit-box-shadow:0 0 0 1px #ddd;box-shadow:0 0 0 1px #ddd}
-.imageblock.left{margin:.25em .625em 1.25em 0}
-.imageblock.right{margin:.25em 0 1.25em .625em}
-.imageblock>.title{margin-bottom:0}
-.imageblock.thumb,.imageblock.th{border-width:6px}
-.imageblock.thumb>.title,.imageblock.th>.title{padding:0 .125em}
-.image.left,.image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}
-.image.left{margin-right:.625em}
-.image.right{margin-left:.625em}
-a.image{text-decoration:none;display:inline-block}
-a.image object{pointer-events:none}
-sup.footnote,sup.footnoteref{font-size:.875em;position:static;vertical-align:super}
-sup.footnote a,sup.footnoteref a{text-decoration:none}
-sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}
-#footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}
-#footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}
-#footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}
-#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none;margin-left:-1.05em}
-#footnotes .footnote:last-of-type{margin-bottom:0}
-#content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}
-.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}
-.gist .file-data>table td.line-data{width:99%}
-div.unbreakable{page-break-inside:avoid}
-.big{font-size:larger}
-.small{font-size:smaller}
-.underline{text-decoration:underline}
-.overline{text-decoration:overline}
-.line-through{text-decoration:line-through}
-.aqua{color:#00bfbf}
-.aqua-background{background:#00fafa}
-.black{color:#000}
-.black-background{background:#000}
-.blue{color:#0000bf}
-.blue-background{background:#0000fa}
-.fuchsia{color:#bf00bf}
-.fuchsia-background{background:#fa00fa}
-.gray{color:#606060}
-.gray-background{background:#7d7d7d}
-.green{color:#006000}
-.green-background{background:#007d00}
-.lime{color:#00bf00}
-.lime-background{background:#00fa00}
-.maroon{color:#600000}
-.maroon-background{background:#7d0000}
-.navy{color:#000060}
-.navy-background{background:#00007d}
-.olive{color:#606000}
-.olive-background{background:#7d7d00}
-.purple{color:#600060}
-.purple-background{background:#7d007d}
-.red{color:#bf0000}
-.red-background{background:#fa0000}
-.silver{color:#909090}
-.silver-background{background:#bcbcbc}
-.teal{color:#006060}
-.teal-background{background:#007d7d}
-.white{color:#bfbfbf}
-.white-background{background:#fafafa}
-.yellow{color:#bfbf00}
-.yellow-background{background:#fafa00}
-span.icon>.fa{cursor:default}
-a span.icon>.fa{cursor:inherit}
-.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}
-.admonitionblock td.icon .icon-note::before{content:"\f05a";color:#19407c}
-.admonitionblock td.icon .icon-tip::before{content:"\f0eb";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}
-.admonitionblock td.icon .icon-warning::before{content:"\f071";color:#bf6900}
-.admonitionblock td.icon .icon-caution::before{content:"\f06d";color:#bf3400}
-.admonitionblock td.icon .icon-important::before{content:"\f06a";color:#bf0000}
-.conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans","DejaVu Sans",sans-serif;font-style:normal;font-weight:bold}
-.conum[data-value] *{color:#fff!important}
-.conum[data-value]+b{display:none}
-.conum[data-value]::after{content:attr(data-value)}
-pre .conum[data-value]{position:relative;top:-.125em}
-b.conum *{color:inherit!important}
-.conum:not([data-value]):empty{display:none}
-dt,th.tableblock,td.content,div.footnote{text-rendering:optimizeLegibility}
-h1,h2,p,td.content,span.alt{letter-spacing:-.01em}
-p strong,td.content strong,div.footnote strong{letter-spacing:-.005em}
-p,blockquote,dt,td.content,span.alt{font-size:1.0625rem}
-p{margin-bottom:1.25rem}
-.sidebarblock p,.sidebarblock dt,.sidebarblock td.content,p.tableblock{font-size:1em}
-.exampleblock>.content{background:#fffef7;border-color:#e0e0dc;-webkit-box-shadow:0 1px 4px #e0e0dc;box-shadow:0 1px 4px #e0e0dc}
-.print-only{display:none!important}
-@page{margin:1.25cm .75cm}
-@media print{*{-webkit-box-shadow:none!important;box-shadow:none!important;text-shadow:none!important}
-html{font-size:80%}
-a{color:inherit!important;text-decoration:underline!important}
-a.bare,a[href^="#"],a[href^="mailto:"]{text-decoration:none!important}
-a[href^="http:"]:not(.bare)::after,a[href^="https:"]:not(.bare)::after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}
-abbr[title]::after{content:" (" attr(title) ")"}
-pre,blockquote,tr,img,object,svg{page-break-inside:avoid}
-thead{display:table-header-group}
-svg{max-width:100%}
-p,blockquote,dt,td.content{font-size:1em;orphans:3;widows:3}
-h2,h3,#toctitle,.sidebarblock>.content>.title{page-break-after:avoid}
-#toc,.sidebarblock,.exampleblock>.content{background:none!important}
-#toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}
-body.book #header{text-align:center}
-body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}
-body.book #header .details{border:0!important;display:block;padding:0!important}
-body.book #header .details span:first-child{margin-left:0!important}
-body.book #header .details br{display:block}
-body.book #header .details br+span::before{content:none!important}
-body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}
-body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-break-before:always}
-.listingblock code[data-lang]::before{display:block}
-#footer{padding:0 .9375em}
-.hide-on-print{display:none!important}
-.print-only{display:block!important}
-.hide-for-print{display:none!important}
-.show-for-print{display:inherit!important}}
-@media print,amzn-kf8{#header>h1:first-child{margin-top:1.25rem}
-.sect1{padding:0!important}
-.sect1+.sect1{border:0}
-#footer{background:none}
-#footer-text{color:rgba(0,0,0,.6);font-size:.9em}}
-@media amzn-kf8{#header,#content,#footnotes,#footer{padding:0}}
-
-      </style>
-      <link href='https://fonts.googleapis.com/css?family=Noto+Serif' rel='stylesheet' type='text/css'>
-      <link href='https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic' rel='stylesheet' type='text/css'>
-      <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
-      <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/styles/default.min.css">
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/highlight.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/asciidoc.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/yaml.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/dockerfile.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/makefile.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/go.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/rust.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/haskell.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/typescript.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/scss.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/less.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/handlebars.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/groovy.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/scala.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/bash.min.js"></script>
-      <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/languages/ini.min.js"></script>
-      <script>hljs.initHighlightingOnLoad();</script>
-    </head>
-    <body>
-      <div id="wrapper">
-        <div class="article">
-          <h1 id="__asciidoctor-preview-0__">openKonsequenz - Architecture of the module 'Grid Failure Information'</h1>
-<div id="preamble">
-<div class="sectionbody">
-<div style="page-break-after: always;"></div>
-<div id="__asciidoctor-preview-2__" class="paragraph">
-<p>Based on the ARC42-Template (v7.0):</p>
-</div>
-<div id="__asciidoctor-preview-3__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-4__">
-<p>Version: 0.1</p>
-</li>
-<li id="__asciidoctor-preview-5__">
-<p>Date: 24.03.2020</p>
-</li>
-<li id="__asciidoctor-preview-6__">
-<p>Status: Inital Draft</p>
-</li>
-</ul>
-</div>
-<div style="page-break-after: always;"></div>
-<!-- toc disabled -->
-<div style="page-break-after: always;"></div>
-</div>
-<div id="toc" class="toc">
-<div id="toctitle">Table of Contents</div>
-<ul class="sectlevel1">
-<li><a href="#_introduction_and_goals">1. Introduction and Goals</a>
-<ul class="sectlevel2">
-<li><a href="#_requirements_overview">1.1. Requirements Overview</a></li>
-<li><a href="#_quality_goals">1.2. Quality Goals</a></li>
-<li><a href="#_stakeholders">1.3. Stakeholders</a></li>
-</ul>
-</li>
-<li><a href="#_architecture_constraints">2. Architecture Constraints</a>
-<ul class="sectlevel2">
-<li><a href="#_technical_constraints">2.1. Technical Constraints</a></li>
-<li><a href="#_technical_dependencies">2.2. Technical Dependencies</a></li>
-</ul>
-</li>
-<li><a href="#_system_scope_and_context">3. System Scope and Context</a>
-<ul class="sectlevel2">
-<li><a href="#_business_context">3.1. Business Context</a></li>
-<li><a href="#_technical_context">3.2. Technical Context</a></li>
-<li><a href="#_solution_strategy">3.3. Solution Strategy</a></li>
-</ul>
-</li>
-<li><a href="#_building_block_view">4. Building Block View</a>
-<ul class="sectlevel2">
-<li><a href="#_whitebox_overall_system">4.1. Whitebox Overall System</a></li>
-<li><a href="#_level_2">4.2. Level 2</a></li>
-</ul>
-</li>
-<li><a href="#_runtime_view">5. Runtime view</a>
-<ul class="sectlevel2">
-<li><a href="#_login_authentication">5.1. Login / authentication</a></li>
-<li><a href="#_deployment_of_the_application_components">5.2. Deployment of the application components</a></li>
-<li><a href="#_ci_and_cd_components">5.3. CI- and CD-Components</a></li>
-<li><a href="#_continuous_deployment">5.4. Continuous deployment</a></li>
-</ul>
-</li>
-<li><a href="#_design_decisions">6. Design decisions</a></li>
-<li><a href="#_risks_and_technical_debts">7. Risks and Technical Debts</a></li>
-<li><a href="#_glossary">8. Glossary</a></li>
-</ul>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_introduction_and_goals"><a class="anchor" href="#_introduction_and_goals"></a>1. Introduction and Goals</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="_requirements_overview"><a class="anchor" href="#_requirements_overview"></a>1.1. Requirements Overview</h3>
-<div id="__asciidoctor-preview-10__" class="paragraph">
-<p>The module 'Grid Failure Information' (in German: Modul 'Störungsinformationstool')
-informs employees and customers about failures and planned interruptions of supply.
-The module realizes the whole process from the creation of a failure information,
-via the publication until the closure of the failure information.</p>
-</div>
-<div id="__asciidoctor-preview-11__" class="paragraph">
-<p>It supports the user by the acquisition of data and leads the user through
-the workflow for processing a failure information.</p>
-</div>
-<div id="__asciidoctor-preview-12__" class="paragraph">
-<p>The module has many interfaces to other modules and external systems.</p>
-</div>
-<div id="__asciidoctor-preview-13__" class="paragraph">
-<p>The full requirements of the module 'Grid Failure Information'  is described in the document</p>
-</div>
-<div id="__asciidoctor-preview-14__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-15__">
-<p>"Anforderungsspezifikation Modul Störungsinformationstool" version 1.3 / 31-07-2019.</p>
-</li>
-</ul>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_quality_goals"><a class="anchor" href="#_quality_goals"></a>1.2. Quality Goals</h3>
-<div id="__asciidoctor-preview-16__" class="paragraph">
-<p>The module 'Grid Failure Information' represents a user module that is based on the architecture platform of openKONSEQUENZ. The main quality
-goals of the platform are:</p>
-</div>
-<div id="__asciidoctor-preview-17__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-18__">
-<p><strong>Flexibility</strong> The reference platform shall grant that different systems and modules from different vendors/developers can interact and interoperate, and may be exchanged or recombined.</p>
-</li>
-<li id="__asciidoctor-preview-19__">
-<p><strong>Availability</strong> All platform modules that are running on the platform can only be as available as the platform same for user modules that are based on platform modules.</p>
-</li>
-<li id="__asciidoctor-preview-20__">
-<p><strong>Maintainability</strong> (and testability as part of maintainability)  The platform and its platform modules shall be used longer than 15 years.</p>
-</li>
-<li id="__asciidoctor-preview-21__">
-<p><strong>Integration performance</strong> New implemented functionality of oK own modules and external modules shall be included fast / automatically.</p>
-</li>
-<li id="__asciidoctor-preview-22__">
-<p><strong>Security</strong> The platform and its modules need to underly security-by-design</p>
-</li>
-</ul>
-</div>
-<div id="__asciidoctor-preview-23__" class="paragraph">
-<p>The main quality goals of the core module Contact Base Data are:</p>
-</div>
-<div id="__asciidoctor-preview-24__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-25__">
-<p><strong>Functionality</strong> The core module must fulfil the functional requirements mentioned in the section before</p>
-</li>
-<li id="__asciidoctor-preview-26__">
-<p><strong>Ergonomics</strong> The web interface must be realized according to oK-GUI-Styleguide.</p>
-</li>
-<li id="__asciidoctor-preview-27__">
-<p><strong>Good documentation</strong> (i.e. code and architecture documentation) makes code changes easier and automatic
-tests facilitate rigorous verification.</p>
-</li>
-<li id="__asciidoctor-preview-28__">
-<p><strong>Modifiability</strong> (and testability as part of modifiability)</p>
-</li>
-<li id="__asciidoctor-preview-29__">
-<p><strong>Integration performance</strong> The core module must be easy integratable in different production environments.</p>
-</li>
-</ul>
-</div>
-<div id="__asciidoctor-preview-30__" class="paragraph">
-<p>The following documents contain the quality goals in detail:</p>
-</div>
-<div id="__asciidoctor-preview-31__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-32__">
-<p>Architecture Committee Handbook v1.6.0 from 10-07-2019</p>
-</li>
-<li id="__asciidoctor-preview-33__">
-<p>Quality Committee Handbook v2.0.1 from 15-10-2018</p>
-</li>
-</ul>
-</div>
-<div id="__asciidoctor-preview-34__" class="paragraph">
-<p>The architecture is based on the AC-Handbook. The quality demands are described in the QC-Handbook.
-Both specifications were fully complied with in the project, so that a high quality is given.</p>
-</div>
-<div id="__asciidoctor-preview-35__" class="paragraph">
-<p>The code quality regarding static code analysis and unit test code coverage on the backend and fronend sides
-are ensured by the use of sonarqube. The rule set and the qualtity gate are defined by the default, the
-so called "sonar way".</p>
-</div>
-<div id="__asciidoctor-preview-36__" class="paragraph">
-<p>The module 'Grid Failure Information' is part of the Eclipse project 'Eclipse openK User Modules'.
-This project bases on the Eclipse Public Licence 2.0.</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_stakeholders"><a class="anchor" href="#_stakeholders"></a>1.3. Stakeholders</h3>
-<table id="__asciidoctor-preview-37__" class="tableblock frame-all grid-all stretch">
-<caption class="title">Table 1. Stakeholders</caption>
-<colgroup>
-<col style="width: 33.3333%;">
-<col style="width: 33.3333%;">
-<col style="width: 33.3334%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Role/Name</th>
-<th class="tableblock halign-left valign-top">Contact</th>
-<th class="tableblock halign-left valign-top">Expectations</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Product Owner (represents the Distribution System Operators)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Maike Salbeck, Carsten Otten, Benedikt Herget, Rainer Fuhrmann</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The software must fulfil their functional and nonfunctional requirements.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Module Developer</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Michel Alessandrini, Jonas Tewolde, Frank Dietrich</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">All relevant business and technical information must be available for implementing the software.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">External Reviewer (represents the AC/QC)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">n.n.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The software and the documentation is realized according to the Quality and Architecture Handbook of openKONSEQUENZ.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">External Reviewer (represents the Eclipse-Requirements)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">n.n.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">The software is  licensed under the EPL 2.0. It must be validated that all requirements are fulfilled.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">System Integrator</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">n.n.</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">A documentation for the integration of the module in the DSO specific environments must be available.</p></td>
-</tr>
-</tbody>
-</table>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_architecture_constraints"><a class="anchor" href="#_architecture_constraints"></a>2. Architecture Constraints</h2>
-<div class="sectionbody">
-<div id="__asciidoctor-preview-57__" class="paragraph">
-<p>The main architecture constraints are:</p>
-</div>
-<div id="__asciidoctor-preview-58__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-59__">
-<p><strong>Public License</strong> The module must be available under the “Eclipse Public License 2.0”.</p>
-</li>
-<li id="__asciidoctor-preview-60__">
-<p><strong>Standardization</strong> The module must use the reference platform.</p>
-</li>
-<li id="__asciidoctor-preview-61__">
-<p><strong>Availability</strong> The source code of the module must be accessible to any interested person/company.</p>
-</li>
-</ul>
-</div>
-<div id="__asciidoctor-preview-62__" class="paragraph">
-<p>Therefore the project is published under the following repositories:</p>
-</div>
-<div id="__asciidoctor-preview-63__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-64__">
-<p><a href="https://git.eclipse.org/r/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.backend" class="bare">https://git.eclipse.org/r/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.backend</a></p>
-</li>
-<li id="__asciidoctor-preview-65__">
-<p><a href="https://git.eclipse.org/r/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.frontend" class="bare">https://git.eclipse.org/r/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.frontend</a></p>
-</li>
-<li id="__asciidoctor-preview-66__">
-<p><a href="https://git.eclipse.org/r/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.documentation" class="bare">https://git.eclipse.org/r/openk-usermodules/org.eclipse.openk-usermodules.gridFailureInformation.documentation</a></p>
-</li>
-</ul>
-</div>
-<div class="sect2">
-<h3 id="_technical_constraints"><a class="anchor" href="#_technical_constraints"></a>2.1. Technical Constraints</h3>
-<div id="__asciidoctor-preview-67__" class="paragraph">
-<p>The following technical constraints are given:</p>
-</div>
-<table id="__asciidoctor-preview-68__" class="tableblock frame-all grid-all stretch">
-<caption class="title">Table 2. Technical Contraints</caption>
-<colgroup>
-<col style="width: 50%;">
-<col style="width: 50%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Component</th>
-<th class="tableblock halign-left valign-top">Constraints</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Base components of the reference platform</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Application Server Tomcat</p>
-</li>
-<li>
-<p>JPA EclipseLink</p>
-</li>
-<li>
-<p>Database PostgreSQL</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Programming language frontend</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Angular</p>
-</li>
-<li>
-<p>Bootstrap</p>
-</li>
-<li>
-<p>jQuery</p>
-</li>
-<li>
-<p>REST/JSON Interfaces</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">GUI design</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>According to oK-GUI-Styleguide</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Java QA environment</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Sonarqube 5.6.6</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Programming language</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Backend: Java 1.8</p>
-</li>
-<li>
-<p>Frontend: Angular 7+ (Javascript, Typescript, HTML5, CSS3)</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">IDE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Not restricted (Eclipse, IntelliJ, Microsoft Developer Studio, Microsoft Visual Code &#8230;&#8203;)</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Build system</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Backend: Maven</p>
-</li>
-<li>
-<p>Frontend: NodeJS + Angular/cli</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Libraries, frameworks, components</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>Used Libraries/Frameworks have to be compatible to the Eclipse Public License</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Architecture Documentation</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"><div class="ulist">
-<ul>
-<li>
-<p>According ARC42-Template</p>
-</li>
-</ul>
-</div></div></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect2">
-<h3 id="_technical_dependencies"><a class="anchor" href="#_technical_dependencies"></a>2.2. Technical Dependencies</h3>
-<div class="sect3">
-<h4 id="_modules"><a class="anchor" href="#_modules"></a>2.2.1. Modules</h4>
-<div id="__asciidoctor-preview-89__" class="paragraph">
-<p>The following modules are required to use the 'Grid Failure Information':</p>
-</div>
-<table id="__asciidoctor-preview-90__" class="tableblock frame-all grid-all stretch">
-<caption class="title">Table 3. Modules</caption>
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 25%;">
-<col style="width: 25%;">
-<col style="width: 25%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Name of the module</th>
-<th class="tableblock halign-left valign-top">Purpose</th>
-<th class="tableblock halign-left valign-top">Status of the module</th>
-<th class="tableblock halign-left valign-top">status</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">'Auth&amp;Auth'</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Authentification and Authorization</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">available</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">required</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">'Contact base data'</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Contact Base Data</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">available</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">required</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">'eLogbook'</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Log Book</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">available</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">optional</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">'Planned Grid Measures'</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Planned Grid Measures</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">available</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">optional</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">'CIM-Cache'</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Interface to the SCADA system</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">available</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">optional</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-<div class="sect3">
-<h4 id="_libraries"><a class="anchor" href="#_libraries"></a>2.2.2. Libraries</h4>
-<div id="__asciidoctor-preview-115__" class="paragraph">
-<p>The following libraries are used:
-TODO: Am Ende die Bibliotheken aktualisieren</p>
-</div>
-<table id="__asciidoctor-preview-116__" class="tableblock frame-all grid-all stretch">
-<caption class="title">Table 4. Libraries</caption>
-<colgroup>
-<col style="width: 16.6666%;">
-<col style="width: 16.6666%;">
-<col style="width: 16.6666%;">
-<col style="width: 16.6666%;">
-<col style="width: 16.6666%;">
-<col style="width: 16.667%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Name of the library</th>
-<th class="tableblock halign-left valign-top">Version</th>
-<th class="tableblock halign-left valign-top">Artefact-id</th>
-<th class="tableblock halign-left valign-top">Usage</th>
-<th class="tableblock halign-left valign-top">License</th>
-<th class="tableblock halign-left valign-top">Tier</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-starter-parent</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-starter-data-jpa</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-starter-oauth2-client</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-starter-security</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-starter-web</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.flywaydb.flyway-core</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">6.0.8</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.cloud.spring-cloud-starter-openfeign</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.0.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.cloud.spring-cloud-starter-netflix-ribbon</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.0.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.keycloak.keycloak-core</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">3.4.2_Final</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.postgresql.postgresql</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">42.2.8</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">New BSD License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.projectlombok.lombok</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.18.10</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.mapstruct.mapstruct-processor</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0.Final</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">io.jsonwebtoken.jjwt</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">0.9.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">io.springfox.springfox-swagger2</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.9.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">io.springfox.springfox-swagger-ui</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.9.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-starter-test</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.security.spring-security-test</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">5.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.powermock.powermock-reflect</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.0.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">com.h2database.h2</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.4.200</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">EPL</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.cloud.spring-cloud-dependencies</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Hoxton.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.springframework.boot.spring-boot-maven-plugin</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.2.1.RELEASE</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.jacoco.jacoco-maven-plugin</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">0.7.9</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">EPL 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.sonarsource.scanner.maven.sonar-maven-plugin</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">3.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">LGPL 3.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.asciidoctor.asciidoctor-maven-plugin</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.5.3</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache License 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.jruby.jruby-complete</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">9.0.0.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">EPL 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.asciidoctor.asciidoctorj-pdf</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.5.0-alpha.11</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.asciidoctor.asciidoctorj</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.5.4</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.asciidoctor.asciidoctorj-pdf</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.5.0-alpha.11</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">org.asciidoctor.asciidoctorj-diagram</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.5.4.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache 2.0</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Backend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Angular Font Awesome</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">3.1.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@auth0/angular-jwt</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">3.0.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">font-awesome</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">4.7.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ngrx/core</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ngrx/effects</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8-2-0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ngrx/store</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8.3.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ngrx/store-devtools</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">8.2.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ngx-translate/core</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">11.0.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ngx-translate/http-loader</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">4.0.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ag-grid-angular</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">21.2.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ag-grid-community</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">21.2.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">angular2-notifications</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.0.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">bootstrap</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">4.4.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">jquery</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">3.4.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">classlist.js</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.20150312</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">core-js</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">3.2.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">moment</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.24.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ng2-popover</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">0.0.14</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ngrx-forms</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">5.2.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">npm-install-peers</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.2.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">reselect</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">4.0.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">rxjs</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">6.5.3</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">rxjs-compat</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">6.5.4</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ts-helpers</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.1.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">tslib</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.10.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">web-animations-js</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.3.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">zone.js</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">0.10.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@swimlane/ngx-datatable</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">15.0.2</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">puppeteer</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">2.0.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ngx-toastr</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">11.2.1</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">popper.js</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">1.16.0</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">@ng-bootstrap</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">5.1.5</p></td>
-<td class="tableblock halign-left valign-top"><div class="content"></div></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">MIT License</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Frontend</p></td>
-</tr>
-</tbody>
-</table>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_system_scope_and_context"><a class="anchor" href="#_system_scope_and_context"></a>3. System Scope and Context</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="_business_context"><a class="anchor" href="#_business_context"></a>3.1. Business Context</h3>
-<div id="__asciidoctor-preview-490__" class="paragraph">
-<p>The core module 'Grid Failure Information' communicates via Restful Webservices with the follwowing modules:</p>
-</div>
-<div id="__asciidoctor-preview-491__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-492__">
-<p><strong>Core Module 'Auth &amp; Auth'</strong> The 'Grid Failure Information' can only be used by authorized users.
-Therefore, it is essential to invoke the module 'Auth &amp; Auth' for authorization and authentication
-purposes.</p>
-</li>
-<li id="__asciidoctor-preview-493__">
-<p><strong>Core Module 'Contact base data'</strong> The user management can only by done by the module contact base data.
-Therefore, it is essential to user the module ''Contact base data' for managing all users and customers.</p>
-</li>
-<li id="__asciidoctor-preview-494__">
-<p><strong>Core Module 'CIM-Cache'</strong> The 'Grid Failure Information' can only communicate via the CIM-Cachewith the SCADA system .
-Therefore, it is essential to invoke the module 'CIM-Cache' for getting information from the SCADA system.</p>
-</li>
-<li id="__asciidoctor-preview-495__">
-<p><strong>User Module 'eLogbook'</strong> The 'Grid Failure Information' can import failure information from the module 'eLogbook'.</p>
-</li>
-<li id="__asciidoctor-preview-496__">
-<p><strong>User Module 'Planned Grid Measures'</strong> The 'Grid Failure Information' can import failure information from the module 'Planned Grid Measures'.</p>
-</li>
-</ul>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_technical_context"><a class="anchor" href="#_technical_context"></a>3.2. Technical Context</h3>
-<div id="__asciidoctor-preview-497__" class="paragraph">
-<p>The following aspects have to be taken into account for external communication of the module 'Grid Failure Information':</p>
-</div>
-<div id="__asciidoctor-preview-498__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-499__">
-<p>RESTful web services are used as interface-technology.</p>
-</li>
-<li id="__asciidoctor-preview-500__">
-<p>Each external interface (interfaces between modules or external systems) has to be documented.</p>
-</li>
-<li id="__asciidoctor-preview-501__">
-<p>Dependencies of modules to services realized by other modules have to be specified and documented explicitly.</p>
-</li>
-</ul>
-</div>
-<div id="__asciidoctor-preview-502__" class="paragraph">
-<p>The interfaces of the module 'Grid Failure Information' are described in the interface documentation.
-TODO: Link zur interface documentation einfügen</p>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_solution_strategy"><a class="anchor" href="#_solution_strategy"></a>3.3. Solution Strategy</h3>
-<div id="__asciidoctor-preview-503__" class="paragraph">
-<p>The module 'Grid Failure Information' bases on a small microservice architecture, including
-an asynchronous messaging system.</p>
-</div>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_building_block_view"><a class="anchor" href="#_building_block_view"></a>4. Building Block View</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="_whitebox_overall_system"><a class="anchor" href="#_whitebox_overall_system"></a>4.1. Whitebox Overall System</h3>
-<div id="__asciidoctor-preview-505__" class="paragraph">
-<p>The module 'grid failure information' contains several components:</p>
-</div>
-<div id="__asciidoctor-preview-506__" class="olist arabic">
-<ol class="arabic">
-<li id="__asciidoctor-preview-507__">
-<p><strong>SIT-Web-FE</strong> - This component (SPA with Angular) provides two HTML pages: a table and a map
-with failure information. This component is in the DMZ and can be called up from the Internet.</p>
-</li>
-<li id="__asciidoctor-preview-508__">
-<p><strong>SIT-Web-Guard</strong> - The SIT-Web-Guard (Java Spring Cloud) is a Zuul proxy
-(API gateway) that only forwards explicitly configured services. For the failure information
-tool, only certain services are available on the Internet that do not require authentication.
-Since the SIT-BE is protected by Spring Security, the SIT-Web-Guard procures guest authentication for forwarding.</p>
-</li>
-<li id="__asciidoctor-preview-509__">
-<p><strong>SIT-FE</strong> -
-This component (SPA with Angular) provides the user interface for the failure information application. The SIT-FE
-receives its authentication when it is called from the PortalFE in the form of a JWT.</p>
-</li>
-<li id="__asciidoctor-preview-510__">
-<p><strong>SIT_BE</strong> - The SIT-BE (Java Spring Boot Microservice) provides all CRUD services in the form of
-ReST services that the two frontends require. The SIT-BE is the only component that has
-access to the database. Every call is authorized against the PortalBE. This microservice also includes
-the JobManager subcomponent.</p>
-</li>
-<li id="__asciidoctor-preview-511__">
-<p><strong>JobManager</strong> - The various imports and exports are controlled via the JobManager. The JobManager
-knows all available import and export jobs and can control them via the internal message bus
-(RabbitMQ internal). Because the communication between the JobManager and the jobs takes place
-via the message bus, the JM does not need to know their configuration and URLs. For this, the JM must
-ensure synchronization (incl. timeout behavior) for asynchronous message communication.</p>
-</li>
-<li id="__asciidoctor-preview-512__">
-<p><strong>Import- and export jobs</strong> - All jobs provide a uniform (MessageBus) interface to start a job,
-return the result of a job, or to provide information about the respective job (name, version, timeout, status, etc.).
-The job manager cyclically requests all configured jobs to send current status information to it.
-The interfaces of the individual jobs "outside" can be very different (file system, Internet, message queue, etc.)</p>
-</li>
-</ol>
-</div>
-<div id="__asciidoctor-preview-513__" class="imageblock">
-<div class="content">
-<img src="../img/architectureSIT.png" alt="architectureSIT">
-</div>
-<div class="title">Figure 1. Architecture of the grid failure information tool</div>
-</div>
-<div id="__asciidoctor-preview-514__" class="paragraph">
-<p>TODO: Ab hier komplett überarbeiten</p>
-</div>
-<div class="sect3">
-<h4 id="_contactbasedatafe"><a class="anchor" href="#_contactbasedatafe"></a>4.1.1. contactBaseDataFE</h4>
-<div id="__asciidoctor-preview-515__" class="paragraph">
-<p>This component implements the presentation logic for the <strong>contact-base-data</strong>-module using the <strong>Angular</strong>-TypeScript
-framework. The Frontend is a so called <strong>Single Page Application</strong> (SPA) because
-it behaves like a single HTML-page.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_contact_base_data_jar_backend_tier"><a class="anchor" href="#_contact_base_data_jar_backend_tier"></a>4.1.2. contact-base-data.jar (backend tier)</h4>
-<div id="__asciidoctor-preview-516__" class="paragraph">
-<p>This component implements the business functionality of the contact base data. And it provides services, that the
-contactBaseDataFE can use the functions in the frontend.</p>
-</div>
-<div id="__asciidoctor-preview-517__" class="paragraph">
-<p>The "spring boot/spring cloud" framework is used to implement this application.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_contactbasedatadev_db_database_tier"><a class="anchor" href="#_contactbasedatadev_db_database_tier"></a>4.1.3. ContactBaseDataDev-DB (Database tier)</h4>
-<div id="__asciidoctor-preview-518__" class="paragraph">
-<p>This component stores the data of the contact base data. It provides an interface to the contact-base-data.jar to create or
-change data in the database.</p>
-</div>
-<div id="__asciidoctor-preview-519__" class="paragraph">
-<p>The ContactBaseDataDev-DB runs on a Postgres DBMS.
-(The decision to use the Postgres DBMS was made by the openKONSEQUENZ architecture committee)</p>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_level_2"><a class="anchor" href="#_level_2"></a>4.2. Level 2</h3>
-<div class="sect3">
-<h4 id="_contactbasedatafe_frontend_tier"><a class="anchor" href="#_contactbasedatafe_frontend_tier"></a>4.2.1. ContactBaseDataFE (frontend tier)</h4>
-<div id="__asciidoctor-preview-520__" class="paragraph">
-<p>The frontend component implements the concept of a single-page application (SPA). The framework used is Angular5.</p>
-</div>
-<div id="__asciidoctor-preview-521__" class="paragraph">
-<p>It divides the contactBaseDataFE into three layers:</p>
-</div>
-<div id="__asciidoctor-preview-522__" class="olist arabic">
-<ol class="arabic">
-<li id="__asciidoctor-preview-523__">
-<p><strong>Components</strong> - The components (pages, lists, dialogs, common comp.) represent the presentation layer and the control layer. A component contains the control logic (.ts-file), an HTML-fragment as presentation description (.html-file) and a style definition (.css-file).</p>
-</li>
-<li id="__asciidoctor-preview-524__">
-<p><strong>Services</strong> - The service component communicates with the interfaces of the backend via HTTP requests by using the model component.</p>
-</li>
-<li id="__asciidoctor-preview-525__">
-<p><strong>Model</strong> - The model corresponds to the view-model of the backend tier.</p>
-</li>
-</ol>
-</div>
-<div id="__asciidoctor-preview-526__" class="listingblock">
-<div class="title">Frontend tier</div>
-<div class="content">
-<pre>node contactBaseData_Frontend  {
-    component Model
-
-
-    node Components {
-        component "Pages"
-        component Lists
-        component "Common Components"
-    }
-
-    component Services
-
-    Components --&gt; Services
-    Components --&gt; Model
-    Services --&gt; Model
-}
-
-node "Contact Base Data Backend (simplified)" {
-    component RestService
-    component ViewModel_API__DTO
-}
-
-Services .. RestService
-Model .. ViewModel_API__DTO
-RestService --&gt; ViewModel_API__DTO</pre>
-</div>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_contact_base_data_jar_backend_tier_2"><a class="anchor" href="#_contact_base_data_jar_backend_tier_2"></a>4.2.2. contact-base-data.jar (backend tier)</h4>
-<div id="__asciidoctor-preview-527__" class="paragraph">
-<p>The backend tier contains five components which can be summarized in three layers:</p>
-</div>
-<div id="__asciidoctor-preview-528__" class="olist arabic">
-<ol class="arabic">
-<li id="__asciidoctor-preview-529__">
-<p><strong>Presentation layer</strong> - Represented by</p>
-<div id="__asciidoctor-preview-530__" class="olist loweralpha">
-<ol class="loweralpha" type="a">
-<li id="__asciidoctor-preview-531__">
-<p>REST-Srv</p>
-</li>
-<li id="__asciidoctor-preview-532__">
-<p>View model/DTO</p>
-</li>
-</ol>
-</div>
-</li>
-<li id="__asciidoctor-preview-533__">
-<p><strong>Controller layer</strong> - Represented by</p>
-<div id="__asciidoctor-preview-534__" class="olist loweralpha">
-<ol class="loweralpha" type="a">
-<li id="__asciidoctor-preview-535__">
-<p>Controller</p>
-</li>
-<li id="__asciidoctor-preview-536__">
-<p>Service</p>
-</li>
-</ol>
-</div>
-</li>
-<li id="__asciidoctor-preview-537__">
-<p><strong>Model layer</strong> - Represented by</p>
-<div id="__asciidoctor-preview-538__" class="olist loweralpha">
-<ol class="loweralpha" type="a">
-<li id="__asciidoctor-preview-539__">
-<p>Repository</p>
-</li>
-<li id="__asciidoctor-preview-540__">
-<p>Model</p>
-</li>
-</ol>
-</div>
-</li>
-</ol>
-</div>
-<div id="__asciidoctor-preview-541__" class="listingblock">
-<div class="title">Backend tier</div>
-<div class="content">
-<pre>node "Contact Base Data Backend"  {
-    component Model
-
-
-    component RestService
-
-    component ViewModel_DTO
-
-    component Controller
-
-    component Service
-
-    component Repository
-
-    RestService --&gt; ViewModel_DTO
-    RestService --&gt; Controller
-    Controller --&gt; Service
-    Service --&gt; Repository
-    Repository --&gt; Model
-     }
-
-node DBMS {
-    component ContactBaseDataDB
-}
-
-Repository --&gt; ContactBaseDataDB</pre>
-</div>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_contactbasedata_db_database_tier"><a class="anchor" href="#_contactbasedata_db_database_tier"></a>4.2.3. ContactBaseData-DB (database tier)</h4>
-<div id="__asciidoctor-preview-542__" class="paragraph">
-<p>The ContactBaseData-DB is realized as a relational database system.</p>
-</div>
-<div id="__asciidoctor-preview-543__" class="listingblock">
-<div class="title">Database tier</div>
-<div class="content">
-<pre>node DBMS {
-    component ContactBaseDataDB
-}</pre>
-</div>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_program_configuration"><a class="anchor" href="#_program_configuration"></a>4.2.4. Program Configuration</h4>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_runtime_view"><a class="anchor" href="#_runtime_view"></a>5. Runtime view</h2>
-<div class="sectionbody">
-<div class="sect2">
-<h3 id="_login_authentication"><a class="anchor" href="#_login_authentication"></a>5.1. Login / authentication</h3>
-<div id="__asciidoctor-preview-545__" class="paragraph">
-<p>There is no login page, since the openK-Portal-Application is responsible for authentication and
-the whole SSO (single sign on) process.
-Therefore the application has to be started by providing a valid authentication token.
-This token is a JWT (JSON Web Token).</p>
-</div>
-<div id="__asciidoctor-preview-546__" class="literalblock">
-<div class="title">contactBaseData application is called by the <strong>portal</strong> application. The User is already logged in</div>
-<div class="content">
-<pre>actor User
-participant PortalFrontend
-participant PortalBackend
-participant ContactBaseDataFrontend
-entity ContactBaseDataStorage
-participant ContactBaseDataBackend
-
-
-User-&gt;PortalFrontend: Start ContactBaseData(JWT)
-PortalFrontend-&gt;ContactBaseDataFrontend: nav. to frontend-URL with JWT
-ContactBaseDataFrontend-&gt;ContactBaseDataStorage: Extract JWT and store token in session
-... some delay ...
-ContactBaseDataFrontend-&gt;ContactBaseDataBackend: Call any secured service with JWT
-group Call secured service
-
-    ContactBaseDataBackend-&gt;PortalBackend: "/checkAut(JWT)"
-    group Authorization succeeded
-        ContactBaseDataBackend-&gt;ContactBaseDataBackend: run service
-        ContactBaseDataBackend-&gt;ContactBaseDataFrontend: return service result
-    end
-    group Authorization failed
-        ContactBaseDataBackend-&gt;ContactBaseDataFrontend: return HTTP Code 401
-    end
-end</pre>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_deployment_of_the_application_components"><a class="anchor" href="#_deployment_of_the_application_components"></a>5.2. Deployment of the application components</h3>
-<div class="sect3">
-<h4 id="_deployment_of_the_frontend"><a class="anchor" href="#_deployment_of_the_frontend"></a>5.2.1. Deployment of the frontend</h4>
-<div id="__asciidoctor-preview-547__" class="paragraph">
-<p>TODO:</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_deployment_of_the_backend"><a class="anchor" href="#_deployment_of_the_backend"></a>5.2.2. Deployment of the backend</h4>
-<div id="__asciidoctor-preview-548__" class="paragraph">
-<p>TODO:</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_deployment_of_the_database"><a class="anchor" href="#_deployment_of_the_database"></a>5.2.3. Deployment of the database</h4>
-<div id="__asciidoctor-preview-549__" class="paragraph">
-<p>The component "Flyway" is used to make to distribute structural
-or content related changes to the database.</p>
-</div>
-<div id="__asciidoctor-preview-550__" class="paragraph">
-<p>The database is built out of the scripts in the directory "db/migrations". Every sql
-script contains the complete db script for the contact base data database (in different versions).
-The highest version number indicates the currently valid script.</p>
-</div>
-</div>
-<div class="sect3">
-<h4 id="_configuration_of_the_system"><a class="anchor" href="#_configuration_of_the_system"></a>5.2.4. Configuration of the system</h4>
-<div class="sect4">
-<h5 id="_db_based_configuration"><a class="anchor" href="#_db_based_configuration"></a>DB based configuration</h5>
-<div id="__asciidoctor-preview-551__" class="paragraph">
-<p>TODO:</p>
-</div>
-</div>
-<div class="sect4">
-<h5 id="_configuration_of_the_contact_base_data_backend"><a class="anchor" href="#_configuration_of_the_contact_base_data_backend"></a>Configuration of the contact base data backend</h5>
-<div id="__asciidoctor-preview-552__" class="paragraph">
-<p>The backend service is configured in the * .yaml files, which are located in the JAR file.</p>
-</div>
-<div id="__asciidoctor-preview-553__" class="paragraph">
-<p>This yml-file can be divided into different configuration profiles.
-When starting the backend-service one has the possibility to specify
-the active profile</p>
-</div>
-<div id="__asciidoctor-preview-554__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-555__">
-<p><strong>spring.datasource</strong> configuration section for the database connection</p>
-</li>
-<li id="__asciidoctor-preview-556__">
-<p><strong>flyway.enabled</strong> If enabled=true then the database migrations
-will automatically performed when starting the application
-(this parameter should normally be set to "false"</p>
-</li>
-<li id="__asciidoctor-preview-557__">
-<p><strong>server.max-http-header-size</strong> Maximum size for the http-headers</p>
-</li>
-<li id="__asciidoctor-preview-558__">
-<p><strong>jwt.tokenHeader</strong> Name of the http-header which carries the authentication-token.
-(should be "Authorization")</p>
-</li>
-<li id="__asciidoctor-preview-559__">
-<p><strong>jwt.useStaticJwt</strong> If set to "true" then the backend will use <strong>jwt.staticJwt</strong>
-as Authorization-token. (This won&#8217;t work for calls to other modules
-like the Auth&#8217;n&#8217;Auth-Modul, because the token will be out of date)</p>
-</li>
-<li id="__asciidoctor-preview-560__">
-<p><strong>authNAuthService.ribbon.listOfServers</strong> Here one can configure the base
-url to the Auth&#8217;n&#8217;Auth-Service</p>
-</li>
-</ul>
-</div>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_ci_and_cd_components"><a class="anchor" href="#_ci_and_cd_components"></a>5.3. CI- and CD-Components</h3>
-<div class="sect3">
-<h4 id="_git_repository"><a class="anchor" href="#_git_repository"></a>5.3.1. GIT-Repository</h4>
-<div id="__asciidoctor-preview-561__" class="paragraph">
-<p>Backend:
-<a href="https://git.eclipse.org/c/openk-usermodules/org.eclipse.openk-usermodules.contactBaseData.backend.git/" class="bare">https://git.eclipse.org/c/openk-usermodules/org.eclipse.openk-usermodules.contactBaseData.backend.git/</a></p>
-</div>
-<div id="__asciidoctor-preview-562__" class="paragraph">
-<p>Frontend:
-<a href="https://git.eclipse.org/c/openk-usermodules/org.eclipse.openk-usermodules.contactBaseData.frontend.git/" class="bare">https://git.eclipse.org/c/openk-usermodules/org.eclipse.openk-usermodules.contactBaseData.frontend.git/</a></p>
-</div>
-</div>
-</div>
-<div class="sect2">
-<h3 id="_continuous_deployment"><a class="anchor" href="#_continuous_deployment"></a>5.4. Continuous deployment</h3>
-<div id="__asciidoctor-preview-563__" class="paragraph">
-<p>The continuous deployment is realized on two platforms:</p>
-</div>
-<div id="__asciidoctor-preview-564__" class="ulist">
-<ul>
-<li id="__asciidoctor-preview-565__">
-<p>the development platform (Dev-Environment)</p>
-</li>
-<li id="__asciidoctor-preview-566__">
-<p>the quality platform (Q-Environment)</p>
-</li>
-</ul>
-</div>
-<div id="__asciidoctor-preview-567__" class="paragraph">
-<p>The automatic deployment on both of the environments is
-directly linked to the branches on the GIT-repositories:</p>
-</div>
-<div id="__asciidoctor-preview-568__" class="olist arabic">
-<ol class="arabic">
-<li id="__asciidoctor-preview-569__">
-<p>"SNAPSHOT" or "DEVELOP"</p>
-</li>
-<li id="__asciidoctor-preview-570__">
-<p>"MASTER" or "TRUNC"</p>
-</li>
-</ol>
-</div>
-<div id="__asciidoctor-preview-571__" class="paragraph">
-<p>The running development is exclusively made on the Snapshot-Branch. Every time
-a developer checks in (pushes) code to the repository, an automatic build
-starts on the hudson ci-server. If the Snapshot-build is successful, then the result
-of that build is directly deployed on the Dev-environment.</p>
-</div>
-<div id="__asciidoctor-preview-572__" class="paragraph">
-<p>At the end of a scrum sprint or when a big user story is realized, all
-the code changes are merged from the <strong>Snapshot</strong>-Branch to the <strong>Trunc</strong>.
-This automatically triggers the build and the deployment on the
-Q-environment.</p>
-</div>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_design_decisions"><a class="anchor" href="#_design_decisions"></a>6. Design decisions</h2>
-<div class="sectionbody">
-<div id="__asciidoctor-preview-574__" class="paragraph">
-<p>All architecture decisions are based on the Architecture Committee Handbook. There are no deviations.</p>
-</div>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_risks_and_technical_debts"><a class="anchor" href="#_risks_and_technical_debts"></a>7. Risks and Technical Debts</h2>
-<div class="sectionbody">
-<div id="__asciidoctor-preview-576__" class="paragraph">
-<p>(Currently there aren&#8217;t any known issues)</p>
-</div>
-<div style="page-break-after: always;"></div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="_glossary"><a class="anchor" href="#_glossary"></a>8. Glossary</h2>
-<div class="sectionbody">
-<table id="__asciidoctor-preview-578__" class="tableblock frame-all grid-all stretch">
-<caption class="title">Table 5. Abbreviations and glossary terms</caption>
-<colgroup>
-<col style="width: 25%;">
-<col style="width: 25%;">
-<col style="width: 25%;">
-<col style="width: 25%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Short</th>
-<th class="tableblock halign-left valign-top">Long</th>
-<th class="tableblock halign-left valign-top">German</th>
-<th class="tableblock halign-left valign-top">Description</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">AC</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Architecture Committee</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Architektur-Komittee</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Gives framework and constraints according to architecture for oK projects.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">CNCU</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Central Network Control Unit</p></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">DAO</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Data Access Objects</p></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">DTO</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Data Transfer Object</p></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">DSO</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Distribution System Operator</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Verteilnetz-betreiber (VNB)</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Manages the distribution network for energy, gas or water.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">EPL</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Eclipse Public License</p></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Underlying license model for Eclipse projects like contact-base-data@openK</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">ESB</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Enterprise Service Bus</p></td>
-<td class="tableblock halign-left valign-top"></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Central instance to exchange data to overcome point-to-point connections.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">oK</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">openKONSEQUENZ</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">openKONSEQUENZ</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Name of the consortium of DSOs</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">QC</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Quality Committee</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Qualitätskomitee</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Gives framework and constraints according to quality for oK projects.</p></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">SCADA</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Supervisory Control and Data Acquisition</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Netzleitsystem</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">System, that allows DSOs view/control actual parameters of their power grid.</p></td>
-</tr>
-</tbody>
-</table>
-</div>
-</div>
-        </div>
-      </div>
-    </body>
-  </html>