fix various layout details

This commit is contained in:
Andreas Zweili 2019-03-14 20:30:42 +01:00
parent 66e7fc807a
commit 81e45e4682
1 changed files with 70 additions and 66 deletions

View File

@ -109,7 +109,8 @@ der Zukunft möglich ist das Projekt auf andere Plattformen auszuweiten.
\subsubsection{Ziele inklusive Gewichtung}
\label{sec:org2ef9c2b}
Im Projektantrag wurden vorgängig folgende Ziele definiert und entsprechend
Im Projektantrag wurden vorgängig die Ziele in der
Tabelle:(\ref{tab:org2ab4045}) definiert und entsprechend
gewichtet. Die Gewichtung wurde dabei so vorgenommen, dass Ziele mit einer
Muss-Gewichtung den Minimalanforderungen der zu entwickelnden Software
entsprechen. Die weiteren Ziele wurden von 5 bis 1 gewichtet. Die Bewertung 5
@ -335,15 +336,15 @@ entwickelten Design Sprache "`Material"' \footcite{material} eingesetzt.
\subsection{Zeitplanung}
\label{sec:org3e1f3c8}
Die detaillierte Zeitplanung ist dem Ganttchart in der Datei
\href{02\_Zeitplanung\_Andreas\_Zweili.html}{02\_Zeitplanung\_Andreas\_Zweili.html} zu entnehmen. Bei der Zeitplanung wurde
darauf geachtet, dass die Arbeit soweit als möglich nicht mit dem Berufsleben
kollidiert. An einem normalen Arbeitstag wurde dabei damit gerechnet das ca. 2
Stunden Arbeit am Abend möglich sein sollten. An einem arbeitsfreien Tag wurde
mit 6 Stunden Arbeit gerechnet. Über die Festtage wurden diverse Tage von der
Planung ausgenommen, da es nicht realistisch schien, dass an diesen Tagen die
Arbeit signifikant vorwärts gehen würde. Auch Schultage wurde nicht als
Arbeitstage gerechnet.
Die detaillierte Zeitplanung ist dem Ganttchart in der Datei:\newline
\href{02\_Zeitplanung\_Andreas\_Zweili.html}{02\_Zeitplanung\_Andreas\_Zweili.html}
zu entnehmen. Bei der Zeitplanung wurde darauf geachtet, dass die Arbeit soweit
als möglich nicht mit dem Berufsleben kollidiert. An einem normalen Arbeitstag
wurde dabei damit gerechnet das ca. 2 Stunden Arbeit am Abend möglich sein
sollten. An einem arbeitsfreien Tag wurde mit 6 Stunden Arbeit gerechnet. Über
die Festtage wurden diverse Tage von der Planung ausgenommen, da es nicht
realistisch schien, dass an diesen Tagen die Arbeit signifikant vorwärts gehen
würde. Auch Schultage wurde nicht als Arbeitstage gerechnet.
Um die Arbeitslast zu verteilen, wurde vom 14. Januar bis zum 11. März auf der
Arbeitsstelle jeder Montag als frei eingegeben. Dadurch steht während des
@ -394,7 +395,7 @@ unvorbereitet gegenüber, sollten sie eintreffen.
\subsubsection{Risikobeschreibung}
\label{sec:org5fac90a}
In der Tabelle: (\ref{tab:orgb156d31}) sind die Risiken des Projektes
In der Tabelle:(\ref{tab:orgb156d31}) sind die Risiken des Projektes
gemeinsam mit ihren Gegenmassnahmen aufgelistet. Somit können gewisse Risiken
bereits vorher vermieden werden.
@ -490,7 +491,7 @@ Stakeholder Diagramm}
\hline
\textbf{Nr}.\cellcolor[HTML]{C0C0C0} & \textbf{Stakeholder}\cellcolor[HTML]{C0C0C0} & \textbf{Einfluss}\cellcolor[HTML]{C0C0C0} & \textbf{Anforderung/Wünsche}\cellcolor[HTML]{C0C0C0} & \textbf{Wahrscheinlichkeit}\cellcolor[HTML]{C0C0C0}\\
\hline
1. & \gls{borg} Community & gering & Eine Applikation, die den Umfang von \gls{borg} abdeckt & mittel\\
1. & \gls{borg} Community & gering & Eine Applikation, die den Umfang von \gls{borg}\newline abdeckt & mittel\\
& & & Open-Source & hoch\\
& & & Mitspracherecht bei der Entwicklung & niedrig\\
\hline
@ -602,10 +603,10 @@ Grafische Darstellung der Soll-Risikoanalyse}
\subsection{Anforderungskatalog}
\label{sec:org90be6e5}
Der Anforderungskatalog entspricht 1:1 den Zielen, welche in der Tabelle
\ref{tab:org2ab4045} definiert wurden. Im Zeitplan wurde der Fokus hauptsächlich
auf die Muss-Ziele gelegt. Ein paar der Kann-Ziele sind im Konzept jedoch auch
abgebildet.
Der Anforderungskatalog entspricht 1:1 den Zielen, welche in der
Tabelle:(\ref{tab:org2ab4045}) definiert wurden. Im Zeitplan wurde der Fokus
hauptsächlich auf die Muss-Ziele gelegt. Ein paar der Kann-Ziele sind im
Konzept jedoch auch abgebildet.
\subsection{Use Cases}
\label{sec:orgfd94eff}
@ -634,7 +635,7 @@ Das Anwendungsfalldiagramm für das \gls{borg} \gls{gui} ist in der Abbildung:
\begin{landscape}
\begin{figure}[htbp]
\centering
\includegraphics[width=.9\linewidth]{pictures/use_case.pdf}
\includegraphics[width=.75\linewidth]{pictures/use_case.pdf}
\caption{\label{fig:org49a405a}
Anwendungsfalldiagramm}
\end{figure}
@ -1158,9 +1159,8 @@ ergibt das Kriteriumsergebnis(\emph{KE}). Für das Endresultat wird dann die Sum
über alle Kriterien gebildet. Die Variante mit der höchsten Summe wurde für das
Projekt ausgewählt.
Mussziele erhalten dabei eine
Gewichtung von 10 und Wunschziele eine Gewichtung entsprechend der Bewertung in
der Tabelle Projektziele (\ref{tab:org2ab4045}).
Mussziele erhalten dabei eine Gewichtung von 10 und Wunschziele eine Gewichtung
entsprechend der Bewertung in der Tabelle:(\ref{tab:org2ab4045}).
\begin{table}[htbp]
\centering
@ -1197,12 +1197,13 @@ gut für Desktop Applikationen eignen.
\paragraph{C\#}
\label{sec:org88a8f6c}
C\# ist eine von Microsoft entwickelte Programmiersprache, welche viele
Frameworks zur Verfügung stellt. Insbesondere aufgrund der grossen
kommerziellen Nutzung und der guten Integration mit Microsoft Windows hat C\#
eine relative grosse Verbreitung. Bei Linux und OS X ist es jedoch schwieriger
C\# zu integrieren und zu nutzen da es nicht standardmässig installiert ist und
der Fokus von C\# hauptsächlich auf Microsoft Windows liegt.
C\#, ausgesprochen "`c sharp"', Bewertungstabelle:(\ref{tab:orgbe64074}), ist
eine von Microsoft entwickelte Programmiersprache, welche viele Frameworks zur
Verfügung stellt. Insbesondere aufgrund der grossen kommerziellen Nutzung und
der guten Integration mit Microsoft Windows hat C\# eine relative grosse
Verbreitung. Bei Linux und OS X ist es jedoch schwieriger C\# zu integrieren
und zu nutzen da es nicht standardmässig installiert ist und der Fokus von C\#
hauptsächlich auf Microsoft Windows liegt.
Sie ist zu Teilen \gls{libre}. Die Common Language Runtime, welche für das
Ausführen von Software zuständig ist, ist unter der MIT Lizenz lizenziert
@ -1277,7 +1278,7 @@ C\# Bewertungstabelle}
\paragraph{C++}
\label{sec:orga42458f}
C++ ist eine stark typisierte und kompilierte Programmiersprache. Sie ist seit
C++, Bewertungstabelle:(\ref{tab:org98215ee}), ist eine stark typisierte und kompilierte Programmiersprache. Sie ist seit
1998 Teil des ISO Standards \footcite{cpp98}. ISO/IEC 14882:2017 \footcite{cpp17}
ist zurzeit die aktuellste Variante. Die Sprache existiert seit ca. 33 Jahren
und hat eine weitreichende Verbreitung gefunden. C++ ist auf allen
@ -1346,7 +1347,7 @@ C++ Bewertungstabelle}
\paragraph{Python}
\label{sec:org5438e66}
Der Python Interpreter ist für eine Vielzahl an Betriebssystemen erhältlich,
Der Python Interpreter, Bewertungstabelle:(\ref{tab:org5e96ed7}), ist für eine Vielzahl an Betriebssystemen erhältlich,
inklusive Windows, OS X und Linux. Nahezu jedes Desktop Linux System kommt mit
Python vor installiert. Auch OS X kommt bereits ab Werk mit Python Version 2.
Version 3 lässt sich sehr einfach nachinstallieren und ist einfach nutzbar.
@ -1434,10 +1435,11 @@ In beiden Fällen wäre nicht mal eine ungenaue Schätzung wirklich möglich.
\paragraph{Qt}
\label{sec:org4b2dd8e}
Qt \footcite{qt}, "`cute"' ausgesprochen, ist ein Framework zum Entwickeln von
grafischen Oberflächen, welche auf verschiedenen Systemen ohne grosse Änderungen
laufen sollen und sich dabei soweit als möglich wie eine native Applikation
verhalten und "`anfühlen"' soll.
Qt \footcite{qt}, "`cute"' ausgesprochen,
Bewertungstabelle:(\ref{tab:org4ccf1dd}), ist ein Framework zum Entwickeln von
grafischen Oberflächen, welche auf verschiedenen Systemen ohne grosse
Änderungen laufen sollen und sich dabei soweit als möglich wie eine native
Applikation verhalten und "`anfühlen"' soll.
Die Rechte an Qt hält die Firma "`The Qt Company"'. Das Framework Qt wird jedoch
offen entwickelt und die Community hat ein Mitspracherecht. Die Linux
@ -1490,11 +1492,12 @@ Qt Bewertungstabelle}
\paragraph{Gtk}
\label{sec:orgbac0846}
Gtk ist sowohl für Linux wie auch für Windows und OS X erhältlich. Gtk hat als
Projekt der Gnome Foundation seine Wurzeln jedoch ganz klar in der Linux Welt.
Gtk ist \gls{libre} unter der Lesser General Public Lizenz \footcite{gtklicense}.
Gtk ist ein Projekt der GNOME Foundation einer nicht für Profit Organisation,
welche die Entwicklung diverser freier Software Projekte koordiniert.
Gtk, Bewertungstabelle:(\ref{tab:orgf14b8b2}), ist sowohl für Linux wie auch
für Windows und OS X erhältlich. Gtk hat als Projekt der Gnome Foundation seine
Wurzeln jedoch ganz klar in der Linux Welt. Gtk ist \gls{libre} unter der
Lesser General Public Lizenz \footcite{gtklicense}. Gtk ist ein Projekt der
GNOME Foundation einer nicht für Profit Organisation, welche die Entwicklung
diverser freier Software Projekte koordiniert.
Zu Gtk gibt es keinerlei Vorkenntnisse als Programmierer. Gtk wurde bis jetzt
nur intensiv als User verwendet.
@ -1502,7 +1505,7 @@ nur intensiv als User verwendet.
Gtk integriert sich nur unter Linux wirklich gut ins System. Unter Windows und
OS X können die Applikationen schnell etwas fremd wirken. Dies ist gut bei der
Applikation Meld \footcite{meld} zu sehen, wenn man eine Datei auswählen möchte,
Abbildung (\ref{fig:org7ef2fd3}).
Abbildung:(\ref{fig:org7ef2fd3}).
\begin{figure}[H]
\centering
@ -1553,7 +1556,7 @@ Gtk Bewertungstabelle}
\paragraph{Electron}
\label{sec:org408db76}
Electron ist ein cross-plattform Framework zum Entwickeln von \glspl{gui}, welches
Electron, Bewertungstabelle:(\ref{tab:orgd3eb73d}), ist ein cross-plattform Framework zum Entwickeln von \glspl{gui}, welches
dabei jedoch auf Technologien aus der Webentwicklung benutzt. Entwickelt wird
Electron von der Firma Github und ist \gls{libre} unter der MIT Lizenz
\footcite{electronlicense}.
@ -1677,7 +1680,7 @@ Der Pfad des \gls{borg} Repository für lokale Backups soll \texttt{/tmp/test-bo
sein, in den Testfällen "`Lokales Repository"' genannt und das Passwort \texttt{foo}.
Im Makefile des Repository wird dieses Setup definiert. Somit kann man als
Entwickler nur \texttt{make init} ausführen und hat eine funktionsfähige Testumgebung.
\newpage
Um Backups über \gls{ssh} testen zu können, wird eine virtuelle Maschine mit Ubuntu
18.04 verwendet. Die Konfiguration der virtuellen Maschine sieht dabei wie
folgt aus:
@ -2057,7 +2060,7 @@ sehr einfach eine Datei im "`INI"' Stil zu erstellen und parsen.
"`INI"' Stil bedeutet dabei das die Einstellungen in "`Key/Value"' Paaren
gespeichert werden. Somit kann man einfach auf den benötigten Wert zugreifen, in
dem man seinen Schlüssel angibt. Ein Beispiel ist im CodeSnippet:(\ref{org7734c7e}) zu sehen.
dem man seinen Schlüssel angibt. Ein Beispiel ist im Codesnippet:(\ref{org7734c7e}) zu sehen.
\begin{sexylisting}[label=org7734c7e]{Ein Beispiel einer INI Datei.}
# docs/borg_qt.conf.example
@ -2077,14 +2080,15 @@ Support für eine Liste von Werten hat. Die wurde insbesondere für \texttt{incl
\texttt{exclude} Pfade benötigt. Also für die Pfade, welche gesichert werden oder von
einem Backup ausgeschlossen werden sollen.
Abhilfe schaffte hier ein Stackexchange Post \footcite{configlist}. Dieser schlug
vor, dass man die Liste im \gls{json} Format speichern soll. Da \texttt{Configparser} alle
Werte im Format "`String"' zurückgibt, können dann die \gls{json} Listen sehr
einfach von einem \gls{json} Parser umgewandelt werden. Im Projekt wurde dies
dann unter anderem als Methode der \texttt{Config} Klasse, Code
Snippet:(\ref{orgd4f11c4}), implementiert. Somit muss man jeweils nur die
\texttt{\_return\_list\_option()} Methode mit der benötigten Option als Argument aufrufen
und bekommt als Resultat eine funktionierende Python Liste zurück.
Abhilfe schaffte hier ein Stackexchange Post \footcite{configlist}. Dieser
schlug vor, dass man die Liste im \gls{json} Format speichern soll. Da
\texttt{Configparser} alle Werte im Format "`String"' zurückgibt, können dann
die \gls{json} Listen sehr einfach von einem \gls{json} Parser umgewandelt
werden. Im Projekt wurde dies dann unter anderem als Methode der
\texttt{Config} Klasse, Codesnippet:(\ref{orgd4f11c4}), implementiert. Somit
muss man jeweils nur die \texttt{\_return\_list\_option()} Methode mit der
benötigten Option als Argument aufrufen und bekommt als Resultat eine
funktionierende Python Liste zurück.
Beim Schreiben der Konfigurationsdatei macht man dann einfach das Umgekehrte.
Man konvertiert eine Python Liste in einen \gls{json} String.
@ -2236,7 +2240,7 @@ geschrieben werden, welche dann von \texttt{BorgQtThread} die Funktionen erbt. D
Funktionsklassen müssen dann jeweils nur die Methode
\texttt{self.create\_command(self)} implementieren, welche das Property \texttt{self.command}
erstellt und die einfachen Funktionen von \gls{borg} sollten direkt funktionieren.
\newpage
\subsection{Backup}
\label{sec:org89c69ff}
@ -2453,7 +2457,7 @@ Repository Statistik aktualisiert, um den neuen Zustand wiederzugeben.
\caption{\label{fig:orgf3d4105}
Screenshot des Yes/No Dialogs in der "`Delete"' Funktion.}
\end{figure}
\newpage
\subsection{Automatische Backups}
\label{sec:org99bb44c}
@ -2538,11 +2542,11 @@ zu erhalten. Mittels des Befehls \texttt{which borg-qt} erhält man den absolute
Speicherort der Datei. Zusammen mit den Daten aus den Einstellungen wird diese
Information in einem \texttt{Configparser} Objekt gespeichert, welches dann mithilfe
der \texttt{SystemdFile} Klasse in eine \texttt{borg\_qt.service},
Codesnippet:(\ref{org686435b}), respektive \texttt{borg\_qt.timer},
Codesnippet:(\ref{org686435b}), respektive \texttt{borg\_qt.timer},\newline
Codesnippet:(\ref{orgc9b6ece}), Datei, im Systemd Pfad
\texttt{/home/username/.config/systemd/user/} geschrieben und aktiviert wird.
Eine Option in der Datei \texttt{borg\_qt.timer}, die noch erwähnenswert ist, ist
Eine Option in der Datei \texttt{borg\_qt.timer}, die noch erwähnenswert ist,\newline ist
\texttt{Persistent = true}. Ist \texttt{Persistent} auf \texttt{true} gesetzt, holt Systemd den
Tasks nach sollte er eine Ausführung verpasst haben. Dies ist insbesondere dann
hilfreich, wenn etwa der Zeitplan auf \texttt{daily} oder \texttt{weekly} gesetzt wurde.
@ -2782,7 +2786,7 @@ Abbildung:(\ref{fig:org47eb5a8}), eine bessere Risikobewertung als das geplante
\begin{figure}[H]
\centering
\includegraphics[width=.9\linewidth]{pictures/ist_risiko_neu.pdf}
\includegraphics[width=9cm]{pictures/ist_risiko_neu.pdf}
\caption{\label{fig:org47eb5a8}
Risikoanalyse der neuen Ist-Situation}
\end{figure}
@ -2831,7 +2835,7 @@ Tabelle:(\ref{tab:org0a7c4bd}) geplanten 1:1.
Da die geleisteten Stunden tiefer als geplant waren, sind auch die geschätzten
Kosten tiefer. Wie in der Tabelle:(\ref{tab:orgc5c17d7}) zu sehen würden sich die
angenommenen, internen Kosten für die Arbeit auf ca. 17302.20 CHF belaufen.
Dies stellt eine Einsparung von 1777.8 CHF dar.
Dies entspricht einer theoretischen Einsparung von 1777.8 CHF oder 9.318\%.
\subsection{Usability-Studie}
\label{sec:orgd81cd12}
@ -2907,13 +2911,13 @@ um seine sowie teilweise auch die Daten von Bekannten zu sichern.
\begin{longtable}{|p{4cm}|p{2cm}|p{2cm}|p{4cm}|}
\hline
\textbf{Ressource}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{effekt. Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{Begründung}\cellcolor[HTML]{C0C0C0}\\
\textbf{Ressource}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{effektive\newline Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{Begründung}\cellcolor[HTML]{C0C0C0}\\
\hline
\endfirsthead
\multicolumn{4}{l}{Fortsetzung von vorheriger Seite} \\
\hline
\textbf{Ressource}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{effekt. Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{Begründung}\cellcolor[HTML]{C0C0C0} \\
\textbf{Ressource}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{effektive\newline Anzahl}\cellcolor[HTML]{C0C0C0} & \textbf{Begründung}\cellcolor[HTML]{C0C0C0} \\
\hline
\endhead
@ -2938,13 +2942,13 @@ Projektressourcen}
\begin{longtable}{|p{3cm}|p{2cm}|p{2cm}|p{2cm}|p{2cm}|}
\hline
\textbf{Name}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzter Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Kosten in CHF}\cellcolor[HTML]{C0C0C0} & \textbf{effektiver Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{effektive Kosten in CHF}\cellcolor[HTML]{C0C0C0}\\
\textbf{Name}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzter Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Kosten\newline in CHF}\cellcolor[HTML]{C0C0C0} & \textbf{effektiver Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{effektive Kosten\newline in CHF}\cellcolor[HTML]{C0C0C0}\\
\hline
\endfirsthead
\multicolumn{5}{l}{Fortsetzung von vorheriger Seite} \\
\hline
\textbf{Name}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzter Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Kosten in CHF}\cellcolor[HTML]{C0C0C0} & \textbf{effektiver Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{effektive Kosten in CHF}\cellcolor[HTML]{C0C0C0} \\
\textbf{Name}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzter Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{geschätzte Kosten\newline in CHF}\cellcolor[HTML]{C0C0C0} & \textbf{effektiver Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{effektive Kosten\newline in CHF}\cellcolor[HTML]{C0C0C0} \\
\hline
\endhead
@ -2972,7 +2976,7 @@ Kostenrechnung}
\subsection{Zeitaufwand}
\label{sec:org60e1849}
\begin{longtable}{|p{3cm}|p{1.5cm}|p{1.5cm}|p{6.5cm}|}
\begin{longtable}{|p{.2\textwidth}|p{2cm}|p{2cm}|p{6cm}|}
\hline
\textbf{Aufgabe}\cellcolor[HTML]{C0C0C0} & \textbf{Gesch. Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{Effekt. Aufwand in h}\cellcolor[HTML]{C0C0C0} & \textbf{Begründung}\cellcolor[HTML]{C0C0C0}\\
\hline
@ -2988,17 +2992,17 @@ Kostenrechnung}
\endfoot
\endlastfoot
\hline
Initialisierung & 22 & 20.3 & Das bescheiben der Ziele hat weniger Zeit in Anspruch genommen als geplant.\\
2 Initialisierung & 22 & 20.3 & Das bescheiben der Ziele hat weniger Zeit in Anspruch genommen als geplant.\\
\hline
Analyse & 47 & 41.6 & Da Diagramme aus alten Arbeiten übernommen werden konnten, konnte etwas Zeit eingespart werden.\\
3 Analyse & 47 & 41.6 & Da Diagramme aus alten Arbeiten übernommen werden konnten, konnte etwas Zeit eingespart werden.\\
\hline
Konzept & 34 & 35.1 & Die Testfälle erstellen hat etwas mehr Zeit in Anspruch genommen als geplant.\\
4 Konzept & 34 & 35.1 & Die Testfälle erstellen hat etwas mehr Zeit in Anspruch genommen als geplant.\\
\hline
Realisierung & 172 & 149.3 & Trotz der Schwierigkeiten beim Erstellen der Backup Funktion konnte beim Borg Interface viel Code wieder verwendet werden was massiv Zeit gespart hat.\\
5 Realisierung & 172 & 149.3 & Trotz der Schwierigkeiten beim Erstellen der Backup Funktion konnte beim Borg Interface viel Code wieder verwendet werden was massiv Zeit gespart hat.\\
\hline
Ausblick & 8 & 7.5 & -\\
6 Ausblick & 8 & 7.5 & -\\
\hline
7 Arbeit korrigieren & 20 & 22.7 & Das Korrigieren war aufwändiger als gedacht.\\
7 Arbeit\newline korrigieren & 20 & 22.7 & Das Korrigieren war aufwändiger als gedacht.\\
\hline
8 Meeting \#1 & 5 & 6.87 & Das erste Meeting hat viele Nacharbeiten nach sich gezogen die so nicht geplant waren.\\
\hline