@phdthesis{Hitz2021, author = {Hitz, Michael}, title = {Modellierung und Generierung kombinierbarer Benutzungsschnittstellenvarianten und deren gemeinschaftliche Nutzung in Dienst-Ökosystemen}, doi = {10.25932/publishup-50022}, url = {http://nbn-resolving.de/urn:nbn:de:kobv:517-opus4-500224}, school = {Universit{\"a}t Potsdam}, pages = {viii, 313}, year = {2021}, abstract = {Digitalisierung erm{\"o}glicht es uns, mit Partnern (z.B. Unternehmen, Institutionen) in einer IT-unterst{\"u}tzten Umgebung zu interagieren und T{\"a}tigkeiten auszuf{\"u}hren, die vormals manuell erledigt wurden. Ein Ziel der Digitalisierung ist dabei, Dienstleistungen unterschiedlicher fachlicher Dom{\"a}nen zu Prozessen zu kombinieren und vielen Nutzergruppen bedarfsgerecht zug{\"a}nglich zu machen. Hierzu stellen Anbieter technische Dienste bereit, die in unterschiedliche Anwendungen integriert werden k{\"o}nnen. Die Digitalisierung stellt die Anwendungsentwicklung vor neue Herausforderungen. Ein Aspekt ist die bedarfsgerechte Anbindung von Nutzern an Dienste. Zur Interaktion menschlicher Nutzer mit den Diensten werden Benutzungsschnittstellen ben{\"o}tigt, die auf deren Bed{\"u}rfnisse zugeschnitten sind. Hierzu werden Varianten f{\"u}r spezifische Nutzergruppen (fachliche Varianten) und variierende Umgebungen (technische Varianten) ben{\"o}tigt. Zunehmend m{\"u}ssen diese mit Diensten anderer Anbieter kombiniert werden k{\"o}nnen, um dom{\"a}nen{\"u}bergreifend Prozesse zu Anwendungen mit einem erh{\"o}hten Mehrwert f{\"u}r den Endnutzer zu verkn{\"u}pfen (z.B. eine Flugbuchung mit einer optionalen Reiseversicherung). Die Vielf{\"a}ltigkeit der Varianten l{\"a}sst die Erstellung von Benutzungsschnittstellen komplex und die Ergebnisse sehr individuell erscheinen. Daher werden die Varianten in der Praxis vorwiegend manuell erstellt. Dies f{\"u}hrt zur parallelen Entwicklung einer Vielzahl sehr {\"a}hnlicher Anwendungen, die nur geringes Potential zur Wiederverwendung besitzen. Die Folge sind hohe Aufw{\"a}nde bei Erstellung und Wartung. Dadurch wird h{\"a}ufig auf die Unterst{\"u}tzung kleiner Nutzerkreise mit speziellen Anforderungen verzichtet (z.B. Menschen mit physischen Einschr{\"a}nkungen), sodass diese weiterhin von der Digitalisierung ausgeschlossen bleiben. Die Arbeit stellt eine konsistente L{\"o}sung f{\"u}r diese neuen Herausforderungen mit den Mitteln der modellgetriebenen Entwicklung vor. Sie präsentiert einen Ansatz zur Modellierung von Benutzungsschnittstellen, Varianten und Kompositionen und deren automatischer Generierung f{\"u}r digitale Dienste in einem verteilten Umfeld. Die Arbeit schafft eine L{\"o}sung zur Wiederverwendung und gemeinschaftlichen Nutzung von Benutzungsschnittstellen {\"u}ber Anbietergrenzen hinweg. Sie f{\"u}hrt zu einer Infrastruktur, in der eine Vielzahl von Anbietern ihre Expertise in gemeinschaftliche Anwendungen einbringen k{\"o}nnen. Die Beitr{\"a}ge bestehen im Einzelnen in Konzepten und Metamodellen zur Modellierung von Benutzungsschnittstellen, Varianten und Kompositionen sowie einem Verfahren zu deren vollst{\"a}ndig automatisierten Transformation in funktionale Benutzungsschnittstellen. Zur Umsetzung der gemeinschaftlichen Nutzbarkeit werden diese erg{\"a}nzt um eine universelle Repr{\"a}sentation der Modelle, einer Methodik zur Anbindung unterschiedlicher Dienst-Anbieter sowie einer Architektur zur verteilten Nutzung der Artefakte und Verfahren in einer dienstorientierten Umgebung. Der Ansatz bietet die Chance, unterschiedlichste Menschen bedarfsgerecht an der Digitalisierung teilhaben zu lassen. Damit setzt die Arbeit Impulse f{\"u}r zuk{\"u}nftige Methoden zur Anwendungserstellung in einem zunehmend vielf{\"a}ltigen Umfeld.}, language = {de} } @misc{Giese2019, author = {Giese, Holger Burkhard}, title = {Software Engineering for Smart Cyber-Physical Systems}, series = {Proceedings of the 12th Innovations on Software Engineering Conference}, journal = {Proceedings of the 12th Innovations on Software Engineering Conference}, publisher = {Association for Computing Machinery}, address = {New York}, isbn = {978-1-4503-6215-3}, doi = {10.1145/3299771.3301650}, pages = {1}, year = {2019}, abstract = {Currently, a transformation of our technical world into a networked technical world where besides the embedded systems with their interaction with the physical world the interconnection of these nodes in the cyber world becomes a reality can be observed. In parallel nowadays there is a strong trend to employ artificial intelligence techniques and in particular machine learning to make software behave smart. Often cyber-physical systems must be self-adaptive at the level of the individual systems to operate as elements in open, dynamic, and deviating overall structures and to adapt to open and dynamic contexts while being developed, operated, evolved, and governed independently. In this presentation, we will first discuss the envisioned future scenarios for cyber-physical systems with an emphasis on the synergies networking can offer and then characterize which challenges for the design, production, and operation of these systems result. We will then discuss to what extent our current capabilities, in particular concerning software engineering match these challenges and where substantial improvements for the software engineering are crucial. In today's software engineering for embedded systems models are used to plan systems upfront to maximize envisioned properties on the one hand and minimize cost on the other hand. When applying the same ideas to software for smart cyber-physical systems, it soon turned out that for these systems often somehow more subtle links between the involved models and the requirements, users, and environment exist. Self-adaptation and runtime models have been advocated as concepts to covers the demands that result from these subtler links. Lately, both trends have been brought together more thoroughly by the notion of self-aware computing systems. We will review the underlying causes, discuss some our work in this direction, and outline related open challenges and potential for future approaches to software engineering for smart cyber-physical systems.}, language = {en} } @article{RoepkeLarischSchroeder2018, author = {R{\"o}pke, Ren{\´e} and Larisch, Kathrin and Schroeder, Ulrik}, title = {F{\"o}rderung {\"u}berfachlicher Kompetenzen in praktischen Software- Engineering-Veranstaltungen der RWTH Aachen}, series = {Commentarii informaticae didacticae}, journal = {Commentarii informaticae didacticae}, number = {12}, publisher = {Universit{\"a}tsverlag Potsdam}, address = {Potsdam}, url = {http://nbn-resolving.de/urn:nbn:de:kobv:517-opus4-416334}, pages = {79 -- 89}, year = {2018}, abstract = {Im Rahmen eines Informatikstudiums wird neben theoretischen Grundlagen und Programmierf{\"a}higkeiten auch gezielt vermittelt, wie moderne Software in der Praxis entwickelt wird. Dabei wird oftmals eine Form der Projektarbeit gew{\"a}hlt, um Studierenden m{\"o}glichst realit{\"a}tsnahe Erfahrungen zu erm{\"o}glichen. Die Studierenden entwickeln einzeln oder in kleineren Teams Softwareprodukte f{\"u}r ausgew{\"a}hlte Problemstellungen. Neben fachlichen Inhalte stehen durch gruppendynamische Prozesse auch {\"u}berfachliche Kompetenzen im Fokus. Dieser Beitrag pr{\"a}sentiert eine Interviewstudie mit Dozierenden von Softwareprojektpraktika an der RWTH Aachen und konzentriert sich auf die Ausgestaltung der Veranstaltungen sowie F{\"o}rderung von {\"u}berfachlichen Kompetenzen nach einem Kompetenzprofil f{\"u}r Softwareingenieure.}, language = {de} } @phdthesis{Dietze2004, author = {Dietze, Stefan}, title = {Modell und Optimierungsansatz f{\"u}r Open Source Softwareentwicklungsprozesse}, url = {http://nbn-resolving.de/urn:nbn:de:kobv:517-0001594}, school = {Universit{\"a}t Potsdam}, year = {2004}, abstract = {Gerade in den letzten Jahren erfuhr Open Source Software (OSS) eine zunehmende Verbreitung und Popularit{\"a}t und hat sich in verschiedenen Anwendungsdom{\"a}nen etabliert. Die Prozesse, welche sich im Kontext der OSS-Entwicklung (auch: OSSD \– Open Source Software-Development) evolution{\"a}r herausgebildet haben, weisen in den verschiedenen OSS-Entwicklungsprojekten z.T. {\"a}hnliche Eigenschaften und Strukturen auf und auch die involvierten Entit{\"a}ten, wie z.B. Artefakte, Rollen oder Software-Werkzeuge sind weitgehend miteinander vergleichbar. Dies motiviert den Gedanken, ein verallgemeinerbares Modell zu entwickeln, welches die generalisierbaren Entwicklungsprozesse im Kontext von OSS zu einem {\"u}bertragbaren Modell abstrahiert. Auch in der Wissenschaftsdisziplin des Software Engineering (SE) wurde bereits erkannt, dass sich der OSSD-Ansatz in verschiedenen Aspekten erheblich von klassischen (propriet{\"a}ren) Modellen des SE unterscheidet und daher diese Methoden einer eigenen wissenschaftlichen Betrachtung bed{\"u}rfen. In verschiedenen Publikationen wurden zwar bereits einzelne Aspekte der OSS-Entwicklung analysiert und Theorien {\"u}ber die zugrundeliegenden Entwicklungsmethoden formuliert, aber es existiert noch keine umfassende Beschreibung der typischen Prozesse der OSSD-Methodik, die auf einer empirischen Untersuchung existierender OSS-Entwicklungsprojekte basiert. Da dies eine Voraussetzung f{\"u}r die weitere wissenschaftliche Auseinandersetzung mit OSSD-Prozessen darstellt, wird im Rahmen dieser Arbeit auf der Basis vergleichender Fallstudien ein deskriptives Modell der OSSD-Prozesse hergeleitet und mit Modellierungselementen der UML formalisiert beschrieben. Das Modell generalisiert die identifizierten Prozesse, Prozessentit{\"a}ten und Software-Infrastrukturen der untersuchten OSSD-Projekte. Es basiert auf einem eigens entwickelten Metamodell, welches die zu analysierenden Entit{\"a}ten identifiziert und die Modellierungssichten und -elemente beschreibt, die zur UML-basierten Beschreibung der Entwicklungsprozesse verwendet werden. In einem weiteren Arbeitsschritt wird eine weiterf{\"u}hrende Analyse des identifizierten Modells durchgef{\"u}hrt, um Implikationen, und Optimierungspotentiale aufzuzeigen. Diese umfassen beispielsweise die ungen{\"u}gende Plan- und Terminierbarkeit von Prozessen oder die beobachtete Tendenz von OSSD-Akteuren, verschiedene Aktivit{\"a}ten mit unterschiedlicher Intensit{\"a}t entsprechend der subjektiv wahrgenommenen Anreize auszu{\"u}ben, was zur Vernachl{\"a}ssigung einiger Prozesse f{\"u}hrt. Anschließend werden Optimierungszielstellungen dargestellt, die diese Unzul{\"a}nglichkeiten adressieren, und ein Optimierungsansatz zur Verbesserung des OSSD-Modells wird beschrieben. Dieser Ansatz umfasst die Erweiterung der identifizierten Rollen, die Einf{\"u}hrung neuer oder die Erweiterung bereits identifizierter Prozesse und die Modifikation oder Erweiterung der Artefakte des generalisierten OSS-Entwicklungsmodells. Die vorgestellten Modellerweiterungen dienen vor allem einer gesteigerten Qualit{\"a}tssicherung und der Kompensation von vernachl{\"a}ssigten Prozessen, um sowohl die entwickelte Software- als auch die Prozessqualit{\"a}t im OSSD-Kontext zu verbessern. Desweiteren werden Softwarefunktionalit{\"a}ten beschrieben, welche die identifizierte bestehende Software-Infrastruktur erweitern und eine gesamtheitlichere, softwaretechnische Unterst{\"u}tzung der OSSD-Prozesse erm{\"o}glichen sollen. Abschließend werden verschiedene Anwendungsszenarien der Methoden des OSS-Entwicklungsmodells, u.a. auch im kommerziellen SE, identifiziert und ein Implementierungsansatz basierend auf der OSS GENESIS vorgestellt, der zur Implementierung und Unterst{\"u}tzung des OSSD-Modells verwendet werden kann.}, language = {de} }