Diskussionsbeitrag: Handreichung zur Rezension von Forschungssoftware in der Archäologie und den Altertumswissenschaften
←
→
Transkription von Seiteninhalten
Wenn Ihr Browser die Seite nicht korrekt rendert, bitte, lesen Sie den Inhalt der Seite unten
Diskussionsbeitrag: Handreichung zur Rezension von Forschungssoft- ware in der Archäologie und den Altertumswissenschaften Timo Homburg, Anne Klammt, Hubert Mara, Clemens Schmid, Sophie Charlotte Schmidt, Florian Thiery & Martina Trognitz Zusammenfassung – Motiviert durch zahlreiche Diskussionen rund um den zunehmenden Einsatz von Forschungssoftware im Bereich der Archäologie werden in diesem Beitrag Aspekte zu deren Rezension skizziert. Die Bewertung von Software ist ein komplexes The- ma, da deren Einsatzgebiet und ihr Entwicklungskontext einen erheblichen Einfluss auf Forschungsergebnisse haben. Hinzu kommen unterschiedlichste Anwendungsfälle von z. B. Studierenden, die rasch eine Übungsaufgabe lösen, bis hin zu Projektentwicklern, die ein Softwarepaket für den Dauerbetrieb in eine bestehende Infrastruktur integrieren müssen. Obwohl an der Erstellung dieser ersten Version eines Leitfadens paritätisch Beiträge aus der Archäologie und der angewandten Informatik eingeflossen sind, liegt der Fokus auf Beurtei- lungskriterien von Software im Anwendungsbereich der Archäologien. Ein Ziel dieses Impulses für Softwarerezensionen ist es, künftige Rezensentinnen und Rezensenten für die Komplexität der Beurteilung von Software zu sensibilisieren. Eine Softwarerezension soll dem archäologischen Fachpublikum eine rasche, kritische und – auch den Entwicklerinnen und Entwicklern gegenüber – faire Beurteilung von Software ermöglichen. Zu den vorrangigen Empfehlungen gehört die Beschreibung des Kontextes, in dem die Rezension verfasst wurde bzw. die gestellten Anforderungen für bestimmte Anwendungsfälle. Zusätzlich soll eine kurze tabellarische Übersicht eine rasche Einschät- zung der technischen, finanziellen und rechtlichen Aspekte ermöglichen. Der Bedarf nach künftigen Überarbeitungen dieses Impulses für Softwarerezensionen wurde bereits bei dessen Erarbeitung festgestellt, da sowohl bei der Softwareentwicklung wie auch deren Bewertung im digitalen Zeitalter weiterhin eine große Dynamik zu erwarten ist. Schlagwörter – Archäologie; Archäoinformatik; Handreichung; Softwarebewertung; Forschungssoftware; Rezension Title – Recommendations for the review of archaeological research software Abstract – Motivated by numerous discussions around the increasing use of research software in the field of archaeology, this article outlines some aspects for its review. The evaluation of software is a complex topic, since its field of application and development context has a considerable influence. In addition, there are many very different use cases, ranging from students wanting a quick solution for an exercise to project developers, who have to integrate a software package into an existing infrastructure for continuous operation. Although this discussion paper is based on equal contributions from archaeology and applied computer science, the focus is on evaluation criteria for software in the field of archaeology. A major goal of this paper is to alert future reviewers to the complexity of software evaluation. A software review should enable a professional archaeological audience to make a quick, critical and fair, to both the product and the de- velopers assessment of the software. Priority recommendations include a description of the context in which the review was written and the requirements for specific use cases. In addition, a short tabular overview should enable a quick assessment of the technical, financial and legal aspects. The need for future adaptations of this guideline was identified at the outset since both software development and its evaluation in the digital age are expected to remain very dynamic. Key words – archaeology; manual; guideline; software review; research software; review Zielsetzung des Beitrags erscheinen dem Autorenteam nicht einheitlich und umfassend genug. Ziel dieses Beitrags ist es, die Diskussion um In- In dieser Handreichung erläutern wir Krite- halte und Zielsetzungen von Forschungssoftware- rien und Prinzipien, die gute Forschungssoftware rezensionen und im Forschungsprozess einge- ausmachen und die für deren Bewertung von Be- setzter digitaler Werkzeuge in den Archäologien deutung sein können. Außerdem empfehlen wir und den Altertumswissenschaften anzuregen. eine Vorgehensweise für Softwarerezensionen Anstoß für unsere Überlegungen gab eine Diskus- und stellen einen Fragenkatalog zur kritischen sion von Kai-Christian Bruhn, Sophie Charlotte Beurteilung von Software vor. Schmidt und Frank Siegmund im Plenum des 9. Die Beurteilung einer Publikation ist eine Workshops der deutschen Sektion der CAA 2019 traditionsreiche Form des wissenschaftlichen in Wilhelmshaven. Anlässlich der Einrichtung Diskurses. Entsprechend gibt es ein unausge- der neuen Rubrik „Archäoinformatik“ für solche sprochenes Verständnis davon, was eine Rezen- Besprechungen in der Zeitschrift Archäologische sion umfassen sollte. Zusätzlich können konkrete Informationen haben wir unsere Gedanken nun Maßnahmen zur Qualitätssicherung ergriffen verschriftlicht. Die wenigen zum Zeitpunkt un- werden. Dazu gehören Hinweise zum Anfertigen serer Diskussion vorliegenden einschlägigen Soft- von Rezensionen oder – wie es die Redaktion der warerezensionen (insb. in der Zeitschrift Internet Archäologischen Informationen praktiziert – Re- Archaeology; https://intarch.ac.uk/ [23.10.2020]) views von Rezensionen. Eingereicht: 23. Okt. 2020 Archäologische Informationen 43, 2020, 357-372 angenommen: 10. Nov. 2020 CC BY 4.0 online publiziert: 19. Jan. 2021 357 Weitere Aufsätze
Timo Homburg et al. Was sollte eine gute Rezension von Software len seinen Punkten nachvollziehbar und – soweit für den Einsatz in der Archäologie ausmachen? möglich – reproduzierbar sein muss. Geht es allein um die von einer Software ausge- Im Gegensatz zu Forschungssoftware steht führten Routinen, welche zur Lösung einer wis- Software, die zur Nutzung spezifischer Geräte er- senschaftlichen Problemstellung beitragen? Oder forderlich ist, wie etwa zur Vermessung, zur foto- müssen Aspekte der Nutzbarkeit, der Nachhal- grafischen Dokumentation oder zur Analyse von tigkeit und Interoperabilität ebenfalls Beachtung Oberflächen und Inhaltsstoffen. Häufig handelt es finden? Welche Rolle spielen technische und sich dabei um proprietäre Software, die zusammen rechtliche Aspekte in der Besprechung, wie etwa mit der Hardware vertrieben wird. Obwohl sie im die Dokumentation des Quellcodes oder die Li- Forschungsprozess eingesetzt wird, entspricht sie zensierung? Und schließlich: Stellt die Software nicht unserem Verständnis von Forschungssoft- vielleicht selbst einen wissenschaftlichen Beitrag ware. Auch digitale Werkzeuge (Tools), die eine dar? Welche Leistungen der Softwareentwickler erhebliche Rolle in der praktischen Arbeit, jedoch sollten in einer Besprechung berücksichtigt wer- keinen eigentlichen Anteil an der Erhebung, Bear- den? Welche Maßstäbe, die in den Empfehlungen beitung und Analyse der Daten innehaben, sind in der Deutschen Forschungsgemeinschaft (DFG) unserem Sinne keine Forschungssoftware. Dazu anklingen, sollte eine gute Forschungssoftware gehören z. B. Textverarbeitungs- oder Tabellen- erfüllen? Und nicht zuletzt: Wer soll oder kann kalkulationsprogramme. Die vorgestellten Krite- eine Software angemessen rezensieren? rien können indes zur Beurteilung jedes Software- Die zentrale Fragestellung einer Rezension Typs verwendet werden. nach dem wissenschaftlichen Wert des Bespre- Forschungssoftware ist in besonderer Weise chungsgegenstands wird mit diesen Fragen nur Herausforderungen nachhaltiger Entwicklung gestreift. Denn in diesem Punkt stimmen die An- und Pflege ausgesetzt. Als einen Hauptfaktor für forderungen an eine Softwarerezension mit de- fehlende Nachhaltigkeit von Forschungssoftware nen einer Textrezension überein. Weiterhin wer- identifizieren wir den Mangel an langfristiger den aufgrund der Vielfalt und Vielartigkeit von Finanzierung für Personal und Infrastruktur zur Software nicht alle hier gesammelten Kriterien in Erzeugung von nachhaltiger Software (Anzt et jeder Rezension von Bedeutung sein. Es obliegt al., 2020, 2). Ein Überblick über Bedarfe, Heraus- dem Rezensenten, relevante Aspekte auszuwäh- forderungen und Lösungsansätze für nachhaltige len und Schwerpunkte zu setzen. Forschungssoftwareentwicklung wurde 2019 in Dieser Beitrag ist als Impuls gedacht. Diskussi- einem Workshop der deRSE-Konferenz in Pots- onsbeiträge und Anregungen sind ausdrücklich er- dam (https://de-rse.org/de/conf2019/index. wünscht. Dazu können die Autoren über die ange- html [23.10.2020]) erstellt (Bach et al., 2019). gebenen Adressen kontaktiert oder Anmerkungen direkt auf GitHub (https://github.com/Research- Squirrel-Engineers/Impuls_SoftwareRezensio Forschungssoftware als wissenschaftliche nen_DGUF/ [23.10.2020]) hinterlegt werden. Leistung In der modernen Forschung ist Arbeiten ohne digi- Forschungssoftware tale Werkzeuge undenkbar. Dies trifft auch auf die historische und altertumswissenschaftliche For- Die weiter unten vorgestellten Kriterien zur Re- schung zu. Mit dem Aufschwung der Digital Hu- zension von Software zielen primär auf die Begut- manities wird Software zunehmend ein wichtiger achtung von Forschungssoftware ab. Unter For- Bestandteil des Forschungsprozesses und greift schungssoftware verstehen wir Software, die mit implizit und explizit tief in ihn ein (für die Archäo- dem Fokus auf einen Einsatz in der Forschung ent- logie z. B. Schmidt & Marwick, 2020). Nur durch die wickelt wurde, also um Forschungsdaten zu erzeu- Offenlegung von Quellcode ist eine Bewertbarkeit gen, zu verarbeiten oder zu analysieren (Hettrick der durch die Software geleisteten Abläufe wirk- et al., 2014). Dies sind beispielsweise Programme, lich gewährleistet. die der Kalibrierung und Umrechnung von Mess- Trotz der tragenden Rolle, die Forschungssoft- werten, der Visualisierung von räumlichen Daten, ware in vielen Projekten einnimmt, wird die Leis der Annotation von Texten und Objekten oder tung jener Personen, die hinter der Entwicklung der Bereitstellung und Verknüpfung fachlich re- und Programmierung stehen, akademisch oft nicht levanter Vokabulare dienen. Forschungssoftware ausreichend anerkannt (Hettrick, 2016; Katerbow ist stets Teil eines Forschungsprozesses, der in al- & Feulner, 2018; Scheliga et al., 2017). Das wird der 358
Handreichung zur Rezension von Forschungssoftware Tatsache nicht gerecht, dass für die Entwicklung Eine offen verfügbare Software kann, ganz so von Forschungssoftware wissenschaftliche Exper- wie in der bisherigen Praxis der altertumswissen- tise und darüber hinaus fortgeschrittene technische schaftlichen Forschung, begutachtet werden. In Kompetenz erforderlich sind. Durch die Umset- einer Rezension kann diese dann einem breiteren zung in Code wird Praxis und Wissen explizit ma- Publikum vorgestellt werden. Durch eine dedizierte nifestiert und weiterentwickelt. Wir argumentie- Rezension von Software analog zu Rezensionen ren, dass diese Leistungen gewürdigt und sichtbar wissenschaftlicher Publikationen wird die wissen- gemacht werden müssen, zumal der wissenschaft- schaftliche Leistung der Autoren und Autorinnen liche Durchbruch häufig erst durch die Software von Forschungssoftware mittels gewohnter For- ermöglicht wird (Helmholtz Open Science, 2019; mate sichtbar und anerkannt. Gleichzeitig werden Katerbow & Feulner, 2018; Scheliga et al., 2017). auch ihre Verantwortung und Teilhabe manifest. Als ein wichtiger erster Schritt zur Sichtbar- machung wurde 2012 die Berufsbezeichnung des „Research Software Engineers“ (RSE, RSEng) geprägt Gute Forschungssoftware (Baxter et al., 2012; Hettrick, 2016). Inzwischen hat sich eine aktive, interdisziplinäre Gemeinschaft ge- Um Kriterien zur Rezension und Bewertung von bildet, die Empfehlungen zum Umgang mit For- Forschungssoftware aufstellen zu können, stellt schungssoftware entwickelt (Anzt et al., 2020). So sich zunächst die Frage, wie man deren Quali- organisieren nationale RSE-Sektionen (https://sor- tät bestimmt und nach welchen Standards diese se.github.io/contact/chapters/ [23.10.2020]) – in beurteilt werden soll. Dazu gehört eine Vielzahl Deutschland „de-RSE e.V.“ – disziplinübergreifen- fachlicher und technischer Aspekte, die weiter de RSE-Konferenzen wie z. B. SORSE (https:// unten beleuchtet werden. Darüber hinaus muss sorse.github.io [23.10.2020]). Im Rahmen des Auf- Software aber, wie jedes andere Werkzeug, zu- baus einer Nationalen Forschungsdateninfrastruk- nächst hinsichtlich ihrer generellen Eignung für tur (NFDI) nehmen Forschungssoftware und RSEs nachhaltiges und ethisches wissenschaftliches einen großen Stellenwert in der Weiterentwick- Arbeiten bewertet werden. lung der Forschungslandschaft und der Angebote Die DFG formuliert mit ihren „Leitlinien zur Siche- der Forschungseinrichtungen in Deutschland ein rung guter wissenschaftlicher Praxis“ (DFG, 2019) eine (Goedicke & Lucke, 2020; Löffler, 2020). Reihe von Vorgaben für gutes wissenschaftliches Eine der Forderungen des de-RSE e.V. ist, dass Arbeiten. Die Leitlinien entsprechen einem inter- Forschungssoftware explizit mittels geeigneter nationalen Konsens und etablierten Prinzipien. Zu Publikationsmodalitäten sichtbar wird. Einer- den Anforderungen gehören etwa die Einhaltung seits erhöht eine Publikation die Auffindbarkeit und Etablierung von Standards und Methoden, und vermeidet so redundante Neuentwicklungen eine nachvollziehbare Dokumentation des Weges (Anzt et al., 2020, 10), andererseits ist die mit einer zu Ergebnissen, die öffentliche Zugänglichkeit von Publikation einhergehende eindeutige Autoren- Ergebnissen und die Archivierung der notwendigen schaft von großer Bedeutung, da erst dadurch die Materialien, die zu Ergebnissen geführt haben. Leistung der Softwareentwicklung an die entspre- Einige der Kriterien, die in den DFG-Leitli- chenden Personen geknüpft wird. Dies ermöglicht nien explizit und implizit anklingen, werden im eine akademische Laufbahn, wofür bislang jedoch Folgenden näher ausgeführt: Die in der Erläute- oft nur klassische Textpublikationen gewertet rung zu Leitlinie 13 genannten FAIR-Prinzipien, wurden. Daher sollen zukünftig Datenpublikatio die Prinzipien der Offenen Wissenschaft (Open nen, Softwareentwicklung (Druskat et al., 2017), Science) und die in den Leitlinien 2 und 10 ange- Annotationen sowie deren Zitationen (https://ci- führten CARE-Prinzipien. Weitere Hinweise zur tation-file-format.github.io [17.12.2020]) Kriterien Umsetzung der DFG-Leitlinien in Bezug auf For- der Beurteilung der wissenschaftlichen Leistung schungssoftware sind unter forschungsdaten.info sein (NFDI4Culture, https://nfdi4culture.de (2020) zu finden. [23.10.2020], RSE4NFDI, (https://www.rse4nfdi. de/de/index.html [23.10.2020], NFDI4Objects, https://www.nfdi4objects.net [23.10.2020]). Hier- FAIR-Prinzipien bei sind technische Herausforderungen zu mei- stern, da Software nie endgültig abgeschlossen ist, Die FAIR-Prinzipien wurden 2016 als FAIR Data oft auf bestehenden Modulen aufbaut und mitun- Principles veröffentlicht (Wilkinson et al., 2016). ter von wechselnden Teams über Jahrzehnte be- Sie zielen primär auf Forschungsdaten und deren treut wird (Katz et al., 2016). Metadaten ab und fordern, dass diese auffindbar 359
Timo Homburg et al. (Findable), zugänglich (Accessible), interoperabel dungsfälle zu prozessieren. Eine geeignete Lizenz, (Interoperable) und nachnutzbar (Reusable) sind. die auch die abhängigen Softwarekomponenten be- Ein Fokus ist dabei die maschinelle Lesbarkeit. rücksichtigt, gibt zudem darüber Auskunft, welche Die Prinzipien lassen sich auch auf Forschungs- Regeln für die Nutzung und die Weiterentwicklung software und deren Metadaten übertragen (Goe- des Codes gelten (Lamprecht et al., 2019, 48-49). dicke & Lucke, 2020; Lamprecht et al., 2019) und bieten somit Kriterien zur Beurteilung der Qua- lität von Softwarepublikation, Codedokumenta Open Science tion und Programmierstandards. Software wird durch die Speicherung zu- Open Science (Offene Wissenschaft) bezeichnet sammen mit ihren Metadaten in dedizierten eine Wissenschaftspraxis, deren Ziel ein transpa- Softwarerepositorien (z. B. GitHub, GitLab) auf- renter, reproduzierbarer und kollaborativer For- findbar (Findable). Eine Einbindung in fachwis- schungsprozess ist (Bezjak et al., 2018, ‚Open Con- senschaftliche Forschungsinfrastrukturen erhöht cepts and Principles‘). Open Science setzt sich aus die Auffindbarkeit, da diese explizit an Aufbau, mehreren Prinzipien zusammen, die unterschied- Pflege und Anwendung von kontrollierten Indi- liche Stadien im Forschungsprozess betreffen. So zes und Metadatenstandards arbeiten (Anzt et fordert Open Science nicht nur die Öffnung der al., 2020; Lamprecht et al., 2019). Ergebnisse (Open Access), sondern auch die der Mit durch Repositorien vergebenen persis zugrunde liegenden Daten (Open Data), Metho- tenten Identifikatoren (z. B. URIs) und durch die den (Open Methodology) und der verwendeten Nennung der Autorenschaft wird das Zitieren Forschungssoftware (Open Source). Für offene For- von Forschungssoftware ermöglicht. Da Software schungssoftware gilt, dass ihr Quellcode zugäng- im Gegensatz zu herkömmlichen Publikationen lich und mit einer Lizenz versehen sein muss, wel- ständig weiterentwickelt wird, sollte sie in unter- che die Weiterentwicklung erlaubt (Bezjak et al., schiedlichen Versionen gesichert werden, welche 2018, ‚Open Research Software and Open Source‘). individuell zitiert werden können (forschungs- Mit der Forderung nach der Offenlegung des daten.info, 2020). Quellcodes (Open Source) wird auch dem Gedan- Öffentliche Repositorien und dauerhafte Iden- ken der Nachnutzbarkeit entsprochen. Die Offen- tifikatoren stellen ebenfalls ein Mindestmaß an legung wird erweitert um die Forderung, den Zugänglichkeit (Accessible) sicher. Idealerweise Code frei nutzbar zur Verfügung zu stellen (Free sollten Daten und Metadaten dabei auch maschi- Source) (Stallman, 2001). Letzteres wird als FOSS nell über ein offenes und standardisiertes Kommu- (Free/Libre Open Source Software) bezeichnet nikationsprotokoll abrufbar sein (Lamprecht et al., und in Deutschland z. B. von anwendungsbezo- 2019). Weitere die Zugänglichkeit erleichternde genen Wissenschaftlern und Entwicklern aus der Aspekte sind die Verfügbarkeit für verschiedene Geoinformatik (FOSSGIS e.V., https://www. Betriebssysteme und technische Anforderungen, fossgis.de [23.10.2020]) oder auch von Research- die von aktuell verbreiteten Geräten geleistet wer- Software-Engineers in der „de-RSE e.V.“ (https:// den können. Auch eine verständliche Bedienungs- de-rse.org/de/association.html [23.10.2020]; anleitung verbessert die Zugänglichkeit. Anzt et al., 2020) vertreten. Interoperabilität (Interoperable) von Software In den Leitlinien der DFG klingt die Öffnung kann sich zum einen auf die Kompatibilität der von Software-Quellcode im Zusammenhang mit Ein- und Ausgabeformate mit anderen Program- der Qualitätssicherung (DFG, 2019, 14-15) und men in einem Arbeitsprozess (horizontale Dimen- der Herstellung von öffentlichem Zugang zu For- sion) beziehen, zum anderen verweist sie auch schungsergebnissen (DFG, 2019, 19) an. auf die Zusammenarbeit der verwendeten Kom- ponenten in der Software selbst (vertikale Dimen- sion) (Lamprecht et al., 2019, 46 f.). Die Verwen- CARE-Prinzipien und Ethos dung von Standards ermöglicht beides, da sie die Zusammenarbeit von Softwarekomponenten auch In den Leitlinien der DFG werden in Leitlinie 2 und über Betriebssystemgrenzen hinweg ermöglicht. 10 ethische Aspekte im Forschungsprozess ange- Die Nachnutzbarkeit (Reusable) von Software sprochen, die unserer Meinung nach auch im Bereich hängt von mehreren Komponenten ab. Metadaten der Forschungssoftware Beachtung finden sollten. und eine umfassende Dokumentation der Software Privilegien und Ungleichheiten in der altertums- sollten es anderen ermöglichen, Ergebnisse zu repro- wissenschaftlichen Forschung werden unbewusst duzieren sowie eigene Daten und veränderte Anwen- auch in der Forschungssoftware fortgeschrieben. 360
Handreichung zur Rezension von Forschungssoftware Teure, proprietäre Software benachteiligt Forscher, gaben zur Version, zu den Entwicklern und der die mit weniger Finanzmitteln auskommen müs- Lizenz. Dies ermöglicht z. B. eine schnelle Über- sen, da ihnen so der Zugang zu zeitgemäßen Ana- sicht darüber, ob die begutachtete Software mit lysemethoden verwehrt bleibt. In weiterer Folge der eigenen technischen Umgebung kompatibel könnte der Zugang zu hoch bewerteten Zeitschrif- ist. Ein Vorschlag zu den Inhalten einer solchen ten erschwert werden und die studentische Aus- Tabelle befindet sich am Ende dieses Beitrags. bildung in den entsprechenden Methoden stag Mit Kontext ist die Einordnung in ein archäo- nieren, was bestehende Ungleichgewichte weiter logisches Forschungsfeld und Angaben zum mög- ausprägt. Auch Sprachbarrieren tragen zu einem lichen Zusammenhang mit Forschungsprojekten, Gefälle bei: Wenn in internationalen Teams z. B. Arbeitsgruppen oder Institutionen gemeint. Auch eine Datenbank verwendet wird, die nicht auch in der ‚Kontext‘ der rezensierenden Person sollte dar- der Landessprache verfügbar ist, werden indigene gestellt werden, denn eine realistische und trans- Forscher unter Umständen an einer selbstständigen parente Einschätzung der eigenen Kompetenzen Analyse und Auswertung der Daten sowie an einer und des eigenen Nutzungsinteresses stellt einen Weiterqualifizierung gehindert. wichtigen Anhaltspunkt für die heterogene Le- In den Archäologien, in denen häufig an frem- serschaft dar. Wurde die Rezension rein aus Sicht den Kulturen und Kulturhinterlassenschaften eines Anwenders oder auch aus Entwicklersicht geforscht wird, sollten die indigenen und ortsan- geschrieben? Angaben zur verwendeten Testum- sässigen Bevölkerungsgruppen die Möglichkeit gebung, also des zum Testen der Software ge- zur Mitbestimmung über die Erforschung bekom- nutzten Computers, können ebenfalls von Bedeu- men. Um diesem Ideal gerecht zu werden, eignet tung sein, wie z. B. Angaben zu Betriebssystem, sich die Orientierung an den CARE-Prinzipien RAM, Prozessor, Grafikkarte oder Bandbreite. (https://www.gida-global.org/care [23.10.2020]). Für die kritische Beurteilung von Forschungs- Sie wurden von der Global Indigenous Data software aus verschiedenen Blickwinkeln folgt Alliance (GIDA) (https://www.gida-global.org hier im Anschluss ein in drei Bereiche gegliederter [23.10.2020]) und der Research Data Alliance (RDA) Fragenkatalog. Die Fragen aus dem Bereich „Ein- (https://www.rd-alliance.org [23.10.2020]) im Jahr satz in der Archäologie und wissenschaftlicher Zweck“ 2018 auf Basis der UN Declaration on the Rights sollten unserer Ansicht nach in jeder Rezension of Indigenous Peoples (UNDRIP) (https://www. behandelt werden. Als sehr wichtig erachten wir un.org/development/desa/indigenouspeoples/ die Beantwortung der Fragen zu Installation, Tu- declaration-on-the-rights-of-indigenous-peoples. torials und der tragenden Community, sowie zu html [23.10.2020]) erarbeitet und konzentrieren Ein- und Ausgabeformaten, Programmierschnitt- sich – wie die FAIR-Prinzipien – explizit auf For- stellen und den Möglichkeiten zur Beteiligung schungsdaten. Ihre vier Grundpfeiler kollektiver an der Weiterentwicklung der Software. Allein Nutzen (Collective Benefit), Souveränität (Autho- diese Fragen ziehen weitere nicht unwichtige Fol- rity to Control), Verantwortung (Responsibility) gefragen nach sich. Beispielsweise sind für die und Ethik (Ethics) sind unserer Meinung nach Installation auch Informationen dazu, ob es sich ebenso für Forschungssoftware relevant. um eine eigenständige (stand-alone) Software oder um eine Webanwendung handelt, ob die Installationsvoraussetzungen klar dokumentiert Mögliche Vorgehensweise zur Rezension sind und ob die Dokumentation vollständig und archäologischer Forschungssoftware aktuell ist, wichtig. Die unserer Ansicht nach be- sonders relevanten Fragen sind im Katalog mit Die Rezension archäologischer Forschungssoft- vorangestellten (sehr wichtig), (wichtig) ge- ware setzt die Sichtung von Dokumentation und kennzeichnet. Publikationen ebenso voraus wie die praktische Die Ergebnisse der Begutachtung sollten in Erprobung der Software selbst. Unserem Ver- einer Stellungnahme zusammengefasst werden, ständnis nach sollte eine Softwarerezension, so welche die Software hinsichtlich ihrer Nützlich- wie es eine herkömmliche Besprechung einer wis- keit, ihrer Bedienbarkeit, ihrer handwerklichen senschaftlichen Publikation leistet, die Software Qualität und ihrer Position in Relation zu den be- zunächst mit zusammenfassenden Eckdaten vor- reits angesprochenen Idealen guter Forschungs- stellen. Anschließend sollte der Kontext erläutert software beurteilt. werden und eine kritische Beurteilung erfolgen. Der im Anschluss vorgestellte Fragenkatalog ist Zu den Eckdaten, welche tabellarisch darge- umfangreich und muss nicht in allen Einzelheiten stellt werden können, gehören unter anderem An- abgearbeitet werden. Seine Komplexität und Tie- 361
Timo Homburg et al. fe ist ein guter Indikator dafür, dass die Entwick- Software bei der Erfassung, der Verarbeitung lung von Forschungssoftware eine vollwertige, oder der Analyse von Daten bearbeitet? Wie wissenschaftliche Tätigkeit sein kann. Wir raten relevant sind die Aufgaben in einem archäo- dazu, die eigenen Kompetenzen für die Rezension logischen Kontext und wie häufig werden sie kritisch zu reflektieren und die Evaluierung gege- gestellt? Dieser Punkt verdeutlicht, warum es benenfalls in einem Team durchzuführen. Denn von besonderem Wert ist, wenn Archäologen so wie Rezensionen von herkömmlichen Publika- selbst Softwarerezensionen für sich und ihre tionen im Idealfall von mit dem Thema betrauten Kollegen verfassen. Experten erstellt werden, sollte dies auch für For- ® Wie löst die Software eine gegebene (tech- schungssoftwarerezensionen gelten. nische) Aufgabe? Eine detaillierte Beantwor- tung dieser Frage ist nur aus Entwicklerper- spektive möglich. Kernbestandteile lassen Fragenkatalog zur Beurteilung von Software sich jedoch meist leicht identifizieren. Wie ist die grundsätzliche Funktionsweise der Soft- Im Folgenden stellen wir einen kommentierten ware konzipiert? Was sind die wesentlichen Fragenkatalog mit Kriterien zur Beurteilung von technischen Bestandteile im Nutzerinterface archäologischer Forschungssoftware vor. Drei Be- und in den dahinter liegenden Datenverarbei- reiche bündeln jeweils Fragen aus verschiedenen tungsmodulen? Handelt es sich zum Beispiel Kompetenzbereichen. Die ersten beiden Bereiche um eine Webanwendung, die als Schnittstelle beschäftigen sich mit dem wissenschaftlichen zu einer Datenbank fungiert? Oder ist die Soft- Anwendungsfeld sowie der Anwendung und ware ein schlichtes, monolithisches Komman- Bedienbarkeit aus Nutzersicht. Der dritte Bereich dozeilenprogramm? konzentriert sich auf Fragen, die insbesondere ® Wie funktioniert der wissenschaftliche Ar- für Entwickler und IT-Administratoren relevant beitsablauf, der in der Software implementiert sind. Abgeschlossen wird der Katalog durch eine wurde? Hier geht es weniger um die konkrete Liste von Merkmalen, welche in tabellarischer technische Implementierung, sondern vielmehr Form die Rezension ergänzen, jedoch meist nicht um die generelle Methodik. Welche wesent- kritisch beurteilt werden können. lichen Schritte durchlaufen Daten, um eine be- Wie bei der Besprechung einer wissenschaft- stimmte Aufgabe zu lösen? Welche statistischen lichen Publikation ist die Zusammensetzung und Werkzeuge kommen zum Einsatz? Gibt es Ver- Gewichtung der einzelnen Merkmale bei der Be- gleichsdaten? Ein Beispiel ist etwa die Bereini- gutachtung selbst zu bestimmen und in Relation gung von Eingabedaten, deren anschließende zum Anwendungskontext zu setzen. Entspre- Klassifizierung durch einen Algorithmus und chend verstehen wir unseren kommentierten Fra- zuletzt ihre Visualisierung. genkatalog als Maximalversion, die als Hilfsmit- ® Ist die Behauptung, eine bestimmte wissen- tel für die Begutachtung und die Einschätzung schaftliche Fragestellung mit dem gewähl- der eigenen Kompetenzen dienen kann. ten Arbeitsablauf beantworten zu können, korrekt? Forschungssoftware verspricht meist – implizit oder explizit – die Beantwortung Einsatz in der Archäologie und wissenschaftlicher wissenschaftlicher Fragestellungen zu ermög- Zweck lichen oder zumindest zu vereinfachen. Eine Bei der Beurteilung der wissenschaftlichen Qua- GIS-Applikation zur Analyse von Punktmu- lität von Forschungssoftware sind zunächst zwei stern kann etwa für den Zweck konzipiert sein, wesentliche Dimensionen zu unterscheiden. Dies menschliches Siedlungsverhalten aufzuzeigen. ist zum einen – das ist für Forschungssoftware Die Frage, ob der angewendete Algorithmus vorrangig – die Frage, ob die Software einen dazu überhaupt in der Lage ist, kann den Um- sinnvollen Beitrag zur Bearbeitung der archäolo- fang einer Rezension bei Weitem übersteigen. gischen Fragestellung liefert. Zum anderen ist zu Dennoch sollte der Rezensent versuchen, eine beurteilen, ob Software eine korrekte Umsetzung Einschätzung der Plausibilität vorzunehmen der angestrebten Arbeit leistet. Beide Fragen sind oder zumindest das Problem der Einschätz- mitunter nicht leicht zu beantworten. barkeit selbst offenzulegen, um die Leser zu ® Welche Aufgabenstellung versucht die sensibilisieren. Zur Beurteilung kann es helfen Software zu lösen? Diese Frage ist mit dem sich zu vergegenwärtigen, welche Schlüsse deskriptiven Charakter einer Rezension ver- aus den rohen, unverarbeiteten Eingabedaten knüpft: Welche Aufgaben werden mittels der überhaupt theoretisch ableitbar sein könnten. 362
Handreichung zur Rezension von Forschungssoftware ® Sind die Algorithmen korrekt implementiert per Kommandozeile für die Prozessierung von grö- worden? Die Korrektheit der Ergebnisse einer ßeren Datensammlungen für erfahrene Nutzer vor- Software ist mitunter schwer zu beurteilen, da teilhafter ist. Hilfestellungen (Foren, FAQs, Tuto beispielsweise ein umfangreicher Blackbox- rials) und die Größe und Aktivität der Nutzer- und Test durchgeführt werden muss. Ein Mangel Entwicklergemeinschaft sind entscheidend für die an vergleichbarer Software mit der zu testen- praktische Bedienbarkeit. Die Größe und Aktivität den Funktionalität erschwert dies zusätzlich. der Gemeinschaften kann ein wichtiges Indiz für Werden die in der Dokumentation genannten die Zukunftsfähigkeit einer Software und damit Algorithmen fehlerfrei in Programmcode aus- ihre Eignung für den Einsatz auf institutioneller gedrückt? Ist das wissenschaftliche Ergebnis Ebene in langfristigen Vorhaben sein. trotz aller technischen Unterschiede vergleich- Die folgenden Fragen nehmen Bezug auf tech- bar mit anderen Softwarelösungen? Sind die nische Merkmale, welche die Nutzererfahrung verwendeten Algorithmen dokumentiert und (User Experience, UX) beeinflussen. Weitere tech- hinreichend wissenschaftlich belegt? Auch nische Merkmale aus der Entwicklerperspektive diese Frage mag im Rahmen einer Rezension betrachten wir weiter unten. nicht abschließend zu beantworten sein. Ein wichtiges Indiz für eine fehlerhafte Implemen- Installation tierung ist eine mangelnde Robustheit – ein Die Installation ist häufig der erste Schritt in der Aspekt, der später noch besprochen wird. Bedienung der Software. Schon an dieser Stelle ® Gibt es für die Archäologie relevante Pro- können Punkte auffallen und/oder für die Leser jekte/Anwendungen, in denen die rezen- einer Rezension von Bedeutung sein. sierte Software bereits angewendet wurde? ® Wie funktioniert die Installation und wo Software wird oft von und für bestimmte For- wird die Software vorgehalten? Je einfacher schungsprojekte entwickelt. Zur Beurteilung die Installation einer Software ist, desto größer ihrer Qualität und Relevanz kann es also hilf- ist ihr potenzieller Nutzerkreis. Die Vielseitig- reich sein, Forschungsprojekte selbst genauer keit von Computersystemen macht es aus Ent- anzusehen. Wie plausibel sind die erzielten wicklersicht oft schwer, eine einfache Installa- Resultate, die mit der Software zusammen- tion für alle Nutzer zu gewährleisten. Für die hängen? Wie wurden sie von der wissen- Rezension kann geprüft werden, ob ein Instal- schaftlichen Community aufgenommen? lationsskript, -Wizard oder -Paket bereitsteht. ® In welcher Form ist die Software publiziert? Gegebenenfalls ist die Software nur als Quell- Idealerweise sollte Forschungssoftware auch code verfügbar, der zunächst selbst kompi- wissenschaftlich publiziert sein. Dies erleichtert liert werden muss. Installationsskripte oder die Zitierbarkeit. Gibt es ein Benchmarking-Pa- -pakete ermöglichen einen viel breiteren An- per, in dem das Werkzeug explizit vorgestellt wenderkreis, wohingegen das Kompilieren es und mit alternativen Produkten verglichen geübten Nutzern erlaubt, die Installation auf wird? Sind einzelne Versionen der Software verschiedenen Endgeräten durchzuführen. auch als solche referenzierbar? Ist zum Beispiel Wenn die Software für die Rezension selbst ein Digital Object Identifier (DOI) und somit installiert wird, können konkrete Probleme ein persistenter Link vorhanden? Wurde die und Schwachstellen beim Installationsprozess Software in einer Fachzeitschrift oder einem erkannt und in der Rezension dokumentiert anderen Medium veröffentlicht? Gab es dazu werden. einen expliziten Software-Peer-Review-Mecha- « Handelt es sich um eine eigenständige (stand- nismus? alone) Software oder um eine Webanwen- dung? Nicht jede Software muss lokal installiert werden, um genutzt werden zu können. Weban- Bedienbarkeit und Zielgruppenorientierung wendungen, die entweder dynamisch im Brow- Die Bedienbarkeit von Forschungssoftware ist von ser oder auf einem Server ausgeführt werden, zentraler Bedeutung, da sie als Flaschenhals die In- sind heute zu beliebig komplexen Operationen teraktion zwischen Nutzer und Software bestimmt. in der Lage. Daher stellt sich die Frage, ob die Dazu gehören z. B. die Komplexität des Installa Anwendung eher als lokale Installation oder als tions prozesses, das Nutzerinterface und maschi- Webanwendung zum Einsatz in der archäolo- nelle Schnittstellen. Hierbei ist z. B. zu beachten, gischen Praxis taugt. Webanwendungen können dass eine grafische Nutzeroberfläche Vorteile für beispielsweise nicht hinreichend performant Gelegenheitsnutzer bietet, während eine Bedienung sein, da sie den Transfer großer Datenmengen 363
Timo Homburg et al. über das Internet erfordern. Sie sind im Gelände fischen Oberfläche einer Webseite als auch gegebenenfalls nicht ausführbar und daher nicht code-basiert über eine REST-Schnittstelle an- für alle Arbeitsbedingungen sinnvoll. gesteuert werden. « Sind grundlegende Voraussetzungen in « Ist eine archäologische Nutzung vorgesehen? Form von Hardware und Betriebssystem klar Die Frage nach der Nutzergruppe sollte auch dokumentiert? Gerade in der Projektplanung speziell für die Archäologie gestellt werden: ist es wichtig, technische und finanzielle An- Entspricht der archäologische Einsatz den forderungen korrekt identifizieren zu können. Anwendungsszenarien, die die Entwickler Eine Spezifikation bzw. Hinweise zur benötig der Software vor Augen hatten? Das hat oft ten Hardware und Betriebssystem sind z. B. großen Einfluss auf das Nutzerinterface. Bei- für die Einbindung von vorhandenen Infra- spielsweise ist für von Archäologen genutzte strukturen bei größeren Vorhaben oder Insti- CAD-Software häufig für Architektur- oder tuten von Relevanz. Maschinenbauanwendungen konzipiert und konfrontiert Archäologen und Grabungstech- Interface niker mit einem überwältigenden Funktions- Die Nutzbarkeit von Software wird von den Mög- umfang. lichkeiten der Kommunikation von Mensch und — Orientiert sich die Menüführung an be- Programm bestimmt, also der Benutzeroberfläche stimmten Vorbildern? Wenn sich die Menü- (User Interface, UI). Diese ist in manchen Fällen führung oder Tastenkürzel an bekannter, in grafisch gestützt (GUI), in anderen Fällen erfolgt der Community verbreiteter Software orien- die Bedienung über eine Befehlseingabe in der tiert, wird eine schnellere Einarbeitung ermög- Konsole. Eine gemischte Bedienung ist ebenfalls licht. Manche Tools verwenden deswegen z. B. nützlich, um verschiedene Nutzergruppen anzu- bewusst Eingabemasken, die weitverbreiteten sprechen. Nutzergruppen sind oft vielfältig und Tabellenkalkulationsprogrammen nachemp- können nie scharf umgrenzt werden, wie etwa funden wurden. Grabungstechniker oder Landesarchäologen, doch — Ist das Programm mehrsprachig bzw. in wel- für die Nutzbarkeitsanalyse können mit ihrer Hilfe chen Sprachen wird es angeboten? In Ab- geteilte Anforderungen an die Software evaluiert hängigkeit von der Nutzergruppe, sollte das werden. Die Gestaltung von Oberflächen und die Programm eventuell mehrsprachig sein. Übli- Nutzerführung in Menüstrukturen sind ein eigenes cherweise wird man zumindest eine englische Aufgaben- und Forschungsfeld in der Softwareent- Fassung erwarten. Bei der Mehrsprachigkeit wicklung. Gut an den Nutzer angepasste Lösungen ist darauf zu achten, dass das Layout in jeder sind das Ergebnis einer genauen Kenntnis der Ziel- Sprache nutz- und lesbar bleibt. Beispielswei- gruppe und ihrer Gewohnheiten und Bedürfnisse, se können sich Beschriftungen von Buttons fügen sich also beispielsweise nahtlos in den ar- in der Textlänge stark unterscheiden und in chäologischen Forschungsprozess ein. Ein gutes manchen Sprachen zu einer abgeschnittenen Interface unterstützt das fehlerfreie und effiziente Anzeige führen. Arbeiten. So sind z. B. die Verständlichkeit der Me- — Sind die Fehlermeldungen für die Rezen- nü-Einträge oder der Kommandos, aber auch die senten gut verständlich? Eine Fehlermeldung Aussagekraft von Fehlermeldungen Aspekte, die an den Benutzer kann diesem ermöglichen, in der Rezension betrachtet werden sollten. Barrie- eine Aktion zur Behebung des Fehlers zu refreiheit ist bislang ein unzureichend abgedecktes ergreifen. Nützliche und hilfreiche Fehler- Kriterium, das aber ebenfalls die Effizienz und die meldungen sind entsprechend verständlich mögliche Nutzergruppe adressiert. formuliert und sichtbar in der Anwendung « Passt das User Interface zur Nutzergrup- platziert. Darüber hinaus kann eine Fehler- pe? Jede Nutzergruppe, auch die zu der sich meldung ggf. ein Feedback an die Entwickler der Rezensent als zugehörig zählt, wird be- der Anwendung liefern. Dies muss die Fehler- stimmte Erwartungen an die Bedienbarkeit meldung dem Benutzer kommunizieren und der Anwendung haben. Für die einen ist eine auch einen brauchbaren Bericht zur Behebung Kommandozeilenanwendung sehr gut zu be- des Fehlers an die Entwickler schicken. Stack dienen, während andere damit Probleme ha- Traces (Hinweise auf die Stellen des Pro- ben werden. Viele Softwarelösungen haben grammcodes, an denen ein spezifischer Fehler mehrere Nutzerschnittstellen. Beispielsweise auftrat) oder aus der Ausführungsumgebung können viele Webanwendungen sowohl über übernommene Fehlermeldungen sind für die ein Suchfeld und Filterfunktionen in der gra- meisten Nutzer unverständlich. 364
Handreichung zur Rezension von Forschungssoftware Performanz und Robustheit ® Gibt es ausreichend Tutorials für das Erler- Performanz und Robustheit beeinflussen, wie mit nen der Software? Tutorials sind essenziell, dem Programm gearbeitet wird. Die Performanz um sowohl Benutzer als auch Softwareent- spielt insbesondere bei der Bearbeitung von großen wickler anzusprechen. Nutzer erwarten üb- Datensätzen eine Rolle, die Robustheit beeinflusst licherweise ein leicht verständliches, auf das das Sicherungs- und Speicherverhalten der Nutzer. Wesentliche konzentrierte Anwendungsbei- — Ist die Implementierung performant? Die Per- spiel, um eine Idee für die typische Verwen- formanz einer Anwendung ist je nach Anwen- dung zu bekommen. Für Entwickler ist ent- dungstyp von mehr oder weniger Wichtigkeit. scheidend, dass ein Tutorial ggf. vorhandene Ein Rezensent sollte hier bewerten, ob die Schnittstellen (APIs) erläutert. Gute Tutorials Software ihre Aufgabe in angemessener Zeit erläutern das benötigte Vorwissen und weisen erfüllt. Gegebenenfalls kann die Ausführungs- auf Quellen zu dessen Aneignung hin. Auch zeit weiterer verwandter Softwareimplemen- Hilfestellungen in einem FAQ oder einem tierungen mit der zu testenden Implementie- Troubleshooting-Bereich erhöhen die Qualität rung verglichen werden. Die Gründe für eine eines Tutorials. In welchen Sprachen die Tuto- mangelnde Performanz der Software sind oft rials vorliegen ist ebenfalls von Relevanz. nicht leicht zu erkennen. Für Webapplikatio « Gibt es für die Software Testdatensätze? Die- nen und Plugins ist zu überprüfen, ob sie re- se Frage ist eng mit der Frage nach Tutorials sponsiv und über die verschiedenen Browser verbunden, da letztere oft mit Übungsdaten hinweg performant sind. arbeiten. Diese Übungsdaten oder Testdaten- « Ist die Software robust? Die Robustheit einer sätze sollten sich an der wissenschaftlichen Software setzt im Wesentlichen voraus, dass Praxis orientieren, jedoch ohne spezifische regelmäßig Zwischenstände der Aufgaben Vorkenntnisse verständlich sein. Sie sollten gesichert werden, um bei einem unvorherge- frei zur Verfügung stehen und möglichst ohne sehenen Abbruch wieder an dem Letztstand Registrierung nutzbar sein. anknüpfen zu können. Ein Fehlen dieser Funk- — Sind weitere Informationen zur Software tion kann oft, z. B. bei einem Stromausfall, den leicht zu finden? Verweisen die Informations- Verlust von Einstellungen, Daten und/oder seiten der Software oder deren Tutorials auf die gesamte Neuinitialisierung einer Berech- weitere Materialien? Wird auf Publikationen nung bedeuten. Ein Beispiel für eine solche der Entwickler selbst, wie auch auf Rezen Robustheit ist das regelmäßige automatisierte sionen dazu hingewiesen? Zwischenspeichern in einem Textverarbei- ® Wird die Software von einer Community ge- tungsprogramm. Das Textdokument ist somit tragen? Ist diese Community möglicherweise im Falle eines Absturzes der Software wieder- ganz oder teilweise altertumswissenschaft- herstellbar. Abhängig vom Anwendungsfall lich geprägt? Beispiele für Softwareentwick- kann es auch vorteilhaft sein, dass die Software lung, die zunächst aus einer altertumswis- eine Historie der Benutzeränderungen vorhält senschaftlichen Community heraus betrieben und diese ebenfalls wiederherstellen kann. wurde und sich inzwischen fachlich erweitert Dies können die Spracheinstellungen oder hat, sind Pelagios Commons (https://pela- auch die Anpassung von Maßeinheiten, Vor- gios.org/ [23.10.2020]) und die Webanwen- gaben zum Speicherort und Ähnliches sein. dung Recogito (https://recogito.pelagios. org/ [23.10.2020]). Engagierte Nutzergruppen Hilfefunktionen, Tutorials und Community mit einem Fokus auf archäologischen Frage- Neben Hilfefunktionen und Tutorials ist es von stellungen haben sich auch z. B. innerhalb der großer Bedeutung, ob die Software von einer Communities von Softwarepaketen wie QGIS Community getragen wird. Die Zahl der ak- oder R entwickelt. tiven Nutzer und Entwickler eines Software- « Gibt es archäologische Best Practices oder Pu- werkzeugs ist entscheidend dafür, ob man bei blikationen, die auf die rezensierte Software Problemen Hilfe in Foren findet oder, bei einem verweisen? Während Foren, Blogs und ver- kleinen Nutzerkreis, nur im persönlichen Aus- wandte Angebote einen direkten und oft auch tausch Hilfe bekommt. Kleine Nutzernetzwerke raschen Austausch mit Nutzern und ggf. Ent- können jedoch den großen Vorteil bieten, dass wicklern bieten, ist die Einbindung und Emp- konkrete Fragen von den Entwicklern aufgegrif- fehlung von Programmen in Best Practices und fen werden. Publikationen ein weiteres Indiz für deren Ver- breitung, Umfang und Verlässlichkeit. 365
Timo Homburg et al. Dateningest, Interoperabilität und Schnittstellen deutig auf die europäischen Rahmenrichtlinien Eingabe- und Ausgabedatenformate beeinflussen beziehen, ist teilweise jedoch kaum möglich und die Kompatibilität zu anderen Anwendungen und Gegenstand von juristischen Diskussionen. Auch sollten in einer Rezension erwähnt werden. In vie- hier kann die Rezension bereits durch den Hin- len Fällen können die unterstützten Dateiformate weis auf das Thema einen wichtigen Service für über einen entsprechenden Menü-Eintrag (z. B. die Leser bringen. Dies gilt auch für Datenspar- „Speichern unter ...“) gefunden werden. Auch die samkeit und das Hinterfragen von Registrie- verschiedenen Möglichkeiten des Einlesens der rungsvorgängen, Cookies und Ähnlichem. Daten und vorhandene Schnittstellen sind relevant. — Werden die Gesetze (z. B. zu Datenschutz, ® Welche Datenformate werden wie eingele- Kartendarstellungen etc.) des Einsatzlandes sen? Sind alle relevanten Datenformate für durch die Software eingehalten? Es muss die Aufgabe, die die Software im typischen damit gerechnet werden, dass die Software in Anwendungsfall lösen soll, einlesbar? Wer- verschiedenen Regionen und Ländern verwen- den offene Datenformate unterstützt? Können det wird, welche jeweils spezifische Gesetze Datenformate auch aus gängigen Reposito- haben, die sich auf die Ausführung/Installa rien eingelesen werden (z. B. Webservices, Git, tion der Software auswirken. Ein Beispiel sind Cloud Services)? Cloud-Anwendungen, die für einen nordame- ® Welche Datenformate werden ausgegeben? rikanischen Nutzerkreis entwickelt wurden Das Programm sollte eine Ausgabe von Da- und mit der EU-weit gültigen Datenschutz- tenformaten bieten, die eine Weiterverarbei- grundverordnung nicht kompatibel sind. tung in anderen (auch Open Source) Software- — Welche Daten speichert die Anwendung zu paketen zulassen. Es sollte also zumindest ein welchem Zweck und wie lange? Werden Da- offen spezifiziertes Format angeboten werden. ten an Dritte übertragen? In vielen Software- Sollten nur Exporte in ein proprietäres, ggf. anwendungen werden Nutzerdaten zur Ver- von der Software definiertes Format möglich besserung der Anwendungen anonymisiert sein, muss dies von den Entwicklern gut be- erfasst. Manche Softwareanbieter sammeln gründet sein. jedoch weitaus mehr Daten und übertragen « Wie können Daten eingelesen werden? Er- diese z. B. auch an Drittanbieter. Aus der Soft- möglicht die Software eine Stapelverarbei- waredokumentation heraus und vor allem tung? Für sehr viele Anwendungsszenarien beim Erstbesuch einer Webanwendung sollte ist die Durchführung eines einmal definierten ersichtlich werden, welche Daten erhoben und Workflows auf einen Dateistapel oder eine Da- wie lange sie gespeichert werden sowie ob die tenreihe wichtig, wie z.B. die gleichen Transfor- Zustimmung des Benutzers eingeholt wird. In mationsschritte für alle Bilder in einem Ordner. einer Rezension könnte zusätzlich hinterfragt ® Gibt es eine Programmierschnittstelle (API)? werden, ob der Zweck der Datenerfassung ge- Neben der Bedienbarkeit durch einen Men- rechtfertigt scheint, wie etwa zur Verbesserung schen ist auch eine maschinelle Ansteuerung der Software, oder anderen Interessen dient. der Software wichtig. Nur so können bei- spielsweise komplexe Prozesse mit mehreren Softwarekomponenten komplett automatisiert Entwickler-Perspektive werden. Eine API gewährleistet dies. Sie sollte Anwendungsentwickler sind zwar auch Nutzer möglichst offen und ggf. mittels eines Stan- einer Software, haben jedoch wegen zusätzlicher dards wie OpenAPI (https://www.openapis. Interessen und weiterer Anwendungsszena rien org [23.10.2020]) dokumentiert sein. Ein Bei- einen anderen Blick auf Software. Eine gute Zu- spiel für APIs sind die Schnittstellen von Wi- sammenfassung der Entwicklerperspektive auf kidata, an die man automatisierte Datenabfra- die Softwarequalität bieten Jung et al. (2004). gen stellen kann. Dort werden die Vorgaben des ISO/IEC 9126 Standards (https://de.wikipedia.org/wiki/ISO/ Konformität mit Regelungen zum Datenschutz IEC_9126 [23.10.2020]) in Beispielen ausgeführt. und der Datensparsamkeit Die folgenden Fragen fokussieren sich auf den Für den Einsatz in der universitären Forschung Programmcode und die Softwarearchitektur. Die- und der Lehre entscheidet die Frage nach dem se können nur beurteilt werden, wenn der Quell- Datenschutz vielfach darüber, ob die Software code offen einsehbar (Open Source) ist, was bei überhaupt genutzt werden darf. Eine Einschät- proprietärer Software meist nicht oder nur einge- zung der Regelungen, sofern sie sich nicht ein- schränkt möglich ist. 366
Handreichung zur Rezension von Forschungssoftware Dokumentation und Tests — Ist der Build-Prozess dokumentiert und Eine umfangreiche Dokumentation bietet ein um- ggf. mittels Buildingscripts automatisiert? fassendes Verständnis der Intention, der Ausge- Neben dem grundlegenden Verständnis der reiftheit und des aktuellen Entwicklungsstands Programmarchitektur ist das Wissen um die der Software. Sie ist zudem essenziell, um die Bauanleitung, dem Build-Prozess, der Soft- Software zu erweitern. Eine solide Dokumenta ware wichtig. Eine Dokumentation dieses tion wird schließlich auch eine größere Commu- Prozesses sollte Informationen über den funk- nity von potenziellen Entwicklern ansprechen. tionierenden Erstellungsprozess der Software Man unterscheidet mehrere Bestandteile der enthalten. In der Vergangenheit wurde mit Dokumentation, und zwar die Dokumentation: Anleitungen in README-Dateien oder ähn- des Quellcodes, d. h. von Klassen oder einzel- lichen natürlichsprachlichen Beschreibungen nen Methoden, gearbeitet. Inzwischen ist es etablierter Stan- des Build-Prozesses, d. h. wie die Software aus dard, maschinenlesbare Bauanleitungen (Build dem Quellcode erzeugt wird, scripts) bereitzustellen. Diese beschreiben des Softwaretestprozesses, d. h. welche Testfälle eindeutig und maschinenlesbar, wie die Soft- von der Software berücksichtigt wurden. ware erstellt wurde und erlauben oft das Star- Schließlich gibt es eine Entwicklerdokumenta- ten des Build-Prozesses mit einem einzigen tion mit Benutzungsbeispielen. Skript. Abhängigkeiten der Software in Bezug Software Repositorien wie GitHub (https:// auf verwendete Libraries (Programmbiblio- github.com [23.10.2020]) oder GitLab (https://git- theken) werden mit Buildscripts ebenfalls do- lab.com [23.10.2020]) bieten oft Vorlagen oder Best kumentiert. Beispiele für solche Skripte finden Practices, um diese Anforderungen in verschie- sich z. B. in Apache Maven (https://maven. denen Programmiersprachen umsetzen zu können. apache.org [23.10.2020]) oder Gradle (https:// Ein wichtiger Begriff in dem Zusammenhang gradle.org [23.10.2020]). von Dokumentation und Tests ist auch der der « Ist die Dokumentation aktuell und adressiert Continuous Integration (CI; Kontinuierliche Inte- sie alle Funktionen des Programms? Das letz- gration). Damit wird die fortlaufende Zusam- te Bearbeitungsdatum einer Dokumentation menfügung der Einzelkomponenten einer An- ist meist einem Zeitstempel zu entnehmen, wendung bezeichnet. Hierfür werden Routinen wenn die Dokumentation mit einem der oben erstellt, die vielseitige Aufgaben durchführen. So genannten Dokumentationswerkzeuge erstellt kann beispielsweise automatisiert die Erstellung wurde. Dieses Datum sollte mit dem Veröffent- einer Quellcodedokumentation, die Durchfüh- lichungsdatum der aktuellen Software über- rung eines Softwaretests oder die Erzeugung ei- einstimmen oder aktueller sein. Werden im ner ausführbaren Datei aus dem Quellcode (Re- besten Fall die Prinzipien der Continuous Inte- leasefile, EXE-Datei) angestoßen werden. Dabei gration angewendet, so ist die Erzeugung und werden diese Routinen meist nach jeder Ände- Bereitstellung der Dokumentation direkt mit rung des Quellcodes erneut ausgeführt, wodurch im Entwicklungsprozess der Anwendung inte- alle Programmkomponenten aktuell bleiben. griert, wie beispielsweise das GitHub Reposi- — Ist eine Quellcodedokumentation vorhan- torium des SPARQLing-Unicorn-QGIS-Plugins den und ggf. eine HTML-Variante davon (https://github.com/sparqlunicorn/sparqlu- verfügbar? Best Practices sind hier beispiels- nicornGoesGIS [23.10.2020]). Hier erstellt ein weise Quellcodedokumentationen mit Doxy- automatisierter Prozess die Dokumentation bei gen (https://www.doxygen.nl/index.html jeder Veränderung des Quellcodes neu und pu- [23.10.2020]), JavaDoc (http://www.oracle. bliziert sie auf der GitHub Seite des Repositori- com/technetwork/java/javase/documenta- ums (https://sparqlunicorn.github.io/sparql tion/javadoc-137458.html [23.10.2020]), JsDoc unicornGoesGIS/ [23.10.2020]). (https://jsdoc.app [23.10.2020]) oder das für — Gibt es eine Entwicklerdokumentation, wel- Python beliebte ReadTheDocs (https://read che eine evtl. Softwareerweiterung fördert? thedocs.org [23.10.2020]). Alle genannten Tools Eine Entwicklerdokumentation bietet einem erzeugen eine HTML-Repräsentation der Doku- Entwickler den Einstieg in die Beschäftigung mentation, welche idealerweise auch online be- mit der Erweiterung einer Software über die reitgestellt werden sollte, etwa als GitHub-Page. einfache Nutzung hinaus. Eine aussagekräfti- ge README-Datei, die kurz die Verwendung des Programms mit den Standardeinstel- lungen demonstriert, ist eine Mindestanforde- 367
Sie können auch lesen