65 research outputs found

    Software-Engineering-Empfehlungen des DLR

    Get PDF
    Dieses Dokument beschreibt die Software-Engineering-Empfehlungen des Deutschen Zentrums für Luft- und Raumfahrt e.V. (DLR). Die Zielgruppe der Empfehlungen sind Wissenschaftlerinnen und Wissenschaftler des DLR. Die Empfehlungen sollen sie unterstützen, ihre entwickelte Software in Bezug auf gute Software-Entwicklungs- und Dokumentationspraxis einzuschätzen und zu verbessern. Der Fokus der Empfehlungen liegt auf dem Wissenserhalt und der Förderung von nachhaltiger Software-Entwicklung in der Forschung. Wir veröffentlichen die Empfehlungen, um die generelle Diskussion zum Thema gute wissenschaftliche Software-Entwicklungspraxis zu unterstützen

    Metadatenmanagement in Bibliotheken mit KNIME und Catmandu

    Get PDF
    This thesis deals with metadata management in libraries. It examines to what extent the tools KNIME and Catmandu can be used to support libraries in typical tasks of metadata management. The technical developments in the field of metadata have become more complex due to the multitude of formats, interfaces, and applications. In order to prepare and use metadata, information about the suitability of different programs is needed. KNIME and Catmandu are both theoretically analyzed and practically tested. For this purpose it is examined, among other things, how the documentation is designed, and which data formats and interfaces are supported. Typical tasks like filtering, analysis, content enhancement, and data enrichment will be tested. The work shows that both tools have different strengths and weaknesses. Catmandu's strength is an easier introduction into the program and a variety of options for using library data formats and interfaces. An advantage of KNIME is that after an initial familiarization many problems can be solved quickly and special features are made available for numerous cases

    Metadatenmanagement in Bibliotheken mit KNIME und Catmandu

    Get PDF
    This thesis deals with metadata management in libraries. It examines to what extent the tools KNIME and Catmandu can be used to support libraries in typical tasks of metadata management. The technical developments in the field of metadata have become more complex due to the multitude of formats, interfaces, and applications. In order to prepare and use metadata, information about the suitability of different programs is needed. KNIME and Catmandu are both theoretically analyzed and practically tested. For this purpose it is examined, among other things, how the documentation is designed, and which data formats and interfaces are supported. Typical tasks like filtering, analysis, content enhancement, and data enrichment will be tested. The work shows that both tools have different strengths and weaknesses. Catmandu's strength is an easier introduction into the program and a variety of options for using library data formats and interfaces. An advantage of KNIME is that after an initial familiarization many problems can be solved quickly and special features are made available for numerous cases

    Verbesserungen der virtuellen Arbeitskultur durch Gamification

    Get PDF
    Flexible und ortsunabhängige Arbeitsformen stellen in vielerlei Hinsicht eine Win-win-Situation für Arbeitgeber und Arbeitnehmer dar. Aufgrund der fortschreitenden Globalisierung, dem technischen Fortschritt und der bevorzugten Arbeitsweise der Generation Z nimmt die Nachfrage nach virtuellen Arbeitsformen zu. Zudem trägt auch die Corona-Krise dazu bei, virtuelle Arbeitsformen längerfristig zu etablieren. Jedoch bringt der Wandel von einem traditionellen hin zu einem virtuellen Arbeitsplatz auch neue Herausforderungen und Probleme mit sich. Mangelnder sozialer Austausch im Team sowie fehlende Motivation der Angestellten kann zu verschlechterter Zusammenarbeit und Isolation von einzelnen Teammitgliedern führen. In dieser Bachelorarbeit wird daher untersucht, wie den genannten Herausforderungen mit Hilfe einer Applikation entgegengewirkt werden kann. Es wird eine Applikation umgesetzt, welche einen virtuellen Arbeitsplatz simuliert und Gamification einsetzt. Ziel dieser Arbeit ist es, eine soziale Umgebung für Personen in virtuellen Arbeitsformen zu schaffen, welche das Risiko der Selbstisolation reduziert. Anhand eines Minimum Viable Products und der Anwendung verschiedener Konzepte der Gamification wird untersucht, wie zur Lösung des Problems beigetragen werden kann. Vorgängig erfordert dies eine Erarbeitung der theoretischen Grundlagen, wobei ein Konzept für die Verwendung von Gamification in einer solchen Anwendung erstellt wird. Weiter wird in dieser Arbeit die Planung und Implementation des Frontend-Teils durchgeführt, während zeitgleich die Um-setzung des Backends durch einen anderen Studierenden stattfindet. Zur Validierung des Minimum Viable Products wurde ein Testlauf mit Personen, welche in virtuellen Arbeitsformen beschäftigt sind, durchgeführt. Durch die Verwendung der implementierten Applikation entwickelt sich bei Personen, welche in virtuellen Arbeitsformen beschäftigt sind, ein Gemeinsamkeitsgefühl. Dieses wirkt motivierend und trägt zur sozialen Zugehörigkeit bei. Die Personen fühlen sich weniger isoliert. Zudem wird das Bedürfnis nach sozialem Austausch zwischen den Teammitgliedern gesteigert. Die durch Gamification entstehenden Spieldynamiken wirken auf die Nutzenden motivierend und schaffen ein anspornendes Arbeitsumfeld. Der Einsatz von Gamification ist aber vorhergehend genau zu analysieren, da die verschiedenen Methoden unterschiedlich auf Einzelpersonen und Teams wirken. Mit dem erarbeiteten Minimum Viable Product wurde gezeigt, dass eine Anwendung, welche einen virtuellen Arbeitsplatz simuliert und Gamification einsetzt, dazu beiträgt die Zusammenarbeit in Teams zu verbessern. Die Ergebnisse der Evaluation zeigen zudem, dass durch die Applikation das Risiko der Selbstisolation minimiert wird. Dementsprechend ist die Weiterentwicklung der Anwendung zu verfolgen und weitere Abklärungen durchzuführen, um das quantifizierbare Potential sowie den effektiven Nutzen der Anwendung zu bestimmen

    Untersuchung von Performanzveränderungen auf Quelltextebene

    Get PDF
    Änderungen am Quelltext einer Software können zu veränderter Performanz führen. Um das Auftreten von Regressionen zu verhindern und die Effekte von Quelltextänderungen, von denen eine Verbesserung erwartet wird, zu überprüfen, ist die Messung der Auswirkungen von Quelltextänderungen auf die Performanz sowie das tiefgehende Verständnis des Laufzeitverhaltens der beteiligten Quelltextkonstrukte notwendig. Die Spezifikation von Benchmarks oder Lasttests, um Regressionen zu erkennen, erfordert immensen manuellen Aufwand. Für das Verständnis der Änderungen sind anschließend oft weitere Experimente notwendig. In der vorliegenden Arbeit wird der Ansatz Performanzanalyse von Softwaresystemen (Peass) entwickelt. Peass beruht auf der Annahme, dass Performanzänderungen durch Messung der Performanz von Unittests erkennbar ist. Peass besteht aus (1) einer Methode zur Regressionstestselektion, d. h. zur Bestimmung, zwischen welchen Commits sich die Performanz geändert haben kann basierend auf statischer Quelltextanalyse und Analyse des Laufzeitverhaltens, (2) einer Methode zur Umwandlung von Unittests in Performanztests und zur statistisch zuverlässigen und reproduzierbaren Messung der Performanz und (3) einer Methode zur Unterstützung des Verstehens von Ursachen von Performanzänderungen. Der Peass-Ansatzes ermöglicht es somit, durch den Workload von Unittests messbare Performanzänderungen automatisiert zu untersuchen. Die Validität des Ansatzes wird geprüft, indem gezeigt wird, dass (1) typische Performanzprobleme in künstlichen Testfällen und (2) reale, durch Entwickler markierte Performanzänderungen durch Peass gefunden werden können. Durch eine Fallstudie in einem laufenden Softwareentwicklungsprojekt wird darüber hinaus gezeigt, dass Peass in der Lage ist, relevante Performanzänderungen zu erkennen.:1 Einleitung 1.1 Motivation 1.2 Ansatz 1.3 Forschungsfragen 1.4 Beiträge 1.5 Aufbau der Arbeit 2 Grundlagen 2.1 Software Performance Engineering 2.2 Modellbasierter Ansatz 2.2.1 Überblick 2.2.2 Performanzantipattern 2.3 Messbasierter Ansatz 2.3.1 Messprozess 2.3.2 Messwertanalyse 2.4 Messung in künstlichen Umgebungen 2.4.1 Benchmarking 2.4.2 Lasttests 2.4.3 Performanztests 2.5 Messung in realen Umgebungen: Monitoring 2.5.1 Überblick 2.5.2 Umsetzung 2.5.3 Werkzeuge 3 Regressionstestselektion 3.1 Ansatz 3.1.1 Grundidee 3.1.2 Voraussetzungen 3.1.3 Zweistufiger Prozess 3.2 Statische Testselektion 3.2.1 Selektierte Änderungen 3.2.2 Prozess 3.2.3 Implementierung 3.3 Tracevergleich 3.3.1 Selektierte Änderungen 3.3.2 Prozess 3.3.3 Implementierung 3.3.4 Kombination mit statischer Analyse 3.4 Evaluation 3.4.1 Implementierung 3.4.2 Exaktheit 3.4.3 Korrektheit 3.4.4 Diskussion der Validität 3.5 Verwandte Arbeiten 3.5.1 Funktionale Regressionstestbestimmung 3.5.2 Regressionstestbestimmung für Performanztests 4 Messprozess 4.1 Vergleich von Mess- und Analysemethoden 4.1.1 Vorgehen 4.1.2 Fehlerbetrachtung 4.1.3 Workloadgröße der künstlichen Unittestpaare 4.2 Messmethode 4.2.1 Aufbau einer Iteration 4.2.2 Beenden von Messungen 4.2.3 Garbage Collection je Iteration 4.2.4 Umgang mit Standardausgabe 4.2.5 Zusammenfassung der Messmethode 4.3 Analysemethode 4.3.1 Auswahl des statistischen Tests 4.3.2 Ausreißerentfernung 4.3.3 Parallelisierung 4.4 Evaluierung 4.4.1 Vergleich mit JMH 4.4.2 Reproduzierbarkeit der Ergebnisse 4.4.3 Fazit 4.5 Verwandte Arbeiten 4.5.1 Beenden von Messungen 4.5.2 Änderungserkennung 4.5.3 Anomalieerkennung 5 Ursachenanalyse 5.1 Reduktion des Overheads der Messung einzelner Methoden 5.1.1 Generierung von Beispielprojekten 5.1.2 Messung von Methodenausführungsdauern 5.1.3 Optionen zur Overheadreduktion 5.1.4 Messergebnisse 5.1.5 Überprüfung mit MooBench 5.2 Messkonfiguration der Ursachenanalyse 5.2.1 Grundlagen 5.2.2 Fehlerbetrachtung 5.2.3 Ansatz 5.2.4 Messergebnisse 5.3 Verwandte Arbeiten 5.3.1 Monitoringoverhead 5.3.2 Ursachenanalyse für Performanzänderungen 5.3.3 Ursachenanalyse für Performanzprobleme 6 Evaluation 6.1 Validierung durch künstliche Performanzprobleme 6.1.1 Reproduktion durch Benchmarks 6.1.2 Umwandlung der Benchmarks 6.1.3 Überprüfen von Problemen mit Peass 6.2 Evaluation durch reale Performanzprobleme 6.2.1 Untersuchung dokumentierter Performanzänderungen offenen Projekten 6.2.2 Untersuchung der Performanzänderungen in GeoMap 7 Zusammenfassung und Ausblick 7.1 Zusammenfassung 7.2 AusblickChanges to the source code of a software may result in varied performance. In order to prevent the occurance of regressions and check the effect of source changes, which are expected to result in performance improvements, both the measurement of the impact of source code changes and a deep understanding of the runtime behaviour of the used source code elements are necessary. The specification of benchmarks and load tests, which are able to detect performance regressions, requires immense manual effort. To understand the changes, often additional experiments are necessary. This thesis develops the Peass approach (Performance analysis of software systems). Peass is based on the assumption, that performance changes can be identified by unit tests. Therefore, Peass consists of (1) a method for regression test selection, which determines between which commits the performance may have changed based on static code analysis and analysis of the runtime behavior, (2) a method for transforming unit tests into performance tests and for statistically reliable and reproducible measurement of the performance and (3) a method for aiding the diagnosis of root causes of performance changes. The Peass approach thereby allows to automatically examine performance changes that are measurable by the workload of unit tests. The validity of the approach is evaluated by showing that (1) typical performance problems in artificial test cases and (2) real, developer-tagged performance changes can be found by Peass. Furthermore, a case study in an ongoing software development project shows that Peass is able to detect relevant performance changes.:1 Einleitung 1.1 Motivation 1.2 Ansatz 1.3 Forschungsfragen 1.4 Beiträge 1.5 Aufbau der Arbeit 2 Grundlagen 2.1 Software Performance Engineering 2.2 Modellbasierter Ansatz 2.2.1 Überblick 2.2.2 Performanzantipattern 2.3 Messbasierter Ansatz 2.3.1 Messprozess 2.3.2 Messwertanalyse 2.4 Messung in künstlichen Umgebungen 2.4.1 Benchmarking 2.4.2 Lasttests 2.4.3 Performanztests 2.5 Messung in realen Umgebungen: Monitoring 2.5.1 Überblick 2.5.2 Umsetzung 2.5.3 Werkzeuge 3 Regressionstestselektion 3.1 Ansatz 3.1.1 Grundidee 3.1.2 Voraussetzungen 3.1.3 Zweistufiger Prozess 3.2 Statische Testselektion 3.2.1 Selektierte Änderungen 3.2.2 Prozess 3.2.3 Implementierung 3.3 Tracevergleich 3.3.1 Selektierte Änderungen 3.3.2 Prozess 3.3.3 Implementierung 3.3.4 Kombination mit statischer Analyse 3.4 Evaluation 3.4.1 Implementierung 3.4.2 Exaktheit 3.4.3 Korrektheit 3.4.4 Diskussion der Validität 3.5 Verwandte Arbeiten 3.5.1 Funktionale Regressionstestbestimmung 3.5.2 Regressionstestbestimmung für Performanztests 4 Messprozess 4.1 Vergleich von Mess- und Analysemethoden 4.1.1 Vorgehen 4.1.2 Fehlerbetrachtung 4.1.3 Workloadgröße der künstlichen Unittestpaare 4.2 Messmethode 4.2.1 Aufbau einer Iteration 4.2.2 Beenden von Messungen 4.2.3 Garbage Collection je Iteration 4.2.4 Umgang mit Standardausgabe 4.2.5 Zusammenfassung der Messmethode 4.3 Analysemethode 4.3.1 Auswahl des statistischen Tests 4.3.2 Ausreißerentfernung 4.3.3 Parallelisierung 4.4 Evaluierung 4.4.1 Vergleich mit JMH 4.4.2 Reproduzierbarkeit der Ergebnisse 4.4.3 Fazit 4.5 Verwandte Arbeiten 4.5.1 Beenden von Messungen 4.5.2 Änderungserkennung 4.5.3 Anomalieerkennung 5 Ursachenanalyse 5.1 Reduktion des Overheads der Messung einzelner Methoden 5.1.1 Generierung von Beispielprojekten 5.1.2 Messung von Methodenausführungsdauern 5.1.3 Optionen zur Overheadreduktion 5.1.4 Messergebnisse 5.1.5 Überprüfung mit MooBench 5.2 Messkonfiguration der Ursachenanalyse 5.2.1 Grundlagen 5.2.2 Fehlerbetrachtung 5.2.3 Ansatz 5.2.4 Messergebnisse 5.3 Verwandte Arbeiten 5.3.1 Monitoringoverhead 5.3.2 Ursachenanalyse für Performanzänderungen 5.3.3 Ursachenanalyse für Performanzprobleme 6 Evaluation 6.1 Validierung durch künstliche Performanzprobleme 6.1.1 Reproduktion durch Benchmarks 6.1.2 Umwandlung der Benchmarks 6.1.3 Überprüfen von Problemen mit Peass 6.2 Evaluation durch reale Performanzprobleme 6.2.1 Untersuchung dokumentierter Performanzänderungen offenen Projekten 6.2.2 Untersuchung der Performanzänderungen in GeoMap 7 Zusammenfassung und Ausblick 7.1 Zusammenfassung 7.2 Ausblic

    Semantic Plug & Play - Selbstbeschreibende Hardware für modulare Robotersysteme

    Get PDF
    Moderne Robotersysteme bestehen aus einer Vielzahl unterschiedlicher Sensoren und Aktuatoren, aus deren Zusammenwirken verschiedene Fähigkeiten entstehen und nutzbar gemacht werden. So kann ein Knickarmroboter über die koordinierte Ansteuerung mehrerer Motoren Gegenstände greifen, oder ein Quadrocopter über Sensoren seine Lage und Position bestimmen. Eine besondere Ausprägung bilden modulare Robotersysteme, in denen sich Sensoren und Aktuatoren dynamisch entfernen, austauschen oder hinzufügen lassen, wodurch auch die verfügbaren Fähigkeiten beeinflusst werden. Die Flexibilität modularer Robotersysteme wird jedoch durch deren eingeschränkte Kompatibilität begrenzt. So existieren zahlreiche proprietäre Systeme, die zwar eine einfache Verwendung ermöglichen aber nur auf eine begrenzte Menge an modularen Elementen zurückgreifen können. Open-Source-Projekte mit einer breiten Unterstützung im Hardwarebereich, wie bspw. die Arduino-Plattform, oder Softwareprojekte, wie das Robot Operating System (ROS) versuchen, eine eben solch breite Kompatibilität zu bieten, erfordern allerdings eine sehr ausführliche Dokumentation der Hardware für die Integration. Das zentrale Ergebnis dieser Dissertation ist ein Technologiestack (Semantic Plug & Play) für die einfache Dokumentation und Integration modularer Hardwareelemente durch Selbstbeschreibungsmechanismen. In vielen Anwendungen befindet sich die Dokumentation üblicherweise verteilt in Textdokumenten, Onlineinhalten und Quellcodedokumentationen. In Semantic Plug & Play wird ein System basierend auf den Technologien des Semantic Web vorgestellt, das nicht nur eben solch vorhandene Dokumentationen vereinheitlicht und kollektiviert, sondern das auch durch eine maschinenlesbare Aufbereitung die Dokumentation in der Prozessdefinition verwendet werden kann. Eine in dieser Dissertation entwickelte Architektur bietet für die Prozessdefinition eine API für objektorientierte Programmiersprachen, in der abstrakte Fähigkeiten verwendet werden können. Mit einem besonderen Fokus auf zur Laufzeit rekonfigurierbare Systeme können damit Fähigkeiten über Anforderungen an aktuelle Hardwarekonfigurationen ausgedrückt werden. So ist es möglich, qualitative und quantitative Eigenschaften als Voraussetzung für Fähigkeiten zu definieren, die erst bei einem Wechsel modularer Hardwareelemente erfüllt werden. Diesem Prinzip folgend werden auch kombinierte Fähigkeiten unterstützt, die andere Fähigkeiten hardwareübergreifend für ihre intrinsische Ausführung nutzen. Für die Kapselung der Selbstbeschreibung auf einzelnen Hardwareelementen werden unterschiedliche Adapter in Semantic Plug & Play unterstützt, wie etwa Mikrocontroller oder X86- und ARM-Systeme. Semantic Plug & Play ermöglicht zudem eine Erweiterbarkeit zu ROS anhand unterschiedlicher Werkzeuge, die nicht nur eine hybride Nutzung erlauben, sondern auch die Komplexität mit modellgetriebenen Ansätzen beherrschbar machen. Die Flexibilität von Semantic Plug & Play wird in sechs Experimenten anhand unterschiedlicher Hardware illustriert. Alle Experimente adressieren dabei Problemstellungen einer übergeordneten Fallstudie, für die ein heterogener Quadrocopterschwarm in hochgradig dynamischen Szenarien eingesetzt und gezielt rekonfiguriert wird

    SCC-News. 2020,2

    Get PDF

    Open Source Studie Schweiz 2021

    Get PDF
    Die Open Source Studie 2021 zeigt auf, wie Open Source Software trotz der bereits 2018 hohen Werte in vielen Bereichen noch weiter an Verbreitung und Relevanz zugenommen hat. Eindrücklich ist, dass heute gemäss der neuesten Umfrage 97% der Firmen und Behörden Open Source Lösungen einsetzen. Der wichtigste Grund dafür sind offene Standards, denn bei Open Source Software gilt stets «Interoperability by Design». Die Umfrage 2021 zeigt wie bereits 2018 auf, dass Open Source Software in der Schweiz sehr verbreitet ist: Von den 163 antwortenden CEOs, CIOs, CTOs und IT-Fachleuten gaben 97% an, dass sie in einem oder mehreren Bereichen Open Source Software einsetzen – 2018 waren es 95%, 2015 erst 92%. Eindrücklich ist insbesondere das grosse Wachstum der so genannten «Vielnutzer» von Open Source Software auf 49%. Fast die Hälfte der Unternehmen und Behörden – alles Mitglieder von swissICT und der Schweizerischen Informatikkonferenz – geben an, dass sie in mehr als 14 der insgesamt 28 abgefragten Themen Open Source Software nutzen. Das ist ein deutlicher Anstieg gegenüber den 29% «Vielnutzern» im Jahr 2018 und den erst 21% 2015. Dieser Trend belegt das verstärkte Eindringen von Open Source Software in immer weitere Bereiche der modernen Informatik und betont einmal mehr die generelle Relevanz von Open Source Lösungen in der fortschreitenden digitalen Transformation. Open Source Software wird immer breiter in vielen unterschiedlichen Informatikbereichen eingesetzt und hat das ursprüngliche Nischendasein aus der Server-Admin Ecke definitiv verlassen. Auch zeigt dies einmal mehr ein typisches Phänomen bei Open Source Software: Alle machen es, bloss die wenigsten reden darüber. So müsste der bekannte Spruch «No one has been fired for buying Microsoft» wohl schon bald «No one has been fired for buying Linux» lauten. Dieser Meinung sind auch die Antwortenden. Auf die Frage hin, wie sich die Bedeutung von Open Source Software in den letzten drei Jahren verändert hat, antworteten mit 67% über zwei Drittel, dass die Relevanz «stark» oder «eher zugenommen» hat. Im Jahr 2018 waren es 60%, die so antworteten, sodass 2021 die hohe Relevanz von Open Source Software offenbar noch intensiver wahrgenommen wird. Nur gerade knapp 6% der Befragten gab an, dass die Relevanz eher abgenommen haEin neues, wichtiges Argument für Open Source Software ist gemäss der Antworten die «digitale Souveränität», die Fähigkeit zu selbstbestimmtem Handeln und Entscheiden im digitalen Raum. Nutzer von Open Source Software haben somit die Wichtigkeit der reduzierten Hersteller-Abhängigkeit und der dadurch besseren Verhandlungsmöglichkeiten bei Software-Anschaffungen erkannt. Aber es gibt auch weiterhin Hindernisse beim Einsatz von Open Source Software: So wurde beispielsweise in den Umfrageresultaten bemängelt, dass bei vielen Open Source Projekten unklar sei, wie sie finanziert werden. Und neben den unklaren Geschäftsmodellen ist nach wie vor der Vendor Lock-in mit bestehenden proprietären Systemen einer der wichtigsten Hinderungsgründe bei der weiteren Verbreitung von Open Source Software.be, niemand kreuzte «stark abgenommen» an. Beim Ranking der abgefragten Open Source Tools und Plattformen gab es einige spannende Überraschungen. So ist zwar weiterhin JavaScript die verbreitetste Open Source Programmiersprache in der Schweiz, jedoch klarer Gewinner ist dieses Mal TypeScript. Dessen Verbreitung hat sich in nur drei Jahren von 2% auf 39% verzwanzigfacht. Auch Open Source Anwendungen auf dem Desktop haben stark an Ausbreitung gewonnen: deren Anteil stieg von 56% auf 75%. Open Source Standardprodukte wie Firefox oder KeePass sind dabei besonders beliebt. Bei den Identity und Access Management Systemen hat Keycloak einen grossen Sprung nach vorne geschafft: dessen Marktanteil hat sich seit 2018 auf 44% Verbreitung mehr als verdoppelt. Bei den Open Source Content Management Systemen konnte WordPress seine Marktführerschaft auf über 60% verfestigen. Neu mit im Rennen ist dieses Jahr der Schweizer Messenger-Dienst Threema, dessen Mobile Apps und Protokolle erst im Dezember 2020 unter der AGPL-Open Source Lizenz freigegeben worden sind. Threema ist gemäss Umfrage in der IT-Branche sehr verbreitet und wird von 56% der Antwortenden in der Kategorie «Open Source Kommunikations-Tools» genutzt. Erstmalig wurde dieses Jahr untersucht, ob die befragten Firmen und Behörden neben der Nutzung von Open Source Software auch selber zu bestehenden externen oder eigenen Open Source Projekten beitragen. Die Ergebnisse zeigen auf, dass mit über 60% der 141 Antwortenden bereits viele der befragten CEOs und IT-Verantwortlichen Open Source Code freigeben oder zumindest schon mal darüber nachgedacht haben. Tatsächlich veröffentlichen heute insgesamt 30% der Antwortenden auf GitHub, GitLab oder einer anderen Plattform eigenen Source Code. Dies erstaunt, ist die Freigabe von Quelltext unter einer Open Source Lizenz für viele Firmen und Behörden doch eine relativ neue Praxis und benötigt einiges an Erfahrung mit Open Source Communities und Prozessen. Dabei publiziert die Mehrheit (21%) den Quellcode auf einem Organisations-eigenen Profil. Nur die Minderheit lässt ihre Mitarbeitenden den Code über ihre privaten GitHub Profile veröffentlichen
    corecore