future trends of software engineering€¦ · agilität ist keine grundlegende ver-änderung, sie...

24
FUTURE TRENDS OF SOFTWARE ENGINEERING

Upload: others

Post on 01-May-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

FUTURE TRENDS OF SOFTWARE ENGINEERING

Page 2: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Einleitung

Page 3: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

In der Softwareentwicklung driften die akade-

mische und die unternehmerische Welt immer

weiter auseinander: Der Abstand zwischen

dem Elfenbeinturm und den Büros wird größer.

Dabei würden von einem engeren Austausch

beide Seiten profitieren. Mit unseren „Future

Trends of Software Engineering“ (FToSE)

wollen wir für diese Fehlentwicklung sensibili-

sieren und eine Diskussion anstoßen. Ziel ist,

durch den Austausch über die zentralen Trends

der Softwareentwicklung wieder mehr gemein-

sames Verständnis der wichtigen Themen und

Entwicklungen zu gewinnen.

Page 4: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Gezähmte Agilität ist der Königsweg.

12345678910

Derzeit entwickelt sich eine „IT of 2 Speeds“: Kritische Systeme werden weiterhin tra-ditionell entwickelt, während Unternehmen alle anderen radikal agil angehen.

PR

AXIS

Page 5: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Vorgehensmodelle für die Softwareentwicklung machen nach wie vor Sinn. Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten.

FOR

SCHUNG

Agilität in der Softwareent-wicklung hat großes Potenzial, das nicht verschenkt werden darf: Es entstehen in kurzer Folge Veränderungsimpulse, die führen zu einer gänzlich neuen Rolle der IT-Abteilungen in Unternehmen.

SYN

THESE

Page 6: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Microservices sind eine tolle Idee.

12345678910

Microservices sind großartig als Integrationsparadigma und für Neuentwicklungen; existierende Landschaften lassen sich aber kaum auf dieser Grundlage umbauen.

SYN

THESE

Page 7: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Microservices sind ein großer Schritt nach vorne. Sie erlau-ben den Experten, heterogene Architekturen miteinander zu verbinden.

PR

AXIS

Architekturparadigmen sind eigentlich stabil. Mal heißt es Modularisierung, mal service-orientierte Architektur und aktuell halt Microservices.

FOR

SCHUNG

Page 8: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Cyber-physikalische Systeme sind nichts strukturell Neues. Mischungen aus Informations-systemen und eingebetteter Software gab es schon immer.

FOR

SCHUNG

Page 9: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

CPS Engineering ist eine neue Disziplin.

12345678910

Cyber-physikalische Systeme führen zu neuen Geschäfts-modellen. Und: Im Internet of Things steigt die Komplexität von Systemen und Beziehun-gen radikal an. Daraus ergeben sich neuartige Herausforde-rungen.

PR

AXIS

CPS Engineering kann auf bestehenden Erkenntnissen aufbauen, ist aber ein neues Tätigkeitsfeld.

SYN

THESE

Page 10: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Usability Engineering ist kein Firlefanz.

12345678910

Usability ist schon auch irgendwie wichtig. Deshalb soll man Usability Engineering in den Softwareprozess integ-rieren.

FOR

SCHUNG

Page 11: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Der Anwender will schöne Oberflächen. Bekommt er sie nicht, wird er Software für nutzlos halten. Und irgendet-was anderes nutzen.

PR

AXIS

Für oberflächenintensive oder mobile oder ungewohnte Anwendungen ist Usability Engineering der Schlüssel zum Erfolg – und deshalb eine wich-tige Disziplin.

SYN

THESE

Page 12: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

In den letzten Jahren hat die akademische Welt zahlreiche Regelwerke entwickelt, die das Problem von Havarien in Soft-wareprojekten lösen. Wenn die Praxis sich an die entspre-chenden Konzepte hält, wird es auch keine Havarien mehr geben.

FOR

SCHUNG

Page 13: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Havariever-meidung ist keine Utopie.

12345678910

Solange Software von Men-schen gemacht wird, wird es Havarien geben. Denn die Gründe dafür sind vielfältig und vor allem bei soziotechni-schen Systemen nicht immer vorhersehbar.

PR

AXIS

Havarien lassen sich deutlich reduzieren, aber nur durch Kon-sequenz und Systematik.

SYN

THESE

Page 14: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Komplexe Softwarelandschaf-ten entwickeln sich evolu-tionär, denn Unternehmen bauen (oder kaufen) jedes einzelne System auf die Art und Weise, wie es für sie in Bezug auf Geschwindigkeit und Wirtschaftlichkeit gerade optimal ist.

PR

AXIS

Die Experten realisieren kom-plexe Softwarelandschaften als „Systems of Systems“, das heißt: Ein einheitlicher Archi-tekturstandard sorgt dafür, dass autonome Systeme für bestimmte Anwendungsge-biete miteinander gekoppelt werden.

FOR

SCHUNG

Page 15: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Softwaresysteme werden Software-landschaften

12345678910

Integrationsszenarien sind vorab nur wenig bekannt. Jedes einzelne System muss so gebaut werden, dass es sich zur Integration anbietet und seinen Beitrag in der Systemevolution leistet.

SYN

THESE

Page 16: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Daten sind wichtiger als Algorithmen.

12345678910

Es kommt eher darauf an, relevante Daten in großer Menge zu gewinnen. Denn die Berechnungskomplexität lässt sich in der Cloud ganz gut beherrschen.

PR

AXIS

Die Verarbeitung massenhaf-ter Daten – und das damit verbundene Ansteigen der Berechnungskomplexität - in modernen Anwendungssze-narien erfordert effiziente und schnelle Algorithmen.

FOR

SCHUNG

Page 17: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

In Big-Data-Anwendungen muss der Fokus auf der Datenbeschaf-fung liegen. Bei der Verarbei-tung können Unternehmen auf funktionierende Infrastrukturen zurückgreifen. Das Optimieren von Algorithmen ist eher Grund-lagenforschung.

SYN

THESE

Page 18: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Ungewissheit ist die einzige Gewissheit

12345678910

Die frühen Phasen der Soft-wareentwicklung bleiben ent-scheidend. Denn hier kommt es darauf an, einen groben, aber sehr guten Überblick über Anforderungen zu gewinnen. Im Laufe des Projektes können die Verantwortlichen dann gut erkennen, worauf es ankommt.

PR

AXIS

Vollständige Vorabbeschrei-bungen für soziotechnische Systeme (eine organisierte Menge von Menschen und Technologien) kann es nicht geben. Deshalb braucht es Verfahren, um mit Anforde-rungen umgehen zu können, die erst während der Entwick-lung auftauchen.

FOR

SCHUNG

Page 19: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Es lohnt sich, das große Bild ausgiebig zu studieren. Details werden während der Entwick-lung ergänzt. Dabei muss immer wieder neu priorisiert und mutig ersetzt werden.

SYN

THESE

Page 20: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Wertorientie-rung ist der Maßstab.

12345678910

Wenn alle wissen, worum es geht, entsteht auch werthal-tige – im Sinne des Kunden wertorientierte – Software.

PR

AXIS

Es gibt viele Metriken zur Software-Produktivität (ange-fangen bei Function Points), aber nur wenige Ansätze zur wertorientierten Entwicklung.

FOR

SCHUNG

Page 21: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Wertorientierung von Software ist essenziell. In Entwicklungs-projekten muss es deshalb eine systematische, in das Vorgehen integrierte Fokussierung auf Werthaltigkeit geben.

SYN

THESE

Page 22: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Die Versprechungen der Künstlichen Intelligenz aus den 1980ern lassen sich mit skalierender Rechenleistung nach und nach umsetzen.

FOR

SCHUNG

Page 23: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

Cognitive Computingis King.

12345678910

Mit großen Datenmengen umzugehen, Muster in solchen Datenmengen zu erkennen und automatische Anpas-sungen vorzunehmen ist ein wichtiger Treiber der Digitalen Transformation. Wie die Tech-niken dazu zu kombinieren sind, ist noch nicht immer klar.

PR

AXIS

Cognitive-Computing-Techniken müssen mit klassischen Infor-mationssystemen integriert werden.

SYN

THESE

Page 24: FUTURE TRENDS OF SOFTWARE ENGINEERING€¦ · Agilität ist keine grundlegende Ver-änderung, sie bietet jedoch nützliche Aspekte, die in Vorgehensmodelle integriert werden sollten

adesso AGStockholmer Allee 2044269 DortmundDeutschlandT +49 231 7000-7000F +49 231 [email protected]

www.adesso.de/future