Relaunch Festma Website mit Umbraco

Die ursprüngliche Website für die Festma GmbH wurde vor mehr als 15 Jahren von der HEC erstellt, basierte auf einer selbst implementierten Verwaltung von XML Dateien und ist jetzt doch etwas in die Jahre gekommen. Darum wurde eine komplette Neuentwicklung mit neuem Unterbau, neuem Design und einigen neuen Funktionen vorgenommen. Das Ergebnis ist hier zu finden.

Das neue System wurde wie heute üblich mit Hilfe des Content Management Systems Umbraco erstellt. Bei der Entscheidung dafür gab es ein paar Kriterien, die dann eben Umbraco als Ergebnis hatten.

  • Kosten – Umbraco ist in einer kostenlosen Open Source Version verfügbar
  • Community/Support – Es gibt viele Installationen, Zusatzlösungen, Hilfe aus Foren
  • Technologie
    • Windows/ASP.NET/C# – Umbraco ist eine ASP.NET MVC Anwendung, die entsprechend erweiterbar ist (im System oder mit Visual Studio).
    • SQL Server – Die Daten können in einer bereits vorhanden SQL Server 2014 Installation abgelegt werden.
  • Grundlegende Funktionen sollen bereits vorhanden sein
    • Verwaltung/Editieren von Seiten/Struktur/Inhalt,
    • Definition von Dokumenttypen und Benutzertypen mit dynamischen Eigenschaften
    • Benutzerverwaltung/Sicherheitsfeatures
    • Verwaltung von Medien wie Bildern
    • Unterstützung von Stylesheets, Skripten
  • Nutzbarkeit durch „Nicht“-Softwareentwickler – Die Festma GmbH kann über die CMS-Funktionen selbst Inhalte und Benutzer erstellen und verwalten
  • Erweiterbarkeit
    • Es gibt eine Möglichkeit Erweiterungen/Plugins herunterzuladen und nutzen. Und es gibt auch einige sinnvolle Erweiterungen/Plugins. 🙂
    • Einige spezielle Funktionen für die Festma GmbH mussten von der HEC implementiert werden. Dies wurde über entsprechende ASP.NET MVC Controller und Seiten erreicht. Hierzu gehörten die Suche über Daten aus der BOAT2 Datenbank und dynamische Berichte für angemeldete Benutzer, erfassbar durch die Festma.

Die Implementierung

Das Umbraco System wurde im Standard heruntergeladen und in einigen Punkten angepasst:

  1. Es wurden Dokumenttypen erstellt, die nur die Eingabe der für die Festma relevanten Daten ermöglichen.
    1. So kann einfach Inhalt erfasst werden.
    2. Es ist möglich zu steuern, wo die Seite angezeigt wird.
    3. Es können einfach Übersetzungen erstellt werden.
    4. Beispiel: Der Reiter „Content DE“ enthält den deutschen Text, Content DE den englischen.
    5. Beispiel: Der Reiter „Navigation Settings“ enthält Einstellungen zur Menüsteuerung.
  2. Es wurden Benutzertypen erstellt, die zusätzliche Erfassung von für die Festma relevanten Daten ermöglichen.
    1. Die ID des Kunden/Mitarbeiters für Abfragen „seiner“ Daten in der Datenbank
    2. Die Erfassung von zusätzlichen SQL Statements, die als spezifische Berichte angezeigt werden
  3. Die Implementierung für das Haupttemplate wurde so angepasst, dass die Daten der Dokumenttypen je nach Einstellungen angezeigt wurden.
    1. Menü oben
    2. Logo
    3. Menü Mitte
    4. Inhalt in Deutsch oder Englisch
    5. Menü unten, Beispiel cshtml:
  4. Es wurden spezielle Berichte implementiert um als angemeldeter Benutzer Leistungsdaten abfragen zu können.
    1. Meine Schiffe
    2. Meine Leistungen
    3. Dynamische SQL Abfragen
  5. Einige eigene Implementierungen für spezielle Formulare wurden nicht aus dem Standard genutzt sondern selbst entwickelt:
    1. Anmeldung
    2. Kennwort ändern
    3. Kennwort vergessen
    4. Benutzer-Einstellungen
    5. Kontakt-Seite

Was wir nicht implementieren mussten:

    1. Den gesamten Grundrahmen für ein CMS !!!!!!!!!!
    2. Editoren für die Benutzer/Berechtigungen
    3. Editoren für die Anpassung der Anwendung

Fazit

Durch die Nutzung von Umbraco wurde viel Aufwand und Zeit gespart, gleichzeitig existiert ein System mit vertrauter Technologie, das ähnlich anderen unserer ASP.NET MVC Anwendungen ist.

Nachdem die Umbraco Philosophie verstanden wurde, waren Erweiterungen mit abgeleiteten cshtml/Controller Implementierungen einfach zu handhaben, die entsprechende Infrastruktur von Umbraco konnte auch leicht abgefragt werden.

So wurde mit Hilfe der Nutzung eines Standard-CMS eine gut an die Bedürfnisse des Kunden angepasste Website erstellt, der Aufwand hierfür war mit einem Budget von ca. 100 Personenstunden auch in einem überschaubaren Rahmen.

Verfasst von Matthias Jankowiak am 11. Juli 2017