diff --git a/chapters/anforderungserfassung.tex b/chapters/anforderungserfassung.tex
index 590ad3f..51b078b 100644
--- a/chapters/anforderungserfassung.tex
+++ b/chapters/anforderungserfassung.tex
@@ -1,7 +1,7 @@
\chapter{Anforderungserfassung}
\label{chap:anforderungserfassung}
Obwohl bereits ein grober Anriss des Zielsystems bekannt ist, ist es unabdinglich eine Anforderungsanalyse durchzuführen,
-um Details auszuarbeiten \cite{bib:christoph-ebert-vorwort-systematisches-re}.
+dies um Details auszuarbeiten \cite{bib:christoph-ebert-vorwort-systematisches-re}.
Hierbei ist es wichtig, kein exzessives Pflichtenheft aufzubauen, denn letztendlich zählt nur, was dem Kunden geliefert wird.
Nicht, wie viele gar nicht benötigte Anforderungen umgesetzt wurden.
\enquote{\textit{Zu viele oder falsche Anforderungen ruinieren Budgets, Termine und die Qualität.}}
@@ -20,17 +20,17 @@ Wie oben erwähnt, sind bereits die Constraints und einige funktionale und nicht
\hdashline
Constraint & Mitarbeiter-UI in TYPO3-Backend\\
\hdashline
- Constraint & Kunden-UI im Frontend\\
+ Constraint & Nutzer-UI im Frontend\\
\hdashline
- \ac{NFA} & \makecell[l]{Aus dem Papierformular soll ein\\Webform werden}\\
+ \ac{NFA} & \makecell[l]{Aus dem Papierformular soll ein\\Webformular werden}\\
\hdashline
\ac{NFA} & \makecell[l]{Angaben zum Weingut des Weines\\sollen aus dem Accountdatensatz anstatt\\aus dem Webform kommen}\\
\hdashline
- \ac{NFA} & \makecell[l]{Registrierte Weinteilnahmen\\bestehen aus einem Wein und einem Zustand\\(Ausstehend,Eingegangen).}\\
+ \ac{NFA} & \makecell[l]{Registrierte Weinteilnahmen\\bestehen aus einem Wein und einem Zustand\\(Ausstehend,Eingegangen,Abgelehnt).}\\
\hdashline
\ac{FA} & \makecell[l]{Beim Erstellen einer Weinteilnahme\\soll ein QR-Code als PDF generiert werden,\\der den Wein identifiziert}\\
\hdashline
- \ac{FA} & \makecell[l]{Durch scannen des QR-Codes soll\\dem Wein der Status \enquote{Eingegangen}\\ zugewiesen werden}\\
+ \ac{FA} & \makecell[l]{Durch scannen des QR-Codes auf dem\\mit einer Weinteilnahme erstellten PDFs soll\\dem Wein der Status \enquote{Eingegangen}\\ zugewiesen werden}\\
\hline
\end{tabular}
\caption{Initial bekannte Anforderungen}
@@ -44,13 +44,13 @@ Um nähere Anforderungen zu ermitteln, werden die Befragungstechniken \enquote{I
Zunächst wird ein Interview mit dem \ac{PO} geführt. Ziel dieses Interviews ist
es, konkrete Fragen zu Anforderungen zu beantworten und somit konkrete Anforderungen zu formulieren.
Aufgrund der individuellen Gesprächsführung wurde sich für ein \enquote{Teil-standardisiertes Interview}
-entschieden. Bei einem Teil-standartisiertem Interview gibt es vordefinierte Fragen,
+entschieden. Bei einem Teil-standardisiertem Interview gibt es vordefinierte Fragen,
aber auch Freiraum für Improvisation und Persönlichkeit.
Für ein gutes Interview ist gute Vorbereitung unabdinglich. Daher wurden bereits sämtliche wichtigen Fragen
in einem Fragebogen festgehalten. Dieser Interview-Fragebogen liegt in \fullref{chap:anhang-interview-fragebogen} anbei.
Ebenso ist Vorbereitung auf Seiten des Interviewteilnehmers wichtig, weshalb das Interview einen Tag zuvor angesprochen wurde.
Um möglichst objektive und unvorbeeinflusste Antworten zu gewährleisten wird darauf geachtet,
-keine Suggestivfragen oder ähnliches zu stellen
+keine Suggestivfragen zu stellen
\cite{bib:kleine-re-fibel}.
\section{Online-Fragebögen für Stakeholder}
@@ -59,18 +59,28 @@ Um Fragebögen für Stakeholder formulieren zu können, muss zunächst bekannt s
Einfluss auf die Anforderungen des betrachteten Systems hat.} \cite{bib:basiswissen-re}.
Daraus ergeben sich die Stakeholdergruppen: \enquote{Mitarbeiter \ac{WM}} und \enquote{teilnehmende Weingüter}.
Jede dieser Stakeholdergruppen sieht das System aus einer anderen Perspektive \cite{bib:kleine-re-fibel}.
-Daher ist es wichtig für jede Stakeholdergruppe einen eigenen Fragebogen zu entwerfen
-und die bestimmten Perspektiven beim Entwurf der Fragebögen zu beachten.
+Daher ist es wichtig, Einblicke und Bedürfnisse aller Stakeholdergruppen einzuholen
+und die individuellen Perspektiven und Bedürfnisse dieser beim Entwurf der Fragebögen zu berücksichtigen.
Ebenso ist es wichtig, die wichtigsten Fragen am Anfang zu stellen, da Formulare nicht immer vollständig ausgefüllt werden
-\cite{bib:kleine-re-fibel}.
+\cite{bib:kleine-re-fibel}. Somit sind auch bei einem nur teilweise ausgefüllten Fragebogen die wichtigsten
+Fragen beantwortet.
Sämtliche Fragen an die Stakeholdergruppe \enquote{Mitarbeiter \ac{WM}} wurden bereits im Interview mit dem \ac{PO}
-beantwortet und als Anforderungen festgehalten. Insofern gibt es schlichtweg keine offnen Fragen, die diese Stakeholdergruppe
-beantworten könnte. Damit fällt ein Onlinefragebogen für \enquote{Mitarbeiter \ac{WM}} weg.
-Der Fragebogen der Stakeholdergruppe \enquote{teilnehmende Weingüter} liegt in \fullref{chap:anhang-fragebogen-extern} bei.
+beantwortet und als Anforderungen festgehalten. Der \ac{PO} repräsentiert in diesem Falle
+die Stakeholdergruppe \enquote{Mitarbeiter \ac{WM}} und steht seit geraumer Zeit mit \ac{WM} im
+persönlichen, engen Austausch. Daher gibt es keine offenen Fragen, die diese Stakeholdergruppe
+beantworten könnte. Somit fällt ein Onlinefragebogen für die Stakeholdergruppe \enquote{Mitarbeiter \ac{WM}} weg.
+Der Fragebogen der Stakeholdergruppe \enquote{teilnehmende Weingüter} liegt im Anhang unter
+\fullref{chap:anhang-fragebogen-extern} bei.
+Um den Aufwand und somit die Hemmschwelle des Ausfüllens
+eines solchen Online-Fragebogens zu minimieren, gibt es lediglich sechs Ankreuz-Fragen
+zuzüglich einem optionalen Freitextfeld, um sonstige Wünsche zum Ausdruck zu bringen.
+Eine Anmeldung über Google ist nicht erforderlich.
+Der Link zu diesem Online-Fragebogen wurde \ac{WM} mit der Bitte um Weiterleitung an
+die Probenteilnehmer übergeben.
\section{Ergebnisse}
-Aus dem Interview mit dem \ac{PO} und dem Fragebogen an die Winzer ergibt ein Pflichtenheft.
-Dieses ist im Anhang unter \fullref{chap:anhang-pflichtenheft} zu finden.
-Das Interviewprotokoll und Fragebogenergebnisse sind im Anhang unter
-\fullref{chap:anhang-interview-protokoll} und XXXX zu finden.
-
+Aus dem Interview mit dem \ac{PO} ergibt sich ein Pflichtenheft.
+Das Pflichtenheft und das Protokoll zum Interview sind im Anhang unter je
+\fullref{chap:anhang-pflichtenheft} und \fullref{chap:anhang-interview-protokoll} zu finden.
+Der Online-Fragebogen für teilnehmende Weingüter wurde über einen Monat hinweg nicht beantwortet
+und ermittelte bis auf das Desinteresse der Stakeholdergruppe keine näheren Informationen.
diff --git a/chapters/einleitung.tex b/chapters/einleitung.tex
index 0d17911..3d13879 100644
--- a/chapters/einleitung.tex
+++ b/chapters/einleitung.tex
@@ -2,7 +2,7 @@
\label{chap:einleitung}
Der Regionalverband für Weine \ac{WM} lässt Weine in organisierten Weinproben, sog. \acp{JAP}, von Juroren bewerten.
Teilnehmende Weingüter registrieren ihre Weine in verschiedenen Kategorien und schicken diese auf dem Postweg ein.
-Dieser Prozess bildet sich in Form von ausgedruckten Formularen, die von Hand ausgefüllt und von Hand in eine
+Dieser Prozess bildet sich in Form ausgedruckter Formulare, die von Hand ausgefüllt und von Hand in eine
Excel-Tabelle übertragen werden, ab.
\section{Problemstellung}
@@ -23,7 +23,7 @@ könnte das unbemerkt bleiben, da der Prozess für das Weingut mit dem Versand e
erst mit dem Erhalt des der Flasche beiliegendem Formulares beginnt.
Der Postweg stellt somit eine Lücke zwischen diesen Prozessen dar.
Kommt ein teilnehmender Wein bei \ac{WM} an, wird das beiliegende Formular von Hand in eine Excel-Tabelle übertragen.
-Diese Schnittstelle ist besonders resourcenaufwändig und fehleranfällig, weil es oft vorkommt, dass die zuteils
+Diese Schnittstelle ist besonders resourcenaufwändig und fehleranfällig, da es oft vorkommt, dass die teils
dysgraphisch verfassten Formulare nur schwer, mehrdeutig, oder gar nicht dechiffriert werden können.
In diesem Prozess wird der Teilnahme des Weines eine inkrementell aufsteigende \ac{ELN} zugewiesen,
die anschließend in Form eines Aufklebers an der Flasche befestigt wird. Anschließend wird die Flasche im Lager verstaut.
diff --git a/chapters/konzeption-entwicklung.tex b/chapters/konzeption-entwicklung.tex
index 1d5f7c5..61125f0 100644
--- a/chapters/konzeption-entwicklung.tex
+++ b/chapters/konzeption-entwicklung.tex
@@ -4,25 +4,25 @@ Infolge der Anforderungsanalyse befasst sich das Kapitel \enquote{Umsetzung} mit
Brown-Field Projekt \cite{bib:schwarzer-vorlesung-swa} in Form einer TYPO3-Extension.
\section{Setup einer TYPO3-Extension}
-TYPO3-Extension werden via Composer installiert \cite{bib:typo3-docs-managing-extensions}.
-Um eine TYPO3-Extension zu erstellen muss also ein Composer-Paket erstellt werden.
-Um vermeidbare Komplexität zu verhindern wird das Composer-Paket das eine die hier betrachtete
+TYPO3-Extensions werden via Composer installiert \cite{bib:typo3-docs-managing-extensions}.
+Um eine TYPO3-Extension zu erstellen, muss also ein Composer-Paket erstellt werden.
+Um vermeidbare Komplexität zu verhindern, wird das Composer-Paket, welches die hier betrachtete
TYPO3-Extension darstellt, lokal in den versionierten Ordner \enquote{packages} gelegt.
Dieses Verzeichnis wird als Quelle für Composer-Pakete in der
Haupt-composer.json-Datei hinterlegt.
Somit wird ein Composer-Paket nur für dieses Projekt bereitgestellt,
-ohne den Aufwand, der mit dem Bereitstellen eines Paketes einhergeht, zu haben.
+ohne den Aufwand zu haben, der üblicherweise mit dem Bereitstellen eines Paketes einhergeht.
\\
\\
-Um das grundlegende Setup einer Extension effizient durchzuführen wurde eine
-existierende Extension vergleichbarem Funktionsumfanges kopiert, umbenannt, und eingefügt.
-Spezifisch ist der \enquote{vergleichbare Funktionsumfang}, dass es Datenmodelle und Plugins
-gibt.
+Um das grundlegende Setup einer Extension effizient durchzuführen, wurde eine
+existierende Extension mit vergleichbarem Funktionsumfang kopiert, umbenannt und eingefügt.
+Spezifisch ist der \enquote{vergleichbare Funktionsumfang}, dass es Datenmodelle und hochpersonalisierte
+Frontendlogik in Bezug auf die zuvor genannten Datenmodelle gibt.
\section{Digitization}
Die Phase der Digitazion befasst sich mit der digitalen Abbildung von Objekten der realen Welt
-in einer Art und Weise sodass diese elektronisch weiterverarbeitet werden können \cite{bib:dougherty, bib:loebbecke}.
-Das bedeutet, dass in diese Phase Datenobjekte definiert und implementiert werden.
+in einer Art und Weise, sodass diese elektronisch weiterverarbeitet werden können \cite{bib:dougherty, bib:loebbecke}.
+Das bedeutet, dass in dieser Phase Datenobjekte definiert und implementiert werden.
Ein Datenobjekt besteht nach firmeninternen Konventionen aus zumindest
vier Komponenten:
\begin{description}
@@ -40,8 +40,8 @@ vier Komponenten:
\end{description}
\cite{bib:typo3-docs-extbase-reference}.
-Im Folgenden wurde ein semiformales Diagramm der Objekte und ihren Relationen nach dem
-Pflichtenheft angefertigt und in Rücksprache mit dem \ac{PO} finalisiert.
+Im Folgenden wurde ein semiformales Diagramm der Objekte und ihren Relationen
+angefertigt und in Rücksprache mit dem \ac{PO} finalisiert.
\begin{nicepic}
\includegraphics[width=1\textwidth]{images/objektrelationen-weinlandmosel-einlieferungswerkzeug.png}
@@ -56,11 +56,11 @@ formalen Klassendiagramm festgehalten und in Rücksprache mit dem \ac{PO}
weiter bis zu festen Datentypen und Auswahlmöglichkeiten konkretisiert.
Beispielsweise, dass Wettbewerbskategorien durch TYPO3-Categories repräsentiert werden sollen.
Das hat den Vorteil, dass TYPO3-Categories bereits native Bestandteile eines TYPO3-Redaktionssystemes sind
-und bereits alle relevanten Attribute anbieten. Diese sind ein Titel,
+und alle relevanten Attribute anbieten. Diese sind ein Titel,
eine Parentkategorie und eine Beschreibung.
Das Parent-Attribut ist benötigt, da $n$ dieser Attribute einen Attributbaum bilden
\cite{bib:typo3-docs-sys-category}.
-Somit ist es möglich Unterkategorien zu erstellen. Beispiele hierfür sind die
+Somit ist es möglich, Unterkategorien zu erstellen. Beispiele hierfür sind die
Unterkategorien \enquote{Trockener Riesling} und \enquote{Halbtrockener Riesling} für die Überkategorie
\enquote{Riesling}.
Rebsorten, Geschmack, Weineigenschaften und Qualität sollen eigene Datentypen
@@ -92,7 +92,8 @@ Mit Abschluss der Digitization können alle Datenstrukturen im TYPO3-Backend hä
eingesehen, gelöscht und bearbeitet werden.
-\section{Teilnehmerregistrierung}
+\section{Digitalization}
+\subsection{Teilnehmerregistrierung}
Ein essenzieller Teil des Jahresauswahlprobenwerkzeuges ist die Registrierung von Teilnehmern.
Dieses Modul repräsentiert den ersten Berührungspunkt der Winzer mit dem System.
Dem Pflichtenheft ist zu entnehmen, dass es zwei Kategorien von Teilnehmerregistrierungen gibt:
@@ -137,7 +138,7 @@ Grundlegend gibt es drei relevante Nutzerzustände vor der Registrierung:
\end{enumerate}
Diese Prozesse sehen wie folgt aus:
-\subsection*{Kein Mitglied}
+\subsubsection*{Kein Mitglied}
Ist ein Nutzer kein Mitglied, so muss er zunächst einen Account erstellen.
Anfangs wählt dieser Nutzer \enquote{Ich bin kein Mitglied} auf der Registrierungsseite aus.
Daraufhin navigiert der Browser zu einem Registrierungs-Formular.
@@ -148,13 +149,13 @@ Nach erfolgreichem Login wird der Nutzer mit einem
Stammdatenformular konfrontiert. Dabei handelt es sich um Angaben zum teilnehmenden Weingut.
Wird dieses Formular abgeschickt, ist die Teilnehmerregistrierung abgeschlossen.
-\subsection*{Mitglied, mit Konto}
+\subsubsection*{Mitglied, mit Konto}
Ist ein Nutzer ein Mitglied und hat bereits ein Mitgliedskonto, muss dieser auf der Registrierungsseite
\enquote{Ich bin ein Mitglied} auswählen. An dieser Stelle navigiert der Browser zu einem Login-Formular.
Hier kann sich das Mitglied nun anmelden. Tut er dies erfolgreich, ist die Teilnehmerregistrierung
abgeschlossen.
-\subsection*{Mitglied, ohne Konto}
+\subsubsection*{Mitglied, ohne Konto}
Ist ein Nutzer ein Mitglied und hat noch kein Mitgliedskonto, muss dieser auf der Registrierungsseite
\enquote{Ich bin ein Mitglied} auswählen. An dieser Stelle navigiert der Browser zu einem Login-Formular.
Auf diesem Login-Formular existiert ein Button \enquote{Jetzt registrieren}, sowie ein Hinsweistext dazu.
@@ -166,7 +167,7 @@ freigegeben und es öffnet sich ein Login-Formular.
Nach erfolgreichem Login wird das Mitgliedskonto um die notwendingen Teilnehmereigenschaften erweitert
und ist somit erfolgreich als Teilnehmer registriert.
-\subsection*{Umsetzung}
+\subsubsection*{Umsetzung}
Um das umzusetzen wurde zunächst ein simples Weichen-Content-Element erstellt.
Dieses Content-Element hat die Parameter \enquote{question}, \enquote{answ-1-link}, \enquote{answ-1-text},
\enquote{answ-2-link} sowie \enquote{answ-2-text}.
diff --git a/chapters/stand-der-forschung.tex b/chapters/stand-der-forschung.tex
index 855043d..a95bcb8 100644
--- a/chapters/stand-der-forschung.tex
+++ b/chapters/stand-der-forschung.tex
@@ -2,7 +2,7 @@
\label{chap:stand-der-forschung}
Der Stand der Forschung beleuchtet verschiedene Erkenntnisse zur Digitalisierung und zur digitalen Transformation.
-\section{Modell nach Parviainen et al}
+\section{Modell nach Parviainen et al.}
\quotecite{The importance of digitalization is becoming understood,
but the question now is how to do it in practice in order to best benefit from it.}
\cite{bib:Parviainen_Tihinen_Kaariainen_Teppola_2022}.
@@ -16,13 +16,13 @@ Dieses Rahmenwerk sieht anhand des \ac{PDCA}-Prinzips vier Schritte vor:
das Unternehmen dabei anstrebt. Dieser Schritt kann in vier Teilschritte unterteilt werden: Ausmaße, Treiber, Szenarien und
Ziele. Für die Bestimmung der Ausmaße ist die Analyse aktueller Trends und deren Relevanz für die Domäne des Unternehmens
wichtig. Ebenfalls ist wichtig, wie weit diese Trends bereits im Fachgebiet verankert sind. Zur Einordnung eignen sich
-\ac{SWOT} -Analysen. Diese Analysen sind die Grundlage um ein Unternehmen in der Digitalisierung aufzustellen.
+\ac{SWOT} -Analysen. Diese Analysen sind die Grundlage, um ein Unternehmen in der Digitalisierung aufzustellen.
\\
\\
Aus den Ergebnissen der Trendanalysen sollten dann Treiber identifiziert werden. Diese Treiber sollten auf der Grundlage zukünftiger Ergebnisse skalierbar sein: Beispielsweise könnten drastische Maßnahmen erforderlich sein, um drastische Auswirkungen zu verhindern oder drastische Verbesserungen zu erreichen.
\\
\\
-Für die relevantesten Treiber sollten Zukunftsszenarien untersucht werden. Dies ist wichtig, um zu wissen, welche Auswirkungen bestimmte Trends in welcher Ausprägung haben werden. Relevant sind hier die Vorteile der Umsetzung des Szenarios, die Kosten der Umsetzung sowie die Risiken, das Szenario nicht umzusetzen oder doch umzusetzen. Auf dieser Basis kann das beste Szenario ausgewählt werden.
+Für die relevantesten Treiber sollten Zukunftsszenarien untersucht werden. Dies ist wichtig, um zu wissen, welche Auswirkungen bestimmte Trends in welcher Ausprägung haben werden. Relevant sind hier die Vorteile der Umsetzung des Szenarios, die Kosten der Umsetzung, sowie die Risiken, das Szenario nicht umzusetzen oder doch umzusetzen. Auf dieser Basis kann das beste Szenario ausgewählt werden.
\\
\\
Aus diesem Szenario werden schließlich die Ziele der Digitalisierung abgeleitet. Diese Ziele müssen so formuliert sein, dass sie mit der Ausgangssituation verglichen werden können.
@@ -42,7 +42,7 @@ Aus diesem Szenario werden schließlich die Ziele der Digitalisierung abgeleitet
\end{nicepic}
\paragraph*{Im zweiten Schritt} wird der Ist-Zustand des Unternehmens ermittelt. Dazu wird die aktuelle
-Positionierung des Unternehmens im Hinblick auf den Zielzustand mit Fokus auf den Digitalisierungszielen betrachtet. Dazu wird
+Positionierung des Unternehmens im Hinblick auf den Zielzustand mit Fokus auf die Digitalisierungsziele betrachtet. Dazu wird
der Ist-Zustand im Kontext des Soll-Zustandes anhand definierter Fragen bewertet. Die Auswahl der Fragen unterscheidet sich je
nach Art der Ziele. Der gesamte Fragenkatalog kann im Detail der Ausarbeitung von Parviainen et al. entnommen werden.
@@ -56,13 +56,13 @@ Kosten-Nutzen-Analysen, Analysen der Umsetzbarkeit, des Wartungsaufwands und der
\paragraph*{Der vierte Schritt} befasst sich mit der Umsetzung der in Schritt 3 geplanten Maßnahmen und
der Bewertung der erzielten Ergebnisse. Diese Bewertung der Ergebnisse sollte z.B. soziokulturelle Barrieren berücksichtigen,
-die sich aus den Reaktionen bestimmter Stakeholder ergeben, die möglicherweise negativ auf bestimmte Veränderungen reagieren
+die sich aus den Reaktionen bestimmter Stakeholder ergeben, die möglicherweise negativ auf Veränderungen reagieren
oder Schwierigkeiten bei der Einführung neuer Technologien haben. Wenn diese Analyse zeigt, dass die Ziele der Digitalisierung
nicht erreicht wurden, sollten Korrekturmaßnahmen in früheren Phasen ergriffen
werden \cite{bib:Parviainen_Tihinen_Kaariainen_Teppola_2022}.
-\section{Modell nach Verhoef et al}
-Nach Verhoef et al lässt sich der hier so genannte \enquote{Prozess der Digitalisierung} in drei Phasen unterteilen.
+\section{Modell nach Verhoef et al.}
+Nach Verhoef et al. lässt sich der hier sogenannte \enquote{Prozess der Digitalisierung} in drei Phasen unterteilen.
Diese drei Phasen sind \textit{Digitization}, \textit{Digitalization} und \textit{Digital Transformation}
\cite{bib:verhoef}.
@@ -75,23 +75,35 @@ Die letzte Phase, die \textit{Digitale Transformation} beschreibt eine firmenwei
Ergründungen neuer Geschäftsmodelle mit sich bringen könnte \cite{bib:pagani}.
\section{Abwägung in Bezug auf die Problemstellung}
-\subsection {Parviainen et al}
-Das Modell nach Parviainen et al wird vom Autor als überwiegend methodisch und für diesen Problemstellungskontext
-als unverhältinsmäßig Resourcenaufwändig befunden, da der Umfang der Problemstellung überschaubar ist.
+In Bezug auf die hier betrachteten Methoden ist es wichtig zu erwähnen, dass der betrachtete Kontext
+lediglich die Digitalisierungs \textbf{eines} Geschäftsprozesses behandelt.
+Diese Ausarbeitung befasst sich nicht
+mit firmenweiten Veränderungen, wie sie von den nahegelegten Modellen abgedeckt ist.
+Daher sind geringfügige Anpassungen der Methoden unabdinglich.
+Des Weiteren ist Resourcenintensivität ein relevanter Gesichtspunkt einer Abwägung, da es ein
+Projektbudget einzuhalten gilt.
-\subsection {Verhoef et al}
-Im Modell nach Verhoef et al stellt die hier behandelte Problemstellung lediglich Phase eins
-und Phase zwei der drei Phasen dar. Das ist so, da sich diese Phasen mit der Digitalisierung bestimmter
+\subsection{Parviainen et al.}
+Der Autor stellt fest, dass das Modell nach Parviainen et al. hauptsächlich methodisch ausgerichtet ist
+und für den betrachteten Kontext der Problemstellung unverhältnismäßig ressourcenintensiv ist,
+da der Umfang der Anforderungen geringfügig ist. Dieses Modell legt den Fokus auf firmenweite Veränderungen
+anstatt auf einzelne Prozesse und könnte daher in Bezug auf diese Problemstellung als \enquote{überdimensioniert} bezeichnet werden.
+
+\subsection{Verhoef et al.}
+Im Modell nach Verhoef et al. stellt die hier behandelte Problemstellung lediglich Phase eins
+und Phase zwei der drei Phasen \textit{Digitization}, \textit{Digitalization} und
+\textit{Digital Transformation} dar. Das ist so, da sich die ersten zwei Phasen mit der
+Digitalisierung bestimmter
Geschäftsprozesse befassen. Phase drei befasst sich mit firmenweiten Veränderungen,
die über Geschäftsprozesse hinausgehen \cite{bib:verhoef}.
-Firmenweite Veränderungen befinden außerhalb des Rahmens dieser Ausarbeitung.
-Der Autor empfindet das Modell nach Verhoef et al als agiler und unrestriktiver.
+Firmenweite Veränderungen befinden sich außerhalb des Rahmens dieser Ausarbeitung.
+Der Autor empfindet das Modell nach Verhoef et al. als agiler und unrestriktiver.
-\subsection {Fazit}
-Aufgrund des kleinen Umfangs der Problemstellung und damit auch des kleinen Projektbudgets fällt die Entscheidung auf das
-kleiner gefasste Modell nach Verhoef et al. Ziel dieser Entscheidung ist es vermeidbare Kosten, die keine eminenten
-Vorteile erbringen, zu vermeiden.
-Nachdem Phase drei des Verhoefer-Modells ausgeklammert wurde, sieht das zu verfolgende Modell wie folgt aus:
+\subsection{Fazit}
+Aufgrund des kleinen Umfangs der Problemstellung und des kleinen Projektbudgets fällt die Entscheidung auf das
+kleiner gefasste Modell nach Verhoef et al.. Ziel dieser Entscheidung ist es, vermeidbare Kosten, die keine eminenten
+Vorteile bringen, zu vermeiden.
+Nachdem Phase drei des Verhoefer-Modells ausgeklammert wurde, sieht das zu verfolgende Modell aus wie folgt:
\begin{nicepic}
\includegraphics[width=0.7\textwidth]{images/umsetzungsdiagramm.png}
diff --git a/chapters/stand-der-technik.tex b/chapters/stand-der-technik.tex
index 7bb1258..8178857 100644
--- a/chapters/stand-der-technik.tex
+++ b/chapters/stand-der-technik.tex
@@ -1,71 +1,76 @@
\chapter{Stand der Technik}
\label{chap:stand-der-technik}
-Der Stand der Technik bezieht sich auf bestehende praktische Umsetzungen der erforderlichen Technologien.
-Im Wesentlichen gibt es zwei Arten von Technologien, die untersucht werden müssen: Die bestehende Website von \ac{WM} und
-eine Bibliothek zur Erzeugung von QR-Codes.
+Der Stand der Technik bezieht sich auf bestehende, praktische Umsetzungen der erforderlichen Technologien.
+Im Wesentlichen gibt es drei Arten von Technologien, die untersucht werden müssen: Die bestehende Website von \ac{WM},
+Bibliotheken zur Erzeugung von QR-Codes und Bibliotheken zur Erzeugung von PDF-Dateien.
\section{Die bestehende Webseite}
-Als Mitentwickler des Projektes ist dem Author dieser Ausarbeitung bekannt, dass die bestehende Webseite von
-\ac{WM} ein TYPO3-Redaktionssystem ist. Das Frontend der Webseite wird mit Webpack und Sass übersetzt.
+Als Mitentwickler des Projektes ist dem Autor bekannt, dass die bestehende Webseite ein TYPO3-Redaktionssystem ist. Das Frontend der Webseite wird mit Webpack und Sass übersetzt.
Webpack ist ein Modulbundler \cite{bib:smashmagazine-webpack} und Sass ein CSS-Präprozessor \cite{bib:w3schools-sass}.
+TYPO3 ist ein Redaktionssystem und PHP-Rahmenwerk, das Daten- und Inhaltspflege in einem geschützten Bereich
+ermöglicht, Frontend- und Backend-Nutzer und Berechtigungen steuert \cite{bib:typo3-docs-getting-started}
+und über die Systemerweiterung
+\enquote{Extbase} eine mächtige Entwicklerschnittstelle bereitstellt,
+um hochindividualisierte Funktionalitäten zu ermöglichen \cite{bib:typo3-docs-extbase-reference}.
-\section{QR-Codes erstellen}
+\section{QR-Code-Bibliotheken}
Um mit QR-Codes zu arbeiten, ist es unabdinglich, QR-Codes zu erstellen, da dieselben sonst nicht vorhanden sind.
Im Folgenden werden einige Implementationen von QR-Code-Generator-Bibliotheken im Detail betrachtet. Es wird sich
auf bereits verwendete Programmiersprachen begrenzt.
\subsection{Javascript-Implementationen}
-\subsubsection*{jquery-qrcode}
-\textit{jquery-qrcode} ist ein Plugin für JQuery um dynamisch QR-Codes auf Browserseite zu generieren.
+\subsubsection*{Jquery-qrcode}
+\textit{Jquery-qrcode} ist ein Plugin für JQuery um dynamisch QR-Codes auf Browserseite zu generieren.
Jedoch verweist diese Bibliothek selbst auf ihren desolaten Zustand und empfielt stattdessen \enquote{kjua} zu verwenden
\cite{bib:larsjung-jquery-qrcode}. Somit scheidet jquery-qrcode für nähere Evaluationen aus, da die Software nicht mehr
-gepflegt wird. \textit{jquery-qrcode} wurde bis zum heutigen Tage 853 mal von Nutzern mit einem Stern
+gepflegt wird. \textit{Jquery-qrcode} wurde bis Januar 2023 853 mal von Nutzern mit einem Stern
markiert \cite{bib:larsjung-jquery-qrcode}.
-Wenn ein Nutzer ein Github-Repository mit einem Stern markiert, interessiert sich der Nutzer weit genug,
+Wenn ein Nutzer ein Github-Repository mit einem Stern markiert, zeigt sich der Nutzer interessiert genug,
um über Neuigkeiten auf dem Laufenden gehalten werden zu wollen \cite{bib:github-stars}. Jquery-qrcode ist MIT-lizensiert
\cite{bib:larsjung-jquery-qrcode}.
-\subsubsection*{kjua}
-\textit{Kjua} ist eine Javascript-Bibliothek, um dynamisch QR-Codes auf Browserseite zu generieren.
+\subsubsection*{Kjua}
+\textit{Kjua} ist eine Javascript-Bibliothek, um dynamisch QR-Codes auf der Browserebene zu generieren.
Im Gegensatz zu \textit{jquery-qrcode} funktioniert Kjua auch ohne JQuery. Es werden diverse Stilattribute für gestaltete
QR-Codes unterstützt \cite{bib:larsjung-kjua}. Kjua kann QR-Codes über HTML-Canvas, Bilder und Vektorgrafiken umsetzen. Das ist bei näherer Betrachtung der Kjua Tech Demo \enpointy{https://larsjung.de/kjua/latest/demo} ersichtlich, jedoch
-nicht explizit erwähnt. Nach dem aktuellen Stand wurde Kjua von 243 Nutzern mit einem Stern markiert.
+nicht explizit erwähnt. Nach dem aktuellen Stand (Januar 2023) wurde Kjua von 243 Nutzern mit einem Stern markiert.
Kjuas letzte Codeänderung liegt circa zwei Jahre zurück. Es gibt eine unbeantwortete, sieben Jahre alte Pull-Request und
Issues scheinen ignoriert zu werden. Kjua ist MIT-lizensiert \cite{bib:larsjung-kjua}.
-\subsubsection*{soldair/node-qrcode}
-\textit{Soldair/node-qrcode} ist eine node.js-basierte Implementation eines QR-Code Generators und bietet somit Funktionialität
-serverseitig, als CLI, sowohl als auch Browserseitig an. Die Readme-Datei zeugt von Länge, ist reich an Beispielen
+\subsubsection*{Soldair/node-qrcode}
+\textit{Soldair/node-qrcode} ist eine node.js-basierte Implementation eines QR-Code-Generators und bietet somit Funktionialität
+serverseitig, als CLI, sowohl auch Browserseitig an. Die Readme-Datei zeugt von Länge, ist reich an Beispielen
und detailreichen Erklärungen. Der letzte Commit ist zu diesem Zeitpunkt knapp älter als ein halbes Jahr. Somit macht das
Projekt einen moderat gepflegten Eindruck. Die Readme-Datei verweist auf Unit Tests bei Travis, jedoch lief die letzte Pipeline
-vor circa zwei Jahren, Februar 2021, durch und schlug zudem fehl. Einige Pull-Requests und Issues werden seit Jahren ignoriert
+vor circa zwei Jahren, Februar 2021, durch und schlug fehl. Einige Pull-Requests und Issues werden seit Jahren ignoriert
\cite{bib:soldair-node-qrcode}.
Die Bibliothek wurde 74 millionen mal heruntergeladen und mit 6308 Sternen markiert.
Soldair/node-qrcode ist MIT-lizensiert \cite{bib:npmjs-soldair-node-qrcode}.
\subsection{PHP-Implementationen}
-\subsubsection*{chillerlan/php-qrcode}
-Eine arrivierte Lösung für QR-Code Generierung in PHP ist \textit{chillerlan/php-qrcode}, umgesetzt durch
-Eugen Rochko und weitere. Das zeigt sich durch den zu diesem Zeitpunkt auf 5 Millionen stehendem Downloadzähler,
-mehrere Entwickler und den letzten Commit, der zu diesem Zeitpunk nicht älter als einen Monat ist.
+\subsubsection*{Chillerlan/php-qrcode}
+Eine arrivierte Lösung für QR-Code-Generierung in PHP ist \textit{chillerlan/php-qrcode}, umgesetzt durch
+Eugen Rochko et al.. \textit{Chillerlan/php-qrcode}s Etabliertheit zeigt sich durch den zu diesem
+Zeitpunkt (Jahnuar 2023) auf 5 Millionen stehenden Downloadzähler,
+mehreren Entwickler und den letzten Commit, der zu diesem Zeitpunk nicht älter als einen Monat ist.
Insgesamt erfolgten bis dato 808 Commits von 6 Entwicklern. Das Projekt verfügt über Unit-Tests,
die 90\% der Zeilen der Codebase abdecken. Rochko übernahm Teile der Codebase aus
dem Java-Projekt \enquote{ZXing} und übersetzte diese zu PHP.
Es gibt zu diesem Zeitpunkt keine unbeantworteten Issues oder Pull-Requests.
-\textit{chillerlan/php-qrcode} basiert auf einer angepassten Version von \textit{kazuhikoarase/qrcode-generator}.
+\textit{Chillerlan/php-qrcode} basiert auf einer angepassten Version von \textit{kazuhikoarase/qrcode-generator}.
Einzig auffällig sind die Commitnachrichten, die zuteils nur aus einem (1) Emoji bestehen.
-\textit{chillerlan/php-qrcode} wurde von 1212 Github-Nutzern mit einem Stern markiert. Die Bibliothek ist MIT-lizensiert
+\textit{Chillerlan/php-qrcode} wurde von 1212 Github-Nutzern mit einem Stern markiert. Die Bibliothek ist MIT-lizensiert
\cite{bib:chillerlan-php-qrcode}.
-\subsubsection*{kreativekorp/barcode}
+\subsubsection*{Kreativekorp/barcode}
\textit{kreativekorp/barcode} ist eine PHP-Bibliothek zur Generierung von QR-Codes, bereitgestellt von
\textit{Kreative Software}, R.G. Bettencourt.
-Diese Implementation umfasst eine Vielzahl an Barcode-Formaten und unterstützt eine Vielzahl an Anpassungsmöglichkeiten.
+Diese Implementation umfasst etablierte Barcode-Formaten und unterstützt eine Vielzahl an Anpassungsmöglichkeiten.
Das Projekt wurde bis zum heutigen Tage 189 mal mit einem Stern markiert \cite{bib:kreativkorp-barcode}.
Vier von den sechs vorhandenen Commits erfolgten innerhalb von zwei Tagen in 2016. Ein weiterer
Commit erfolte wenige Tage später. Der aktuellste Commit wurde knapp zwei Jahre später, 2018, veröffentlicht.
Das liegt zu diesem Zeitpunkt vier Jahre in der Vergangenheit.
-Damit ist diese Bibliothek de-facto sechseinhalb Jahre alt und wurde seitdem ein mal um Featuers erweitert.
+Damit ist diese Bibliothek de-facto sechseinhalb Jahre alt und wurde seitdem einmal um Featuers erweitert.
Issues und Pull-Requests werden weitestgehend ignoriert.
Die Bibliothek verwendet die MIT-Lizenz
\cite{bib:kreativkorp-barcode}.
@@ -73,23 +78,24 @@ Die Bibliothek verwendet die MIT-Lizenz
\subsubsection*{Bacon/BaconQrCode}
\textit{Bacon/BaconQrCode} ist eine PHP-Bibliothek zur Generierung von QR-Codes, bereitgestellt von Ben Scholzen, hinter
der Github-Organisation \enquote{Bacon}, dessen einziges Mitglied Scholzen darstellt. Verlinkt ist eine Homepage,
-die zu einer Nginx-\enquote{Hello World}-Seite führt. Begleitet wird BaconQrCode von etlichen weiteren Bacon-Applikationen
+die zu einer Nginx-\enquote{Hello World}-Seite führt. Begleitet wird \textit{BaconQrCode} von etlichen weiteren \enquote{Bacon-Projekten}
wie Beispielsweise \textit{BaconPdf}, \textit{BaconStringUtils} und \textit{BaconUser} um nur einige zu nennen.
Insgesamt machen die stichprobenartig betrachteten Projekte einen desolaten Eindruck mit zuteils aktuellesten Commits
von vor zehn Jahren. BaconQrCode stellt das beliebteste und gepflegteste Projekt von Scholzen mit 1508 Sterne-Markierungen und
-einem aktuellsten Commit von vor zwei Monaten dar. BaconQrCode erfreut sich an siebzehn Entwicklern, die jeweils zumindest
-einen Commit beigetragen haben. Insgesamt fanden zu diesem Zeitpunkt 177 Commits statt. Githubs DependencyGraph verzeichnet
-nahezu 80.000 Projekte die BaconQrCode verwenden \cite{bib:bacon-baconqrcode} und Packagist spricht von 50 Millionen Downloads
-\cite{bib:packagist-baconqrcode}. Eine Dokumentation neben der Readme-Datei existiert nicht und die
-diese ist bescheiden. BaconQrCode kann QR-Codes als Rasterbilder und Vektorgrafiken (SVG und EPS) generieren.
+einem aktuellsten Commit von vor zwei Monaten dar. BaconQrCode fällt mit siebzehn Entwicklern auf, die jeweils zumindest
+einen Commit beigetragen haben. Zu diesem Zeitpunkt fanden 177 Commits statt. Githubs DependencyGraph verzeichnet
+nahezu 80.000 Projekte, die BaconQrCode verwenden \cite{bib:bacon-baconqrcode} und Packagist meldet 50 Millionen Downloads
+Wie \textit{chillerlan/php-qrcode} baut auch Scholzen auf existierende Technik von \enquote{ZXing} auf.
+\cite{bib:packagist-baconqrcode}. Eine Dokumentation neben der Readme-Datei existiert nicht und
+diese ist sehr minimalistisch. \textit{BaconQrCode} kann QR-Codes als Rasterbilder und Vektorgrafiken (SVG und EPS) generieren.
Spezielle Styles sind nicht erwähnt. Ein Großteil der Issues und Pull-Requests wurden behandelt.
-BaconQrCode ist mit einer BSD-2-Clause-Lizenz lizensiert
+BaconQrCode unterliegt einer BSD-2-Clause-Lizenz
\cite{bib:bacon-baconqrcode}.
-\subsection{Subjektiver Vergleich in Bezug auf die Problemstellung}
-Im Folgenden weden subjektive Einschätzungen und Meinungen des Autors über die Eignung der beleuchteten
+\subsection{Subjektiver Vergleich im Bezug auf die Problemstellung}
+Im Folgenden werden subjektive Einschätzungen und Meinungen des Autors über die Eignung der beleuchteten
Bibliotheken vorgestellt.
-Um eine Bibliothek als \enquote{am geeignetsten} für einen Anwendungsfall kurieren,
+Um eine Bibliothek als \enquote{am geeignetsten} für einen Anwendungsfall zu kurieren,
müssen die konkreten Anforderungen und Constraints für diesen Anwendungsfall beachtet werden.
Das ist so, da verschiedene Eigenschaften der Bibliotheken verschiedene Auswirkung in Gewichtung und Richtung
je nach Anwendungsfall aufweisen.
@@ -102,28 +108,30 @@ Hierfür werden die zuvor vorgestellten Bibliotheken zur Erstellung von QR-Codes
\item [Gepflegtheit] \hfill \\
Das Ausmaß, in dem das Projekt aktiv gepflegt wird und ordnungsgemäß entwickelt zu sein scheint.
Hierzu zählen beispielsweise: Bearbeitung von Issues, Bearbeitung von Pull-Requests, Präsenz von Tests,
- Präsenz einer angemessenen Dokumentation, häufige Commits, mehr als nur ein Contributor, Anzahl der
+ Präsenz einer angemessenen Dokumentation, häufige Commits, mehrere Entwickler, Anzahl der
Sterne auf Github (Ausmaß an tieferem, öffentlichem Interesse \cite{bib:github-stars}), sowie der Anzahl der
- Downloads bzw Installationen, falls verfügbar.
+ Downloads bzw. Installationen, falls verfügbar.
\item [Workflow-Eignung] \hfill \\
Die Eignung einer Bibliothek in existierende Workflows und Constraints übernommen zu werden. Maßgeblich,
ob und mit wie viel Aufwand eine Bibliothek in das Projekt übernommen werden kann. Ebenfalls ist relevant,
- ob die Lizenz einer Bibliothek überhaupt deren Einbundung gestattet, bzw. welche Bedingungen gelten.
+ ob die Lizenz einer Bibliothek eine Verwendung gestattet, bzw. welche Bedingungen gelten.
\end{description}
-Dabei werden den verschiedenen Bibliotheken Punkte ($[0,10]$) in den drei zuvor genannten Kategorien vergeben.
+Hierbei werden den verschiedenen Bibliotheken Punkte ($[0,10]$) in den drei zuvor genannten
+Kategorien vergeben. Nicht ermittelte Werte werden in ihrer Kategorie durch $-$ repräsentiert, wodurch
+eine weitere Verwendung ausgeschlossen wird.
Die Kumulativpunktzahl ($[0,30]$) einer Bibltiothek beschreibt deren Gesamteignung, nach subjektivem
Empfinden des Autors.
-\subsubsection*{kjua}
+\subsubsection*{Kjua}
Kjua ist funktional für dieses Projekt gut aufgestellt, da es optisch ansprechende QR-Codes mit Logo unterstützt. Das wird
mit acht Punkten in \enquote{Funktionalität} bemessen.
Kjua macht andererseits einen eher desolaten Eindruck und lässt somit begründete Zweifel an dessen Zukunftssicherheit zu.
Eine knappe Dokumentation ist verfügbar. Für die Dokumentation werden zwei Punkte in \enquote{Gepflegtheit} angerechnet.
Kjua ist als Javascript-Bibliothek nur schwer mit den Anforderungen vereinbar,
-da der QR-Code in einem PDF eingebunden werden soll. Hierfür wäre ein serverseitiger Generator prädestiniert.
-Kjuas Lizenz erlaubt Verwendung in kommerziellen, Closed-Source Projekten \cite{bib:opensource-license-mit}.
+da der QR-Code in einem PDF eingebunden werden soll. Hierfür ist ein serverseitiger PDF-Generator vorgesehen.
+Kjuas Lizenz erlaubt Verwendung in kommerziellen, Closed-Source-Projekten \cite{bib:opensource-license-mit}.
Die Exklusivität für Nutzung in Webbrowsern schließt eine Einbindung in den Workflow aus.
\begin{table}[htbp]
\centering
@@ -134,15 +142,16 @@ Die Exklusivität für Nutzung in Webbrowsern schließt eine Einbindung in den W
8 & 2 & 0 & 10\\
\hline
\end{tabular}
+ \caption{Subjektive Evaluation: Kjua}
\end{table}
-\subsubsection*{soldair/node-qrcode}
+\subsubsection*{Soldair/node-qrcode}
Soldairs Lösung sieht dokumentativ und funktional vielversprechend aus.
-Hieraus bilden sich 8 Punkte in \enquote{Funktionalität}.
-Da diese Bibliothek eine Node.js-Bibliothek ist und Node.js ohne Browser, als Kommandozeilenapplikation ausgeführt werden
-kann \cite{bib:nodejs-api-cli}, böte sich
-Soldair/node-qrcode als serverseitige Anwendung an. Auch die Lizenz spräche nicht gegen eine Verwendung. Dennoch wäre es
-ein vermeidbarer Mehraufwand und ggf. imperformant generierte QR-Codes aus einer Node.JS-Applikation in eine PHP-Umgebung zu
+Hieraus bilden sich acht Punkte in \enquote{Funktionalität}.
+Da diese Bibliothek eine Node.js-Bibliothek ist und Node.js ohne Browser, als Kommandozeilenapplikation, ausgeführt werden
+kann \cite{bib:nodejs-api-cli}, bietet sich
+Soldair/node-qrcode als serverseitige Anwendung an. Die Lizenz spricht nicht gegen eine Verwendung. Dennoch wäre es
+ein vermeidbarer Mehraufwand generierte QR-Codes aus einer Node.JS-Applikation in eine PHP-Umgebung zu
übertragen. Das bildet sich mit vier Punkten in \enquote{Workflow-Eignung} ab.
Darüberhinaus macht Soldair/node-qrcode einen verbesserungswürdigen Eindruck der Projektpflege, wofür es lediglich
drei Punkte gibt.
@@ -155,9 +164,10 @@ drei Punkte gibt.
8 & 3 & 4 & 15\\
\hline
\end{tabular}
+ \caption{Subjektive Evaluation: Soldair/node-qrcode}
\end{table}
-\subsubsection*{chillerlan/php-qrcode}
+\subsubsection*{Chillerlan/php-qrcode}
Rochkos Lösung macht einen aktiv gepflegten Eindruck und wird von großen Downloadzahlen gestützt.
Rochko stellt eine ausführliche Dokumentation und Codebeispiele bereit.
Hierfür wird die volle Punktzahl in \enquote{Gepflegtheit} vergeben.
@@ -168,7 +178,7 @@ Bewertet wird das mit einer vollen Punktzahl in \enquote{Funktionalität}.
Chillerlan/php-qrcode lässt sich nahtlos in das existierende Projekt eingliedern,
da es als PHP-Bibliothek über Composer eingebunden werden kann und eine eigene API bereitstellt \cite{bib:chillerlan-php-qrcode}.
Die von Rochko verwendete Lizenz gestattet eine unkomplizierte Verwendung. Chillerlan/php-qrcode funktioniert sowohl mit
-PHP $7.x$ und $8.x$. Die Bibliothek benötigt zwei weitere Abhängigkeiten. Eine dieser Abhängigkeiten ist ebenfalls von Rochko
+PHP $7.x$ als auch $8.x$. Die Bibliothek benötigt zwei weitere Abhängigkeiten. Eine dieser Abhängigkeiten ist ebenfalls von Rochko
bereitgestellt \cite{bib:chillerlan-php-qrcode-composerjson} und weist eine ähnlich gute Projektpflege auf
\cite{bib:chillerlan-php-settings-container}. Das wird mit der Maximalwertung in \enquote{Workflow-Eignung} berechnet.
\begin{table}[htbp]
@@ -180,15 +190,17 @@ bereitgestellt \cite{bib:chillerlan-php-qrcode-composerjson} und weist eine ähn
10 & 10 & 10 & 30\\
\hline
\end{tabular}
+ \caption{Subjektive Evaluation: Chillerlan/php-qrcode}
\end{table}
-\subsubsection*{kreativekorp/barcode}
-Kreativekorp beeindruckt durch Nutzungsbeispiele und Dokumentation in der Readme-Datei, sowie einer Vielzahl unterstützter
-Barcode-Formate, darunter auch QR-Codes und einiger improvisierter Tests.
-Hierfür werden drei Punkte in \enquote{Gepflegtheit} vergeben.
-0 Punkte in \enquote{Workflow-Eignung} rechtfertigen sich durch die Abwesenheit jeglicher
-Unterstützung für Paketmanager, wodurch eine saubere Verwendung in dem Brownfield-Projekt Änderungen an der Bibliothek
-selbst erfordern würde.
+\subsubsection*{Kreativekorp/barcode}
+Kreativekorp beeindruckt durch Nutzungsbeispiele und Dokumentation in der Readme-Datei,
+sowie einer Vielzahl unterstützter Barcode-Formate, darunter auch QR-Codes und einiger improvisierter Tests.
+In Anbetracht dessen, dass die Bibliothe de-facto sechseinhalb Jahre alt ist und seit vier Jahren nicht mehr
+angepasst wurde, wird eine geringe Wertung von drei Punkten in \enquote{Gepflegtheit} vergeben.
+Null Punkte in \enquote{Workflow-Eignung} rechtfertigen sich durch die Abwesenheit jeglicher
+Unterstützung für Paketmanager, wodurch eine saubere Verwendung in dem Brown-Field-Projekt
+Änderungen an der Bibliothek selbst erfordern würde.
Die Funktionalität wurde aufgrund der desaströsen Gepflegtheit und Eignung nicht näher untersucht,
da eine Verwendung selbst mit guter Funktionalität nicht infrage käme.
\begin{table}[htbp]
@@ -197,21 +209,23 @@ da eine Verwendung selbst mit guter Funktionalität nicht infrage käme.
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
- 0 & 3 & 4 & 7\\
+ - & 3 & 0 & -\\
\hline
\end{tabular}
+ \caption{Subjektive Evaluation: Kreativekorp/barcode}
\end{table}
\subsubsection*{Bacon/BaconQrCode}
-BaconQrCode nennt keine speziellen Optionen um näheren Einfluss auf den generierten QR-Code auszuüben.
+BaconQrCode nennt keine speziellen Optionen, um näheren Einfluss auf den generierten QR-Code auszuüben.
Es werden Rasterbilder und verschiedene Vektorformate als Renderziel unterstützt. Aufgrund der fehlenden Optionen,
-die andere Bibliotheken bereitstellen, werden lediglich fünf von 10 Punkten für \enquote{Funktionalität} vergeben.
+die andere Bibliotheken bereitstellen, werden lediglich fünf von zehn Punkten für \enquote{Funktionalität} vergeben.
Die Projektgepflegtheit ist inkonsistent. Manche Stellen, beispielsweise die Mitwirkenden, Alter des neuesten Commits, Tests
und Nutzerzahlen machen einen guten Eindruck, während Punkte wie die Dokumentation, die Organisationswebseite und andere
-Projekte Sorgen begründen. Für die \enquote{Gepflegtheit} werden 8 Punkte vergeben.
+Projekte Sorgen begründen. Weil der Programmcode an sich gut gepflegt aussieht und große Downloadzahlen von
+häufiger Verwendung sprechen, werden für die \enquote{Gepflegtheit} acht Punkte vergeben.
Da es sich hierbei um eine PHP-Bibliothek handelt, die über Composer in PHP- $7.x$ und $8.x$ Projekte geladen werden kann
-und eine API bereitstellt, ist die \enquote{Workflow-Eignung} gut. Die BSD-2-Clause-Lizenz verkompliziert eine Integration,
-da dadurch eine Copyright-Notiz an Nutzer gezeigt werden muss \cite{bib:opensource-license-bsd-2}.
+und eine das Projekt API bereitstellt, ist die technische Workflow-Eignung gut. Die BSD-2-Clause-Lizenz verkompliziert eine Integration,
+da somit eine Copyright-Notiz an Nutzer gezeigt werden muss \cite{bib:opensource-license-bsd-2}.
Dadurch werden drei Punkte einer vollkommenen Workflow-Eignung abgezogen, wodurch sieben Punkte vergeben werden.
\begin{table}[htbp]
\centering
@@ -219,30 +233,42 @@ Dadurch werden drei Punkte einer vollkommenen Workflow-Eignung abgezogen, wodurc
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
- 5 & 8 & 4 & 17\\
+ 5 & 8 & 7 & 20\\
\hline
\end{tabular}
+ \caption{Subjektive Evaluation: Bacon/BaconQrCode}
\end{table}
\subsection{Fazit}
+Nach Evaluation der verschiedenen QR-Code-Bibliotheken im Kontext der vorliegenden Problemstellung erweist sich aus Sicht des Autors
+\textit{chillerlan/php-qrcode} mit 30 Gesamtpunkten als die am besten geeignetste Bibliothek.
+Somit wird \textit{chillerlan/php-qrcode} als QR-Code Technologie in der Lösung dieser Problemstellung verwendet.
+
\begin{table}[htbp]
\centering
\begin{tabular}{|l||l|l||l|l|}
\hline
- \textbf{Bib.} & \textbf{Funkt.} & \textbf{Gepflegtht.} & \textbf{WF.-Eignung} & \textbf{$\Sigma$}\\
+ \textbf{Bibliothek} & \textbf{Funkt.} & \textbf{Gepflegtht.} & \textbf{WF.-Eignung} & \textbf{$\Sigma$}\\
\hline
\hline
chillerlan/php-qrcode & 10 & 10 & 10 & 30\\\hdashline
- baconqrcode & 5 & 8 & 4 & 17\\\hdashline
+ baconqrcode & 5 & 8 & 7 & 20\\\hdashline
soldair/node-qrcode & 8 & 3 & 4 & 15\\\hdashline
kjua & 8 & 2 & 0 & 10\\\hdashline
- kreativekorp/barcode & 0 & 3 & 4 & 7\\
+ kreativekorp/barcode & - & 3 & 0 & -\\
\hline
\end{tabular}
- \caption{Subjektive Evaluation der QR-Code Bibliotheken}
+ \caption{Gesamtübersicht: Subjektive Evaluation der QR-Code Bibliotheken}
\label{tbl:qrlib-compare-barchart}
\end{table}
-Nach Evaluation der verschiedenen QR-Code-Bibliotheken im Kontext der vorliegenden Problemstellung erweist sich aus Sicht des Autors
-\textit{chillerlan/php-qrcode} mit 30 Gesamtpunkten als die am besten geeignetste Bibliothek.
-Somit wird \textit{chillerlan/php-qrcode} als QR-Code Technologie in der Lösung dieser Problemstellung verwendet werden.
+\section{PDF-Generator}
+Firmenintern ist der PDF-Generator \textit{mpdf/mpdf} \cite{bib:mpdf} etabliert und wird bereits
+in zahlreichen Projekten verwendet.
+Um die projektübergreifende Kontinuität der Technik zu wahren und um somit die
+Wartbarkeit und Nachhaltigkeit des hier behandelten Softwareproduktes
+zu fördern, wird sich für den PDF-Generator entschieden, der bereits firmeninterner Standard ist.
+Unabhängig dessen ist \textit{mpdf} ein gut gepflegtes Projekt mit einem Alter von mehr als acht Jahren,
+Sponsoren, 72 Entwicklern, über 31 Millionen Downloads, über 3.900 Sterne-Markierungen, über 800 Commits
+und regelmäßigen Updates. Dadurch, dass \textit{mpdf} ein Composer-Paket für verschiede PHP-Versionen ist,
+ist eine herausragende Workflow-Eignung gegeben \cite{bib:mpdf}.
diff --git a/config.tex b/config.tex
index d9987f5..6a15018 100644
--- a/config.tex
+++ b/config.tex
@@ -10,7 +10,7 @@
\newcommand{\cfgDocClassification}{Abschlussarbeit}
% Document version
-\newcommand{\cfgDocVersion}{1.1}
+\newcommand{\cfgDocVersion}{1.3}
% Last modification date
\newcommand{\cfgDateLastModification}{22. Dezember 2022}
diff --git a/dexes/acrodex.tex b/dexes/acrodex.tex
index 98c80f0..547b029 100644
--- a/dexes/acrodex.tex
+++ b/dexes/acrodex.tex
@@ -28,8 +28,8 @@
\acro{TCA}[TCA]{Table configuration array}
\acroplural{TCA}[TCAs]{Table configuration arrays}
-\acro{PO}[PO]{Product owner}
-\acroplural{PO}[POs]{Product owner}
+\acro{PO}[PO]{Product Owner}
+\acroplural{PO}[POs]{Product Owner}
%
%
\end{acronym}
diff --git a/dexes/glossarydex.tex b/dexes/glossarydex.tex
index 9261f4f..d326be7 100644
--- a/dexes/glossarydex.tex
+++ b/dexes/glossarydex.tex
@@ -16,11 +16,11 @@
languages and other information that determine how a site behaves are managed
via the backend. Tasks such as adding backend users and managing
third-party extensions also take place in the backend.
- } \cite{bib:typo3-docs-concepts}.
+ } \cite{bib:typo3-docs-getting-started}.
\item [TYPO3-Extension] \hfill \\
\quotecite{Developed by the community, extensions provide a range of solutions that
- help extend TYPO3} \cite{bib:typo3-docs-concepts}.
+ help extend TYPO3} \cite{bib:typo3-docs-getting-started}.
\item [TYPO3-Plugin] \hfill \\
\quotecite{Plugins are a specific type of content elements [...]
diff --git a/dexes/literature.bib b/dexes/literature.bib
index 243f123..f4040a9 100644
--- a/dexes/literature.bib
+++ b/dexes/literature.bib
@@ -304,6 +304,14 @@
note = {Zugriff: Januar 2023}
}
+@misc{bib:mpdf,
+ author = {{Mpdf Contributors}},
+ howpublished = "\url{https://mpdf.github.io/}",
+ title = {{mPDF}},
+ year = {2023},
+ note = {Zugriff: März 2023}
+}
+
@misc{bib:typo3-docs-managing-extensions,
author = {{TYPO3 Contributors}},
howpublished = "\url{https://docs.typo3.org/m/typo3/tutorial-getting-started/main/en-us/Extensions/Management.html}",
@@ -312,10 +320,10 @@
note = {Zugriff: Februar 2023}
}
-@misc{bib:typo3-docs-concepts,
+@misc{bib:typo3-docs-getting-started,
author = {{TYPO3 Contributors}},
- howpublished = "\url{https://docs.typo3.org/m/typo3/tutorial-getting-started/main/en-us/Concepts}",
- title = {{TYPO3 Concepts}},
+ howpublished = "\url{https://docs.typo3.org/m/typo3/tutorial-getting-started/11.5/en-us/Index.html}",
+ title = {{Getting started}},
year = {2023},
note = {Zugriff: Februar 2023}
}
diff --git a/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.drawio b/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.drawio
index 8af1dcb..4b8062d 100644
--- a/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.drawio
+++ b/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.drawio
@@ -1 +1 @@
-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
\ No newline at end of file
+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
\ No newline at end of file
diff --git a/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.png b/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.png
index 9e8c5c2..0bb3854 100644
Binary files a/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.png and b/images/objektrelationen-weinlandmosel-einlieferungswerkzeug.png differ
diff --git a/images/umsetzungsdiagramm.drawio b/images/umsetzungsdiagramm.drawio
index f53e070..af2ec06 100644
--- a/images/umsetzungsdiagramm.drawio
+++ b/images/umsetzungsdiagramm.drawio
@@ -1 +1 @@
-7Vpbc9o4FP41zOw+dAfbYOCRQJJ2Zneb3Wzb7aOwD7aCbDGyuJhfX8mWbwiIKTFOMn1COpYs+Zzv07mIjjUJtvcMLf2/qAukY3bdbceadkzTMAaW+JGSOJUM7UEq8Bh21aBC8Ih3oIRdJV1hF6LKQE4p4XhZFTo0DMHhFRlijG6qw+aUVFddIg80waODiC79hl3uq68wB4X8I2DPz1Y27FH6JEDZYPUlkY9cuimJrNuONWGU8rQVbCdApPIyvaTz7o48zTfGIOR1JvzzdB9++vIvehqurdFX9/5+up59MPtqczzOvhhcoQDVpYz71KMhIreF9IbRVeiCfG1X9Ioxf1K6FEJDCJ+A81hZE604FSKfB0Q9FTtm8f9y/h/9rPtdvS7pTLeVXqx66V7lBo/qQIkiumIOnPpwhSXEPOAnxhnD3FQC40ADEBsSExkQxPG6uhGkwObl4wp7iIYyyTnmSd+7RmSlVnrwUQRCJNQ4Fj9T7GGOd2IrNNQsGW1wQFAoTbbxMYfHJUp0shFUrRpELQOMw/a0anVNqAlWhvN4r78paGN2lcwvUcYcdBvSnmG1DG7zpdF9CiTPQt6qC3nzQsgnU8eMobg0YElxyKPSmx+koMCPXYWPsX+anTVcNNL1C/DkH/LzeLJ0Ngp6rUKvI1e/S+iIPIaCABJ22kSo+WbGRMuTrc+zJ1jwVI00BEHYybFBgh8QRo6P5vzIuL9XfAds3plYnZuJz9JdrOUp0J0iMSmQrpjIyd3f/ouX1Ppwg5wFhO7vGimqkH+Jo+I4To+eH3vHR08/PQz7wOlhGI2dHvY7c40XHR5GbYfZb9NhZtsscfQOwJ0J6Avpw+c3gX1jUBP8VmPY77WB/etg+FLHprkio7dnvv6eWVLOqFmFZc71kNo69mkX+cz4Znyk0dcI+CWIgO9SB1V2TW+Ci+aBMPbKXBy8Mz9UN0Xr1/Q4l7L6IuvocB+Hc8pckBFZJAI0FEUJ9F9TbjaqmZoZo6ZAPWoF01vMS5AWve+lJwWgZScuo/uK8VhWj3mOHHZNcgzaJIetkeNTyIGtMWxkhQzzVmOyI4HqZflIc26gq+npF2XOosygJmVarfgNNMrcMeTBLMnzbS/J51XSz0TzkaMF+JQIf/MmaHTA81yXRkNNvw9zgh1fhKU+zPmbUKLR/mF0QI2qMG2WCtOIvMrStG3VjH8aVGA7AdC1S9MZTp6/junWPJzNF8nh32FxOtPgT1enDxWU2zkMj925XRaZNXbNlCe07yVBv5DKZl0q99oMtLJtvrZK8XngNw64suuGAmYrl6xXQnHzteL966umasXGNVxQT6NUufb7DdhiByuvtcLvmdQatk4tvX6Su+3Ma+cKjpa5tw+R4+v+/Sswn8Jc0kYCBZHkWllVYcbhMi1UygQznSm2nK+iWUzonlfNEnFGFzChhDIhCWkS288xIXsikRN4oeg6IEtBQiAtiR1ExupBgF2XHEsMqkipBYXTuUFuvbhqzJLRreHLGF10i397pZwr/jNn3f4A
\ No newline at end of file
+7VpZk+I2EP41VCUPu+WDMfDIwEC2KslOMtnd7KPAja1BllyyOH/9Sli+MIdZMEcqT1jtliV3f193q03D7gXLIUeh/wdzgTQsw1027H7DskzbaskfJVnFko7pxAKPY1crZYI3vAYtNLR0hl2ICoqCMSJwWBSOGaUwFgUZ4pwtimoTRoqrhsiDkuBtjEhZ+g27wo+l7eS1lPw3wJ6frGw6nfhOgBJl/SaRj1y2yInsl4bd44yJ+CpY9oAo4yV2iecN9txNN8aBiioT/nof0k9f/kbv7bnd+eoOh/356IP1pDcnVskbgysNoIeMC595jCLykkmfOZtRF9RjDTnKdH5nLJRCUwrfQYiV9iaaCSZFvgiIvit3zFf/qvkfn5Lhd/24zaC/LIxWelR+ZW2FiM34GA69p4YO4h6IA3pmO1ZURsitoC06BBaA3JBU4ECQwPMiSpAGm5fqZf6QF9olp7gnfu4ckZle6dVHEUiRNGNX/vSxhwVey60wWvJktMABQVS5bOFjAW8h2hhpIaladMhew86BC1getIS+ayc4X22NFxltLEPL/BxlrJZRk/VM+8bgts5E9yFMHIW8XRXy1qUhv5na5Rytcgohw1REuSe/KkGGH6cIH3M7mp2kLi/i9TPwpC/y83iyy2yU9JpRr6FWH2zoiDyOggA27HSItPvziMsrT119Hr3DVMRmZBQkYXv7lCQ/gEZjH03EHr0/Z2INfNLo2Y3nns/jXcxVFDD6SE4KVComarLxyz+rkNkfntF4CtT9tUSKIuRPDhUHI1fl+LEVPprl6GE6O6KHadYWPZzHTo1nBY8kKByPHk93lTCTfec4OgBwRxL6Uvr6+SGwb7Yqgt+uDfvNW2C/JgxfOLGVUpHZ3HLf05ZbYhLpWZlnTs2QpXWcwynyiH49OTKJBzkCfgkiEOs4QeVT00Nw0dpRxl6Zi63HzkNVj2hPFTPOxVl9lnfKcO/SCeMuqIoskgUaiqIN9O/pbNapeDQzO3WBunMTTC+xyEFajr7n7mSAVoNVHt311WNJ++UYOZyK5GjdFTmcEjk+UQF8jmGhOmRYXK8mS3ha93mkvjRglOz0P2UOUaZVkTL31fFrlSgz4MiD0eac73ib87w+9HN5+SbQFHxGZL55CBrtyDzXpVG7ZN/XCcFjX5alPkzEQxjRvH0w2mFG3Zi2co1pRO6yNe3YFeufNOpf3oC3KYBqbk0nsDj+OcaoGJytes7w/8HmdGLSn+5O72oo7+g7D2Z0qigtuS2Ubrcpduqpe53eCPiIY+rF21Bfci1jCNHYj6dORBRytoYogugqoTcNXHXXge26Ikd6nn7QdsCZgcOqGjiad1XWJfu+aV/6bPDfvvCwbvJJty4UX70zbW35pa7OtH1iZ9q+RoJsliiY70x/Az5dw8y7Tlv6fCre/CRllbs7aRWQFAGpgaMwrUUoktm/VC58Be4zmChSKKAg8nFTVegmUZeGcR9VnX/jqXLP6TIll0mbiqJfIsHZFHqMMC4llG2OHhNMyJZIljUelcMxqE6VFCgP4TEiXX0jwK5L9p1bilApY+Hko0vqvlXRmzmv2+3LeF0Osz+jxaTL/tJnv/wA
\ No newline at end of file
diff --git a/images/umsetzungsdiagramm.png b/images/umsetzungsdiagramm.png
index 6b7a4fe..1255c2d 100644
Binary files a/images/umsetzungsdiagramm.png and b/images/umsetzungsdiagramm.png differ
diff --git a/main.pdf b/main.pdf
index 818003a..94e0103 100644
Binary files a/main.pdf and b/main.pdf differ