add pictures and fix various spelling errors
|
@ -11,7 +11,7 @@ werden können.
|
||||||
\subsection{Stakeholder}
|
\subsection{Stakeholder}
|
||||||
Folgende Stakeholder sind in diesem Projekt zu berücksichtigen:
|
Folgende Stakeholder sind in diesem Projekt zu berücksichtigen:
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Plattform Inhaber
|
\item Plattforminhaber
|
||||||
\item Standbetreiber
|
\item Standbetreiber
|
||||||
\item Marktbesucher
|
\item Marktbesucher
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
@ -20,7 +20,7 @@ Folgende Stakeholder sind in diesem Projekt zu berücksichtigen:
|
||||||
|
|
||||||
\subsubsection{Chancen}
|
\subsubsection{Chancen}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Zusammenhänge zwischen Programmierung und Datenbank Modelierung
|
\item Zusammenhänge zwischen Programmierung und Datenbank Modellierung
|
||||||
besser verstehen.
|
besser verstehen.
|
||||||
\item Erfahrungen im Projekt-Management vertiefen
|
\item Erfahrungen im Projekt-Management vertiefen
|
||||||
\item Umgang mit den Werkzeugen üben und verbessern
|
\item Umgang mit den Werkzeugen üben und verbessern
|
||||||
|
@ -51,14 +51,14 @@ späteren Zeitpunkt zum Verhängnis werden könnte.
|
||||||
\subsection{Wunschziele}
|
\subsection{Wunschziele}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Die Datenbank enthält alle statische Daten Wie
|
\item Die Datenbank enthält alle statische Daten Wie
|
||||||
etwa Länder, Städte, Postleizahlen, Standorte.
|
etwa Länder, Städte, Postleitzahlen, Standorte.
|
||||||
\item Die Datenbank enthält ein Rechtekonzept.
|
\item Die Datenbank enthält ein Rechtekonzept.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\newpage
|
\newpage
|
||||||
\section{User Stories}
|
\section{User Stories}
|
||||||
\subsection{Verwaltung}
|
\subsection{Verwaltung}
|
||||||
Als Plattforminaber möchte ich,
|
Als Plattforminhaber möchte ich,
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Kontrolle über die Anmeldungen haben.
|
\item Kontrolle über die Anmeldungen haben.
|
||||||
\item Standbetreiber verwalten können (Standort und Termine).
|
\item Standbetreiber verwalten können (Standort und Termine).
|
||||||
|
@ -88,7 +88,7 @@ Als festes Mitglied möchte ich,
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Nachfrager/ Marktbesucher}
|
\subsection{Nachfrager/ Marktbesucher}
|
||||||
Als Markbesucher möchte ich,
|
Als Marktbesucher möchte ich,
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item mich registrieren können.
|
\item mich registrieren können.
|
||||||
\item einen Überblick über die Anbieterprofile haben.
|
\item einen Überblick über die Anbieterprofile haben.
|
||||||
|
@ -171,7 +171,7 @@ Postconditions & User befindet sich im geschützten Bereich.\\
|
||||||
\hline
|
\hline
|
||||||
Normal Flow & 1. User füllt Login Form korrekt aus\\
|
Normal Flow & 1. User füllt Login Form korrekt aus\\
|
||||||
& 2. User quittiert Login\\
|
& 2. User quittiert Login\\
|
||||||
& 3. Applikation wechselt zum geschützen Bereich\\
|
& 3. Applikation wechselt zum geschützten Bereich\\
|
||||||
\hline
|
\hline
|
||||||
Alternative Flow & 1. User füllt Login Form mit falschen\\
|
Alternative Flow & 1. User füllt Login Form mit falschen\\
|
||||||
& Angaben aus\\
|
& Angaben aus\\
|
||||||
|
@ -345,7 +345,7 @@ um den Fortschritt im Auge zu behalten. \\ \hline
|
||||||
User Stories & Doku & 2 & 2 & 0 & \ \\ \hline
|
User Stories & Doku & 2 & 2 & 0 & \ \\ \hline
|
||||||
RM erstellen & Doku & 3 & 4 & 1 & Beim RM haben wir viel weniger Details
|
RM erstellen & Doku & 3 & 4 & 1 & Beim RM haben wir viel weniger Details
|
||||||
eingezeichnet sondern uns Hauptsächlich darauf beschränkt uns eine
|
eingezeichnet sondern uns Hauptsächlich darauf beschränkt uns eine
|
||||||
grobe Übersicht zu verschafen. \\ \hline
|
grobe Übersicht zu verschaffen \\ \hline
|
||||||
ERM erstellen & Doku & 4 & 12 & 8 & \ \\ \hline
|
ERM erstellen & Doku & 4 & 12 & 8 & \ \\ \hline
|
||||||
Testplan aufgebaut & Doku & 12 & 1 & -11 & \ \\ \hline
|
Testplan aufgebaut & Doku & 12 & 1 & -11 & \ \\ \hline
|
||||||
& & & & 0 & \ \\ \hline
|
& & & & 0 & \ \\ \hline
|
||||||
|
@ -399,7 +399,7 @@ Enthält die möglichen Anreden für Personen.
|
||||||
|
|
||||||
\textbf{cities / (Städte)}
|
\textbf{cities / (Städte)}
|
||||||
\newline
|
\newline
|
||||||
Enthält Städtenamen sowie die dazugehörige Postleizahl und einem
|
Enthält Städtenamen sowie die dazugehörige Postleitzahl und einem
|
||||||
Verweis zu welchem Land die jeweilige Stadt gehört.
|
Verweis zu welchem Land die jeweilige Stadt gehört.
|
||||||
|
|
||||||
\textbf{countries / (Länder)}
|
\textbf{countries / (Länder)}
|
||||||
|
@ -410,7 +410,7 @@ Enthält eine Liste mit Ländernamen.
|
||||||
\newline
|
\newline
|
||||||
Diese Tabelle enthält die Daten der Standorte wo die jeweiligen Märkte
|
Diese Tabelle enthält die Daten der Standorte wo die jeweiligen Märkte
|
||||||
abgehalten werden. Dabei wird auch erfasst wie viel Kapazität der
|
abgehalten werden. Dabei wird auch erfasst wie viel Kapazität der
|
||||||
jeweilige Standort hat damit mein ein überbuchen verhindern kann.
|
jeweilige Standort hat damit mein ein Überbuchen verhindern kann.
|
||||||
|
|
||||||
\textbf{members / (Mitglieder)}
|
\textbf{members / (Mitglieder)}
|
||||||
\newline
|
\newline
|
||||||
|
@ -436,7 +436,7 @@ werden können.
|
||||||
|
|
||||||
\textbf{commercials / (Werbung)}
|
\textbf{commercials / (Werbung)}
|
||||||
\newline
|
\newline
|
||||||
Diese Tabelle enthällt alle Daten zu Änderungen des Webauftritt eines
|
Diese Tabelle enthält alle Daten zu Änderungen des Webauftritt eines
|
||||||
Mitgliedes. Diese Tabelle wird benötigt damit sichergestellt werden
|
Mitgliedes. Diese Tabelle wird benötigt damit sichergestellt werden
|
||||||
kann das ein Mitglied nur nur die zugelassene Anzahl an Änderungen
|
kann das ein Mitglied nur nur die zugelassene Anzahl an Änderungen
|
||||||
beantragt.
|
beantragt.
|
||||||
|
@ -462,13 +462,13 @@ gewählt wurde sowie an welchem Tag der Kauf getätigt wurde.
|
||||||
\newline
|
\newline
|
||||||
Beinhaltet die Zeit wie lange die Probezeit ist damit diese nicht als
|
Beinhaltet die Zeit wie lange die Probezeit ist damit diese nicht als
|
||||||
ein Fixwert im Code abgelegt werden muss. Diese sollte es ermöglichen
|
ein Fixwert im Code abgelegt werden muss. Diese sollte es ermöglichen
|
||||||
das die Dauer der Probezeit auch nächträglich noch einfach angepasst
|
das die Dauer der Probezeit auch nachträglich noch einfach angepasst
|
||||||
werden kann.
|
werden kann.
|
||||||
|
|
||||||
\textbf{rents / (Mieten)}
|
\textbf{rents / (Mieten)}
|
||||||
\newline
|
\newline
|
||||||
Beinhaltet die Mieten welche ein Mitglied in der Probezeit getätigt
|
Beinhaltet die Mieten welche ein Mitglied in der Probezeit getätigt
|
||||||
hat. Dabei wird über den Mietspreis der Standort definiert der
|
hat. Dabei wird über den Mietpreis der Standort definiert der
|
||||||
gemietet wird und mit einem Datumsfeld wird angegeben an welchem Tag
|
gemietet wird und mit einem Datumsfeld wird angegeben an welchem Tag
|
||||||
der Platz reserviert wurde.
|
der Platz reserviert wurde.
|
||||||
|
|
||||||
|
@ -509,15 +509,27 @@ die Informationen aufgerufen und in der ``ListBox'' aufgezeigt.
|
||||||
Hier werden alle eingesetzten Klassen der Applikation vorgestellt
|
Hier werden alle eingesetzten Klassen der Applikation vorgestellt
|
||||||
und definiert.
|
und definiert.
|
||||||
|
|
||||||
|
Zu jeder Klasse gibt es eine passende Grafik welche ihre Methoden und
|
||||||
|
Attribute beschreibt. Nachfolgend habe wir eine Beispiel Grafik eingefügt
|
||||||
|
welche die Symbole und den Aufbau beschreibt.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics{diagrammes/example.png}
|
||||||
|
\caption{Beispiel Klassen}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\textbf{Programm}
|
\textbf{Programm}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Dient grundsätzlich als Eintrittspunkt der Applikation und hat sonst
|
Dient grundsätzlich als Eintrittspunkt der Applikation und hat sonst
|
||||||
keine grosse Funktion.
|
keine grosse Funktion.
|
||||||
|
|
||||||
\textbf{Helper}
|
\textbf{Helper}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Helper.cs dient dem Zweck, den Pfad der Datenbank nicht in jeder
|
Helper.cs dient dem Zweck, den Pfad der Datenbank nicht in jeder
|
||||||
Methode eingeben zu müssen. Daführ haben wir in dieser Klasse den
|
Methode eingeben zu müssen. Dafür haben wir in dieser Klasse den
|
||||||
Verbindungsaufbau durch den Configuration.Manager definiert. Den Pfad
|
Verbindungsaufbau durch den Configuration.Manager definiert. Den Pfad
|
||||||
zur Datenbank muss dadurch nur ein einziges Mal in App.config
|
zur Datenbank muss dadurch nur ein einziges Mal in App.config
|
||||||
definiert werden und kann dann durch die Helper.cs Klasse simpel
|
definiert werden und kann dann durch die Helper.cs Klasse simpel
|
||||||
|
@ -526,6 +538,7 @@ aufgerufen werden.
|
||||||
|
|
||||||
\textbf{LoginForm}
|
\textbf{LoginForm}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Diese Klasse wurde für das Registrieren und Einloggen des Benutzers
|
Diese Klasse wurde für das Registrieren und Einloggen des Benutzers
|
||||||
mit einem dazugehörigen GUI von uns erstellt. Dadurch können sich
|
mit einem dazugehörigen GUI von uns erstellt. Dadurch können sich
|
||||||
Benutzer durch das Eingeben der Email-Adresse und des Passwortes mit
|
Benutzer durch das Eingeben der Email-Adresse und des Passwortes mit
|
||||||
|
@ -538,8 +551,15 @@ der Datenbank aufzeigen. Den Verbindungsaufbau in die Datenbank mit
|
||||||
allen nötigen Funktion(Schreiben / Lesen) haben wir in die Klasse
|
allen nötigen Funktion(Schreiben / Lesen) haben wir in die Klasse
|
||||||
``DataAccess'' ausgelagert.
|
``DataAccess'' ausgelagert.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics{diagrammes/loginform.png}
|
||||||
|
\caption{LoginForm Klasse}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\textbf{Dashboard}
|
\textbf{Dashboard}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Auf dem Dashboard haben wir unseren Kern was Informationen herauslesen
|
Auf dem Dashboard haben wir unseren Kern was Informationen herauslesen
|
||||||
und wieder Eingeben belangt, erstellt. In dieser Klasse werden die aus
|
und wieder Eingeben belangt, erstellt. In dieser Klasse werden die aus
|
||||||
der Datenbank herausgelesenen Daten der ``locations'' und
|
der Datenbank herausgelesenen Daten der ``locations'' und
|
||||||
|
@ -551,47 +571,82 @@ kann. Den Verbindungsaufbau in die Datenbank mit allen nötigen
|
||||||
Funktion(Schreiben / Lesen) haben wir in die Klasse ``DataAccess''
|
Funktion(Schreiben / Lesen) haben wir in die Klasse ``DataAccess''
|
||||||
ausgelagert und vom GUI aus verankert.
|
ausgelagert und vom GUI aus verankert.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics[width=0.6\textwidth]{diagrammes/dashboard.png}
|
||||||
|
\caption{Dashboard Klasse}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\textbf{DataAccess}
|
\textbf{DataAccess}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Mit der DataAccess Klasse konnten wir nahezu alle Datenbank relevanten
|
Mit der DataAccess Klasse konnten wir nahezu alle Datenbank relevanten
|
||||||
Funktionen, die sonst in unseren GUI ausgeführt werden, in einer
|
Funktionen, die sonst in unseren GUI ausgeführt werden, in einer
|
||||||
einzigen Klasse abbilden. Darin haben wir den Aufruf der
|
einzigen Klasse abbilden. Darin haben wir den Aufruf der
|
||||||
Datenbanktabellen mit den dazu benötigten SQl - Befehlen ausgeführt.
|
Datenbanktabellen mit den dazu benötigten SQl - Befehlen ausgeführt.
|
||||||
Dadurch wird SQl- Code nur in dieser Klasse aufgerufen und verwendet.
|
Dadurch wird SQl- Code nur in dieser Klasse aufgerufen und verwendet.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics{diagrammes/dataaccess.png}
|
||||||
|
\caption{DataAccess Klasse}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\textbf{GetRents}
|
\textbf{GetRents}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
||||||
C\# ein Model der ``rents'' Tabelle erstellt die sie abbildet. Damit
|
C\# ein Modell der ``rents'' Tabelle erstellt die sie abbildet. Damit
|
||||||
nehmen wir jede Spalte der Tabelle entgegen. Danach werden mit der
|
nehmen wir jede Spalte der Tabelle entgegen. Danach werden mit der
|
||||||
``RentInfo'' Methode nur diejenigen Spalten der Tabelle für unser GUI
|
``RentInfo'' Methode nur diejenigen Spalten der Tabelle für unser GUI
|
||||||
abgerufen, die wir auch wirklich benötigen. Jedoch wird die ``RentInfo''
|
abgerufen, die wir auch wirklich benötigen. Jedoch wird die ``RentInfo''
|
||||||
Methode noch nicht benötigt, da wir Daten nur einfügen und nicht
|
Methode noch nicht benötigt, da wir Daten nur einfügen und nicht
|
||||||
herauslesen möchten.
|
herauslesen möchten.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics{diagrammes/getrents.png}
|
||||||
|
\caption{GetRents Klasse}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\textbf{GetMembers}
|
\textbf{GetMembers}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
||||||
C\# ein Model der ``members'' Tabelle erstellt die sie abbildet. Damit
|
C\# ein Modell der ``members'' Tabelle erstellt die sie abbildet. Damit
|
||||||
nehmen wir jede Spalte der Tabelle entgegen. Danach werden mit der
|
nehmen wir jede Spalte der Tabelle entgegen. Danach werden mit der
|
||||||
``MemberInfo'' Methode nur diejenigen Spalten der Tabelle für unser GUI
|
``MemberInfo'' Methode nur diejenigen Spalten der Tabelle für unser GUI
|
||||||
abgerufen, die wir auch wirklich benötigen,um die Login Daten zu
|
abgerufen, die wir auch wirklich benötigen,um die Login Daten zu
|
||||||
überprüfen.
|
überprüfen.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics{diagrammes/getmembers.png}
|
||||||
|
\caption{GetMembers Klasse}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\textbf{GetLocations}
|
\textbf{GetLocations}
|
||||||
\newline
|
\newline
|
||||||
|
|
||||||
Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
||||||
C\# ein Model der ``locations'' Tabelle erstellt die sie abbildet. Damit
|
C\# ein Modell der ``locations'' Tabelle erstellt die sie abbildet. Damit
|
||||||
nehmen wir jede Spalte der Tabelle entgegen. Danach werden mit der
|
nehmen wir jede Spalte der Tabelle entgegen. Danach werden mit der
|
||||||
``LocationInfo'' Methode nur diejenigen Spalten der Tabelle für unser
|
``LocationInfo'' Methode nur diejenigen Spalten der Tabelle für unser
|
||||||
GUI abgerufen, die wir auch wirklich benötigen.
|
GUI abgerufen, die wir auch wirklich benötigen.
|
||||||
|
|
||||||
|
\begin{figure}[H]
|
||||||
|
\centering
|
||||||
|
\includegraphics{diagrammes/getlocations.png}
|
||||||
|
\caption{GetLocations Klasse}
|
||||||
|
\end{figure}
|
||||||
|
|
||||||
\subsubsection{Problematik}
|
\subsubsection{Problematik}
|
||||||
|
|
||||||
- Verbindungsaufbau
|
- Verbindungsaufbau
|
||||||
|
|
||||||
- Insert Data
|
- Insert Data
|
||||||
|
|
||||||
-Datenvormatierung (Geburtstag)
|
- Datenformatierung (Geburtstag)
|
||||||
|
|
||||||
\subsubsection{Referenzen und Addons/ Packages}
|
\subsubsection{Referenzen und Addons/ Packages}
|
||||||
Mit Dapper \cite{dbcs6} entschieden wir uns, nachdem wir ein wenig
|
Mit Dapper \cite{dbcs6} entschieden wir uns, nachdem wir ein wenig
|
||||||
|
@ -671,7 +726,7 @@ Ausgeführt & 1. Suchbegriff eingeben
|
||||||
300 Testmarkt” erscheint & Suchresultat wird
|
300 Testmarkt” erscheint & Suchresultat wird
|
||||||
Angezeigt. & Zuerst wurde mit “equal” gesucht was es sehr
|
Angezeigt. & Zuerst wurde mit “equal” gesucht was es sehr
|
||||||
Schwierig machte zu suchen.
|
Schwierig machte zu suchen.
|
||||||
Wurd zu “like” korrigiert.
|
Wurde zu “like” korrigiert.
|
||||||
|
|
||||||
Erfolgreich durchgeführt.
|
Erfolgreich durchgeführt.
|
||||||
27.07.2017 A.Z. \\ \hline
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
@ -697,8 +752,8 @@ Aktualisiert und gibt
|
||||||
Die in TC-08 getätigte
|
Die in TC-08 getätigte
|
||||||
Miete aus. & Mietliste wurde
|
Miete aus. & Mietliste wurde
|
||||||
Befüllt. & \\ \hline
|
Befüllt. & \\ \hline
|
||||||
TC-10 & & & & & & & \ \\ \hline
|
% TC-10 & & & & & & & \ \\ \hline
|
||||||
TC-11 & & & & & & & \\ \hline
|
% TC-11 & & & & & & & \\ \hline
|
||||||
\caption{Testfälle}
|
\caption{Testfälle}
|
||||||
\end{longtable}
|
\end{longtable}
|
||||||
%% -- end test case table --
|
%% -- end test case table --
|
||||||
|
|
After Width: | Height: | Size: 8.6 KiB |
After Width: | Height: | Size: 6.7 KiB |
After Width: | Height: | Size: 4.7 KiB |
|
@ -0,0 +1,12 @@
|
||||||
|
@startuml
|
||||||
|
class Beispiel {
|
||||||
|
+ public Attribute
|
||||||
|
~ internal Attribute
|
||||||
|
- private AttribuTe
|
||||||
|
# protected Attribute
|
||||||
|
+ public Method1()
|
||||||
|
~ internal Method2()
|
||||||
|
- private Method3()
|
||||||
|
# protected Method4()
|
||||||
|
}
|
||||||
|
@enduml
|
After Width: | Height: | Size: 3.8 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 4.5 KiB |
After Width: | Height: | Size: 3.9 KiB |