klassendiagramm und wording digitization

This commit is contained in:
2023-03-15 11:16:38 +01:00
parent 6f3161370e
commit 4e18b44d43
6 changed files with 112 additions and 29 deletions

View File

@@ -86,8 +86,10 @@ Spezielle Styles sind nicht erwähnt. Ein Großteil der Issues und Pull-Requests
BaconQrCode ist mit einer BSD-2-Clause-Lizenz lizensiert
\cite{bib:bacon-baconqrcode}.
\subsection{Vergleich in Bezug auf die Problemstellung}
Um eine Bibliothek als \enquote{die Beste} für einen Anwendungsfall kurieren zu können,
\subsection{Subjektiver Vergleich in Bezug auf die Problemstellung}
Im Folgenden weden 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,
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.
@@ -110,8 +112,9 @@ Hierfür werden die zuvor vorgestellten Bibliotheken zur Erstellung von QR-Codes
ob die Lizenz einer Bibliothek überhaupt deren Einbundung gestattet, bzw. welche Bedingungen gelten.
\end{description}
Hierfür werden den verschiedenen Bibliotheken Punkte ($[0,10]$) in den zuvor genannten Kategorien vergeben.
Die Kumulativpunktzahl einer Bibltiothek beschreibt deren Gesamteignung.
Dabei werden den verschiedenen Bibliotheken Punkte ($[0,10]$) in den drei zuvor genannten Kategorien vergeben.
Die Kumulativpunktzahl ($[0,30]$) einer Bibltiothek beschreibt deren Gesamteignung, nach subjektivem
Empfinden des Autors.
\subsubsection*{kjua}
Kjua ist funktional für dieses Projekt gut aufgestellt, da es optisch ansprechende QR-Codes mit Logo unterstützt. Das wird
@@ -122,6 +125,16 @@ 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}.
Die Exklusivität für Nutzung in Webbrowsern schließt eine Einbindung in den Workflow aus.
\begin{table}[htbp]
\centering
\begin{tabular}{|l|l|l|l|}
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
8 & 2 & 0 & 10\\
\hline
\end{tabular}
\end{table}
\subsubsection*{soldair/node-qrcode}
Soldairs Lösung sieht dokumentativ und funktional vielversprechend aus.
@@ -133,6 +146,16 @@ ein vermeidbarer Mehraufwand und ggf. imperformant generierte QR-Codes aus einer
ü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.
\begin{table}[htbp]
\centering
\begin{tabular}{|l|l|l|l|}
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
8 & 3 & 4 & 15\\
\hline
\end{tabular}
\end{table}
\subsubsection*{chillerlan/php-qrcode}
Rochkos Lösung macht einen aktiv gepflegten Eindruck und wird von großen Downloadzahlen gestützt.
@@ -148,6 +171,16 @@ Die von Rochko verwendete Lizenz gestattet eine unkomplizierte Verwendung. Chill
PHP $7.x$ und $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]
\centering
\begin{tabular}{|l|l|l|l|}
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
10 & 10 & 10 & 30\\
\hline
\end{tabular}
\end{table}
\subsubsection*{kreativekorp/barcode}
Kreativekorp beeindruckt durch Nutzungsbeispiele und Dokumentation in der Readme-Datei, sowie einer Vielzahl unterstützter
@@ -158,6 +191,16 @@ Unterstützung für Paketmanager, wodurch eine saubere Verwendung in dem Brownfi
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]
\centering
\begin{tabular}{|l|l|l|l|}
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
0 & 3 & 4 & 7\\
\hline
\end{tabular}
\end{table}
\subsubsection*{Bacon/BaconQrCode}
BaconQrCode nennt keine speziellen Optionen um näheren Einfluss auf den generierten QR-Code auszuüben.
@@ -170,15 +213,36 @@ Da es sich hierbei um eine PHP-Bibliothek handelt, die über Composer in PHP- $7
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}.
Dadurch werden drei Punkte einer vollkommenen Workflow-Eignung abgezogen, wodurch sieben Punkte vergeben werden.
\begin{table}[htbp]
\centering
\begin{tabular}{|l|l|l|l|}
\hline
\textbf{Funktionalität} & \textbf{Gepflegtheit} & \textbf{Workflow-Eignung} & \textbf{$\Sigma$}\\
\hline
5 & 8 & 4 & 17\\
\hline
\end{tabular}
\end{table}
\subsection{Fazit}
\begin{nicepic}
\includegraphics[width=1\textwidth]{images/qrlib-compare-barchart.png}
\captionof{figure}{Vergleichsergebnisse QR-Code Bibliotheken}
\caption*{Quelle: Eigene Darstellung}
\label{fig:qrlib-compare-barchart}
\end{nicepic}
\begin{table}[htbp]
\centering
\begin{tabular}{|l||l|l||l|l|}
\hline
\textbf{Bib.} & \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
soldair/node-qrcode & 8 & 3 & 4 & 15\\\hdashline
kjua & 8 & 2 & 0 & 10\\\hdashline
kreativekorp/barcode & 0 & 3 & 4 & 7\\
\hline
\end{tabular}
\caption{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
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.