2017-05-11 20:07:35 +02:00
|
|
|
\section{Situationsanalyse}
|
2017-05-06 17:30:10 +02:00
|
|
|
\subsection{Vision}
|
2017-05-13 14:11:35 +02:00
|
|
|
Wir möchten eine Plattform für Markthändler schaffen welche es ihnen
|
|
|
|
ermöglicht geeignete Standflächen an attraktiven Standorten zu mieten.
|
|
|
|
Zusätzlich sollen sie auf einer Plattform die Möglichkeit haben sich
|
|
|
|
zu präsentieren. Diese Plattform soll interessierten Kunden einen
|
|
|
|
Überblick über die verschieden Anbieter geben und somit Neugierde
|
2017-07-06 13:18:35 +02:00
|
|
|
wecken. Dies alles soll auf mit möglichst wenig Aufwand verwaltet
|
|
|
|
werden können.
|
2017-05-13 14:11:35 +02:00
|
|
|
|
2017-05-06 17:30:10 +02:00
|
|
|
\subsection{Stakeholder}
|
2017-07-17 23:09:54 +02:00
|
|
|
Folgende Stakeholder sind in diesem Projekt zu berücksichtigen:
|
2017-05-25 08:59:24 +02:00
|
|
|
\begin{itemize}
|
2017-07-17 22:00:09 +02:00
|
|
|
\item Plattform Inhaber
|
|
|
|
\item Standbetreiber
|
|
|
|
\item Marktbesucher
|
2017-06-21 13:40:45 +02:00
|
|
|
\end{itemize}
|
|
|
|
|
2017-05-25 09:53:39 +02:00
|
|
|
\subsection{Chancen und Risiken}
|
|
|
|
|
2017-06-24 13:52:54 +02:00
|
|
|
\subsubsection{Chancen}
|
2017-07-17 22:00:09 +02:00
|
|
|
\begin{itemize}
|
|
|
|
\item Zusammenhänge zwischen Programmierung und Datenbank Modelierung
|
|
|
|
besser verstehen.
|
|
|
|
\item Erfahrungen im Projekt-Management vertiefen
|
|
|
|
\item Umgang mit den Werkzeugen üben und verbessern
|
|
|
|
\end{itemize}
|
2017-06-24 13:52:54 +02:00
|
|
|
|
|
|
|
\subsubsection{Risiken}
|
2017-07-06 13:18:35 +02:00
|
|
|
Ein grosses Risiko ist das wir uns beim erarbeiten der Datenbank in
|
|
|
|
Details verlieren die nicht gefordert werden sowie unter Umständen
|
|
|
|
Dinge einbauen welche wir nicht genügend kennen was uns zu einem
|
|
|
|
späteren Zeitpunkt zum Verhängnis werden könnte.
|
2017-05-25 09:53:39 +02:00
|
|
|
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
|
|
|
\section{Zielsetzung}
|
|
|
|
|
|
|
|
\subsection{Mussziele}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Das Geschäftsmodell wurde in ein ERM umgewandelt.
|
|
|
|
\item Das ERM wurde in eine SQL-Server Datenbank umgesetzt.
|
|
|
|
\item Die Arbeit wurde mittels eines Testplans überprüft.
|
|
|
|
\item Die zur Verfügung stehenden Stunden sind in einer Planung auf
|
|
|
|
die Aufgaben zugeordnet. Abweichungen wurden mittels einer
|
|
|
|
Abweichungsanalyse aufgezeichnet.
|
|
|
|
\item Die Lösung wurde dokumentiert.
|
|
|
|
\item Eine Teilfunktion des Geschäftsmodell wurde in einer C\# Applikation
|
|
|
|
abgebildet.
|
|
|
|
\end{itemize}
|
|
|
|
|
|
|
|
\subsection{Wunschziele}
|
|
|
|
\begin{itemize}
|
|
|
|
\item Die Datenbank enthält alle statische Daten Wie
|
|
|
|
etwa Länder, Städte, Postleizahlen, Standorte.
|
|
|
|
\item Die Datenbank enthält ein Rechtekonzept.
|
|
|
|
\end{itemize}
|
|
|
|
|
|
|
|
\newpage
|
2017-05-10 17:44:52 +02:00
|
|
|
\section{User Stories}
|
2017-05-13 14:11:35 +02:00
|
|
|
\subsection{Verwaltung}
|
2017-07-17 23:09:54 +02:00
|
|
|
Als Plattforminaber möchte ich,
|
2017-05-11 20:07:35 +02:00
|
|
|
\begin{itemize}
|
2017-07-17 23:09:54 +02:00
|
|
|
\item Kontrolle über die Anmeldungen haben.
|
|
|
|
\item Standbetreiber verwalten können (Standort und Termine).
|
|
|
|
\item Qualitätschecks bei den Mitgliedern machen können.
|
|
|
|
\item Inspektoren bezahlen können.
|
|
|
|
\item die Rechnungen an die Mitglieder verwalten können.
|
|
|
|
\item die Kontrolle über die Anzahl der Auftrittsanpassungen haben.
|
|
|
|
\item Abonnemente verwalten können.
|
|
|
|
\item sichergestellt haben das provisorische Mitglieder sich nur
|
|
|
|
an einem Standort einen Platz reservieren kann.
|
2017-05-11 20:07:35 +02:00
|
|
|
\end{itemize}
|
2017-05-13 13:27:24 +02:00
|
|
|
|
2017-05-13 14:11:35 +02:00
|
|
|
\subsection{Anbieter provisorisches Mitglied}
|
2017-07-17 23:09:54 +02:00
|
|
|
Als provisorisches Mitglied möchte ich,
|
2017-05-11 20:07:35 +02:00
|
|
|
\begin{itemize}
|
2017-07-17 23:09:54 +02:00
|
|
|
\item mich registrieren können.
|
|
|
|
\item einen Standfläche mieten können.
|
|
|
|
\item einsehen können wie lange die Probezeit noch dauert.
|
2017-05-13 14:11:35 +02:00
|
|
|
\end{itemize}
|
|
|
|
|
|
|
|
\subsection{Anbieter festes Mitglied}
|
2017-07-17 23:09:54 +02:00
|
|
|
Als festes Mitglied möchte ich,
|
2017-05-13 14:11:35 +02:00
|
|
|
\begin{itemize}
|
2017-07-17 23:09:54 +02:00
|
|
|
\item Abonnement lösen können.
|
|
|
|
\item Standorte buchen können.
|
|
|
|
\item meinen Auftritt anpassen können.
|
2017-05-11 20:07:35 +02:00
|
|
|
\end{itemize}
|
2017-05-13 13:27:24 +02:00
|
|
|
|
2017-07-17 23:09:54 +02:00
|
|
|
\subsection{Nachfrager/ Marktbesucher}
|
|
|
|
Als Markbesucher möchte ich,
|
2017-05-11 20:07:35 +02:00
|
|
|
\begin{itemize}
|
2017-07-17 23:09:54 +02:00
|
|
|
\item mich registrieren können.
|
|
|
|
\item einen Überblick über die Anbieterprofile haben.
|
|
|
|
\item einen Überblick der Standorte und Termine der Märkte haben.
|
2017-05-11 20:07:35 +02:00
|
|
|
\end{itemize}
|
2017-05-13 13:27:24 +02:00
|
|
|
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
|
|
|
\section{Use Cases}
|
2017-07-27 10:22:02 +02:00
|
|
|
In den Nachfolgenden Sektionen werden die einzelnenen User Stories in
|
|
|
|
Use Cases detailierter beschrieben. Wobei das Use Case Diagramm nur
|
|
|
|
einen groben Überblick über die möglichen Szenarien innerhalb der
|
|
|
|
Applikation gibt.
|
2017-07-18 22:26:03 +02:00
|
|
|
|
2017-07-27 10:22:02 +02:00
|
|
|
Für die Funktionen welche wir in der C\# Applikation effektiv umgesetzt
|
|
|
|
haben, haben wir die Use Cases im Detail beschrieben.
|
2017-07-18 22:26:03 +02:00
|
|
|
\subsection{Use Case Diagramm}
|
|
|
|
|
|
|
|
\subsection{Use Cases}
|
|
|
|
|
2017-07-20 15:21:47 +02:00
|
|
|
%% -- Begining of Use Case Template --
|
2017-07-25 13:54:43 +02:00
|
|
|
\subsubsection{User Registration}
|
2017-07-25 23:37:59 +02:00
|
|
|
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{.25\textwidth}|p{.7\textwidth}|}
|
2017-07-18 22:26:03 +02:00
|
|
|
\hline
|
2017-07-20 19:32:53 +02:00
|
|
|
%begin title row
|
2017-07-25 13:54:43 +02:00
|
|
|
{\cellcolor[HTML]{C0C0C0} Identifier} + Name & {\cellcolor[HTML]{C0C0C0} 1.0 User Registration} \\ \hline
|
2017-07-20 19:32:53 +02:00
|
|
|
%end title row
|
2017-07-25 23:37:59 +02:00
|
|
|
Description & Der Use Case beschreibt die Registrierung\\
|
|
|
|
& eines neuen User Accounts.\\
|
|
|
|
\hline
|
|
|
|
Actors & User\\
|
|
|
|
\hline
|
|
|
|
Status & Freigegeben\\
|
|
|
|
\hline
|
|
|
|
Includes & -\\
|
|
|
|
\hline
|
|
|
|
Trigger & User möchte sich registrieren.\\
|
|
|
|
\hline
|
|
|
|
Preconditions & -\\
|
|
|
|
\hline
|
|
|
|
Postconditions & User hat sich einen Account erstellt.\\
|
|
|
|
\hline
|
|
|
|
Normal Flow & 1. User startet Registrierung\\
|
|
|
|
& 2. User füllt Form aus\\
|
|
|
|
& 3. User schliesst Registrierung ab\\
|
|
|
|
\hline
|
|
|
|
Alternative Flow & 1. User startet Registrierung\\
|
|
|
|
& 2. User füllt Form mit bereits vorhandener\\
|
|
|
|
& Email Adresse aus.\\
|
|
|
|
& 3. Applikation gibt Fehler aus\\
|
|
|
|
& 4. User verwendet einzigartige Email Adresse\\
|
|
|
|
& 5. User schliesst Registrierung ab\\
|
|
|
|
\hline
|
|
|
|
Notes & -\\
|
|
|
|
\hline
|
|
|
|
UC History & 1.0 Darft erstellt durch AZ\\
|
|
|
|
\hline
|
|
|
|
Author & A. Zweili \& I. Cadaroski\\
|
|
|
|
\hline
|
|
|
|
Date & 20. Juli 2017\\
|
|
|
|
\hline
|
2017-07-25 13:54:43 +02:00
|
|
|
\caption{1.0 User Registration}
|
2017-07-25 23:37:59 +02:00
|
|
|
\end{longtable}
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
2017-07-20 15:21:47 +02:00
|
|
|
%% -- End of Use Case Template --
|
2017-07-17 23:09:54 +02:00
|
|
|
|
2017-07-25 13:54:43 +02:00
|
|
|
%% -- Begining of Use Case Template --
|
|
|
|
\subsubsection{User Login}
|
2017-07-25 23:37:59 +02:00
|
|
|
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{.25\textwidth}|p{.7\textwidth}|}
|
2017-07-25 13:54:43 +02:00
|
|
|
\hline
|
|
|
|
%begin title row
|
|
|
|
{\cellcolor[HTML]{C0C0C0} Identifier} + Name & {\cellcolor[HTML]{C0C0C0} 1.1 User Login} \\ \hline
|
|
|
|
%end title row
|
2017-07-25 23:37:59 +02:00
|
|
|
Description & Der Use Case beschreibt den Login eines\\
|
|
|
|
& Users.\\
|
|
|
|
\hline
|
|
|
|
Actors & User\\
|
|
|
|
\hline
|
|
|
|
Status & Freigegeben\\
|
|
|
|
\hline
|
|
|
|
Includes & -\\
|
|
|
|
\hline
|
|
|
|
Trigger & User möchte sich einloggen\\
|
|
|
|
\hline
|
|
|
|
Preconditions & UC 1.0 erfolgreich abgeschlossen\\
|
|
|
|
\hline
|
|
|
|
Postconditions & User befindet sich im geschützten Bereich.\\
|
|
|
|
\hline
|
|
|
|
Normal Flow & 1. User füllt Login Form korrekt aus\\
|
|
|
|
& 2. User quittiert Login\\
|
|
|
|
& 3. Applikation wechselt zum geschützen Bereich\\
|
|
|
|
\hline
|
|
|
|
Alternative Flow & 1. User füllt Login Form mit falschen\\
|
|
|
|
& Angaben aus\\
|
|
|
|
& 2. Applikation gibt einen Error aus\\
|
|
|
|
\hline
|
|
|
|
Notes & -\\
|
|
|
|
\hline
|
|
|
|
UC History & 1.0 Darft erstellt durch AZ\\
|
|
|
|
\hline
|
|
|
|
Author & A. Zweili \& I. Cadaroski\\
|
|
|
|
\hline
|
|
|
|
Date & 20. Juli 2017\\
|
|
|
|
\hline
|
2017-07-25 13:54:43 +02:00
|
|
|
\caption{1.1 User Login}
|
2017-07-25 23:37:59 +02:00
|
|
|
\end{longtable}
|
2017-07-25 13:54:43 +02:00
|
|
|
\newpage
|
|
|
|
%% -- End of Use Case Template --
|
|
|
|
|
|
|
|
%% -- Begining of Use Case Template --
|
|
|
|
\subsubsection{Standorte begutachten}
|
2017-07-25 23:37:59 +02:00
|
|
|
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{.25\textwidth}|p{.7\textwidth}|}
|
2017-07-25 13:54:43 +02:00
|
|
|
\hline
|
|
|
|
%begin title row
|
|
|
|
{\cellcolor[HTML]{C0C0C0} Identifier} + Name & {\cellcolor[HTML]{C0C0C0} 2.0 Standorte begutachten} \\ \hline
|
|
|
|
%end title row
|
2017-07-25 23:37:59 +02:00
|
|
|
Description & Der Use Case beschreibt das Betrachten der\\
|
|
|
|
& Standorte.\\
|
|
|
|
\hline
|
|
|
|
Actors & User\\
|
|
|
|
\hline
|
|
|
|
Status & Freigegeben\\
|
|
|
|
\hline
|
|
|
|
Includes & -\\
|
|
|
|
\hline
|
|
|
|
Trigger & User möchte Standort Details einsehen.\\
|
|
|
|
\hline
|
|
|
|
Preconditions & UC 1.1 erfolgreich abgeschlossen\\
|
|
|
|
\hline
|
|
|
|
Postconditions & -\\
|
|
|
|
\hline
|
|
|
|
Normal Flow & 1. User wählt einen Standort aus\\
|
|
|
|
& 2. Die Applikation gibt die Details zum\\
|
|
|
|
& ausgewählten Standort aus.\\
|
|
|
|
\hline
|
|
|
|
Alternative Flow & -\\
|
|
|
|
\hline
|
|
|
|
Notes & -\\
|
|
|
|
\hline
|
|
|
|
UC History & 1.0 Darft erstellt durch AZ\\
|
|
|
|
\hline
|
|
|
|
Author & A. Zweili \& I. Cadaroski\\
|
|
|
|
\hline
|
|
|
|
Date & 20. Juli 2017\\
|
|
|
|
\hline
|
2017-07-25 13:54:43 +02:00
|
|
|
\caption{2.0 Standorte begutachten}
|
2017-07-25 23:37:59 +02:00
|
|
|
\end{longtable}
|
2017-07-25 13:54:43 +02:00
|
|
|
\newpage
|
|
|
|
%% -- End of Use Case Template --
|
|
|
|
|
|
|
|
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
2017-05-13 15:22:05 +02:00
|
|
|
\begin{landscape}
|
2017-05-11 20:07:35 +02:00
|
|
|
\section{Stundenplanung}
|
2017-07-20 19:32:53 +02:00
|
|
|
|
|
|
|
%% -- start Stundenplanung table --
|
|
|
|
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{4cm}|p{2.1cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{7cm}|}
|
2017-05-11 20:18:53 +02:00
|
|
|
\hline
|
2017-07-20 19:32:53 +02:00
|
|
|
%begin title row
|
|
|
|
{\cellcolor[HTML]{C0C0C0}Aktivität} & {\cellcolor[HTML]{C0C0C0}Definition}
|
|
|
|
\footnote{Definition Arbeit ist grundlegend in Dokumentation (Doku) der Lösung
|
|
|
|
und erarbeiten des Codes (Code) der dazugehörigen Funktionen aufgebaut} &
|
|
|
|
{\cellcolor[HTML]{C0C0C0}Planung} & {\cellcolor[HTML]{C0C0C0}Leistung} &
|
|
|
|
{\cellcolor[HTML]{C0C0C0}Differenz} & {\cellcolor[HTML]{C0C0C0}Erklärung} \\ \hline
|
|
|
|
%endtitle row
|
|
|
|
|
|
|
|
Projekt Management & Doku & 10 & 17.58 & 7.58 & Nach dem definieren der
|
|
|
|
Meetings wurde uns schnell bewusst, dass eine Absprache alle 2 Wochen Nötig ist,
|
|
|
|
um den Fortschritt im Auge zu behalten. \\ \hline
|
|
|
|
Dokumentation & Doku & 25 & 30 & 5 & \ \\ \hline
|
|
|
|
Vision & Doku & & & 0 & \ \\ \hline
|
|
|
|
User Stories & Doku & 2 & 2 & 0 & \ \\ \hline
|
|
|
|
RM erstellen & Doku & 3 & 4 & 1 & Beim RM haben wir viel weniger Details
|
|
|
|
eingezeichnet sondern uns Hauptsächlich darauf beschränkt uns eine
|
|
|
|
grobe Übersicht zu verschafen. \\ \hline
|
|
|
|
ERM erstellen & Doku & 4 & 12 & 8 & \ \\ \hline
|
|
|
|
Testplan aufgebaut & Doku & 12 & 1 & -11 & \ \\ \hline
|
|
|
|
& & & & 0 & \ \\ \hline
|
|
|
|
SQL Scripts erstellen & Code & 7 & 7.9 & 0.9 & Das erstellen der Testdaten
|
|
|
|
Scripts hat etwas mehr Zeit gebraucht als erwartet. Insbesondere da wir
|
|
|
|
zuerst versucht Haben die Länder und Städte Listen bereits komplett zu
|
|
|
|
erstellen. \\ \hline
|
|
|
|
& & & & 0 & 0 \\ \hline
|
|
|
|
Frontend erstellen & Code & 25 & 16 & -9 & -25 \\ \hline
|
|
|
|
Datenbankverbindung & & 2 & 4 & 2 & \ \\ \hline
|
|
|
|
GUI Planung + Erstellen & & 2 & 2 & 0 & \ \\ \hline
|
|
|
|
Konzept des Aufbaus & & & & 0 & \ \\ \hline
|
|
|
|
Standort-Abfrage & & 4 & 9 & 5 & \ \\ \hline
|
|
|
|
Rent-Reservation-Eingabe & & & & 0 & \ \\ \hline
|
|
|
|
Rent-Abfrage & & & & 0 & \ \\ \hline
|
|
|
|
Coding & Code & 16 & 24 & 8 & \ \\ \hline
|
|
|
|
& & & & 0 & \ \\ \hline
|
|
|
|
Testplan durchgeführt & Doku & 30 & & -30 & \ \\ \hline
|
|
|
|
Total & & 142 & 129.48 & & \\ \hline
|
|
|
|
& & & & & \\ \hline
|
|
|
|
\caption{Stundenplanung}
|
2017-07-20 17:05:09 +02:00
|
|
|
\end{longtable}
|
2017-07-20 19:32:53 +02:00
|
|
|
%% -- end Stundenplanung table --
|
2017-05-13 15:22:05 +02:00
|
|
|
\end{landscape}
|
|
|
|
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
2017-05-25 08:59:24 +02:00
|
|
|
\section{Zusammenarbeit}
|
|
|
|
\subsection{Lösungsvarianten}
|
|
|
|
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
2017-05-25 08:59:24 +02:00
|
|
|
\section{Coding}
|
|
|
|
|
2017-05-25 09:53:39 +02:00
|
|
|
\subsection{RM}
|
|
|
|
|
|
|
|
\subsection{ERM}
|
|
|
|
\subsubsection{Entitäten}
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
In dieser Sektion werden die Entitäten der Datenbank kurz beschrieben
|
2017-06-24 13:47:26 +02:00
|
|
|
damit das ERM besser verstanden werden kann. Dabei wird zuerst der
|
|
|
|
Name in der Datenbank aufgelistet gefolgt von der deutschen
|
|
|
|
Übersetzung.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{persons / (Personen)}
|
|
|
|
\newline
|
|
|
|
Sind die Repräsentation einer realen Person in der Datenbank. Hier
|
|
|
|
werden auch die Adressdaten eines Mitgliedes gespeichert.
|
|
|
|
|
|
|
|
\textbf{salutation / (Anreden)}
|
|
|
|
\newline
|
|
|
|
Enthält die möglichen Anreden für Personen.
|
|
|
|
|
|
|
|
\textbf{cities / (Städte)}
|
|
|
|
\newline
|
2017-07-20 22:34:15 +02:00
|
|
|
Enthält Städtenamen sowie die dazugehörige Postleizahl und einem
|
|
|
|
Verweis zu welchem Land die jeweilige Stadt gehört.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{countries / (Länder)}
|
|
|
|
\newline
|
|
|
|
Enthält eine Liste mit Ländernamen.
|
|
|
|
|
|
|
|
\textbf{locations / (Standorte)}
|
|
|
|
\newline
|
|
|
|
Diese Tabelle enthält die Daten der Standorte wo die jeweiligen Märkte
|
2017-06-24 13:47:26 +02:00
|
|
|
abgehalten werden. Dabei wird auch erfasst wieviel Kapazität der
|
|
|
|
jeweilige Standort hat damit mein ein überbuchen verhindern kann.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{members / (Mitglieder)}
|
|
|
|
\newline
|
|
|
|
Sind die eigentlichen User im System. In der Regel verweisen sie auf
|
|
|
|
eine reale Person können zu Testzwecken aber auch ohne eine reale
|
2017-06-24 13:47:26 +02:00
|
|
|
Person im Hintergrund angelegt werden. Diese Entität wird dabei auch
|
|
|
|
mit den jeweiligen Käufen verbunden damit man nachvollziehen kann wer
|
2017-07-20 22:33:17 +02:00
|
|
|
diese getätigt hat. Hier wird auch gespeichert ob das Mitglied die
|
|
|
|
notwendigen Dokumente unterzeichnet und die Kreditüberprüfung bestanden
|
|
|
|
hat.
|
2017-06-24 13:47:26 +02:00
|
|
|
|
2017-06-21 13:40:45 +02:00
|
|
|
\textbf{member\_status / (Mitgliedsstatus)}
|
|
|
|
\newline
|
2017-06-24 13:47:26 +02:00
|
|
|
Die Mitgliedsstatus Tabelle enthält die möglichen Stati die ein
|
|
|
|
Mitglied haben kann. Dabei werden hier auch Mitglieder Stati wie
|
|
|
|
Mitarbeiter oder Admin erfasst da es für die Datenbank keinen
|
|
|
|
Unterschied macht welche Funktion ein Mitglied hat.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{subscribtions / (Abonnemente)}
|
|
|
|
\newline
|
|
|
|
Beschreiben die Abonnementsarten welche von den Mitgliedern gekauft
|
|
|
|
werden können.
|
|
|
|
|
|
|
|
\textbf{commercials / (Werbung)}
|
|
|
|
\newline
|
2017-06-24 13:47:26 +02:00
|
|
|
Diese Tabelle enthällt alle Daten zu Änderungen des Webauftritt eines
|
|
|
|
Mitgliedes. Diese Tabelle wird benötigt damit sichergestellt werden
|
|
|
|
kann das ein Mitglied nur nur die zugelassene Anzahl an Änderungen
|
|
|
|
beantragt.
|
|
|
|
|
|
|
|
Je nach Kundenwunsch könnte man diese noch erweitern um zusätzliche
|
|
|
|
Daten zu erhalten. Etwa eine Überprüfung auf die Grösse der Änderungen
|
|
|
|
um zu überprüfen wie fest die Funktion von den Mitgliedern genutzt
|
|
|
|
wird.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{quality\_checks / (Qualitätschecks)}
|
|
|
|
\newline
|
|
|
|
Beschreibt die Beziehung zwischen zwei Mitglieder wobei eines der
|
|
|
|
Mitglieder der Prüfer und ein anderes Mitglied der Geprüfte ist.
|
2017-06-24 13:47:26 +02:00
|
|
|
Zusätzlich wird erfasst an welchem Tag der Check geplant ist und Ob
|
|
|
|
der Check bestanden wurde.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{subscription\_orders / (Abonnementsbestellungen)}
|
|
|
|
\newline
|
2017-06-24 13:47:26 +02:00
|
|
|
Enthält die Abokäufe die ein Mitglied macht welcher Standort dabei
|
|
|
|
gewählt wurde sowie an welchem Tag der Kauf getätigt wurde.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{trial\_period / (Probezeit)}
|
|
|
|
\newline
|
|
|
|
Beinhaltet die Zeit wie lange die Probezeit ist damit diese nicht als
|
2017-06-24 13:47:26 +02:00
|
|
|
ein Fixwert im Code abgelegt werden muss. Diese sollte es ermöglichen
|
|
|
|
das die Dauer der Probezeit auch nächträglich noch einfach angepasst
|
|
|
|
werden kann.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{rents / (Mieten)}
|
|
|
|
\newline
|
2017-06-24 13:47:26 +02:00
|
|
|
Beinhaltet die Mieten welche ein Mitglied in der Probezeit getätigt
|
|
|
|
hat. Dabei wird über den Mietspreis der Standort definiert der
|
|
|
|
gemietet wird und mit einem Datumsfeld wird angegeben an welchem Tag
|
|
|
|
der Platz reserviert wurde.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
|
|
|
\textbf{rent\_prices / (Mietpreise)}
|
|
|
|
\newline
|
2017-07-06 13:18:35 +02:00
|
|
|
Diese weisst jedem Standort einen Preis zu. Dies ermöglicht es die
|
|
|
|
Preise für jeden Standort flexibel zu halten und den regionalen
|
|
|
|
Interessensgruppen anzupassen.
|
2017-06-21 13:40:45 +02:00
|
|
|
|
2017-07-06 13:18:35 +02:00
|
|
|
\subsection{C\#}
|
2017-07-03 19:26:35 +02:00
|
|
|
|
2017-07-06 13:18:35 +02:00
|
|
|
In dieser Sektion wird das Verarbeiten einer kleiner Funktion
|
|
|
|
beschrieben, in der wir gewisse Segmente unserer Datenbank abrufen und
|
|
|
|
bearbeiten können. Damit zeigen wir die Funktionalität und
|
|
|
|
Verarbeitung unsere Datenbank auf.
|
2017-07-03 19:26:35 +02:00
|
|
|
|
|
|
|
\subsubsection{Connection}
|
|
|
|
|
2017-07-21 08:06:06 +02:00
|
|
|
Um die Verbindung ( connectionstring ) abrufen zu können, erstellen
|
|
|
|
wir eine « helper» Klasse. Darin haben wir den Verbindungspfad
|
|
|
|
definiert der beim Verbindungsaufbau in App.config aufgerufen wird.
|
2017-07-20 21:03:03 +02:00
|
|
|
Den definitiven (connectionstring) haben wir in «App.config» bestimmt.
|
2017-07-20 20:24:13 +02:00
|
|
|
|
2017-07-03 19:26:35 +02:00
|
|
|
|
|
|
|
\subsubsection{GUI}
|
|
|
|
|
2017-07-21 08:06:06 +02:00
|
|
|
Das GUI wurde beim aufbauen des Projektes als «Windows Form
|
|
|
|
Application» gestartet und «Dashboard» genannt. Nach dem Anpassen der
|
|
|
|
Grösse, haben wir eine «ListBox» eingesetzt und sie umbenannt. Sie
|
|
|
|
dient dazu, zukünftig gesuchte Daten darin aufzuführen. Um die
|
|
|
|
gesuchten Daten einzugeben,haben wir danach eine «TextBox» eingefügt.
|
|
|
|
Sobald die gesuchten Daten in der «TextBox» eingegeben wurden, werden
|
|
|
|
die Informationen aufgerufen und in der «ListBox» aufgezeigt.
|
2017-07-20 20:24:13 +02:00
|
|
|
|
2017-07-03 19:26:35 +02:00
|
|
|
|
|
|
|
\subsubsection{Datenverarbeitung}
|
|
|
|
|
2017-07-21 08:06:06 +02:00
|
|
|
Um die benötigten Daten von der Datenbank hinzuzufügen oder
|
|
|
|
zurückzuschicken, brauchen wir ein Model, in welches Daten eingefügt
|
|
|
|
werden können. Hierfür erstellten wir eine neue Klasse, die wir
|
|
|
|
«cities» nennen und die Struktur dieser Tabelle aus der Datenbank
|
|
|
|
abbilden. In der Klasse « dataaccess» bauen wir eine Methode auf, mit
|
|
|
|
der wir die Daten als Liste mit einer neuen Verbindung abrufen(und
|
|
|
|
danach wieder schliessen) können und haben die «ListBox» in der
|
|
|
|
«Dashboard» Klasse damit verbunden. Um die Verbindung zur « listBox»
|
|
|
|
zu vervollständigen, haben wir in der «cities» Klasse die Lese-
|
|
|
|
Eigenschaft «Fullinfo» eingesetzt, um nur die gewollten Daten
|
|
|
|
abzurufen.
|
2017-07-20 20:24:13 +02:00
|
|
|
|
2017-07-21 08:06:06 +02:00
|
|
|
Mit einem connection.Query Funktion, haben wir wie in einer SQL-
|
|
|
|
Datenbank Funktionk, danach die Daten in der Klasse «dataaccess»
|
|
|
|
abgefragt.
|
2017-07-20 20:24:13 +02:00
|
|
|
|
|
|
|
|
2017-07-03 19:26:35 +02:00
|
|
|
|
|
|
|
\subsubsection{Problematik}
|
2017-07-20 20:24:13 +02:00
|
|
|
-Verbindungsaufbau
|
|
|
|
|
2017-07-20 22:33:17 +02:00
|
|
|
-Insert Data
|
2017-07-20 20:24:13 +02:00
|
|
|
|
|
|
|
-Datenvormatierung (Geburtstag)
|
2017-07-03 19:26:35 +02:00
|
|
|
|
2017-07-20 20:24:13 +02:00
|
|
|
\subsubsection{Referenzen und Addons}
|
2017-07-26 00:08:03 +02:00
|
|
|
Mit Dapper \cite{dbcs6} entschieden wir uns, nachdem wir ein wenig
|
|
|
|
nachgeforscht haben und wir auf Stack Overflow fündig wurden. Da auf
|
|
|
|
dieser Webseite Dapper genutzt wird und wir bisher immer gute
|
|
|
|
Erfahrungen mit Stack Overflow hatten, schien die Entscheidung
|
|
|
|
einfach.
|
2017-07-21 08:06:06 +02:00
|
|
|
|
2017-07-20 20:24:13 +02:00
|
|
|
\subsubsection{Referenzen}
|
|
|
|
-using System.Configuration;
|
|
|
|
-using Dapper;
|
2017-07-21 08:06:06 +02:00
|
|
|
|
2017-07-20 20:24:13 +02:00
|
|
|
\subsubsection{Addons}
|
2017-07-03 19:26:35 +02:00
|
|
|
|
2017-07-18 22:26:03 +02:00
|
|
|
\newpage
|
2017-05-25 08:59:24 +02:00
|
|
|
\begin{landscape}
|
2017-07-18 22:26:03 +02:00
|
|
|
\section{Testfälle}
|
2017-07-20 19:32:53 +02:00
|
|
|
|
|
|
|
%% -- start Test Case table --
|
|
|
|
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{1.8cm}|p{2cm}|p{2.5cm}|p{2cm}|p{2cm}|p{2cm}|p{2.5cm}|p{2cm}|}
|
2017-05-25 08:59:24 +02:00
|
|
|
\hline
|
2017-07-20 19:32:53 +02:00
|
|
|
%begin title row
|
|
|
|
\cellcolor[HTML]{C0C0C0}Testcase ID & \cellcolor[HTML]{C0C0C0}Objektive &
|
|
|
|
\cellcolor[HTML]{C0C0C0}Precondition & \cellcolor[HTML]{C0C0C0}Steps &
|
|
|
|
\cellcolor[HTML]{C0C0C0}Testdata & \cellcolor[HTML]{C0C0C0}Expected Result &
|
|
|
|
\cellcolor[HTML]{C0C0C0}Postcondition & \cellcolor[HTML]{C0C0C0}Result \\ \hline
|
|
|
|
% end title row
|
|
|
|
TC-01 & & & & & & & \\ \hline
|
|
|
|
TC-02 & & & & & & & \\ \hline
|
|
|
|
TC-03 & & & & & & & \\ \hline
|
|
|
|
TC-04 & & & & & & & \\ \hline
|
|
|
|
TC-05 & & & & & & & \\ \hline
|
|
|
|
TC-06 & & & & & & & \\ \hline
|
|
|
|
TC-07 & & & & & & & \\ \hline
|
|
|
|
TC-08 & & & & & & & \\ \hline
|
|
|
|
TC-09 & & & & & & & \\ \hline
|
|
|
|
TC-10 & & & & & & & \\ \hline
|
|
|
|
TC-11 & & & & & & & \\ \hline
|
2017-07-20 17:05:09 +02:00
|
|
|
\caption{Testfälle}
|
2017-07-20 19:32:53 +02:00
|
|
|
\end{longtable}
|
|
|
|
%% -- end test case table --
|
2017-05-25 08:59:24 +02:00
|
|
|
\end{landscape}
|
2017-05-10 17:44:52 +02:00
|
|
|
%%% Local Variables:
|
|
|
|
%%% mode: latex
|
|
|
|
%%% TeX-master: "main"
|
|
|
|
%%% End:
|