Compare commits

...

6 Commits

Author SHA1 Message Date
d6ae2f5716 add placeholder appendix 2025-01-29 03:02:26 +01:00
d1972ea0fc wording 2025-01-29 02:57:03 +01:00
4162388ed3 stuff und beginn require eng 2025-01-29 02:56:12 +01:00
849f9edbeb grundlagen 2025-01-29 02:23:07 +01:00
1b326c53cb grundlagen dev env 2025-01-29 01:51:30 +01:00
4b4ac2f326 strip some stuff 2025-01-29 00:54:27 +01:00
17 changed files with 68 additions and 29 deletions

BIN
.DS_Store vendored

Binary file not shown.

1
.gitignore vendored
View File

@@ -6,3 +6,4 @@
*.toc *.toc
*.tps *.tps
.auctex-auto/ .auctex-auto/
.DS_Store

View File

@@ -3,5 +3,5 @@
% %
\begin{appendices} \begin{appendices}
%\input{appendix/interview-jochen} \input{appendix/interview-jochen}
\end{appendices} \end{appendices}

View File

@@ -0,0 +1,4 @@
\chapter{Stakeholder-Interview}
\label{app:stakeholder-interview}
\textbf{!!!TODO TODO TODO ADD APPENDIX INTERVIEW!!!}

View File

@@ -8,9 +8,9 @@
\input{chapters/einleitung/methodik.tex} \input{chapters/einleitung/methodik.tex}
\input{chapters/grundlagen/main.tex} \input{chapters/grundlagen/main.tex}
\input{chapters/anforderungen.tex} \input{chapters/anforderungen.tex}
\input{chapters/marktanalyse.tex} \input{chapters/technische-umsetzung/main.tex}
\input{chapters/evaluation.tex} \input{chapters/evaluation.tex}
\input{chapters/fazit.tex} \input{chapters/fazit.tex}

View File

@@ -4,6 +4,13 @@
\chapter{Anforderungen} \chapter{Anforderungen}
\label{chap:anforderungen} \label{chap:anforderungen}
\section{Anforderungserfassung}
Obwohl bereits vor Beginn des Projektes einige Anforderungen bekannt sind,
müssen manche Details nachträglich in Erfahrung gebracht werden.
Hierfür wurde ein semistrukturiertes Interview mit dem Stakeholder durchgeführt.
Im Rahmen dieses Interviews wurden vorbereitete Fragen gestellt, dem Stakeholder aber auch die Möglichkeit
gegeben frei heraus zu sprechen und Wünsche zu äußern.
Notizen zu diesem Interview befinden sich im Anhang unter
\fullref{app:stakeholder-interview}.
\section{Methodik und Planung}
\section{Ergebnisse} \section{Ergebnisse}

View File

@@ -3,9 +3,9 @@
% %
\section{Methodische Vorgehensweise} \section{Methodische Vorgehensweise}
Einige Anforderungen sind im Voraus im Zuge der Themenfindung bereits gesetzt. Einige Anforderungen sind bereits im Voraus definiert.
Weiterführende Anforderungen werden im Rahmen einer Anforderungserfassung ermittelt. Weiterführende Anforderungen werden im Rahmen einer Anforderungserfassung ermittelt.
Anschließend werden verschiedene Ansätze zur Umsetzung gesammelt und iterativ, Anschließend werden verschiedene Lösungsansätze betrachtet und auf Tauglichkeit geprüft.
nach explorativer Vorgehensweise ausgeschlossen, bis ein funktionierender, akzeptabler Nachdem ein akzeptabler Lösungsweg gefunden ist, wird dieser umgesetzt.
Lösungsweg gefunden wurde. Abschließend wird der Erfolg des Unterfanges evaluiert und mögliche, auf dieses Projekt aufbauende Arbeiten in Ausblick gestellt.

View File

@@ -12,6 +12,7 @@ Würden diese manuell in einen eigenen Vault kopiert werden, müssten diese Eint
asynchronen Einträgen führt. Außerdem ist das ein großer Arbeitsaufwand. asynchronen Einträgen führt. Außerdem ist das ein großer Arbeitsaufwand.
All das gestaltet das Einbinden von externen Entwicklern, wie z.B. Freelancern, schwer. All das gestaltet das Einbinden von externen Entwicklern, wie z.B. Freelancern, schwer.
\\ \\
\\
Ein weiteres Problem ist, dass Secrets in Konfigurationsdateien, die firmeninternen Ansible-Scripten Ein weiteres Problem ist, dass Secrets in Konfigurationsdateien, die firmeninternen Ansible-Scripten
beilegen, unverschlüsselt einsichtig sind. Das macht es zu einem großen Sicherheitsrisiko und somit beilegen, unverschlüsselt einsichtig sind. Das macht es zu einem großen Sicherheitsrisiko und somit
impraktikabel externen Entwicklern Zugriff auf dieses Ansible-Repository zu gewähren. impraktikabel externen Entwicklern Zugriff auf dieses Ansible-Repository zu gewähren.

View File

@@ -4,7 +4,4 @@
% %
\chapter{Evaluation} \chapter{Evaluation}
\section{Einschätzung zur Integrationsflexibilät}
\section{Auswertung des Integrationsaufwandes}
\section{Zusammenfassung}

View File

@@ -4,8 +4,5 @@
\chapter{Fazit} \chapter{Fazit}
\section{Ausblick} \section{Ausblick}
\section{Offene Problemstellungen}
\section{Offene Fragen}
\section{Aussprechen der Handlungsempfehlung}

View File

@@ -3,3 +3,31 @@
% %
\chapter{Grundlagen} \chapter{Grundlagen}
\section{Die Arbeitsumgebung}
Die Arbeitsumgebung des Partnerunternehmens besteht für diese Themenstellug nennenswert aus:
\begin{itemize}
\item Cloudbasierten Web- und Datenbankservern
\item Git-Repositories bei Bitbucket
\item Der lokalen, Docker-basierten Arbeitsumgebung
\item Ein Ansible-Playbook, das ein Projekt mit Daten aus der Cloudumgebung und Code aus Bitbucket in der lokalen Entwicklungsumgebung bereitstellt.
\end{itemize}
\begin{nicepic}
\includegraphics[width=0.5\textwidth]{images/dev-env.png}
\captionof{figure}{Relationsdiagramm: Bereitstellen von Projekten des Partnerunternehmens in einer Entwicklungsumgebung}
\caption*{Quelle: Eigene Darstellung}
\label{fig:relationsdiagramm-devenv}
\end{nicepic}
\section{1Password}
\ac{1P} ist der vom Partnerunternehmen verwendete Passwort-Manager.
Bereits vor Beginn der Bearbeitung dieser Themenstellung wurde deutlich gemacht, dass es
Ziel ist, \ac{1P} auch für das Verwalten von Secrets in Ansible zu verwenden.
\section{Ansible}
Ansible ist ein Automatisierungswerkzeug von Red Hat, Inc. und hat das Ziel, einen definierten Zustand
im behandelten System herzustellen. \cite{bib:ansible}
Ein Administrator definiert also nicht die erforderlichen Schritte,
um einen Zustand $z$ zu erreichen, sondern lediglich $z$ selbst.
Ansible kann über speziell gefertigte Python-Module um Schnittstellen erweitert werden.

View File

@@ -1,6 +0,0 @@
%
% Chapter: Marktanalyse
%
\chapter{Marktanalyse}

View File

@@ -0,0 +1,8 @@
%
% Chapter: Technische Umsetzung
%
\chapter{Technische Umsetzung}
\section{Berechtigungsverwaltung}
\section{Integration in Ansible}

View File

@@ -5,7 +5,9 @@
\chapter{Glossar} \chapter{Glossar}
\begin{description} \begin{description}
\item [TYPO3 CMS] \hfill \\ \item [Docker] \hfill \\
\enquote{TYPO3 — the Professional, Flexible Content Management System} \cite{bib:typo3-frontpage} Eine arrivierte Container-Engine für Anwendungsentwicklung.
\item [Ansible-Playbook/s] \hfill \\
Ansible-Playbooks sind Skripte, mit dem Ziel einen deklarierten Zustand herzustellen. \cite{bib:ansible}
\end{description} \end{description}

View File

@@ -26,10 +26,10 @@
note = {Zugriff: Mai 2024} note = {Zugriff: Mai 2024}
} }
@misc{bib:google-privacy-frameworks, @misc{bib:ansible,
author = {{Google Inc.}}, author = {{Red Hat, Inc.}},
howpublished = "\url{https://policies.google.com/privacy/frameworks}", howpublished = "\url{https://www.redhat.com/en/ansible-collaborative}",
title = {{ Legal frameworks for data transfers }}, title = {{ Ansible Collaborative - What is Ansible? }},
year = {2023}, year = {2025},
note = {Zugriff: Mai 2024} note = {Zugriff: Januar 2025}
} }

BIN
images/dev-env.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
main.pdf

Binary file not shown.