Simple Science

Hochmoderne Wissenschaft einfach erklärt

# Computerwissenschaften# Software-Entwicklung

Die Rolle des Theoretisierens in der Software Engineering Forschung

Die Bedeutung von Theoretisieren für Softwaretechnik-Forscher und -Pädagogen erkunden.

― 10 min Lesedauer


Die Auswirkungen vonDie Auswirkungen vonTheoretisieren auf dieSoftwareforschungdas Wissen in der Softwareentwicklung.Wesentliche Theorienprodukte fördern
Inhaltsverzeichnis

Dieser Artikel diskutiert, wie man Software-Ingenieure und Lehrer dabei unterstützen kann, die Bedeutung von Theorie und den Prozess des Theorisierens in ihrer Arbeit zu verstehen. Er hebt 12 Produkte des Theorisierens hervor und erklärt deren Rolle in der Software-Ingenieurforschung. Einige dieser Produkte helfen, Forschungsstudien zu rahmen, neue Theorien zu generieren und Komponenten von Theorien zu bilden. Das Feld der Software-Ingenieurwissenschaften entwickelt immer noch eigene Theorien, aber diese Produkte sind breit anwendbar und können die Forschungspraxis stark beeinflussen.

Historische Perspektive auf wissenschaftliches Denken

Die alten Griechen machten bedeutende Fortschritte in verschiedenen Wissenschaften. Ein Grund für ihren Erfolg war ihr Ansatz, die Welt zu verstehen. Sie beobachteten nicht nur Dinge, sondern schufen auch Modelle und Kategorien, um ihre Ergebnisse zu erklären. Diese Praxis half ihnen, Regeln und zugrunde liegende Prinzipien zu bilden. Im Vergleich dazu fehlt der zeitgenössischen Forschung, einschliesslich der Software-Ingenieurwissenschaft, manchmal diese Tiefe des Denkens. Oft gibt es eine Disconnect zwischen Erkenntnissen und theoretischen Rahmen, die Kontext bieten könnten.

Einige Forscher haben darauf hingewiesen, dass viele Studien im Bereich Software-Ingenieurwissenschaften den Fachleuten aus der Industrie keinen wertvollen Einblick bieten. Diese Disconnect kann die Relevanz der Forschungscommunity schädigen. Es besteht die Notwendigkeit, dies zu ändern, indem man sich mehr auf die Entwicklung von Theorien und konzeptionellen Rahmen konzentriert.

Die Bedeutung des Theorisierens

Warum ist Theorisieren wichtig? Es gibt mehrere Schlüsselfaktoren:

  1. Unterscheidung von nicht-wissenschaftlicher Arbeit: Theorie ist das, was wissenschaftliche Untersuchung von anderen Formen der Forschung, wie Journalismus oder Beratung, trennt. Ergebnisse zu präsentieren, ohne sie mit breiteren Konzepten zu verbinden, bringt das Feld nicht weiter.

  2. Kumulative Erkenntnisse: Ohne Theorien, die verschiedene Studien miteinander verbinden, bleibt das Wissen aus verschiedenen Forschungsanstrengungen isoliert. Ein Mangel an übergreifenden Ideen bedeutet, dass ähnliche Ergebnisse nicht aufeinander aufbauen, was den Fortschritt einschränkt.

  3. Erklärung von Ergebnissen: Oft erscheinen Forschungsergebnisse offensichtlich. Theorisieren hilft, diese Ergebnisse zu entschlüsseln und Annahmen innerhalb der bestehenden Literatur in Frage zu stellen, sodass klar wird, warum die Ergebnisse relevant sind.

Überblick über Theorisierungsprodukte

Die Diskussion ist um 12 Zwischenprodukte des Theorisierens strukturiert, die Erkenntnisse aus anderen Bereichen wie Informationssystemen beziehen. Das Ziel dieses Artikels ist es, zunächst diese Theorisierungsprodukte und ihre Bedeutung in der Software-Ingenieurforschung vorzustellen. Dann soll es Forscher ermutigen, konzeptionelles Denken in ihre Arbeit zu integrieren.

Lernziele für diesen Artikel sind:

  • Die Rolle des Theorisierens in der Software-Ingenieurforschung zu schätzen.
  • Die 12 Theorisierungsprodukte im Kontext der Software-Ingenieurwissenschaft anzuwenden.
  • Theoretische Fortschritte in Software-Ingenieurpapieren mithilfe dieser Produkte zu erkennen und zu rekonstruieren.

Ansichten über Theorie in der Software-Ingenieurforschung

Obwohl es Bemühungen gab, der Theorie in der Software-Ingenieurwissenschaft mehr Aufmerksamkeit zu schenken, übersehen viele in dem Bereich sie immer noch. Einige Forscher finden, dass traditionelle Konzepte von Theorie nicht auf ihre Arbeit zutreffen, was Herausforderungen mit sich bringt. Es scheint keine allgemeingültige Definition dafür zu geben, was eine Theorie ausmacht, was zu Verwirrung über ihre Rolle in der Forschung führt.

Um voranzukommen, könnte es vorteilhaft sein, sich auf zwischenproduzierende Theorisierungsprodukte zu konzentrieren, anstatt sich strikt an traditionellen Definitionen von Theorie zu orientieren. Diese Produkte können verschiedene Formen annehmen und zur Weiterentwicklung der Software-Ingenieurforschung beitragen.

Die Wahrnehmungen der Forscher über Theorie variieren und werden von ihren spezifischen Bereichen innerhalb der Software-Ingenieurwissenschaft beeinflusst. Beispielsweise können verschiedene Teilgebiete unterschiedliche Normen dafür haben, was gültige Forschung ausmacht. Einige Forscher beneiden andere Disziplinen um ihre etablierten Theorien, während andere ihre Arbeit als Teil einer sich entwickelnden theoretischen Perspektive innerhalb ihres Nischenbereichs sehen.

Definition von Theorie und verwandten Konzepten

Die meisten Diskussionen über Theorie in der Software-Ingenieurwissenschaft vereinfachen sie auf eine Beziehung zwischen Konzepten. Zum Beispiel besagen Variations-Theorien, dass, wenn A B beeinflusst, sowohl A als auch B als Konzepte gelten, und ihre Beziehung mit Daten getestet werden kann. Obwohl dieses Modell intuitiv ist, berücksichtigt es nicht die komplexeren Formen von Theorien, die in anderen Feldern zu finden sind.

Eine andere Art von Theorie ist die Prozess-Theorie, die die Abfolge von Ereignissen über die Zeit erklärt. Während Variations-Theorien mit quantifizierbaren Daten getestet werden können, sind Prozess-Theorien oft besser für narrative Erklärungen geeignet.

Über diese hinaus existieren in verschiedenen Disziplinen andere Ansätze zur Theorie. Zum Beispiel untersucht die Praxistheorie die Anwendung von Methoden und Prinzipien innerhalb eines sozialen Kontextes. Das deutet darauf hin, dass es kein definitives Format dafür gibt, was in den verschiedenen Bereichen, einschliesslich der Software-Ingenieurwissenschaft, eine Theorie ausmacht.

Herausforderungen bei der Entwicklung von Theorie in der Software-Ingenieurwissenschaft

Die Entwicklung von Theorie in der Software-Ingenieurwissenschaft ist nicht einfach. Einige Herausforderungen umfassen:

  1. Mangelndes Wissen: Viele Forscher verstehen den Prozess des Theorisierens nicht vollständig und neigen dazu, damit verbundene Arbeiten oberflächlich zu behandeln. Das führt zu einer unzureichenden Tiefe in der kumulativen Tradition des Feldes.

  2. Schnelles Umfeld: Die Software-Ingenieurwissenschaft ist schnelllebig. Neue Technologien und Trends entstehen rasch, was langfristiges Theorisieren schwierig macht. Forscher setzen oft kurzfristige Auswirkungen über langfristigen Theorieaufbau.

  3. Verwirrung bei Begriffen: Die verwendeten Begriffe in der Theorieentwicklung, wie „Modell“, „Rahmen“ und „Konstrukte“, können verwirrend sein. Das erschwert Diskussionen und behindert das Verständnis.

Die Bedeutung des Theorisierens kann nicht genug betont werden. Das Kapitel wird diese Herausforderungen ansprechen und die Zwischenprodukte des Theorisierens näher erläutern, um Klarheit zu bieten.

Theorierahmen

Der erste Typ des Theorisierungsprodukts ist das Rahmen. Das Framing beinhaltet die Identifikation des Forschungsproblems und dessen Einordnung in die reale Welt. Es hilft, einen ersten Anknüpfungspunkt zu finden oder bestehende Arbeiten zu problematisieren. Das Framing eines Themas beginnt mit relevanten Fragen, die in die Forschung führen.

Verschiedene Bereiche stellen unterschiedliche Fragen zu demselben Phänomen, was die Notwendigkeit eines kontextuellen Bewusstseins hervorhebt. Zum Beispiel wurde das Konzept der Open Source Software (OSS) aus verschiedenen Perspektiven in der Wirtschaft, den Informationssystemen und der Software-Ingenieurwissenschaft betrachtet.

Eine gut formulierte Frage weckt nicht nur Interesse, sondern zeigt auch ein Verständnis für die bestehende Literatur. Indem sie etablierte Annahmen herausfordern, können Forscher neue Einsichten generieren, die den Weg für innovative Theorien ebnen.

Arten von Fragen im Framing

Fragen variieren je nach den Paradigmen, denen Forscher anhängen. Beispielsweise können Fragen zu Methoden innerhalb der Software-Ingenieurwissenschaft stark variieren, je nach dem verwendeten Rahmen. Verschiedene Paradigmen können zu Anfragen führen, die sich auf verschiedene Aspekte der Softwareentwicklung konzentrieren.

In der Vergangenheit wurde der theoretischen Modellierung in der Software-Ingenieurwissenschaft sehr wenig Beachtung geschenkt. Forscher haben festgestellt, dass der Fokus auf der Entwicklung von Technologien lag, anstatt die Prozesse zu verstehen, die damit verbunden sind. Das hat die theoretischen Grundlagen des Feldes eingeschränkt.

Die Rolle der Gesetze

Gesetze dienen als allgemeine Aussagen, die unter bestimmten Bedingungen wahr sind und Erklärungskraft bieten. Verschiedene „Gesetze“ existieren in der Software-Ingenieurwissenschaft und bieten eine Grundlage für die Generierung von Forschungsfragen und das Framing von Studien. Zum Beispiel besagt Brooks Gesetz, dass es nur zu weiteren Verzögerungen führt, wenn man mehr Personal zu einem verspäteten Softwareprojekt hinzufügt. Dieses Gesetz kann getestet werden und verwendet werden, um Annahmen in Softwareprojekten herauszufordern oder zu bestätigen.

Ähnlich deutet Conway’s Gesetz darauf hin, dass die Architektur der Software die Kommunikationsstruktur innerhalb der Organisation widerspiegelt. Diese Einsichten können Forscher dazu anregen, neue Fragen und Wege in der Software-Ingenieurforschung zu erkunden.

Konzeptionelle Rahmen

Ein konzeptioneller Rahmen fungiert als Karte der wichtigen Elemente innerhalb einer Studie. Er beschreibt, wie Konzepte miteinander in Beziehung stehen, bietet jedoch möglicherweise keine expliziten Verbindungen zwischen ihnen. Forscher müssen einen effektiven Rahmen entwickeln, bevor sie mit empirischer Arbeit beginnen. Ein gut definierter Rahmen hilft, Forschungsfoki zu klären und die Studie im Laufe der Zeit zu verfeinern.

Die Erstellung eines konzeptionellen Rahmens erfordert eine umfangreiche Literaturübersicht und Begründung. Forscher sollten es vermeiden, ihre Rahmen übermässig kompliziert zu gestalten, da Einfachheit den Fokus erhöhen kann. Eine überschaubare Anzahl von Themen ist ideal für eine effektive Erkundung der Themen.

Theorisierungsprodukte

Die zweite Gruppe von Theorisierungsprodukten umfasst Mythos, Analogie, Metapher und Modell. Diese dienen dazu, neue Theorien zu generieren, indem sie eine Grundlage zum Verständnis verschiedener Phänomene bieten.

  1. Mythen: Mythen sind Überzeugungen, die nicht auf Beweisen basieren und helfen können, bestehende Annahmen in Frage zu stellen. Ein klassisches Beispiel in der Softwareentwicklung ist der Mythos des Wasserfallansatzes, der eine lineare Entwicklungsweise postuliert, die selten mit realen Praktiken übereinstimmt.

  2. Analogien: Analogien helfen, unbekannte Konzepte durch Vergleiche zu erklären. Zum Beispiel kann pair programming verstanden werden, indem man es mit dem Fahrradfahren auf einem Tandem vergleicht, was die Teamarbeit betont.

  3. Metaphern: Metaphern bieten tiefere Einsichten, indem sie behaupten, dass eine Sache eine andere ist. Zum Beispiel deutet der Begriff „technische Schulden“ darauf hin, dass das Versäumnis, Softwareprobleme anzugehen, zu langfristigen Kosten führen kann, was klare Parallelen zu finanziellen Schulden zieht.

  4. Modelle: Modelle vereinfachen komplexe Systeme in verständliche Darstellungen. Diese können verschiedene Formen annehmen, von statistischen Modellen bis hin zu Rahmen, die Softwareentwicklungsprozesse darstellen.

Diese Produkte können die Forschung vorantreiben, indem sie erste Theorien auf der Grundlage etablierter Ideen generieren, das Verständnis verbessern und Beziehungen beleuchten.

Komponenten der Theorie

Die dritte Kategorie umfasst wesentliche Komponenten der Theorie wie Konzepte, Konstrukte, Aussagen und Hypothesen.

  1. Konzepte: Dies sind Ideen oder Entitäten, auf die sich Forscher konzentrieren. Zum Beispiel erfasst „Entwicklererfahrung“, wie Entwickler über ihre Arbeit denken.

  2. Konstrukte: Konstrukte operationalisieren Konzepte durch definierte Messungen. Beispielweise können Forscher, die die Arbeitszufriedenheit verstehen möchten, diese mithilfe verschiedener messbarer Indikatoren operationalisieren.

  3. Aussagen und Propositionen: Aussagen drücken Ansprüche über Konzepte aus, während Propositionen Vorhersagen über Beziehungen zwischen diesen Konzepten liefern.

  4. Hypothesen: Diese bieten eine testbare Grundlage für Propositionen und leiten die Forschung, indem sie Beziehungen spezifizieren, die durch Daten untersucht werden können.

Das Verständnis der Unterschiede zwischen diesen Komponenten ist entscheidend, wenn man sich durch die Komplexitäten der Forschung in der Software-Ingenieurwissenschaft bewegt.

Theorisierungsprodukte in der Software-Architektur

Um die Anwendung von Theorisierungsprodukten zu veranschaulichen, dient die Software-Architektur als relevantes Feld. Die Entwicklung der Software-Architekturforschung zeigt, wie verschiedene Theorisierungsprodukte im Laufe der Zeit eingesetzt wurden.

Von der Untersuchung von Gesetzen bis zur Formulierung von Hypothesen haben Forscher Erkenntnisse aus vorheriger Arbeit genutzt, um das Verständnis der Software-Architektur zu verbessern. Konzepte wie Designentscheidungen, architektonisches Wissen und die Beziehungen zwischen Komponenten standen im Mittelpunkt der Diskussion.

Durch das Navigieren durch verschiedene Phasen des Theorisierens konnten Forscher ein reichhaltiges Verständnis der Software-Architektur entwickeln, das sowohl praktische Anwendungen als auch theoretische Entwicklungen informiert.

Lehre und praktische Anwendung des Theorisierens

Um das Theorisieren in der Software-Ingenieurwissenschaft effektiv zu lehren, ist ein strukturierter Ansatz notwendig. Dies umfasst das Lesen relevanter Literatur, um ein grundlegendes Wissen aufzubauen und die gelernten Konzepte auf spezifische Forschungsthemen anzuwenden.

Ein 12-wöchiger Kurs kann sich auf verschiedene Theorisierungsprodukte konzentrieren, wobei ein Schwerpunkt auf der Einbindung der Studierenden in Diskussionen und praktische Anwendungen liegt. Das Ziel sollte sein, ein tieferes Verständnis und kritisches Denken über die Rolle der Theorie in der Software-Ingenieurwissenschaft zu fördern.

Durch diesen Ansatz können Studierende die Bedeutung des Theorisierens lernen, dessen Relevanz schätzen und diese Konzepte auf ihre Forschungsanstrengungen anwenden. Dies hilft nicht nur, ein starkes theoretisches Fundament zu schaffen, sondern bereitet auch die nächste Generation von Forschern darauf vor, bedeutungsvoll zur Software-Ingenieurwissenschaft beizutragen.

Fazit

Der Theorisierungsprozess ist entscheidend für den Wissensfortschritt in der Software-Ingenieurwissenschaft. Indem sie verschiedene Arten von Theorisierungsprodukten verstehen und anwenden, können Forscher stärkere Verbindungen innerhalb des Feldes herstellen. Dieser Artikel unterstreicht die Notwendigkeit des Theorisierens und bietet Einblicke, wie es in die Forschungspraxis integriert werden kann.

Originalquelle

Titel: Teaching Theorizing in Software Engineering Research

Zusammenfassung: This chapter seeks to support software engineering (SE) researchers and educators in teaching the importance of theory as well as the theorizing process. Drawing on insights from other fields, the chapter presents 12 intermediate products of theorizing and what they mean in an SE context. These intermediate products serve different roles: some are theory products to frame research studies, some are theory generators, and others are components of theory. Whereas the SE domain doesn't have many theories of its own, these intermediate products of theorizing can be found widely. The chapter aims to help readers to recognize these intermediate products, their role, and how they can help in the theorizing process within SE research. To illustrate their utility, the chapter then applies the set of intermediate theorizing products to the software architecture research field. The chapter ends with a suggested structure for a 12-week course on theorizing in SE which can be readily adapted by educators.

Autoren: Klaas-Jan Stol

Letzte Aktualisierung: 2024-10-31 00:00:00

Sprache: English

Quell-URL: https://arxiv.org/abs/2406.17174

Quell-PDF: https://arxiv.org/pdf/2406.17174

Lizenz: https://creativecommons.org/licenses/by/4.0/

Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.

Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.

Ähnliche Artikel