Software Engineering


Wir führen Ihr Softwarevorhaben zum Erfolg

Software Engineering ist mit Herausforderungen verbunden: Sie möchten eine passgenaue Lösung in der optimalen Qualität, die für die Benutzer den geforderten Mehrwert bietet. Zudem soll die Software in der vom Markt geforderten Zeit zur Verfügung gestellt werden. Die Entwicklung dieser Lösungen ist dem schnellen technologischen Wandel ausgesetzt, was immer wieder zu einer neuen IT Architektur und neuen Lösungsmöglichkeiten führt. In einem solch anspruchsvollen Umfeld ist es wichtig einen verlässlichen und unabhängigen Partner zu haben, der Sie unterstützt.

Business Impact & Business Analyse

Das Fundament für ein erfolgreiches und zielgerichtetes Software Engineering Vorhaben ist die Definition der Ziele und des gewünschten Business Impacts.
Dieser Schritt schafft ein gemeinsames Verständnis für das Vorhaben, welches die Grundlage für eine fokussierte und nutzenorientierte Lösung ist. Zudem werden in dieser Phase Ideen für Geschäftsinnovationen und Optimierungen geboren!

Damit die Ziele Ihrer Softwareentwicklung profund definiert werden können, müssen folgende Aspekte beleuchtet werden:

  • Rollen und Anwendungsfälle: Welche Benutzerrollen haben welche Erwartun-gen und Hoffnungen an das neue System?
  • Organisation und Geschäftsprozesse: Welche Ergebnisse müssen in welcher Qualität und Quantität erbracht werden und wer ist dafür zuständig?
  • Rahmenbedingungen: Welche normativen, regulatorischen oder gesetzlichen Anforderungen müssen eingehalten werden?

Lösungsarchitektur/Solution Architect

Wenn Einigkeit über die Ziele des Software Engineering Vorhabens besteht, erfolgt die Erstellung der Lösungs- und Applikationsarchitektur. Dabei sind folgende Punkte elementar:

  • Unternehmensarchitektur: Wie kann die neu entwickelte Software in die beste-hende Applikationslandschaft, Infrastruktur (Cloud/on Premise) und die Busi-ness Prozesse integriert werden, damit die Endbenutzer die neue Lösung oh-ne Kunstgriffe anwenden können? Um diese Fragen ganzheitlich zu beant-worten, setzen wir auf eine ganzheitliche Unternehmensarchitektur nach TOGAF.
  • Technologieauswahl: Welche Technologien bieten das beste Kosten-Nutzenverhältnis und verkürzen dadurch die Zeitdauer der Lösungsrealisierung? Weiter ist der Lebenszyklus einer Technologie und demzufolge der Investitionsschutz ein wichtiger Einflussfaktor bei der Auswahl.

Kaufen oder selber Entwickeln

Diese in der IT omnipräsente Frage muss situativ beantwortet werden: Welche Softwarearchitektur ist etwa bereits vorhanden? Entscheidend ist, dass das digitale Benutzererlebnis begeistert. Die Vernetzung von IT Systemen sowie die Individualisierung der Lösung sind in jedem IT Projekt kritische Erfolgsfaktoren.

Bei einer «klassischen» Eigenentwicklung bestimmen Zeit und Budget den Lösungsumfang. Damit im kompetitiven Marktumfeld möglichst viel Lösung mit dem eingesetzten Kapital entsteht, setzt das heutige Software Engineering auf wiederverwendbare Module und Plattformen. Meist werden daher Teile der Lösung gekauft und andere Teile selber entwickelt.

Entwicklungsprozess

Nachdem die Lösungsarchitektur definiert ist und die Make or Buy Entscheidungen gefällt wurden, kann mit der Softwareentwicklung gestartet werden. Wie bei klassischen Wertschöpfungsprozessen ist auch beim Software Engineering ein klarer, einfacher und verständlicher Prozess notwendig, damit alle Stakeholder und Software Engineers zum Gelingen der Umsetzung beitragen können. Wir orientieren uns an modernen agilen Entwicklungsverfahren wie Kanban, SCRUM oder SAFe, wobei es mehrere kritische Erfolgsfaktoren gibt:

  • Teile und herrsche: Kleinere Arbeitspakete oder Entwicklungsschritte sind besser verständlich, lenkbar, binden weniger Ressourcen und können schneller realisiert werden.
  • Prüfen und Anpassen: Das Produkt, die Qualität, die Kosten, die Zusammenarbeit, die veränderten Erwartungen der Stakeholder und Märkte müssen stetig geprüft, verbessert und angepasst werden. Nur so können die vorgegebenen Ziele der Auftraggeber und die Erwartungen der Nutzer erfüllt werden.
  • Automatisierung: Repetitive Arbeiten im Software Engineering sollen soweit wie möglich automatisiert werden. Dies senkt die Kosten im Product Life Cycle und steigert die Qualität.

Erfolgreiche Software Engineering Projekte:

Wollen Sie Ihre Softwareentwicklung optimieren? Dann sollten Sie mit uns sprechen.
Vereinbaren Sie doch gleich einen Termin mit einem XWare-Mitarbeiter.