Devopsuse: Community-Driven Continuous Innovation of Web Information Infrastructures
Total Page:16
File Type:pdf, Size:1020Kb
DevOpsUse: Community-Driven Continuous Innovation of Web Information Infrastructures Von der Fakultät für Mathematik, Informatik und Naturwissenschaften der Rheinisch-Westfälischen Technischen Hochschule Aachen zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften genehmigte Dissertation vorgelegt von Diplom-Medieninformatiker István Koren aus Budapest, Ungarn Berichter: Universitätsprofessor Dr. rer. pol. Matthias Jarke Universitätsprofessor Dr.-Ing. Günther Schuh Privatdozent Dr. rer. nat. Ralf Klamma Tag der mündlichen Prüfung: 8. Mai 2020 Diese Dissertation ist auf den Internetseiten der Universitätsbibliothek online verfügbar. ii Abstract Since its invention in 1989, the only reliable factor on the Web has been its continuous change and diffusion into more and more application areas. The evolution was shaped by an interplay of new technologies on the one hand, and innovative application ideas from communities on the other. At a technological scale, alternation between vastly distributed and centralized architectures can be observed. The current challenges caused by the ongoing digital transformation are changing workplace settings and the adoption of the Internet of Things in industrial use cases, as for example in the context of Industry 4.0. On the Web, new technologies and device types sprawl together with new communication protocols and revised application programming interfaces (APIs). This inhibits the demanded rapid innovation cycles and creates a disruptive and unstable environment in which the requirements of endless communities must be met. Information systems infrastructure, while only partially visible and thus hard to grasp, has a strong influence on user practices. Therefore, the aim of this thesis is to stabilize the dichotomies apparent in the Web by means of an agile information systems development methodology. It supports the evolution of infrastructure through community-driven and model-based technologies to guide it on a sustainable path of continuous innovation. Our DevOpsUse methodology includes users in the pro- cess of infrastructuring, i.e. the appropriation of infrastructure during its usage. Agile development practices in software engineering, in particular DevOps, promote stronger cooperation between de- velopment and operating teams. DevOpsUse additionally fosters a stronger involvement of end users in software development processes. It intends to empower communities of practice to create and run their own software on their specific infrastructure, with the help of various newly developed software artifacts. The instantiation of our DevOpsUse life cycle model starts with Requirements Bazaar, a Web-based tool involving end users in the idea generation and evolution phases. Dire- wolf is a model-based framework bridging the gap between technocratic API descriptions created by developers, and user interfaces understood by end users. Faster development times require a streamlined deployment, which we achieve with the software container-based Layers Box. Ul- timately, distributed development and operation go hand in hand with our evolutionary analytics platform SWEVA. The newly developed DevOpsUse methodology with its four areas, all involving end users, has been successfully validated by the transitions between three generations of technologies: near real- time peer-to-peer Web architectures, edge computing, and the Internet of Things. All technological leaps could be adequately mastered and supported by significantly end-user-oriented measures. In particular, we were able to demonstrate our methodology’s capabilities through longitudinal studies in several large-scale international digitalization projects. DevOpsUse scalability and involvement aspects were confirmed in entrepreneurial and medical teaching courses. Beyond Web information systems, the framework and its open source tools are applicable in further innovative areas like mixed reality and Industry 4.0. Its broad adaptability testifies that DevOpsUse has the potential to unlock sustainable innovation capabilities. iii iv Kurzfassung Seit der Erfindung im Jahr 1989 ist die einzig verlässliche Konstante des Web die stetige Verände- rung und Ausbreitung in immer mehr Anwendungsgebiete. Diese Entwicklung war geprägt durch das Zusammenspiel von neuen Technologien auf der einen Seite, und innovativen Anwendungs- ideen aus Praxisgemeinschaften auf der anderen. Aus technologischer Sicht war dabei ein Wechsel von stark verteilten und zentralisierten Architekturen zu beobachten. Die gegenwärtigen Herausfor- derungen der fortlaufenden Digitalisierung sind veränderte Bedingungen am Arbeitsplatz sowie die Einführung von Technologien für das Internet der Dinge in industriellen Anwendungsfällen, wie beispielsweise im Kontext der Industrie 4.0. Parallel breiten sich im Web neue Technologien und Gerätetypen zusammen mit neuen Kommunikationsprotokollen und überarbeiteten Programmier- schnittstellen aus. Erforderliche Innovationszyklen hemmend entsteht so ein instabiles Umfeld, in dem dennoch Anforderungen diverser Praxisgemeinschaften erfüllt werden müssen. Obwohl Informationssystem-Infrastruktur nur begrenzt sichtbar und damit schwer zu fassen ist, hat sie dennoch einen wesentlichen Einfluss auf Nutzerpraxen. Daher ist das Hauptziel dieser Disser- tation, die im Web vorhandenen gegenseitigen Wechselbeziehungen durch eine agile Informations- system-Entwicklungsmethodik zu stabilisieren. Diese unterstützt die Entwicklung der Infrastruk- tur durch gemeinschaftsorientierte und modellbasierte Technologien, um einen nachhaltigen Kurs der kontinuierlichen Innovation zu ermöglichen. Die DevOpsUse-Methodik basiert auf einer fort- laufenden Einbeziehung von Endanwendern im Sinne des Infrastructuring, d.h. der Veränderung der Infrastruktur während ihrer Nutzung. Agile Entwicklungspraxen aus der Softwaretechnik, im Besonderen DevOps, propagieren eine stärkere Kooperation zwischen den Abteilungen Entwick- lung (Development) und IT-Betrieb (Operations). DevOpsUse fördert darüber hinaus eine höhere Beteiligung der Endanwender an Softwareentwicklungsprozessen. Insbesondere soll es Praxisge- meinschaften in die Lage versetzen, ihre eigene Software auf ihrer spezifischen Infrastruktur auf- zusetzen und zu betreiben, mit Hilfe diverser neu enwickelter Softwareartifakte. Das DevOpsU- se Lebenszyklus-Modell beginnt mit Requirements Bazaar, einem webbasierten Tool, das Endan- wender in die Ideenfindungs- und Entwicklungsphase einbezieht. Direwolf ist ein modellbasiertes Rahmenwerk, das die Lücke zwischen technologieorientierten Schnittstellenbeschreibungen und Benutzeroberflächen schließt. Kürzere Entwicklungszeiten erfordern eine straffer organisierte Aus- lieferung von neuen Softwareversionen, die wir mit der containerbasierten Layers Box erreichen. Im letzten Schritt ergänzen sich die verteilte Entwicklung und der Betrieb mit der evolutionären Analyseplattform SWEVA. Die DevOpsUse-Methodik mit ihren vier Bereichen der Endanwenderintegration wurde erfolg- reich über die Übergänge zwischen drei Technologiegenerationen validiert: der Nahezu-Echtzeit- Kommunikation in Peer-to-Peer Architekturen, Edge Computing, sowie dem Internet der Din- ge. Diese technologischen Entwicklungssprünge der letzten Jahre konnten adäquat gemeistert und durch endanwenderorientierte Maßnahmen unterstützt werden. Insbesondere konnten wir die Lei- stungsfähigkeit unserer Methodik in Langzeitstudien in mehreren internationalen Digitalisierungs- projekten unter Beweis stellen. DevOpsUse Aspekte wie Skalierbarkeit und Nachhaltigkeit wurden in Lehrveranstaltungen zu Themen der Unternehmensgründung und Medizin bestätigt. Über Web- Informationssysteme hinaus sind die entwickelten quelloffenen Anwendungen in weiteren innova- tiven Bereichen wie der erweiterten Realität und Industrie 4.0 einsetzbar. Die breite Anwendbarkeit verdeutlicht das Potenzial von DevOpsUse, nachhaltig Innovationskraft zu entfalten. v vi Acknowledgments This dissertation is the result of my longest journey so far. Countless people helped me in one way or another along the path, and my thanks go to all of them. Nevertheless, I would like to pay special tribute to a few of them. First of all, I would like to thank my dissertation committee. Professor Matthias Jarke created an environment at Informatik 5 where we can work on ideas in our groups; he pushed me forward at the right times, and continues to trust me and my research goals in an interdisciplinary context. I thank Professor Günther Schuh for giving me an outside perspective as second supervisor. Ralf Klamma had the confidence to hire me as a doctoral candidate. He gave me the opportunity to strengthen my profile at numerous project meetings, including important reviews, as well as conference travels. The management principles of research and teaching within the Advanced Community Informa- tion Systems group helped me to organize myself in the long run. I am especially grateful, that despite the global COVID-19 pandemic, my whole dissertation committee was physically present at the exam, obeying social distancing rules. I thank my examiner Professor Wil van der Aalst and the head of exam Professor Hermann Ney for being part of the committee, and for the relaxed atmosphere they contributed to. I am glad to have had such open and supportive office mates. Zinayida Kensche eased my start at RWTH and, with her family, became a friend I can still count on. The same is true for Sandra Geisler, who over the last years witnessed and defused many frustrating situations, which