Software Engineering

thumbnail

©123rft

Was leistet Software Engineering in einer zunehmend komplexeren Welt?

Unternehmen wie Privatpersonen gleichermaßen sind von Software abhängig. Der Einzelne mag dies im Alltag womöglich anders sehen, aber tatsächlich wirkt Software seit dem Beginn der Digitalisisierung, an so vielen Schnittstellen des Lebens und des Wirtschaftskreislaufs, dass das Thema allgegenwärtig ist. Software ist die Grundlage, um Hardware „zum Laufen“ zu bringen. Software ermöglicht es Unternehmen, zunehmend größere und komplexere Datenmengen (Big Data) zu verarbeiten und strategisch zu nutzen. Software wird zunehmend greifbarer, leistet in Form von Computern, Smartphones oder Tablets entscheidende Arbeitserleichterungen im Alltag. Damit Software in dieser Komplexität und Dichte überhaupt vollumfänglich funktionieren kann, bedarf es einer methodisch und systematisch sicheren Grundlage in Form von Software-Architektur.

Jetzt Individualsoftware beauftragen

 

Software Engineering beschreibt den Prozess, hierbei ingenieursmäßig vorzugehen – wir erläutern in den folgenden Absätzen, auf welchen Grundsätzen all dies basiert.

Software Engineering = Softwaretechnik

Der englische Fachbegriff, der auch jedem Beteiligten allgegenwärtig ist, lässt sich am ehesten mit Softwaretechnik ins Deutsche übersetzen. Der Begriff umreißt dabei eine methodische, ingenieursmäßige und systematische Auseinandersetzung mit individueller Softwareentwicklung. Insbesondere haben Ablaufpläne und Werkzeuge eine herausragende Bedeutung. Software ist dabei als Modell zu verstehen, welches je nach Anwendungsbereich in seine Einzelteile zerlegt werden kann. Als Wissenschaftsdisziplin gewinnt Software Engineering zunehmend an Bedeutung, vor allem in der Verknüpfung mit Betriebswirtschaft und Grundzügen der Informatik. Tendenziell ist das Ganze aber deutlich praxisorientiert.

Computer Engineering ist hingegen ein auf Basis von Ingenieur- und Naturwissenschaften existierendes Teilgebiet der Informatik, in welchem insbesondere Anteile von Maschinenbau, Materialwissenschaften und Elektrotechnik zu finden sind. Hier wird eng an der Schnittstelle zwischen Elektrotechnik und Informatik agiert. Damit wirkt dies zum Teil auch wieder in Felder des Software Engineering rein, nämlich immer dann, wenn eine technik- oder ingenieurorientierte Anwendung oder die Entwicklung anwendungsspezifischer Systeme im Zentrum stehen.

Im Hause evonier software solutions arbeiten Experten verschiedenster Teildisziplinen in der Entwicklung von Anwendungssoftware, Datenbankstrukturen und Co. – Ein interdisziplinäres Denken ist dabei Teil unserer täglichen Arbeit, um komplexe Strukturen und Ordnungssysteme beherrschbar zu machen.

Software Engineering besser verstehen

Die innerhalb der Disziplin verankerten Prinzipien, Methoden und Werkzeuge lassen sich so einbinden, um Softwareentwicklung in ihrer ganzen Fülle zu begleiten. Schwerpunktmäßig greifen hier zunehmend auch experimentelle Komponenten mit ein, denn Software ist schließlich praxisorientiert und daher von realen Anwendungsfeldern direkt betroffen. Softwareentwicklung kann in einigen Teilen synonym verstanden werden, je nach Auslegung. Um Ihnen einen Einblick in die jeweiligen Teilgebiete zu geben, werden wir im Folgenden ausgesuchte Bereiche benennen und erläutern.

  • Projektmanagement

Projektmanagement bezeichnet praktisch den Gesamtrahmen, in welchem Softwareentwicklung abläuft. Dies geht von der Initialisierung aus, über Planung und Steuerung, bis hin zur Kontrolle und dem Abschluss eines Projektes. Es ist jedoch nicht mit Prozessmanagement zu verstehen, in welchem Prozesse standardisiert werden. Projektmanagement ist mehr oder minder ausgeprägt, je nach Komplexität und Ansatz der Softwareentwicklung.

  • Softwaretest

Eine funktionsfähige Software ist das Ziel und erfordert ein hohes Maß an Arbeitsgenauigkeit. Softwaretests sind entsprechend in technische und inhaltliche Komponenten aufgegliedert. Im ersten Teil geht es um die Überprüfung einer korrekten Realisierung gemäß DV-Konzept und mögliche Bugs, wohingegen im zweiten Teil die Funktionalitäten in Bezug auf Vollständigkeit des Pflichtenhefts und Eignung überprüft werden. Systemtests werden dabei selbständig durch evonier software solutions durchgeführt, sogenannte Verfahrenstests finden hingegen in enger Abstimmung mit dem Auftraggeber und den Anwendern der Software statt.

  • Wartung und Pflege

Software muss an neue Anforderungen angepasst und gegebenenfalls auch in ihrem Zweck erweitert und neu ausgelegt werden. Kein Programm steht für alle Zeit in der Form zur Verfügung. Sicherheitsrisiken ändern sich, Voraussetzungen in Bezug auf Hardware und andere Software-Komponenten gleichermaßen. Innerhalb dieser Sphären gibt es noch Unterscheidungen hinsichtlich First-level- und Second-level-Support.

©123rf

Aufgabenstellung im Bereich des Software Engineering

Software Development weist einen hohen Anteil an standardisierten Prozessen auf, vor allem was die Strukturierung des Ganzen betrifft. Im Rahmen eines sogenannten Vorgehensmodells wird die Softwareentwicklung in ihre Einzelteile zerlegt und geordnet – in zeitlich und inhaltlich genau abgegrenzte Phasen, die vor allem ein Ziel verfolgen. Software wird konsequent und konsekutiv gebaut, sodass eine Funktion auf der zuvor fertiggestellten Komponente basiert. Um Fehler in der Softwareentwicklung zu vermeiden und die volle Funktionsfähigkeit sicherzustellen, sind unzählige Tests nötig. Aber auch mehrstufige Ansätze finden sich in der Softwareentwicklung. Diese bringen Vorteile hinsichtlich der Systemanalyse mit sich, ebenso wie bei der Ausrichtung des Konzeptes und des ganzen Verfahrens zur späteren Implementierung der Software.

Wir bei evonier software solutions setzen diese Maßstäbe insbesondere im Rahmen einer agilen Softwareentwicklung um. Dabei handelt es sich um eine offene, sehr flexible Form der Softwareprogrammierung. Anders als beim Wasserfallmodell, welches eine sehr eng gestaltete Struktur aufweist, bleiben wir bei agiler Softwareentwicklung sehr flexibel. Wichtige Bestandteile sind hierbei eine schrittweise Programmierung, ausführliche Testverfahren und die Einbindung des Userfeedbacks bereits während des Entwicklungsprozesses. Gerne beraten wir Sie hinsichtlich der Realisierung Ihrer Ideen, beispielsweise zur App Entwicklung (Stichwort: Hybrid-Apps) oder zur Implementierung einer neuen IT-Infrastruktur im Unternehmen. Sprechen Sie uns einfach an und lassen Sie uns gemeinsam an effizienten Lösungen arbeiten.

Merken

Merken

Merken

Merken

Merken

Merken

evoniersoftware.de