generated from leonetienne/LaTeX-Paper-template
feat: lotsa stuff and schlussteil
This commit is contained in:
@@ -1,7 +1,10 @@
|
||||
\chapter{Umsetzung}
|
||||
\chapter{Konzeption und Umsetzung}
|
||||
\label{chap:umsetzung}
|
||||
Infolge der Anforderungsanalyse befasst sich das Kapitel \enquote{Umsetzung} mit der Implementation der Anforderungen in dem
|
||||
Infolge der Anforderungsanalyse befasst sich das Kapitel \enquote{Konzeption und Umsetzung}
|
||||
mit der Implementation der Anforderungen in dem
|
||||
Brown-Field Projekt \cite{bib:schwarzer-vorlesung-swa} in Form einer TYPO3-Extension.
|
||||
Es ist anzumerken, dass das aus \fullref{chap:anforderungserfassung} hervorgehende Pflichtenheft im Rahmen geplanter und
|
||||
opportunistischer Gespräche mit dem \ac{PO} geringfügige Änderungen erfahren hat.
|
||||
|
||||
\section{Setup einer TYPO3-Extension}
|
||||
TYPO3-Extensions werden via Composer installiert \cite{bib:typo3-docs-managing-extensions}.
|
||||
@@ -20,8 +23,10 @@ Spezifisch ist der \enquote{vergleichbare Funktionsumfang}, dass es Datenmodelle
|
||||
Frontendlogik in Bezug auf die zuvor genannten Datenmodelle gibt.
|
||||
|
||||
\section{Digitization}
|
||||
Die Phase der Digitazion nach Verhoef et al. 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:verhoef, bib:dougherty, bib:loebbecke}.
|
||||
Die Phase der Digitizion nach Verhoef et al. 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}.
|
||||
Des Weiteren befasst sich diese Phase mit der Automatisierung und Befüllung dieser Daten,
|
||||
wie zum Beispiel Web-Formularen \cite{bib:verhoef}.
|
||||
Das bedeutet, dass in dieser Phase Datenobjekte definiert und implementiert werden.
|
||||
Ein Datenobjekt besteht nach firmeninternen Konventionen aus zumindest
|
||||
vier Komponenten:
|
||||
@@ -92,13 +97,6 @@ Mit Abschluss der Phase der Digitization können alle Datenstrukturen im TYPO3-B
|
||||
eingesehen, gelöscht und bearbeitet werden.
|
||||
|
||||
|
||||
\section{Digitalization}
|
||||
In der Phase \textit{Digitalization} werden bestehende Geschäftsprozesse so verändert,
|
||||
dass mit digitalen Werkzeugen und Datenmodellen gearbeitet werden kann \cite{bib:fengli}.
|
||||
Damit baut diese Phase auf der vorherigen Phase \enquote{Digitization} auf, um mit den dort
|
||||
implementierten Datenmodellen zu arbeiten. Im Folgenden werden die Umsetzungen der
|
||||
erforderlichen Geschäftsprozesse beschrieben.
|
||||
|
||||
\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.
|
||||
@@ -133,9 +131,10 @@ anbei in \fullref{chap:anhang-anmeldeformular}.
|
||||
\end{nicepic}
|
||||
|
||||
Da das Brown-Field-Projekt bereits Accountlogins und -Registrierungen implementiert und nutzt,
|
||||
werden auf diese Lösungen zurückgegriffen, um einen einheitlichen Workflow beizubehalten. Accountregistrierungen werden über den
|
||||
\enquote{femanager} \cite{bib:typo3-docs-femanager} realisiert, während Logins via TYPO3's nativem
|
||||
Frontend-Nutzer-Login gelöst werden. Das ist explizit von femanager so angedacht:
|
||||
werden auf diese Lösungen zurückgegriffen, um einen einheitlichen Workflow beizubehalten.
|
||||
Accountregistrierungen werden über den
|
||||
\enquote{femanager} \cite{bib:typo3-docs-femanager} realisiert, während Logins via TYPO3s nativem
|
||||
Frontend-Nutzer-Login gelöst werden. Das ist explizit von \enquote{femanager} so angedacht:
|
||||
\quotecite{Note: Login and a I forgot my password function is part of the core and not part of femanager.}
|
||||
\cite{bib:typo3-docs-femanager}.
|
||||
Im Folgenden wird der Registrierungsprozess im Detail beschrieben:\\
|
||||
@@ -287,7 +286,7 @@ Das senkt Entwicklungskosten und erhöht den Profit des Endkunden, da hierdurch
|
||||
Rekursiv aufgerufene For-Schleifen, die sich selbst erneut für alle Elemente aufrufen,
|
||||
können zu einem Performanzproblem führen \cite{bib:schwarzer-vorlesung-alg}.
|
||||
Daher wird im Folgenden die Zeitkomplexität dieser Rekursionsfunktion betrachtet.
|
||||
Grundlegend, kann für diese Funktion kein Master-Theorem angewandt werden,
|
||||
Für diese Funktion kann kein Master-Theorem angewandt werden,
|
||||
da es sich hierbei nicht um einen Divide-and-Conquer-Algorithmus handelt.
|
||||
Das ist so, da das in der Rekursion weitergereichte Problem nicht kleiner wird,
|
||||
sondern gleich groß bleibt.
|
||||
@@ -380,23 +379,6 @@ Um dieses PDF-Dokument über die Verbindung an den Nutzer zu übertragen, wird e
|
||||
Abschließend werden als Response-Body die Bytes des generierten PDFs abgeschickt. Damit ist die Verbindung beendet und das
|
||||
PDF zum Nutzer übertragen.
|
||||
|
||||
\subsection{Schnittstelle QR-Code-Scanner}
|
||||
Es ist angedacht, dass Mitarbeiter über die App \enquote{QRBot} den QR-Code auf dem Einlieferungsschein einscannen.
|
||||
Diese App ermöglicht es Nutzern für jeden eingescannten Code eine URL zu öffnen und den Wert des QR-Codes anstelle eines Platzhalters
|
||||
in der URL einzufügen.
|
||||
Hierfür bietet das Jahresauswahlprobenwerkzeug eine Schnittstelle bzw. eine Seite an, die eine Wein-\ac{UID} als
|
||||
URL-kodierten GET-Parameter annimmt und diesen Wein als \enquote{eingegangen} markiert.
|
||||
Um sicherzustellen, dass Weine nicht unautorisiert markiert werden, müssen sich Mitarbeiter mit einem Nutzerkonto
|
||||
authentifizieren. Dieses Nutzerkonto muss Teil einer Mitarbeiter-Nutzergruppe sein.
|
||||
Das Nutzerkonto wird von Redakteuren oder Administratoren im TYPO3-Backend erstellt und benötigt keiner Registrierung.
|
||||
Nach einer Anmeldung bleibt diese Sitzung aktiv und verfällt erst nach längerer Inaktivität.
|
||||
Wird ein Wein als \enquote{eingegangen} markiert, wird der betroffene Teilnehmer per Email informiert.
|
||||
Hierzu wird die FluidEmail-Klasse des TYPO3-Cores herangezogen.
|
||||
Sollte ein Wein bereits als \enquote{eingegangen} markiert sein, wird keine Email verschickt und dem Mitarbeiter wird kommuniziert,
|
||||
dass keine Änderungen vorgenommen wurden.
|
||||
Abschließend werden im Frontend allgemeine Daten über den Wein angezeigt, damit Mitarbeiter sich sicher sein können,
|
||||
den richtigen Wein eingescanned zu haben.
|
||||
|
||||
\subsection{Jahresauswahlproben- und Wein-Detailansichten}
|
||||
Weine und Jahresauswahlproben sollen unter bestimmten Gegebenheiten einsichtig sein.
|
||||
Hierzu gibt es eine Auflistung aller Jahresauswahlproben. Diese sind anklickbar, um eine Detailansicht der ausgewählten
|
||||
@@ -420,6 +402,31 @@ Ansichten sind beispielsweise Wein-\acp{UID} und \ac{JAP}-\acp{UID}. Um Informat
|
||||
wie beispielsweise seiner Teilnehmernummer oder seiner Nutzergruppenzugehörigkeit, zu erlangen, wird sich
|
||||
der Extbase-nativej Domain-Model-FrontendUser-Klasse bedient \cite{bib:typo3-ref-extbase-model-feuser}.
|
||||
|
||||
|
||||
\section{Digitalization}
|
||||
In der Phase \textit{Digitalization} werden bestehende Geschäftsprozesse so verändert,
|
||||
dass mit digitalen Werkzeugen und Datenmodellen gearbeitet werden kann \cite{bib:fengli}.
|
||||
Damit baut diese Phase auf der vorherigen Phase \enquote{Digitization} auf, um mit den dort
|
||||
implementierten Datenmodellen zu arbeiten. Im Folgenden werden die Umsetzungen der
|
||||
erforderlichen Geschäftsprozesse beschrieben.
|
||||
|
||||
\subsection{Schnittstelle QR-Code-Scanner}
|
||||
Es ist angedacht, dass Mitarbeiter über die App \enquote{QRBot} den QR-Code auf dem Einlieferungsschein einscannen.
|
||||
Diese App ermöglicht es Nutzern für jeden eingescannten Code eine URL zu öffnen und den Wert des QR-Codes anstelle eines Platzhalters
|
||||
in der URL einzufügen.
|
||||
Hierfür bietet das Jahresauswahlprobenwerkzeug eine Schnittstelle bzw. eine Seite an, die eine Wein-\ac{UID} als
|
||||
URL-kodierten GET-Parameter annimmt und diesen Wein als \enquote{eingegangen} markiert.
|
||||
Um sicherzustellen, dass Weine nicht unautorisiert markiert werden, müssen sich Mitarbeiter mit einem Nutzerkonto
|
||||
authentifizieren. Dieses Nutzerkonto muss Teil einer Mitarbeiter-Nutzergruppe sein.
|
||||
Das Nutzerkonto wird von Redakteuren oder Administratoren im TYPO3-Backend erstellt und benötigt keiner Registrierung.
|
||||
Nach einer Anmeldung bleibt diese Sitzung aktiv und verfällt erst nach längerer Inaktivität.
|
||||
Wird ein Wein als \enquote{eingegangen} markiert, wird der betroffene Teilnehmer per Email informiert.
|
||||
Hierzu wird die FluidEmail-Klasse des TYPO3-Cores herangezogen.
|
||||
Sollte ein Wein bereits als \enquote{eingegangen} markiert sein, wird keine Email verschickt und dem Mitarbeiter wird kommuniziert,
|
||||
dass keine Änderungen vorgenommen wurden.
|
||||
Abschließend werden im Frontend allgemeine Daten über den Wein angezeigt, damit Mitarbeiter sich sicher sein können,
|
||||
den richtigen Wein eingescanned zu haben.
|
||||
|
||||
\subsection{CSV-Export}
|
||||
Das letzte Glied des analogen Prozesses, den es zu digitalisieren gilt, ist der Datenexport der Weindaten je Jahresauswahlprobe.
|
||||
TYPO3s ListView bietet einen nativen CSV-Exporter an \cite{bib:pixelant-typo3-data-export},
|
||||
|
||||
Reference in New Issue
Block a user