Doku-Update

This commit is contained in:
Ivan Hörler 2017-03-16 13:22:50 +01:00
parent 2b26efce09
commit 4e8aa1e811
2 changed files with 163 additions and 41 deletions

Binary file not shown.

View File

@ -100,6 +100,8 @@ AP und Diagramme werden direkt im Dokument eingefügt und stehen somit mit dem n
\subsection{Qualitätsmanagement}
Nach jedem AP wird das geleistete untersucht und eventuelle Abschweiffer von der Aufgabenstellung gleich behoben.
Untersucht wird anhand von User Stories und Usecase Diagramme ob die Lösung den Vorgaben entspricht.
\subsection{Abgrenzung}
Die Platform ist anonym. Die BusinessStreamline sperichert keine daten die auf die Wahre identität des Benutzers hinweist. Die Nutzung ist freiwillig und basiert auf einer Hohlschuld.
\section{Analyse}
\subsection{Vision}
@ -147,61 +149,175 @@ Die Vision beschreibt den Vorgang von Anwendern auf der Website der Firma Busine
\subsection{Usecase Diagramme}
\subsubsection{Login}
\scalebox{0.8}{
\begin{tikzpicture}
\begin{umlsystem}[x=4, fill=red!10]{The System}
\umlusecase[x=0,y=-5,name=case1, width=20mm]{Rechnung erstellen}
\umlusecase[x=5.5,y=-5, name=case2, width=20mm]{Zusätzliche Prüfung durch vorgesetzten auslösen.}
\umlusecase[x=0, y=-7, name=case3, width=30mm]{Rechnungsversand auslösen.}
\umlinclude[name=incl]{case1}{case3}
\umlextend[name=exte]{case2}{case1}
\end{umlsystem}
\umlactor[x=0,y=-5]{Sachb}
\umlactor[x=0,y=-7]{Kunde}
\umlinherit{case3}{Kunde}
\umlassoc{Sachb}{case1}
\umlnote[x=9,y=-7, width=4cm]{exte-1}{condition: [ betrag >= 5000 ] }
\end{tikzpicture}
}
\begin{figure}[H]
\begin{center}
%\includegraphics[scale=0.6]{bilder/usecase/login.png}
\end{center}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{Login}
\umlusecase[x=0,y=-1.5,name=Login, width=20mm]{Login}
\umlusecase[x=6.5,y=-1.5, name=Prüfung, width=30mm]{Login erfolgreich}
\umlusecase[x=0, y=-4.5, name=restriktion, width=30mm]{Zugriff auf restriktrierten Bereich}
\umlextend[name=incl]{Login}{restriktion}
\umlinclude[name=exte]{Prüfung}{Login}
\end{umlsystem}
\umlactor[x=0,y=-1.5]{Benutzer}
\umlactor[x=-2,y=-4.5]{Anbieter}
\umlactor[x=0,y=-4.5]{Nachfrager}
\umlinherit[anchor2= -90]{Nachfrager}{Benutzer}
\umlinherit[anchor2= -100]{Anbieter}{Benutzer}
\umlassoc{Benutzer}{Login}
\umlnote[x=9.5,y=-4.5, width=4cm]{exte-1}{condition: \newline Username nicht belegt, \newline Passwort > 6 Zeichen }
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Login Vorgang}
\label{fig:LoginVorgang}
\end{figure}
\subsubsection{Angebot}
\subsubsection{Nachfrage}
\begin{figure}[H]
\begin{center}
%\includegraphics[scale=0.6]{bilder/usecase/angebot.png}
\end{center}
\caption{Angebots Vorgang}
\label{fig:AngebotVorgang}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{Nachfrage}
\umlusecase[x=0,y=-0.5,name=Login, width=20mm]{Nachfrage erstellen}
\umlusecase[x=6.5,y=-0.5, name=Prüfung, width=20mm]{Login}
\umlusecase[x=6.5, y=-2.5, name=restriktion, width=30mm]{speicherung in DB}
\umlinclude[name=incl]{Prüfung}{Login}
\umlextend[name=exte]{restriktion}{Login}
\end{umlsystem}
\umlactor[x=0,y=-1.5]{Benutzer}
\umlactor[x=0,y=-4.5]{Nachfrager}
\umlinherit[anchor2= -90]{Nachfrager}{Benutzer}
\umlassoc{Benutzer}{Login}
\umlnote[x=4.5,y=-3.5, width=4cm]{exte-1}{condition: \newline Typ > 0 Zeichen, \newline Menge > 0 Zeichen, \newline Beschrieb > 10 Zeichen }
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Vorgang zur Nachfrage Erfassung}
\label{fig:NachfrageVorgang}
\end{figure}
\subsubsection{Suche}
\begin{figure}[H]
\begin{center}
%\includegraphics[scale=0.6]{bilder/usecase/suche.png}
\end{center}
\caption{Suche Vorgang}
\label{fig:SucheVorgang}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{Suche}
\umlusecase[x=0,y=0,name=Login, width=20mm]{Suche nach Zeichen}
\umlusecase[x=6.5,y=0, name=Prüfung, width=20mm]{Login}
\umlusecase[x=6.5, y=-2.5, name=restriktion, width=30mm]{Abfrage von DB}
\umlusecase[x=0,y=-2.5,name=suche, width=20mm]{stelle suche dar}
\umlinclude[name=incl]{Prüfung}{Login}
\umlextend[name=exte]{restriktion}{Login}
\umlextend[name=extend]{suche}{Login}
\end{umlsystem}
\umlactor[x=0,y=0]{Benutzer}
\umlactor[x=0,y=-3]{Anbieter}
\umlactor[x=-2,y=-3]{Nachfrager}
\umlinherit[anchor2= -90]{Anbieter}{Benutzer}
\umlinherit[anchor2= -100]{Nachfrager}{Benutzer}
\umlassoc{Benutzer}{Login}
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Vorgang der Suche}
\label{fig:SuchVorgang}
\end{figure}
\subsubsection{Angebot}
\begin{figure}[H]
\begin{center}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{Suche}
\umlusecase[x=0,y=0,name=Login, width=20mm]{Angebot erfassen}
\umlusecase[x=6.5,y=0, name=Prüfung, width=20mm]{Login}
\umlusecase[x=6.5, y=-2.5, name=restriktion, width=30mm]{speichern in DB}
\umlinclude[name=incl]{Prüfung}{Login}
\umlextend[name=exte]{restriktion}{Login}
\end{umlsystem}
\umlactor[x=0,y=0]{Benutzer}
\umlactor[x=0,y=-3]{Anbieter}
\umlinherit[anchor2= -90]{Anbieter}{Benutzer}
\umlassoc{Benutzer}{Login}
\umlnote[x=4.5,y=-3.5, width=4cm]{exte-1}{condition: \newline Angebot > 0 Zeichen, \newline Angebot < 9 Zeichen}
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Vorgang des Angebots}
\label{fig:AngebotVorgang}
\end{figure}
\subsubsection{Profile}
\begin{figure}[H]
\begin{center}
%\includegraphics[scale=0.6]{bilder/usecase/profile.png}
\end{center}
\caption{Profile Vorgang}
\label{fig:ProfileVorgang}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{Profil - Nachfrager}
\umlusecase[x=-0.5,y=0,name=Prüfung, width=30mm]{stelle alle Nachfragen des Benutzers dar.}
\umlusecase[x=6.5,y=0, name=Login, width=20mm]{Login}
\umlusecase[x=6.5, y=-2, name=db, width=30mm]{Abfrage von DB}
\umlusecase[x=2.5, y=-3, name=angebot, width=20mm]{Angebot Akzeptieren Button}
\umlinclude[name=incl]{Prüfung}{Login}
\umlextend[name=exte2]{db}{Prüfung}
\umlextend[name=exte1]{Prüfung}{angebot}
\end{umlsystem}
\umlactor[x=0,y=0]{Benutzer}
\umlactor[x=0,y=-3]{Nachfrager}
\umlinherit[anchor2= -90]{Nachfrager}{Benutzer}
\umlassoc{Benutzer}{Login}
\umlnote[x=4,y=-5, width=4cm]{exte1-1}{condition: \newline Angebot ist abgegeben worden (bestehend)}
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Abruf der Profil Seite aus Sicht des Nachfragers}
\label{fig:AngebotVorgang}
\end{figure}
\begin{figure}[H]
\begin{center}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{Profil - Angebot}
\umlusecase[x=-0.5,y=0,name=Prüfung, width=30mm]{stelle alle Angebote des Benutzers dar.}
\umlusecase[x=6.5,y=0, name=Login, width=20mm]{Login}
\umlusecase[x=6.5, y=-2, name=db, width=30mm]{Abfrage von DB}
\umlusecase[x=2.5, y=-3, name=angebot, width=20mm]{Auftrag herunterladen Button}
\umlinclude[name=incl]{Prüfung}{Login}
\umlextend[name=exte2]{db}{Prüfung}
\umlextend[name=exte1]{Prüfung}{angebot}
\end{umlsystem}
\umlactor[x=0,y=0]{Benutzer}
\umlactor[x=0,y=-3]{Nachfrager}
\umlinherit[anchor2= -90]{Nachfrager}{Benutzer}
\umlassoc{Benutzer}{Login}
\umlnote[x=4,y=-5, width=4cm]{exte1-1}{condition: \newline Angebot ist akzeptiert worden}
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Abruf der Profil Seite aus Sicht des Anbieters}
\label{fig:AngebotVorgang}
\end{figure}
\subsubsection{XML}
\begin{figure}[H]
\begin{center}
%\includegraphics[scale=0.6]{bilder/usecase/xml.png}
\end{center}
\caption{XML Vorgang}
\label{fig:XMLVorgang}
\scalebox{0.6}{
\begin{tikzpicture}
\begin{umlsystem}[x=4.5, fill=red!10]{XML Herunterladen}
\umlusecase[x=0,y=-1.5,name=Login, width=20mm]{download}
\umlusecase[x=6.5,y=-1.5, name=Prüfung, width=30mm]{Pfad-Abfrage von DB}
\umlinclude[name=exte1]{Prüfung}{Login}
\end{umlsystem}
\umlactor[x=0,y=-1.5]{Benutzer}
\umlactor[x=-2,y=-4.5]{Anbieter}
\umlactor[x=0,y=-4.5]{Nachfrager}
\umlinherit[anchor2= -90]{Nachfrager}{Benutzer}
\umlinherit[anchor2= -100]{Anbieter}{Benutzer}
\umlassoc{Benutzer}{Login}
\umlnote[x=10.5,y=-4.5, width=4cm]{exte1-1}{condition: \newline File besteht }
\end{tikzpicture}
}%scalebox
\end{center}
\caption{Login Vorgang}
\label{fig:LoginVorgang}
\end{figure}
\subsection{Datenbank}
Die Gruppe hat sich entschieden das Projekt auf Basis einer MySQL Datenbank mit PHP zu erstellen. Da ein Hoster über ein Team-Mitglied zur verfügung stand.
@ -225,7 +341,7 @@ Zur Visualisierung wurden RM und ERM mit Dia erstellt:
\section{Detailplanung}
\subsection{Benutzerführung}
Damit der Kunde sieht wie seine Webseite funktioniert wurde eine Benutzerführung in form von Flowdiagrammen zu jedem Typ von Kunden erstellt.
Damit der Kunde sieht wie seine Webseite funktioniert wurde ein Mockup zu den beiden Kundentypen erstellt.
\subsubsection{Nachfrage Firma}
\begin{figure}[H]
\begin{center}
@ -282,6 +398,9 @@ Da XML eine eigene Skript art ist mussten wir uns erst damit auseinandersetzen.
Diese Problemstellung haben wir komplett unterschätzt. Die Art und Programmierung für den Trigger eines Downloads mit PHP ist kompliziert. Durch ausprobieren und der Kombination von verschiedenen Lösungen aus dem Internet konnte es dann bewerkstelligt werden. \cite{ref5}
\subsection{Testing}
Das Testen der Funktionen wurde auf basis der Use-Case Diagramme durchgeführt. Dabei stellt jeder Usecase ein Testszenario dar. Diese Testszenarien wurden aufbauend auf der Agilen Entwicklung jeweils am ende des sprints als Revision angehängt und genau so wie das Diagramm es darstellt für den jeweiligen Benutzertypen durchgespielt.
Bei Falschinterpretationen oder Fehlern in der Programmierung wurde bilateral darauf eingegangen und das Problem durch eine iteration behoben.
Zu den Einzelnen Fehlern die behoben werden mussten findet man das Protokoll in der Abweichungsanalyse { \Large Link zu Kapitel Abweichungsanalsyse}
\newpage %-------------------------------------------------------------------
\begin{figure}[H]
@ -291,7 +410,7 @@ Diese Problemstellung haben wir komplett unterschätzt. Die Art und Programmieru
\begin{spreadtab}{{tabular}{ | l | c | c | c | l | }} \hline
@ Arbeitspaket & @ geplant & @ geleistet & @ delta & @ Erklärung \\ \hline
@ Projekt Management & 1 & 1 & & \\
@ Dokumentation & 3 & 6 & 3 & @ \begin{scriptsize}LaTeX verstehen und einrichten\end{scriptsize}\\
@ Dokumentation & 13 & 18 & 3 & @ \begin{scriptsize}LaTeX verstehen und einrichten\end{scriptsize}\\
@ Vision & 1 & 1 & & \\
@ UserStories & 3 & 3 & & \\
@ Benutzerführung & 2 & 3 & 1 & @ \begin{scriptsize}gezeichnet mit Libreoffice\end{scriptsize}\\
@ -304,9 +423,10 @@ Diese Problemstellung haben wir komplett unterschätzt. Die Art und Programmieru
@ Angebote für eigene Nachfr. deakt. & 2 & 4 & 2 & \\
@ suche erstellt & 8 & 6 & 2 & \\
@ XML übersetzer & 8 & 12 & 2 & @ \begin{scriptsize}musste erst XML verstehen.\end{scriptsize}\\
@ Filedownload & 0 & 10 & 10 & @ \begin{scriptsize}Aufgabe unterschätzt.\end{scriptsize}\\
@ Filedownload &3 & 10 & 10 & @ \begin{scriptsize}Aufgabe unterschätzt.\end{scriptsize}\\
@ Dokumentation zusammenführen & 2 & 12 & 10 & @ \begin{scriptsize}Aufgabe unterschätzt.\end{scriptsize}\\
\hline \hline
@ Total & sum(b2:b15) & sum(c2:c15) & sum(d2:d15) & @ h \\ \hline
@ Total & sum(b2:b16) & sum(c2:c16) & sum(d2:d16) & @ h \\ \hline
\end{spreadtab}
\caption{Zeitaufwand}
\label{tab:Zeitaufwand}
@ -315,8 +435,10 @@ Diese Problemstellung haben wir komplett unterschätzt. Die Art und Programmieru
\end{figure}
\subsection{Abweichungsanalyse}
\begin{itemize}
\item Die Angebotsabgabe Taste sollte gemäss Planung auf der gleichen Seite wie die Nachfragen stehen. Das konnte aufgrund fehlender Kenntnisse nicht so gelöst werden. Der Einfachheit halber wurde dazu eine Neue Seite erstellt. Das eigentliche Problem stellte sich heraus war, dass der Benötigte Schul-Stoff zu dem Zeitpunkt nicht behandelt war als wir diesen Sprint abhandelten.
\item
\end{itemize}