Skip to content

Commit

Permalink
Migration Open Source Kapitel Arbeitsstand (#17)
Browse files Browse the repository at this point in the history
  • Loading branch information
fabianlupa authored Sep 29, 2024
1 parent 07042ea commit 5fe7fd1
Show file tree
Hide file tree
Showing 6 changed files with 205 additions and 3 deletions.
39 changes: 39 additions & 0 deletions docs/open-source/abapgit-as-enabler.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
layout: page
title: abapGit als Enabler von Open Source
permalink: /open-source/abapgit-as-enabler/
parent: Open Source
prev_page_link: /open-source/developing-open-source/
prev_page_title: Entwicklung von Open Source
next_page_link: /open-source/open-source-projects/
next_page_title: Vorstellung ausgewählter Projekte
nav_order: 4
---

{: .no_toc}
# abapGit als Enabler von Open Source

1. TOC
{:toc}

## Übersicht

- Übersichtsgrafik

## Verfügbarkeit und Versionen von abapGit

## Voraussetzungen

- OP/Private Cloud: 702, Netzwerkverbindung oder Offline-Repos
- BTP/Public Cloud: Schon da, eingeschränkt, nur Online-Repos
- Jemand muss sich kümmern

## Konfiguration und Einrichtung

- Insbesondere Exits

## Risiken

- Berechtigungen
- Möglichkeit der massenhaften Extraktion der gesamten propritären Codebase und Mitnehmen zur Konkurrenz
- Möglichkeit am Transportwesen vorbei massenhaft Software zu installieren
22 changes: 22 additions & 0 deletions docs/open-source/contributing-to-open-source.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
layout: page
title: Beteiligung an Open Source
permalink: /open-source/contributing-to-open-source/
parent: Open Source
prev_page_link: /open-source/using-open-source/
prev_page_title: Einsatz von Open Source
next_page_link: /open-source/developing-open-source/
next_page_title: Entwicklung von Open Source
nav_order: 2
---

{: .no_toc}
# Beteiligung an Open Source

1. TOC
{:toc}

## Beteiligung an Open Source

- Als Alternative zum Fork, Beteiligung im Upstream Projekt, automatisierte Tests
- Einfache Beteiligung -> Doku, Issues gut formuliert, kleinere Themen -> geringe Einstiegshürde
29 changes: 29 additions & 0 deletions docs/open-source/developing-open-source.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
layout: page
title: Entwicklung von Open Source
permalink: /open-source/developing-open-source/
parent: Open Source
prev_page_link: /open-source/contributing-to-open-source/
prev_page_title: Beteiligung an Open Source
next_page_link: /open-source/abapgit-as-enabler/
next_page_title: abapGit als Enabler von Open Source
nav_order: 3
---

{: .no_toc}
# Entwicklung von Open Source

1. TOC
{:toc}

## Mehrwert aus Unternehmenssicht

- Verweis auch auf Versionsverwaltungskapitel

## Anpassung des Entwicklungsprozesses zur Berücksichtigung externer Entwickler

- Namensräume, Tools und Prozesse, um mit fehlendem Originalsystem umzugehen, Unterstützung verschiedener Releases, Unit Tests, ....
- Open Source Namespaces
- Minimierung von Abhängigkeiten zum SAP-Standard
- Auswirkungen auf die Paketstruktur
- "Inner Source" -> oder Versionsverwaltungskapitel
21 changes: 18 additions & 3 deletions docs/open-source/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
layout: page
title: Open Source
permalink: /open-source/
next_page_title: Open Source
next_page_link: /open-source/using-open-source/
next_page_title: Einsatz von Open Source
has_children: true
nav_order: 5
---

Expand All @@ -12,6 +14,19 @@ nav_order: 5
1. TOC
{:toc}

## Erster Punkt
## Einleitung

Hier beginnt das Kapitel
Open Source ist immer noch ein Thema, bei dem ein ABAP-Entwickler leicht anecken kann und gegebenenfalls für den Einsatz argumentieren muss. Während in anderen Programmiersprachen der Einsatz von Open-Source-Bestandteilen in eigenen Entwicklungsprojekten gelebte Praxis ist, stößt man in der ABAP-Entwicklung noch immer auf einige Widerstände. Möchte man sogar Teile seiner proprietären Software der Community als Open-Source-Projekt bereitstellen, wird es noch schwieriger. Die Argumente dagegen können auch fundiert sein. ABAP hat es durch einige seiner Alleinstellungsmerkmale schwerer an dieser Stelle Fuß zu fassen. In diesem Kapitel sollen daher die möglichen Betrachtungswinkel erläutert und die Chancen und Risiken ausgearbeitet werden.

Was ist überhaupt Open Source? Entgegen der Meinung einiger ist SAP ERP und SAP S/4HANA nicht "open source", nur weil ich als ABAP-Entwickler den Standard-Quellcode der SAP lesen kann. Open-Source-Software (OSS) ist Software, welche unter einer Open-Source-Lizenz bereitgestellt wird. Diese ermöglicht je nach Lizenzbedingungen zum Beispiel eine kostenfreie Nutzung oder Modifikation und Weiterverbreitung des bereitgestellten Codings. Außerdem ist der Quellcode einsehbar. Binäre Builds sind damit reproduzierbar und auditierbar, ohne Coding durchlaufen zu müssen. Dies steht im ABAP-Kontext im Gegensatz zu Transportdateien oder SPAM-Packages, bei denen erst nach dem Import klar wird, was eigentlich enthalten war.

> Open Source im SAP Entwicklerumfeld? Passt das zusammen?
> Ja, Open Source im SAP Entwicklungsumfeld und noch besser im SAP Umfeld ist kein Widerspruch. SAP nutzt auch Open Source, stellt Open Source Produkte zur Verfügung (z.B. SapMachine) und unterstützt die Open Source Community (siehe auch SAP Open Source Landing-Page).
> In diesem Kapitel wollen wir Tipps für die Nutzung von Open Source in der SAP Entwicklung geben und auch Empfehlungen wie man sich dem Thema SAP und Open Source annähern kann, falls man Open Source bisher noch nicht nutzt. Zum Abschluss möchten wir einige Open Source Projekte vorstellen, welche wir aus dem ABAP Development Arbeitskreis für sinnvoll erachten und die bei der ABAP Entwicklung „das Leben leichter“ machen.
## Motivation aus Unternehmenssicht

- ....Warum sollte ich mich als Unternehmen / Entscheidungsträger überhaupt hiermit auf hoher Flugebene auseinandersetzen, hat bisher auch ohne geklappt?
- ...Ausbaustufen / Use Cases: von Nutzung OSS in Entwicklungstooling ohne Deployment auf Produktivsystem, Nutzung im Produktivsystem, Contribution zu OSS, bis hin zu Bereitstellung von eigenen Komponenten als Open Source
27 changes: 27 additions & 0 deletions docs/open-source/open-source-projects.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
layout: page
title: Vorstellung ausgewählter Projekte
permalink: /open-source/open-source-projects/
parent: Open Source
prev_page_link: /open-source/abapgit-as-enabler/
prev_page_title: abapGit als Enabler von Open Source
nav_order: 5
---

{: .no_toc}
# Vorstellung ausgewählter Projekte

1. TOC
{:toc}

## Übersicht

- Und Einleitung... Dotabap.org

## Projekte zur Unterstützung des Entwicklungsprozesses

- abapopenchecks, abaplint, code-pal, abapGit, abap-openapi, ...

## Projekte als Bestandteil eigener Erweiterungen oder Produkte

- abap2ui5, abap2xlsx ...
70 changes: 70 additions & 0 deletions docs/open-source/using-open-source.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
layout: page
title: Einsatz von Open Source
permalink: /open-source/using-open-source/
parent: Open Source
prev_page_link: /open-source/
prev_page_title: Open Source
next_page_link: /open-source/contributing-to-open-source/
next_page_title: Beteiligung an Open-Source
nav_order: 1
---

{: .no_toc}
# Einsatz von Open Source

1. TOC
{:toc}

## Chancen

## Risiken

## Wer stellt Open-Source-Software bereit?

- Dotabap.org
- SAP Open Source Manifesto

## Wer nutzt Open-Source-Software?

- Who Uses abapGit? - abapGit Docs

## Bewertung und Lebenszyklus einer externen Abhängigkeit

- Verbreitung, aktive Weiterentwicklung, Anzahl Contributors
- Wer kümmert sich um Updates, wer testet diese, bewertet diese
- Worauf hätte die Software Zugriff im System, ist sie nur auf Entwicklung oder auch Produktiv, bestehen Netzwerkverbindungen
- Entscheidungsmatrix SAP aus Open Source Forum
- Due Diligence
- (Support, ...)
- Wie verbreitet ist das OpenSource Projekt/Produkt?
- "Empfiehlt" SAP das Projekt eventuell auch, oder nutzt dieses?
- Wird das OpenSource Projekt in Blogs erwähnt? Wie ist die Bewertung in diesen Blog‘s?
- Bevor man sich für Open Source oder ein bestimmtes Open Source Projekt entscheidet, sollte man folgende Dinge prüfen bzw. folgende Fragestellungen für sich beantworten:
- Unter welcher Lizenz wird das jeweilige Projekt veröffentlicht?
- Was sind die Lizenzbedingungen? Kann ich diese erfüllen?
- Open Source bedeutet nicht automatisch kostenlos, was sind die Lizenzkosten?
- Wie verbreitet ist ein Open Source Projekt?
- Kommt es vielleicht sogar von der SAP und SAP übernimmt den Support/die Wartung?
- Empfiehlt die SAP ein bestimmtes Projekt, oder nutzt es gar selbst?
- Was sagt die Community zu einem Projekt, wie ist das Feedback, wie bekannt ist es (in Diskussionsforen ...), wie ist die „Bewertung“?
- ...
- Andreas?

## Sicherheitsaspekte

- Horrorszenarien durchgehen

## Verhalten bei Upgrades

## Lizenzen

- "Diese Lizenz ist wichtig. Sie kann auch die kommerzielle Nutzung untersagen oder eine kompatible Lizenz für alle durchgeführten Modifikationen erzwingen. Ebenfalls können Lizenzen verschiedener Open-Source-Projekte und die Lizenz der eigenen Software miteinander inkompatibel sein."

## Support

- Argument "Keine Software ohne Enterprise Support" durchgehen

## Auslieferung von Open-Source-Abhängigkeiten in eigenen Produkten

- Namensräume, Rename, Lizenzen, kein Z beim Kunden

0 comments on commit 5fe7fd1

Please sign in to comment.