Entwicklung einer öffentlichen Web-Datenbank für Bürgerbegehren mit interaktiver Karte & Filtermöglichkeiten
PHP & MySQL Webentwicklung mit CakePHP und Elasticsearch
Die Bergische Universität Wuppertal beauftragte eWorks 2018 mit der Konzeption und Entwicklung einer Web-Datenbank für Bürgerbegehren im deutschsprachigen Raum. Ziel war es, eine moderne Online-Datenbank zu entwickeln, die der Öffentlichkeit online zur Verfügung steht und darüber hinaus einer Vielzahl von Nutzern die Möglichkeit bietet, sich aktiv an der Pflege der Daten zu beteiligen.
Dreh- und Angelpunkt der entwickelten Datenbank ist die Übersichtsseite aller registrierten Bürgerbegehren. Diese besteht aus einer interaktiven Karte, die die Bürgerbegehren in Deutschland visualisiert. Darüber hinaus gibt es zahlreiche Filtermöglichkeiten, eine Volltextsuche und schließlich eine Datentabelle, die die Bürgerbegehren anzeigt. Von hier aus kann jeder Besucher über eine 6-stufige Eingabemaske ein neues Bürgerbegehren eintragen.
Die webbasierte Online-Datenbank, die mit dem PHP-Framework CakePHP entwickelt wurde, gliedert sich in einen öffentlichen Frontend- und einen geschützten Backend-Bereich. Die Daten werden mit Hilfe von MySQL verwaltet, wobei eine zusätzliche Elasticsearch-Datenbank für die Filterung, Volltextsuche und Anzeige der Daten verwendet wird.
Zur Administration der Datenbank können im Backend-Bereich angemeldete Administratoren eingehende Bürgerbegehren verwalten und ggf. freigeben. Neben den namensgebenden Bürgerbegehren können sie auch weitere Daten wie Parteien, Gerichte, Ortsdaten oder auch Organisationen verwalten, die für die Eintragung von Bürgerbegehren benötigt werden. Selbstverständlich ist auch eine Benutzerverwaltung vorhanden.
Eine besondere Herausforderung stellten die interaktive Karte und die darauf angezeigten Bürgerbegehren dar. Für eine reibungslose Nutzung der Datenbank muss die Karte schnell auf Benutzereingaben reagieren und die Bürgerbegehren im Sichtbereich schnell nachladen können. Dank Elasticsearch und den von uns eingesetzten Geofunktionen war es möglich, die Orte der Bürgerbegehren innerhalb von 20 - 100ms auf der Karte nachzuladen.
eWorks begleitete die Bergische Universität Wuppertal von der ersten Idee der Datenbank über die Prototypenentwicklung, die vollständige Implementierung bis hin zum laufenden Betrieb. Im Laufe des Software-Lebenszyklus wurden verschiedene Erweiterungen von eWorks realisiert und Supportleistungen erbracht. Seitdem betreut eWorks die Mitarbeiterinnen und Mitarbeiter des Kunden bei der Nutzung des Systems, behebt Programmfehler (Gewährleistung), programmiert gelegentliche Change Requests und führt die funktionale Weiterentwicklung der Softwarelösung nach Kundenwünschen durch.