Simap – eine neue Ära der öffentlichen Ausschreibungen

Verein simap.ch

Kunde
Verein simap.ch
Kunde seit
2021
Go-Live
Juli 2024
Website
simap.ch

3 000

Beschaffungsstellen

50 000

Anbieter

20 000 

Benutzer am Tag

20 Milliarden CHF

Ausschreibungen pro Jahr

Ausgangslage: Simap soll intuitiver und effizienter werden

Beschaffungen der öffentlichen Verwaltung fallen unter das Beschaffungsrecht. Das bedeutet, dass grundsätzlich sämtliche Aufträge, die von öffentlichen Institutionen an Anbieter vergeben werden, ab einem bestimmten Schwellenwert öffentlich ausgeschrieben und die Firmen, welche den Zuschlag erhalten, ebenfalls öffentlich kommuniziert werden müssen. Damit soll unter anderem ein fairer Wettbewerb ermöglicht und sichergestellt werden, dass die Steuergelder möglichst wirtschaftlich eingesetzt werden.

Diese öffentlichen Ausschreibungen laufen über die Online-Plattform simap.ch, dem offiziellen Publikationsorgan für öffentliche Beschaffungspublikationen der Schweiz. Die Abkürzung leitet sich vom französischen Titel ab: «Système d’information sur les marchés publics en Suisse».

Die Online-Plattform wird von einem von der Schweizerischen Eidgenossenschaft und den Schweizer Kantonen gegründeten Verein betrieben. 2019 wurde ein Projekt zur Ablösung der bestehenden Plattform mit folgenden Zielen ausgeschrieben:

  • Die Plattform soll die komplexen Beschaffungsprozesse unterstützen, die in der föderalen Schweiz sehr heterogen sind. 

  • Die neue Plattform soll aus Sicht der Benutzer:innen so einfach und intuitiv wie möglich gestaltet sein. 

  • Die Plattform soll eine positive User-Experience bieten. 

  • Die Nutzung soll ohne Schulung möglich sein. 

  • Die Anzahl der Supportanfragen soll reduziert werden. 

Die Lösung: eine user-zentrierte Neuentwicklung 

Die Komplexität der Plattform und das Bedürfnis nach möglichst wenig Support-Leistungen verlangten nach einer kompletten Individualentwicklung, perfekt auf die Kundenbedürfnisse zugeschnitten. Entsprechend setzten wir von Unic auf ein agiles Entwicklungsvorgehen mit vielen Feedbackschleifen und eine service-orientierte Architektur mit einen cloud-native-Ansatz.

Der Fokus lag dabei konsequent auf den Bedürfnissen der unterschiedlichen Nutzer:innen. Wir haben die Geschäftsprozesse vertieft analysiert, so weit als möglich vereinheitlicht und optimiert, sowie bestehende Funktionalitäten kritisch hinterfragt. Dieses user-zentrierte Vorgehen zieht sich durch die ganze Konzeption. Das Resultat: Eine personalisierte User-Führung, durch ein modernes und schlichtes Design, mit klarer Formensprache.

Auch die Bedürfnisse der Anbieter:innen haben wir berücksichtigt

In mehreren Interviews haben wir die zum Teil sehr heterogenen Anforderungen an die Suche von Beschaffungsprojekten eruiert und passende Lösungen skizziert. Unsere Hypothesen haben wir mit mehreren Nutzertests validiert, wobei wir Anwendervertreter:innen und Anbieter:innen innerhalb und ausserhalb des Projektteams angehört haben. 

So konnten wir Änderungen und Anpassungen frühzeitig mittels Visualisierungen auf Ihre Benutzerfreundlichkeit hin prüfen und Feedback von unterschiedlicher Seite einholen. 

Das neue Simap 

Die neue Fachapplikation erfüllt eine Vielzahl von sehr spezifischen funktionalen und nichtfunktionalen Anforderungen. Neben den Kernfunktionalitäten rund um den Beschaffungsprozess stellt die Anwendung auch eine Reihe von administrativen Funktionen zur Verfügung, welche den Support entlasten. Die Anbindung von Drittsystemen ermöglicht die Verbindung zur Beschaffungsplattform der EU. 

Schematic drawing of project management, with core process, supporting processes, administrative processes, sub-processes and alternative processes
Überblick über die abzubildenden Prozesse

Die Erfolgsfaktoren 

Zur Gesamtlösung haben viele Erfolgsfaktoren beigetragen. Hier eine Auswahl: 

Ausgeklügeltes Rollenkonzept 

Die Plattform muss die Bedürfnisse von unterschiedlichen Gruppen von Benutzer:innen erfüllen: von grossen Beschaffungsstellen mit Dutzenden von Mitarbeitenden (z.B. grosse Bundesämter oder SBB) bis hin zu kleinen Gemeinden; von multinationalen Grossanbietern bis zu Kleinunternehmen. Von Leuten, die monatlich darin arbeiten hin zu Usern, die dies nur alle paar Jahre tun. 

Erklärvideo, erstellt durch Videodesign

Übersicht über die unterschiedlichen Key Player

Zudem sind auch Kompetenzzentren, kantonale Amtsblatt-Druckereien, Systemadministratoren und weitere Nutzergruppen auf der Plattform unterwegs. 

Dezentrale Rollen- und Berechtigungsverwaltung

Um diese Heterogenität abbilden zu können, haben wir ein differenziertes Rollen- und Berechtigungskonzept umgesetzt:  

  • Die verschiedenen Organisationseinheiten haben jeweils eigene Administrationsrollen. Die Benutzer:innen- und Organisationsverwaltung findet somit hauptsächlich dezentral statt. 

  • Im Support kann auf eine «Impersonate»-Funktion zurückgegriffen werden, um einzelne User gezielt zu unterstützen. 

  • Einzelne User können unkompliziert zwischen verschiedenen Rollen hin und her wechseln, falls sie in unterschiedlicher Funktion auf simap.ch unterwegs sind. 

  • Für alle Rollen wurden massgeschneiderte Oberflächen umgesetzt, die allen Benutzer:innen jeweils genau das zeigen, was für ihre Rolle relevant ist. 

Übersichtliche Projektstruktur

Eine grosse Neuerung zur alten Plattform stellt die Strukturierung der Daten anhand von Projekten dar:  

Auf der neuen Plattform bündeln wir alle Publikationen in Projekten, die im Rahmen eines Beschaffungsprojektes veröffentlicht werden; ebenso die zugehörigen Fragerunden, hochgeladene Dokumente, Anbieterlisten und Termine. Dadurch wird die Arbeit für die ausschreibenden Beschaffungsstellen stark vereinfacht und die Übersichtlichkeit für Anbieter:innen erhöht. 

Screenshot «Projektdetail»: Konkrete Bauleistung – Interesse bekundet
Screenshot Projektdetail

Massgeschneiderter Workflow 

Die Prozesse rund um öffentliche Beschaffungen sind an sich sehr komplex und aufgrund der föderalen Strukturen in der Schweiz nicht homogen gestaltet: Es gibt unterschiedliche Verfahrensarten, unterschiedliche Auftragsarten, Beschaffungen mit und ohne Lose … Innerhalb der Verfahren gibt es zudem eine ganze Reihe unterschiedlicher Publikationsarten, von einer «Vorankündigung» über einen «Abbruch» bis zu einer «Berichtigung». Aufgrund der rechtlichen Vorgaben gibt es hier wenig Spielraum. 

Um die Beschaffungsverfahren für die ausschreibenden Stellen zu vereinfachen, haben wir einen umfangreichen und intelligenten Workflow implementiert, der den kompletten Beschaffungsprozess in allen Ablaufvarianten abbildet. 

Will heissen: Die neue Plattform unterstützt die Beschaffungsstellen, indem sie zu jedem Zeitpunkt genau diejenigen Aktionen anbietet, die aufgrund der rechtlichen und fachlichen Rahmenbedingungen sinnvoll und zulässig sind. 

Extrem komplexes Schema mit einer Vielzahl von Variablen. Detaillierte Bildbeschreibung nicht möglich.
Schema der zahlreichen möglichen Hauptprozesse und deren alternativen Ablaufvarianten

Mit dem neuen Simap wird die Bedienung sowohl für Anbieter:innen als auch für Beschaffungsstellen einfach und intuitiv. Dank der stark verbesserten Suche, die u.a. mit diversen nützlichen Filteroptionen versehen ist, werden rasch alle relevanten Ausschreibungen gefunden. Selbst Nutzer:innen, die Simap selten nutzen, werden damit effizient arbeiten können.

Hans-Peter Wessels, Auftraggeber und Präsident des Vereins simap.ch 
Erklärvideo, erstellt durch Videodesign

Die Technologie hinter der neuen Simap-Applikation

Die Applikation wurde von Anfang an mit dem Cloud-Native-Ansatz und einer service-orientierten Architektur designt. Dies ermöglicht einen flexiblen und stabilen Betrieb in Kubernetes- oder Cloud-Plattformen, mit den Vorteilen von Skalierbarkeit, Performance und Stabilität.

Backend

Die Backend-Umsetzung wurde geprägt von den nicht-funktionalen Anforderungen: Unbedingte Nachvollziehbarkeit, hohe Sicherheitsstandards, Verfügbarkeit und geringe Verarbeitungszeit sind die zentralen Pfeiler der Applikation.  

  • Nachvollziehbarkeit: Bei allen relevanten Daten kann jederzeit rekonstruiert werden, wer welche Änderung vorgenommen hat. Dafür sorgen History-Tabellen, die automatisiert über Datenbank-Trigger ergänzt werden, wenn eine Änderung erfolgt. Bei den Triggern, Audit-Funktionen und History-Tabellen wird ausserdem über automatisierte Tests geprüft, dass jeweils alle Felder berücksichtigt werden, um die Konsistenz auch bei Datenbank-Anpassungen gewährleisten zu können. Für die Erfassung von Ausschreibungen wurde eine Datenstruktur verwendet, die komplett getrennt ist von den öffentlich verfügbaren Publikationen. Dies ermöglicht einen besseren Schutz der noch nicht öffentlichen Entwürfe, stellt aber auch auf Stufe Datenbank sicher, dass veröffentlichte Publikationen nicht mehr verändert werden. 

  • Sicherheit: Durch den Einsatz von OIDC (OAuth2) kann für jeden Request gewährleistet werden, dass die Authentifizierung stichhaltig ist. Basierend darauf haben wir direkt auf den Controllern den ersten Security Layer implementiert, so dass bereits sehr früh Requests abgelehnt werden, welche nicht über die notwendigen Rollen für den API-Endpoint verfügen. Weiter wird direkt auf der Ebene Datenbank mit Row-Level-Security (RLS) sichergestellt, dass für jede Anfrage nur genau die Daten abgefragt oder verändert werden können, für die auch die Berechtigung vorhanden ist. Für die Applikation werden ausserdem niedrig-privilegierte Datenbank-Verbindungen verwendet, um das Risiko für Angriffe auf die Datenintegrität zu minimieren. 

  • Verfügbarkeit und Stabilität: Die Applikation erfüllt die Cloud-Native-Anforderungen und ist somit komplett Stateless implementiert. Dies erlaubt eine Skalierung der Komponenten, um auch höhere Lastspitzen gezielt abzufangen. Die Implementation für periodisch laufende Jobs wurde in eine separate Applikation ausgelagert: Dies erlaubt eine bessere Steuerung von Berechtigungen und reduziert die Last bei den Client-facing-Applikationsteilen. Um zu gewährleisten, dass Applikationsversion und Datenbank-Struktur kompatibel sind, wird das Datenbank-Schema direkt über das Backend mit Flyway verwaltet. Dies ist essenziell für einen reproduzierbaren Deployment-Prozess, der hochautomatisiert abläuft, und somit eine sehr geringe Fehleranfälligkeit hat. 

  • Performance: Eine besondere Herausforderung ist, wie bereits erwähnt, unter Einhaltung der Sicherheits- und Nachvollziehbarkeitsanforderungen, eine hohe Performance zu erreichen: Bei der Verwendung von RLS hat die Anzahl Datenbankeinträge einen sehr direkten Einfluss auf die Gesamtperformance der Applikation. Im Rahmen der Performancetests, durchgeführt durch Ergon, haben wir deshalb mit Datenmengen operiert, die nach einer Applikationslaufzeit von etwa fünf Jahren erwartet werden. Dank diesen Tests konnten wir potenzielle Engpässe bereits während der Entwicklung identifizieren und durch die Optimierung der RLS-Funktionen eliminieren.  

  • Authentifizierung: Aufgrund der Anforderungen an die Sicherheit ist es notwendig, im Bereich User-Authentifizierung, -Authorisierung sowie -Management auf ein bewährtes Produkt zu setzen. Da schon in anderen Projekten Erfahrung mit Keycloak vorhanden war, konnte die IdP-Lösung schnell identifiziert werden. Keycloak hat sich während der Projektlaufzeit wesentlich weiterentwickelt und ist mit den neusten Versionen ein perfektes Werkzeug für Self-Hosted-Applikationen, die in (privaten) Cloud-Plattformen betrieben werden. 

Frontend 

Von Anfang an war es unser Ziel, eine moderne, skalierbare Anwendung zu entwickeln, die den hohen Anforderungen der Benutzer:innen gerecht wird. Mit einem klaren Fokus auf Benutzerfreundlichkeit und Robustheit haben wir im Frontend einen leistungsstarken Webclient mit Node.js in React und TypeScript implementiert.  

Moderner Technologie-Stack für optimale Performance 

Wir haben uns für einen bewährten und modernen Technologie-Stack entschieden, um eine herausragende Benutzererfahrung und eine stabile Performance zu gewährleisten:  

  • TypeScript und React: Diese leistungsstarke Kombination ermöglicht uns, robuste und skalierbare Anwendungen zu entwickeln. TypeScript bietet uns Typensicherheit und frühzeitige Fehlererkennung, während React für dynamische und reaktive Benutzeroberflächen sorgt. 

  • MUI (Material-UI): Mit MUI können wir eine konsistente und ansprechende Benutzeroberfläche gestalten, die sowohl funktional als auch ästhetisch ansprechend ist. 

  • Node.js und SSR React: Durch den Einsatz von Node.js als Backend-Plattform und serverseitigem Rendering (SSR) von React-Komponenten verbessern wir die Ladezeiten und die SEO-Optimierung der Anwendung. 

  • Webpack und Loadable: Diese Tools helfen uns, die Build-Prozesse zu optimieren und die Ladezeiten durch effiziente Bündelung und Minimierung des Codes zu verkürzen. 

Sicherheit und Effizienz im Fokus 

Die Sicherheit und Effizienz unserer Anwendung haben höchste Priorität. Wir haben mehrere Strategien und Technologien implementiert, um dies zu gewährleisten:

  • Express.js und Proxy Layer: Durch den Einsatz von Express.js und einem Proxy Layer schützen wir unsere Anwendung vor schädlichen Anfragen und kontrollieren den Datenfluss. 

  • Stateful HTTP und Custom Rendering: Der Einsatz von HTTP-Cookies und Redux in Kombination mit unserem optimierten Renderer verbessern die Benutzererfahrung erheblich. 

  • OIDC mit PKCE: Dieses Sicherheitsfeature gewährleistet eine sichere Authentifizierung und Autorisierung der Benutzer:innen, was besonders wichtig für den Schutz sensibler Daten ist. 

  • Schutzmechanismen: Unsere strengen Sicherheitsrichtlinien schützen die Anwendung vor diversen Angriffsvektoren und unerlaubten Zugriffsversuchen, bevor diese überhaupt ins Backend gelangen. 

  • Wartbarkeit und Erweiterbarkeit: Dank sauberem Code und modularer Architektur ist die Anwendung leicht wartbar und kann problemlos erweitert werden, um zukünftigen Anforderungen gerecht zu werden.  

  • Performante Formulare: Die von uns entwickelten Formulare bieten eine schnelle und reibungslose Benutzerinteraktion, was die Effizienz und Zufriedenheit der Benutzer:innen erhöht. 

Mit unserem innovativen Ansatz und dem Einsatz modernster Technologien haben wir eine Frontend-Lösung geschaffen, die nicht nur den heutigen Anforderungen gerecht wird, sondern auch für zukünftige Herausforderungen bestens gerüstet ist. Unsere Arbeit für die Simap Plattform steht für höchste Qualität, Sicherheit und Performance, und setzt neue Massstäbe in der Frontend Entwicklung.  

Erfolgreiche Ergebnisse und Auszeichnungen

Die Bemühungen und sorgfältige Planung haben sich ausgezahlt. Die Simap Plattform hat mehrere wichtige Meilensteine erreicht:  

  • Erfolgreicher Pentest: Simap hat einen umfangreichen Penetrationstest mit Bravour bestanden, was die Robustheit unserer Sicherheitsmassnahmen bestätigt. 

  • Hohe Bewertungen im Architektur-Audit: Die durchdachte und skalierbare Architektur wurde in einem unabhängigen Audit hoch bewertet. 

  • Überragende Performance und Wartbarkeit: Die Plattform bietet nicht nur herausragende Performance, sondern ist auch leicht wartbar und erweiterbar, was zukünftige Anpassungen und Skalierungen erleichtert. 

  • Das Resultat: Das neue Simap bietet den Benutzer:innen eine leistungsstarke, sichere und anwenderfreundliche Lösung. 

Und wie geht es weiter?

Geplant ist ein Parallelbetrieb bis Ende 2024, dann soll das heutige Simap abgestellt werden. Die Daten der Legacy-Plattform stehen aber für Auswertungen und Statistikzwecke weiterhin zur Verfügung. Weitere Funktionalitäten, die den Umgang mit dem elektronischen Beschaffungswesen für alle Akteure vereinfachen, sind in Arbeit.   

  • Anbieter:innen sollen ihr Angebot elektronisch einreichen können. 

  • Requests for Information (RFI) sollen über simap.ch angefragt werden können 

  • Das Einladungsverfahren soll direkt über simap.ch durchgeführt werden. 

  • Beschaffungsstellen und Kompetenzzentren sollen verschiedene Statistiken exportieren können. 

  Über die weitere Entwicklung werden wir zu gegebener Zeit berichten. 

Kontakt für Ihre digitale ​Lösung mit Unic

Termin buchen

Sie möchten Ihre digitalen Aufgaben mit uns besprechen? Gerne tauschen wir uns mit Ihnen aus.​

Jörg Nölke
Gerrit Taaks
Gerrit Taaks

Wir sind da für Sie!

Termin buchen

Sie möchten Ihr nächstes Projekt mit uns besprechen? Gerne tauschen wir uns mit Ihnen aus.

Melanie Klühe
Melanie Klühe
Stefanie Berger
Stefanie Berger
Philippe Surber
Philippe Surber
Stephan Handschin
Stephan Handschin