SanityCheck-Service

Der SanityCheck-Service von Deimos ermöglicht es Entwicklungsfirmen zu testen, ob ihre Software die Daten gemäss eCH-0051-Standard korrekt erstellt. Der Standard eCH-0051 hat seinen Ursprung im Polizeiwesen und wird nun in der gesamten Strafjustiz und anderen Behörden zum Datenaustausch genutzt. Diese Referenzimplementierung hat Deimos unter der gemeinsamen Führung der Programme HIS Harmonisierung der Informatik in der Strafjustiz www.his-programm.ch und PTI Polizeitechnik und Informatik (früher HPi www.hpi-programm.ch) entwickelt.

Ausgangslage

Die verschiedenen Akteure im Polizei- und Justizwesen tauschen ständig Daten aus, zum Beispiel Listen mit Namen, Fahrzeugen oder Ereignissen. Damit diese Daten einheitlich daherkommen und die Prozesse über Verwaltungsgrenzen hinweg funktionieren, gibt es den E-Government-Standard eCH-0051. Dieser Standard wird konsequent weiterentwickelt, um den Datenaustausch zwischen den verschiedenen Behörden der Strafjustiz (insbesondere Polizei, Staatsanwaltschaft, Gerichte und Vollzugsbehörden) und mit deren Partnern zu ermöglichen.  

Die Stabilität und die Qualität der Schnittstellen sind von zentraler Bedeutung. Mit der Referenzimplementierung SanityCheck-Service wollen wir einen Beitrag zur Steigerung der Schnittstellenqualität leisten und damit die Interoperabilität zwischen den beteiligten Informatik-Systemen steigern.  

Ziel

Der SanityCheck-Service dient den Lieferanten und Software-Herstellern dazu, ihre Schnittstellen-Implementierung bereits in der Entwicklungsphase zu verifizieren und basierend auf einem Testreport gegenüber dem Auftraggeber als interoperabel zu deklarieren. Man stellt damit mittel- und langfristig eine Verbesserung der Schnittstellen-Qualität zwischen den Partnern sicher und ermöglicht häufigere und kürzere Release-Zyklen der Fachapplikationen.  

Jede Schnittstelle muss etliche Beurteilungskriterien erfüllen. Für jedes Beurteilungskriterium wird eine Plausibilität definiert. Es wird zwischen einfachen Plausibilitäten wie Wertebereichen und komplexen Plausibilitäten wie Abhängigkeiten oder Kombinationen zwischen Elementen unterschieden. 

Umsetzung

Eine moderne Lösung mit Open Source Frameworks

Die Umsetzung erfolgt vollständig mit bewährten Open Source Frameworks und Bibliotheken. Die Basis der Applikation bildet Spring Boot, ein leichtgewichtiges Framework, das Java Enterprise Dienste bereitstellt. Für die Web-Applikation wird Angular eingesetzt. Das Framework unterstützt damit die Programmierung dynamischer und benutzerfreundlicher Web-Applikationen.

Architektur

Die Komponenten kommunizieren via REST JSON Webservices miteinander. Neben der Möglichkeit, XML-Dateien über das Web-Formular zu bestellen, können die Daten auch über Sedex ausgetauscht werden. 

Entwicklung

Die initiale Entwicklung nahm Deimos 2018 in Angriff; sie dauerte sechs Monate. Das  Projekt wurde gemäss Hermes 5.1 agil geführt, die Entwicklung erfolgte iterativ gemäss Scrum. Der Product Owner war wöchentlich vor Ort, um mit den Entwicklern offene Punkte zu klären.

Verwendete Technologien

Für das Projekt wurden folgende Technologien verwendet:
 

Angular Web Framework
Spring Boot
JPA/Hibernate
Apache Tomcat
MS SQL Server
Docker
Gradle
Icon Tech & Tools

Interessieren Sie sich für unseren Technologie-Stack?

Dann finden Sie auf der Seite Tech & Tools detaillierte Informationen.

scs-ui-plausibility.png
scs-ui-schnittstellen.png
scs-ui-standard.png

Ergebnis

Die Applikation ist seit 2019 in Betrieb. Aktuell testet sie nach rund 200 Plausibilitäten, also beispielsweise, ob die Heimatgemeinde einer Person im Datensatz korrekt dargestellt ist. Diese Plausibilitäten können Super User selber ändern und ergänzen. Seit der Inbetriebnahme wurden mehrere Schnittstellen für JusPol (Justiz-Polizei) und PKS (Polizeiliche Kriminalstatistik) definiert. Insgesamt werden Regeln für fünf verschiedene Versionen des Standards eCH-0051 unterstützt.