Das Hochwasserportal für das Land Niedersachsen in Windows Azure

Exkurs: Technik und Vorgehensmodell

Exkurs: Technik und Vorgehensmodell

Das NLWKN-Betriebsdateninformationssystem besteht aus einer Vielzahl einzelner Anwendungen und Softwarekomponenten. Entwicklungsplattform ist derzeit .NET 4.5 (früher: 3.5/4.0) mit der Programmiersprache C#. Es kommen zahlreiche in .NET integrierte Frameworks zum Einsatz, insbesondere ADO.NET Entity Framework und Language Integrated Query (LINQ) für den Datenzugriff, Windows Communication Foundation (WCF) für Webservice-Kommunikation, Windows Presentation Foundation (WPF) für Windows-Desktop-Anwendung, Task Parallel Library (TPL) für Hintergrundprozesse und ASP.NET Webforms für die Webseitengenerierung. Ergänzendes Open-Source-Framework ist Automapper für das Mapping verschiedener Objektstrukturen.

Der Webauftritt verwendet darüber hinaus JavaScript und mehrere JavaScript-Bibliotheken (jQuery, jQuery DataTables, Highcharts JS sowie eine Geodaten- Software der Firma ESRI). Für Power-User gibt es auch eine Schnittstelle zu den Daten mit Windows PowerShell. Die Server basieren auf Windows Server 2008 R2 und die Datenbank auf SQL Server 2008 R2 (bald Version 2012).

In Windows Azure kommen aus der Rubrik der "Computing-Dienste" Worker- und Web-Rollen zum Einsatz. Die Daten liegen im nichtrelationalen Azure Table Storage und die Landkartendarstellung liefert Bing Maps kostenfrei. Die Programmierung erfolgt auch in der Cloud mit .NET und C#.

Unit-Tests wurden mit dem Microsoft Test Framework in Visual Studio geschrieben. Mit dem Drittanbieterwerkzeug Entity Framework Profiler konnte man unnötige und ungünstige Datenzugriffe aufspüren.

Die Softwareentwicklung für das Betriebsdateninformationssystem, einschließlich des Hochwasserportals in der Cloud, erfolgte agil, sodass sich schon Version 0.1 produktiv von den Anwendern einsetzen ließ. Den Anschub für das Betriebsdateninformationssystem gab zunächst der Oberhausener Softwareentwicklungsdienstleister 5Minds IT-Solutions GmbH & Co. KG, später ist dann ein Großteil der Entwicklungsarbeiten auf beim NLWKN angestellte Softwareentwickler übergegangen.