Softwarelösung konzipieren, implementieren und betreiben

Komplettlösungen - ganzheitliche Leistungspakete

Erfolgreiche Softwaresysteme basieren auf dem richtigen Mix aus technischer Perfektion und wirtschaftlichem Nutzen. Eine entscheidende Rolle spielen langfristig orientierte Architekturkonzepte, zukunftsweisende Entwicklungstechnologien, eine Umsetzung durch kompetente Entwickler und die Fokussierung auf einen sicheren Betrieb der Gesamtlösung unter Berücksichtigung der Sicherheits- und Datenschutzanforderungen.

Levarion bietet Ihnen die komplette Kette von der Analyse der Anforderungen, der Konzeption der Gesamtlösung bis hin zu Implementierung und Betrieb Ihrer Softwarelösung.

Mit unseren erfahrenen Architekten, Projektleitern, Entwicklern und Sicherheitsspezialisten können wir die Lieferung der definierten Funktionsumfänge im Rahmen von Terminen und Kosten sicherstellen.



Ihre Aufgabenstellung

Nutzen Sie innerhalb Ihrer IT individuelle Softwarelösungen statt oder in Ergänzung zu Standardsoftware? In diesem Fall unterstützen wir Ihr Team bei Entwicklung bzw. Modernisierung Ihrer Softwarelösungen.

Ihr Team kann sich somit vollständig auf die Prozessgestaltung und Umsetzung im Unternehmen konzentrieren. Wir sorgen mit unserer technischen Expertise für die richtige Umsetzung der Lösung nach Ihren Vorgaben.

Unser Fokus liegt auf komplexen IT-Systemen in den Themen

  • Mobilität - Verkehrstelematik, Car2X, Autovermietung, Multimodale Konzepte
  • IoT (Internet of Things) - Lizenzierung von Softwarefunktionen, Fernwartung und -zugriff, Vernetzung von IT und Geräten
  • Messdatenverarbeitung - Klassifizierung, Verdichtung, Speicherung und Archivierung von Messdaten

Worauf kommt es an?

Bei der Entwicklung von professionellen Anwendungen im Enterprise-Umfeld sind eine Reihe von Faktoren zu berücksichtigen, von denen die korrekte Programmierung nur ein kleiner Baustein ist:

  • Adäquat dokumentierte, abgestimmte und priorisierte Anforderungen
  • Zukunftsfähige, modulare und skalierbare Softwarearchitektur
  • Sicherer, gut dokumentierter Programmcode
  • Durchgängige Entwicklertests und Code Reviews
  • Moderne, responsive Nutzeroberflächen
  • Regelmäßige fachliche Tests
  • Performance- und Lasttests
  • Stabile, sichere und skalierbare Betriebsinfrastruktur
  • Wiederkehrende Sicherheitsüberprüfungen

Entwicklung von stabilen und sicheren Enterprise-Anwendungen

Bei der Entwicklung von komplexen Softwaresystemen auf Unternehmensebene kommt es vor allem auf das richtige Vorgehen an. Unser Vorgehen basiert auf dem Security Development Life Cycle (SDLC) und unser Erfahrung aus zahlreichen Projekten. Das folgende schematische Projektvorgehen hat sich in der Praxis bewährt.


Der Levarion-Entwicklungsprozess im Einzelnen

Im konkreten Projekt passen wir das Vorgehen an Projektsituation und -umgebung an. Ein agiles Vorgehen ist möglich, um flexibler auf veränderte Anforderungen reagieren zu können, jedoch müssen auf jeden Fall eine Reihe von Grundlagen vor Beginn der Entwicklung gelegt werden, um Stabilität und Sicherheit langfristig gewährleisten zu können.

  • Klärung

    Wichtig zu Beginn eines Projekts ist eine vollständige Auftragsklärung: Wir ermitteln Ziele, Funktionsumfang, Rahmenbedingungen sowie Termine, grenzen den Kontext des zu realisierenden Systems ab und stimmen die Ergebnisse mit den Stakeholdern ab. Damit sind die Eckpunkte des weiteren Projektablaufs festgelegt.

    Im Rahmen der Projektplanung definieren wir nun die einzelnen Meilensteine und Quality Gates, an denen Qualitätsüberprüfungen durchgeführt werden.

  • Analyse

    Selbst wenn im Projekt agil vorgegangen werden soll, müssen dennoch zu Beginn des Projekts die Anforderungen ermittelt, dokumentiert und abgestimmt werden. Dazu ermitteln wir

    • die fachlichen/funktionalen Anforderungen
    • die Entwurfsanforderungen und die Qualitätsziele
    • die Sicherheitsanforderungen

    des zu realisierenden Systems, erfassen sie und stimmen die Ergebnisse mit dem Auftraggeber ab. Wir analysieren darüber hinaus die beteiligten Umsysteme und defineren Datenflüsse und Schnittstellen.

    In der Analysephase identifizieren wir zudem die Risiken, vor allem im Hinblick auf Security, Datenschutz und ggf. Safety und bewerten diese zusammen mit dem Auftraggeber.

  • Entwurf

    Auf der Grundlage der Anforderungen entwerfen wir nun eine belastbare und zukunftsweisende Architektur, die zu den Qualitätszielen und Rahmenbedingungen passt. Die Architektur umfasst sowohl die fachliche Softwarearchitektur als auch die technische Architektur und die spätere IT-Architektur/Infrastruktur. Die Architektur bildet die Basis für die Entwicklungsarbeit und ist der Entwicklung vorgeschaltet.

    Gleichzeitig identifizieren wir in dieser Phase das Bedrohungspotenzial und mögliche Angriffsszenarien und härten die Architektur daraufhin. Wichtig ist es, die Sicherheitsanforderungen bereits in dieser Phase zu berücksichtigen, da eine spätere Änderung oft mit hohen Kosten verbunden ist.

  • Entwicklung

    Die Entwicklung von stabilen und sicheren Enterprise-Anwendungen kann nur auf der Basis von bewährten und zertifizierten Technologien erfolgen. Die Verwendung der neuesten Open-Source-Tools verbietet sich oft aus Gründen der Betriebssicherheit. Wir ermitteln in enger Absprache mit dem Betrieb die richtige Basistechnologie und die zu verwendenden Bibliotheken und Frameworks.

    Während der Entwicklung wird eine tägliche Integration des gesamten Systems durchgeführt (Continuous Integration), um so frühzeitig Fehler an den Schnittstellen erkennen und beseitigen zu können. Gleichzeitig wird durch fortwährende Reviews und entsprechende automatische Werkzeuge die Einhaltung von Architektur- und Programmierrichtlinien durchgängig überprüft.

  • Test / QS

    Neben entwicklungsbegleitenden Codereviews setzen wir parallel zur Entwicklung automatische Testverfahren auf, die eine ständige Überprüfung der funktionalen Korrektheit erlauben. Diese Entwicklertests bilden die Grundlage für einen stabilen Programmcode. Nach festgelegten Meilensteinen (sog. Quality Gates) führen wir darüber hinaus eine Reihe von qualitätssichernden Maßnahmen durch, u.a.:

    • Funktionstests auf Anwendungsebene durch unabhängige Tester, die die gesamte Funktionalität aus Nutzersicht testen
    • Last- und Performancetests, die Skalierbarkeit und Stabilität des Systems überprüfen
    • Dynamische Analysen, die Schwachstellen identifizieren und die Architektur validieren
    • Penetrationstests, die Sicherheitslücken des Systems gegen Angriffe von außen aufdecken
  • Betrieb

    Nach erfolgreich abgeschlossenen qualitätssichernden Maßnahmen bereiten wir das System für den Betrieb vor und übergeben die finale Software an den Betrieb. Seitens des Betriebs werden nun finale Reviews und Tests durchgeführt und das System auf dem Produktivsystem installiert.

    Im Betrieb gilt es nun, durch fortwährendes Monitoring der Anwendung und ihrer Bestandteile das System zu überwachen und im Fehlerfall vorher festgelegte Maßnahmen einzuleiten.

    Sicherheitsupdates der verwendeten Technologien müssen umgehend nach Verfügbarkeit seitens der Hersteller eingespielt und so das Gesamtsystem ständig auf dem neuesten Stand gehalten werden.



Fordern Sie ein unverbindliches Beratungsgespräch an

Haben Sie ein aktuelles Softwareprojekt, bei dem wir Sie unterstützen können? Profitieren Sie von unserer Erfahrung in der Entwicklung und im Management von komplexen Softwaresystemen und rufen Sie uns an.