Relaunch ReSyMeSa Version 7

ReSyMeSa – das Recherchesystem Messstellen und Sachverständige wurde von der HEC 2007 erstellt und wird jetzt seit 10 Jahren betreut und weiterentwickelt.
Die aktuelle Anwendung ist jetzt doch etwas in die Jahre gekommen, sowohl vom Design als auch technologisch, darum wurde eine komplette Neuentwicklung mit neuer Architektur, neuem Design und einigen neuen Funktionen vorgenommen.

Der Relaunch dieser Version findet am 20.03.2017 statt, zu finden ist sie unter http://www.resymesa.de

Vergleich Design

Einige Beispiel zum geänderten Design in alt und neu.

Alt Neu
Startseite
Details
Zusatzinfos

Neue Funktionen

Während der Neuentwicklung wurden einige neue Funktionen implementiert:

  • Unterstützung Postleitzahlen Datenbasis
    • für Umkreis-Suche
    • für automatische Ergänzung des Ortes
  • Volltextsuche
  • Schnellsuche
  • Anzeige Ringversuchsplan
  • Erweiterte Auswertungs- und Exportfunktionen nach PDF, Excel, Word

Vergleich Technologien

Eine besondere Anforderung an die Anwendung besteht in der Unterstützung der Barrierefreiheit, dadurch können einige Technologien gar nicht oder nur eingeschränkt genutzt werden. Dies gilt insbesondere für javascript, hier wurde weitestgehend auf die Nutzung verzichtet.

Bereich Alt Neu
Betriebssystem Windows Server 2008 R2/IIS 7 Windows Server 2012/IIS 8.5
Datenbank SQLServer Express 2012 SQLServer Express 2016 with Advanced Services
Framework ASP.NET WebForms ASP.NET MVC 6/.Net Core
Datenanbindung DatatSets/DataTable Entity Framework 6
Benutzerverwaltung Windows Benutzer-/Gruppen Eigene Verwaltung
Logging n/a log4net
Testing n/a xUnit, NSubstitute
Rich Text Editor CuteEditor CKEditor
Auswertungen/Druckausgaben Crystal Reports 10 SQL Server Reporting Service 2016

 

Erfahrungen mit ASP.NET Core

Besonders spannend war der Einsatz von ASP.NET Core, das zu diesem Zeitpunkt doch eher eine beta-Version ist/war. Im Vergleich zum bisherigen ASP.NET MVC Framework ist es jedoch etwas sauberer und modularer aufgebaut. Auch Microsoft macht ab und an mal alles neu, wenn es sein muss.

Vorteile von ASP.NET Core

  • Modularer Aufbau, klare Anwendungsstruktur
  • Dependency Injection wird jetzt standardmäßig unterstützt (bzw. vorausgesetzt)
  • Plattformunabhängig (Windows, Mac, Linux)
  • Open Source (hilfreich, wenn mal doch wieder was noch wie erwartet läuft)
  • Als Nuget Package, nicht wie bisher „integriert“ in das Visual Studio
  • Tag Helper für Razor Engine

Nachteile von ASP.NET Core

(während dieses speziellen Projekts)

  • Nicht alle Funktionen aus dem bisherigen MVC sind bereits verfügbar
  • Das plattform-unabhängige Entityframework unterstützt noch lange nicht alle Funktionen (z.B. lazy loading), darum haben wir auf die „alte“ Version 6 zurückgegriffen. Das wiederum macht die (theoretische) Plattformunabhängigkeit zunichte.
  • Weil das Framework beim ersten Einsatz sehr neu war, war die Dokumentation nicht immer auf dem aktuellen Stand
  • Viele Aktualisierungen am Anfang haben zu Breaking Changes geführt
  • Das Tooling im Visual Studio ist noch nicht komplett fertig, Tools wie Resharper haben so ihre Probleme
  • Neues Projektsystem basierend auf project.json Dateien (erforderte erst einmal Einarbeitung), wird jetzt wieder von MS auf MsBuild zurückgedreht … entsprechend aufwändig war am Anfang das Einrichten der Continuous Integration mit dem TFS

Fazit

So langsam kann man ASP.NET Core tatsächlich nutzen (im Gegensatz zum Projektstart im Juni 2016), gerade wenn die Anwendung später einmal plattformunabhängig laufen soll.

Das Umstellen existierender Anwendungen lohnt sich meiner Meinung nach nicht, neue Projekte sollten sich das Framework aber mal anschauen.

Verfasst von Matthias Jankowiak am 20. März 2017