Tomic, V. (2021). A bionic view on complex software systems and the consequences for digital sustainability [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2021.82584
Heutzutag ist Software oft nur ein Teil in einem übergeordneten komplexen System. Ein solches System entwickelt neue Eigenschaften, Potenziale und Risiken, ähnlich einem mehrzelligen Organismus, der andere Eigenschaften aufweist, als die einzelligen Organismen, aus denen er besteht. Dieses Phänomen wird als Emergenz bezeichnet, da es das sich ergebende Verhalten und Eigenschaften eines Systems aufgrund der Interaktion der zugrunde liegenden Agenten beschreibt. Emergentes Verhalten und andere systemische Eigenschaften werden in Softwaresystemen während des Entwicklungsprozesses selten berücksichtigt. Dies stellt in einer Welt zunehmender Komplexität ein großes Risiko dar und hat in der Vergangenheit bereits zu erheblichen Problemen geführt. Uns fehlen klare Richtlinien und Verständnis für die Entwicklungsphase von Software in komplexen Systemen, aber auch für vorangehende Phasen wie Requirements Engineering und nachfolgende Phasen wie Tests und Wartung. Um Kriterien für ein neues Programmierparadigma zu entwickeln, müssen wir die zugrunde liegenden Komplexitätsphänomene sowie das systemische Verhalten komplexer Softwaresysteme verstehen. Ziel dieser Arbeit ist es zu erforschen, was aus der Biologie und anderen Disziplinen gelernt werden kann und wie sich diese Konzepte für den Softwareentwicklungsprozess operationalisieren lassen. Interviewrunden mit einem interdisziplinären Expertengremium sollen die Erarbeitung eines neuen Paradigmas (oder zumindest seiner Kriterien) leiten, das durch die anschließende Inhaltsanalyse und eine zweite Interviewrunde evaluiert wird.
de
Nowadays, individual software often plays a part in large complex software systems. A system like this develops new characteristics, potentials, and risks, much like a multicellular organism, displays different properties than the unicellular organisms that it is made of. This phenomenon is called Emergence as it describes the emerging behaviour and features of a system due to the interaction of underlying components. Emerging behaviour and other systemic properties are rarely considered in software systems during the development process. In a world of increasing complexity, this poses a great risk and has already led to significant issues in the past. We are missing clear guidelines and considerations for the development stage of software in complex systems, but also for previous stages such as requirements engineering and following stages such as testing and maintenance. Developing these criteria for a new programming paradigm requires us to understand the underlying complexity phenomena, as well as the systemic behaviour of complex software systems.The aim of this work is to research what we can learn from biology and other disciplines, and how their concepts can be operationalised for the software development process. Interview rounds with an interdisciplinary expert panel shall guide the compilation of a new paradigm (or at least its criteria), which will be evaluated by the following content analysis and a second interview round.