Life Cycle Management
Unternehmen setzen im Bereich Softwareentwicklung auf ein effektives Life Cycle Management (LCM), um den gesamten Lebenszyklus einer Softwareanwendung zu verwalten. Dies beinhaltet eine Reihe von Schritten, die darauf abzielen, die Qualität, Zuverlässigkeit und Benutzerfreundlichkeit der Software zu maximieren, während gleichzeitig Risiken und Kosten minimiert werden.
Anforderungsanalyse und Planung
Im ersten Schritt eines effizienten Life Cycle Managements identifizieren und dokumentieren wir die individuellen funktionalen und nicht-funktionalen Anforderungen und Erwartungen unserer Kunden und legen anschliessend einen Bedarf fest. Dazu gehören spezifische Funktionalitäten, Leistungsspezifikationen und die erwartete Lebensdauer.
Auf dieser Grundlage erfolgt die Planung der Architektur und des Designs der Software, wobei Technologien, Plattformen, Datenstrukturen und Algorithmen festgelegt werden. Dieser Prozess stellt sicher, dass die zukünftigen Phasen und die spätere Nutzung unserer Kunden effektiv gestaltet werden können. Ausserdem beinhaltet sie die notwendige Flexibilität und Anpassungsfähigkeit, um zukünftigen Entwicklungen am Markt Rechnung zu tragen.
Erfordert die Installation neue Komponenten in der Hardware, können wir diese ebenfalls in die Prozesse mit einbeziehen.
Entwicklung und Qualitätssicherung
Basierend auf dem spezifischen Bedarf geht der Prozess in die Entwicklungsphase über, wobei die Implementierung, Codierung und Integration von verschiedenen Komponenten erfolgen. Dabei wird besonderes Augenmerk auf die Effizienz, Wartbarkeit und Skalierbarkeit des Codes gelegt.
Die Software wird anschliessend umfangreichen Tests unterzogen. Neben der Prüfung, ob alle Anforderungen erfüllt werden, werden auch verschiedene andere Punkte getestet. Dabei werden die Programmcodes auf Fehler geprüft, die Zusammenarbeit zwischen verschiedenen Programmteilen und anderen Programmen getestet, das Funktionieren des kompletten Systems überprüft und die Software durch unsere Kunden betrachtet. Werden Unstimmigkeiten gefunden, werden diese behoben und der Testprozess erneut durchgeführt.
Implementierung
Anschliessend wird die Software installiert, konfiguriert und gegebenenfalls in die bestehende Softwareinfrastruktur integriert. Mit der Implementierung in die Produktionsumgebung wird den Benutzern die Anwendung bereitgestellt und diese Bereitstellung auf Seiten unserer Kunden inventarisiert. Die Inbetriebnahme markiert im Product-Lifecycle-Management (PLM) den Übergang von der Beschaffungs- zur Nutzungsphase.
Dieser Schritt erfordert eine enge Zusammenarbeit zwischen der IT und den betroffenen Abteilungen, um eine reibungslose Implementierung sicherzustellen. Dazu kann auch eine Aktualisierung der sonstigen Infrastruktur gehören. Der Abschluss der Inbetriebnahme stellt die Einweisung und Schulung der Nutzer und Administratoren dar, die je nach neuem Produkt unterschiedlich intensiv ausfallen können. Bestehende Daten werden zudem in die neue Software migriert.
Wartung und Aktualisierungen
Für den wirtschaftlichen Erfolg ist ein möglichst unterbrechungsfreier Betrieb der eingesetzten Software entscheidend. Dafür ist eine regelmässige Wartung erforderlich, um Fehler zu beheben, Sicherheitsupdates gegen Bedrohungen aus dem Internet bereitzustellen und die Leistung zu optimieren. Für unsere Kunden bieten wir im Rahmen des Application Lifecycle Managements (ALM) nicht nur eine umfassende Anwenderbetreuung, sondern auch eine Überwachung der Software und des kompletten Systems, um mögliche Überlastungen des Systems oder drohende Ausfälle frühzeitig zu erkennen und entsprechende Gegenmassnahmen zu veranlassen.
Durch eine stetige Weiterentwicklung mit regelmässigen Updates und Upgrades wird sichergestellt, dass auf sich ändernde Anforderungen frühzeitig reagiert und Feedback unserer Kunden umgesetzt wird, um die Software stetig zu verbessern und wettbewerbsfähig zu halten.
Betriebssicherung
Für unsere Kunden bieten wir neben dem Monitoring von Software auch die Übernahme von umfangreichen Dienstleistungen im Bereich Support, Wartung und Unterhalt bestehender Hard- und Softwareinfrastrukturen an. Dazu gehört ein 1st, 2nd und 3rd Level Support, um alle Anfragen der Nutzer kompetent und schnell zu beantworten und den Betrieb auf allen Ebenen des Unternehmens jederzeit sicherzustellen. Zu unserem Managed Service gehören weiterhin eine Bereitschaft mit garantierten Reaktionszeiten, die sicherstellt, dass wir bei Bedarf sofort verfügbar sind und auf Störungen reagieren können. Diese schnelle Reaktionsfähigkeit minimiert Ausfallzeiten und trägt dazu bei, den reibungslosen Betrieb der Systeme unserer Kunden sicherzustellen.
Des Weiteren bieten wir einen umfassenden Configuration Management an, auf den wir grossen Wert legen. So wird sichergestellt, dass die Softwareumgebung stets optimal konfiguriert ist und den aktuellen Anforderungen entspricht. Dies umfasst die Verwaltung von Konfigurationsänderungen, um die Stabilität, Sicherheit und Leistung zu gewährleisten. Mit unserem Incident-, Problem- und Change Management gehen wir systematisch vor, um die Ursachen von Problemen zu identifizieren und langfristige Lösungen zu implementieren. Softwareänderungen realisieren wir inkrementell mit dem agilen Ansatz (Scrum) in zwei- bis dreiwöchigen Sprints und stellen damit sicher, dass diese kontrolliert und ordnungsgemäss durchgeführt werden, ohne den Betrieb zu beeinträchtigen.
Rücknahme oder Ausserdienststellung
Wenn die Software nicht mehr benötigt wird oder durch eine neue Version ersetzt wird, erfolgt die Ausserdienststellung. Dies kann den sicheren Abbau von Systemen und die Migration von Daten umfassen. Bei diesem Prozess unterstützen wir unsere Kunden, indem wir sie durch den Dekommissionierungprozess führen. Die Benutzer werden dabei informiert und gegebenenfalls auf alternative Lösungen hingewiesen.
Support bei Legacy Systemen
Häufig ist eine Neuplanung und Einführung einer neuen Software nicht oder zumindest nicht sofort notwendig. Für unsere Kunden bieten wir daher für jeden Schritt des Life Cycle Managements (LCM) unsere Leistungen an. Dies kann die Implementierung von Systemen sein, die durch unsere Kunden bereits beschafft wurden oder die umfangreiche Betriebssicherung im Rahmen von beispielsweise Support und Incidentmanagement. Dabei stellen wir sicher, dass der laufende Betrieb nicht unterbrochen wird. Ergibt sich später ein Bedarf nach neuer Software, können wir mit der Bedarfsanalyse und Planung der Nachfolgelösung starten.