TY - RPRT A1 - Schubanz, Mathias T1 - How software engineers deal with decisions in Scrum – An analysis T1 - Wie Softwareentwickler mit Entscheidungen in Scrum umgehen - Eine Analyse N2 - The Agile Manifesto titled “Working software over comprehensive documentation”. Although the stated principle makes an important point, it should not follow that documentation becomes obsolete. On the contrary, agile software development (ASD) is based on frequent decisions focused on customer benefits. Those decisions guide further development, subsequent maintenance, and software evolution and are made during every stage of the software development cycle. Thus, documenting the most important ones is an important foundation fostering product comprehension, software quality, and customer benefit. Besides, preserving decision knowledge supports refactoring and, thus, diminishing software erosion. However, all these beneficial properties are opposed by a dismissive attitude among software developers. Documentation is very unpopular among software developers, especially in the ASD community. A common interpretation of the agile manifesto at this point is that good and functional code can fully replace documentation. Among other reasons, this attitude is the reason for the sparse application of structured and systematic documentation of decisions and their rationale. To shed more light on imponderables, developer’s desires regarding decision documentation, and assess the outlined perception of a lack of decision documentation, this paper reports a survey on decision documentation in Scrum among industry practitioners. The author assesses to what extent the above claims hold by asking industry practitioners about their perceptions and applied practices regarding decision documentation in Scrum. Therefore, the author conducted a large-scale survey in the German and English speaking Scrum community. A few more than 100 software developers were asked what they document, how they document and how they use/share produced documentation. The findings of this report reveal that there is a wide range of opinions in the agile community. The responses show that a developer’s experience significantly impacts the documentation frequency and the interest in the available documentation. Similarly, the role in which software developers have operated in Scrum plays a significant role in the frequency of documentation and the timing when developers document. N2 - Das Agile Manifest besagt sinngemäß "Funktionierende Software geht vor umfassende Dokumentation". Obwohl der genannte Grundsatz einen wichtigen Punkt darstellt, sollte daraus nicht folgen, dass Dokumentation obsolet wird. Im Gegenteil: Agile Softwareentwicklung (ASE) basiert auf häufigen Entscheidungen, die sich am Kundennutzen orientieren. Diese Entscheidungen leiten die weitere Entwicklung, die anschließende Wartung und die Software-Evolution und werden in jeder Phase des Software-Entwicklungszyklus getroffen. Daher ist die Dokumentation der wichtigsten Entscheidungen eine wichtige Grundlage, die das Produktverständnis, die Softwarequalität und den Kundennutzen fördert. Außerdem verbessert die Bewahrung von Entscheidungswissen das Refactoring und damit die Verringerung von Software-Erosion. All diesen positiven Eigenschaften steht jedoch eine ablehnende Haltung unter Softwareentwicklern gegenüber. Dokumentation ist bei Softwareentwicklern sehr unbeliebt, insbesondere in der ASE-Community. Eine gängige Interpretation des agilen Manifests ist an dieser Stelle, dass guter und funktionaler Code die Dokumentation vollständig ersetzen kann. Diese Einstellung ist unter anderem der Grund für die spärliche Anwendung von strukturierter und systematischer Dokumentation von Entscheidungen und deren Begründung. Um mehr Licht in die Unwägbarkeiten und Wünsche der Entwickler bezüglich der Entscheidungsdokumentation zu bringen und die skizzierte Wahrnehmung eines Mangels an Entscheidungsdokumentation zu bewerten, berichtet dieser Beitrag über eine Umfrage zum Thema Entscheidungsdokumentation in Scrum unter Entwicklern aus der Industrie. Der Autor erforscht, inwieweit die obigen Behauptungen zutreffen, indem er Praktiker aus der Industrie zu ihren Wahrnehmungen und angewandten Praktiken bezüglich der Entscheidungsdokumentation in Scrum befragt. Dazu führte der Autor in der deutsch- und englischsprachigen Scrum-Community eine umfangreiche Umfrage durch. Etwas mehr als 100 Softwareentwickler wurden befragt, was sie dokumentieren, wie sie dokumentieren und wie sie die erstellte Dokumentation nutzen/teilen. Die Ergebnisse zeigen, dass es eine große Bandbreite an Meinungen in der agilen Community gibt. Die Antworten lassen erkennen, dass die Erfahrung eines Entwicklers einen signifikanten Einfluss auf die Dokumentationshäufigkeit und das Interesse an der vorhandenen Dokumentation auswirkt. Ebenso ist die Rolle, in der Software Softwareentwickler in Scrum gearbeitet haben, entscheidend für die Häufigkeit der Dokumentation und den Zeitpunkt, wann Entwickler dokumentieren. KW - Agile software development KW - Decision documentation KW - Survey KW - Rationale management KW - Scrum KW - Agiles Software Engineering KW - Entscheidungsdokumentation KW - Umfrage KW - Begründungsmanagement KW - Scrum KW - Agile Softwareentwicklung KW - Scrum KW - Programmdokumentation KW - Umfrage Y1 - 2021 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:co1-opus4-50662 ER - TY - THES A1 - Schubanz, Mathias T1 - CUSTOM – MADE Scrum : CUSTOMized MAnagement of DEcision – knowledge in Scrum T1 - CUSTOM – MADE Scrum : Maßgeschneidertes Entscheidungsmanagement im Scrum N2 - Das Managen von Entscheidungen in der Softwareentwicklung, insbesondere im agilen Kontext, stellt eine anspruchsvolle Aufgabe dar. Oft können Entscheidungen anhand von durchgeführten Aktionen oder dem Quellcode nachvollzogen werden. Häufig bleibt jedoch das "Warum?" unklar. Das Fehlen von Begründungen erschwert zukünftige Entwicklungsarbeiten, Wartungsarbeiten oder etwaige Weiterentwicklungen erheblich. Besonders interessant ist auch oft die Frage nach dem "Warum nicht?" – also warum wurde eine Lösungsalternative verworfen? Diese Fragen sind zentral für Softwareentwickler. Im Gegensatz dazu tendieren lineare Vorgehensmodelle wie das Wasserfall-Modell dazu, übermäßig viel zu dokumentieren. Produkt- und Prozessdokumentation sowie detaillierte Handbücher sind hier üblich. Sie lösen jedoch nicht das Dilemma der Asymmetrie zwischen Angebot und Nachfrage. Der Paradigmenwechsel hin zu agilen Methoden hat dieses Problem auch nicht gelöst, sondern möglicherweise sogar verschärft. Das agile Manifest betont zwar die Kommunikation über Dokumentation, doch viele Entwickler interpretieren dies falsch und betrachten Code als die einzige Dokumentation. Die vorliegende Arbeit setzt an diesem Problem im Rahmen des Scrum-Frameworks an. Ihr Ziel ist es, die Dokumentation von wichtigen Entscheidungen strukturierter in den Scrum-Prozess zu integrieren. Die Arbeit umfasst eine Literaturuntersuchung, um festzustellen, was und in welchem Umfang dokumentiert werden sollte. Darüber hinaus beschäftigt sie sich mit der Frage, wie diese Dokumentation effektiv in den Scrum-Prozess integriert werden kann. Um diese Ziele zu erreichen, wurden Erfahrungen aus der Praxis durch Interviews und eine umfassende Umfrage eingeholt. Industrieerfahrene Softwareentwickler sowie mehrere hundert Studierende wurden in Fallstudien einbezogen. Die resultierenden Daten ergänzen den bestehenden Stand der Forschung und helfen, Wege für eine strukturierte Dokumentation, Verarbeitung und Wiederverwendung von Entscheidungswissen in Scrum zu identifizieren. Basierend auf den neuen Erkenntnissen wurde eine Erweiterung des Scrum-Frameworks namens Custom-MADE Scrum abgeleitet. Sie zeichnet sich durch einen adaptiven und flexiblen Ansatz zur Dokumentation von Entscheidungen und ihrer Begründung aus. Weiterhin definiert sie klare Verantwortlichkeiten und bietet Prozessbausteine für die strukturierte Integration der Dokumentation relevanter Entscheidungen in. Diese Erweiterung kann sowohl in bestehende als auch neu aufzusetzende Projekte integriert werden. Zusätzlich zu der Erweiterung wurde ein Werkzeug namens Custom-MADE Editor entwickelt. Es zielt darauf alle Potenziale zur Automatisierung der Dokumentation innerhalb des Custom-MADE Scrum zu heben, um den Prozess so effizient wie möglich zu gestalten. Insgesamt präsentiert der Autor einen flexiblen Ansatz zur systematischen Integration von Entscheidungsdokumentation in das Scrum-Framework. Die Ergebnisse stützen sich auf verschiedene empirische Arbeiten. N2 - Managing decisions in software development, especially in the agile context, is a challenging task. Often, decisions can be traced back through actions taken or the source code. However, the "Why?" behind these decisions is frequently unclear. The absence of explanations significantly complicates future development, maintenance, or further advancements. Also intriguing is the question of "Why not?" – why was an alternative solution discarded? These questions are central to software developers. In contrast, linear models like the waterfall approach tend to over-document. Product and process documentation, along with detailed manuals, are common. However, they fail to address the dilemma of asymmetry between supply and demand. The paradigm shift towards agile methods hasn't solved this problem, possibly exacerbating it. Though the agile manifesto emphasizes communication over documentation, many developers misunderstand it, considering code the sole documentation. This work addresses this issue within the Scrum framework, aiming to integrate the documentation of important decisions more systematically. It includes a literature review to determine what and to what extent should be documented. Additionally, it explores how this documentation can be effectively integrated into the Scrum process. To achieve these goals, practical experiences were gathered through interviews and a comprehensive survey. Industry-experienced software developers and several hundred students participated in case studies. The resulting data complement existing research and help identify ways to structure documentation, processing, and reuse decision knowledge in Scrum. Based on these insights, an extension of the Scrum framework called Custom-MADE Scrum was derived. It features an adaptive and flexible approach to documenting decisions and their rationale. It also defines clear responsibilities and provides process modules for the structured integration of decision documentation. This extension can be integrated into both existing and new projects. In addition to the extension, a tool called Custom-MADE Editor was developed. It aims to leverage automation to streamline documentation within Custom-MADE Scrum, making the process as efficient as possible. Overall, the author presents a flexible approach to systematically integrate decision documentation into the Scrum framework. The results are based on various empirical works. KW - Scrum KW - Rationale management KW - Documentation KW - Knowledge management KW - Decision knowledge KW - Entscheidungsbegründungen KW - Entscheidungswissen KW - Dokumentation KW - Agile Softwareentwicklung KW - Scrum KW - Programmdokumentation Y1 - 2023 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:co1-opus4-67003 ER -