Compare commits
No commits in common. "master" and "andreas" have entirely different histories.
20
README.md
|
@ -22,26 +22,6 @@ mehr verändert werden sollten. Ihre Funktionen sind dabei:
|
||||||
- titlepage.tex: Enthält nur den Inhalt des Titelbildes
|
- titlepage.tex: Enthält nur den Inhalt des Titelbildes
|
||||||
- bib.bib: Enthält die Quellen
|
- bib.bib: Enthält die Quellen
|
||||||
|
|
||||||
|
|
||||||
##### Installation
|
|
||||||
|
|
||||||
1. Das SQL Studio Projekt im Ordner "sql" öffnen. Anschliessend die SQL Scripts
|
|
||||||
entsprechend ihrer Nummerierung ausführen:
|
|
||||||
|
|
||||||
```
|
|
||||||
* setup_01_create_database.sql
|
|
||||||
* setup_02_create_table.sql
|
|
||||||
* setup_03_insert_data.sql
|
|
||||||
* setup_04_create_views.sql
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Das Visual Studio Projekt im Ordner
|
|
||||||
"csharp" öffnen.
|
|
||||||
|
|
||||||
3. Den Connection String in den Properties der Datei App.config anpassen.
|
|
||||||
|
|
||||||
4. Applikation kompilieren.
|
|
||||||
|
|
||||||
### Support
|
### Support
|
||||||
|
|
||||||
We don't provide any support for the content in this repository.
|
We don't provide any support for the content in this repository.
|
||||||
|
|
390
doku/content.tex
|
@ -4,7 +4,7 @@ Wir möchten eine Plattform für Markthändler schaffen welche es ihnen
|
||||||
ermöglicht geeignete Standflächen an attraktiven Standorten zu mieten.
|
ermöglicht geeignete Standflächen an attraktiven Standorten zu mieten.
|
||||||
Zusätzlich sollen sie auf einer Plattform die Möglichkeit haben sich
|
Zusätzlich sollen sie auf einer Plattform die Möglichkeit haben sich
|
||||||
zu präsentieren. Diese Plattform soll interessierten Kunden einen
|
zu präsentieren. Diese Plattform soll interessierten Kunden einen
|
||||||
Überblick über die verschiedenen Anbietern geben und somit Neugierde
|
Überblick über die verschieden Anbieter geben und somit Neugierde
|
||||||
wecken. Dies alles soll mit möglichst wenig Aufwand verwaltet
|
wecken. Dies alles soll mit möglichst wenig Aufwand verwaltet
|
||||||
werden können.
|
werden können.
|
||||||
|
|
||||||
|
@ -37,7 +37,7 @@ zum Projekt noch grafisch auf.
|
||||||
|
|
||||||
\subsubsection{Risiken}
|
\subsubsection{Risiken}
|
||||||
Ein grosses Risiko ist das wir uns beim Erarbeiten der Datenbank sowie
|
Ein grosses Risiko ist das wir uns beim Erarbeiten der Datenbank sowie
|
||||||
beim Schreiben der Applikation in Details verlieren die nicht
|
beim schreiben der Applikation in Details verlieren die nicht
|
||||||
gefordert werden. Sowie unter Umständen Dinge einbauen welche wir nicht
|
gefordert werden. Sowie unter Umständen Dinge einbauen welche wir nicht
|
||||||
genügend kennen. Dies könnte uns zu einem späteren Zeitpunkt zum Verhängnis
|
genügend kennen. Dies könnte uns zu einem späteren Zeitpunkt zum Verhängnis
|
||||||
werden.
|
werden.
|
||||||
|
@ -54,21 +54,21 @@ werden.
|
||||||
den Aufgaben zugeordnet. Abweichungen wurden mittels einer
|
den Aufgaben zugeordnet. Abweichungen wurden mittels einer
|
||||||
Abweichungsanalyse aufgezeichnet.
|
Abweichungsanalyse aufgezeichnet.
|
||||||
\item Die Lösung wurde dokumentiert.
|
\item Die Lösung wurde dokumentiert.
|
||||||
\item Eine Teilfunktion des Geschäftsmodells wurde in einer C\# Applikation
|
\item Eine Teilfunktion des Geschäftsmodell wurde in einer C\# Applikation
|
||||||
abgebildet.
|
abgebildet.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsection{Wunschziele}
|
\subsection{Wunschziele}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Die Datenbank enthält alle statischen Daten Wie
|
\item Die Datenbank enthält alle statische Daten Wie
|
||||||
etwa Länder, Städte, Postleitzahlen, 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}
|
||||||
User Stories sind eine in Alltagssprache geschriebenen
|
User Stories sind sind eine in Alltagssprache geschriebenen
|
||||||
Software-Anforderungen. Sie sind bewusst kurzgehalten und
|
Software-Anforderungen. Sie sind bewusst kurz gehalten und
|
||||||
beschreiben die Wünsche und Ziele der Rollen welche die
|
beschreiben die Wünsche und Ziele der Rollen welche die
|
||||||
Software verwenden.
|
Software verwenden.
|
||||||
|
|
||||||
|
@ -159,7 +159,6 @@ Wir haben uns dabei zu Beginn die folgenden drei möglichen Szenarien
|
||||||
Bei dieser Lösungsvariante würde der komplette Registrierungsprozess
|
Bei dieser Lösungsvariante würde der komplette Registrierungsprozess
|
||||||
abgebildet werden. Dabei würden auch die Adressdaten etc. der Person
|
abgebildet werden. Dabei würden auch die Adressdaten etc. der Person
|
||||||
erfasst werden.
|
erfasst werden.
|
||||||
|
|
||||||
\paragraph{Lösen eines Abonnements.}
|
\paragraph{Lösen eines Abonnements.}
|
||||||
|
|
||||||
Das Lösen eines Abonnements würde beinhalten das eine bestehende
|
Das Lösen eines Abonnements würde beinhalten das eine bestehende
|
||||||
|
@ -268,7 +267,7 @@ Notes & -\\
|
||||||
UC History & 1.0 Draft erstellt durch AZ\\
|
UC History & 1.0 Draft erstellt durch AZ\\
|
||||||
& 1.1 kleinere Anpassungen durch AZ\\
|
& 1.1 kleinere Anpassungen durch AZ\\
|
||||||
\hline
|
\hline
|
||||||
Autor & A. Zweili \& I. Cadaroski\\
|
Author & A. Zweili \& I. Cadaroski\\
|
||||||
\hline
|
\hline
|
||||||
Date & 24. August 2017\\
|
Date & 24. August 2017\\
|
||||||
\hline
|
\hline
|
||||||
|
@ -342,13 +341,13 @@ Date & 24. August 2017\\
|
||||||
\hline
|
\hline
|
||||||
Normal Flow & 1. User wählt einen Standort aus\\
|
Normal Flow & 1. User wählt einen Standort aus\\
|
||||||
& 2. User wählt das Datum aus an dem er den Standort gerne mieten möchte.\\
|
& 2. User wählt das Datum aus an dem er den Standort gerne mieten möchte.\\
|
||||||
& 3. User bestätigt die Miete mit einem Klick auf dem Insert Button.\\
|
& 3. User bestätigt die Miete mit einem Klick auf den Insert Button.\\
|
||||||
\hline
|
\hline
|
||||||
Alternative Flow
|
Alternative Flow
|
||||||
& \textbf{Der Alternative Flow wurde in der Applikation nicht umgesetzt.}\\
|
& \textbf{Der Alternative Flow wurde in der Applikation nicht umgesetzt.}\\
|
||||||
& 1. User wählt einen Standort aus\\
|
& 1. User wählt einen Standort aus\\
|
||||||
& 2. User wählt das Datum an dem er den Standort gerne mieten möchte.\\
|
& 2. User wählt das Datum an dem er den Standort gerne mieten möchte.\\
|
||||||
& 3. User bestätigt die Miete mit Klick auf dem Insert Button.\\
|
& 3. User bestätigt die Miete mit klick auf den Insert Button.\\
|
||||||
& 4. Die Applikation meldet zurück das der Standort an diesem Datum\\
|
& 4. Die Applikation meldet zurück das der Standort an diesem Datum\\
|
||||||
& bereits besetzt ist.\\
|
& bereits besetzt ist.\\
|
||||||
\hline
|
\hline
|
||||||
|
@ -415,100 +414,43 @@ Date & 24. August 2017\\
|
||||||
\begin{landscape}
|
\begin{landscape}
|
||||||
\section{Stundenplanung}
|
\section{Stundenplanung}
|
||||||
|
|
||||||
Die grössten Differenzen in unserer Planung sind der C\# Applikation
|
|
||||||
nachzuführen. Da wir in diesem Aspekt noch nicht die nötige Erfahrung
|
|
||||||
besitzen, musste sehr viel Zeit in Wissensbeschaffung investiert
|
|
||||||
werden.
|
|
||||||
|
|
||||||
|
|
||||||
%% -- start Stundenplanung table --
|
%% -- start Stundenplanung table --
|
||||||
\footnotesize
|
\footnotesize
|
||||||
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{4cm}|p{2.1cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{7cm}|}
|
\begin{longtable}{|>{\columncolor[HTML]{EFEFEF}}p{4cm}|p{2.1cm}|p{1.8cm}|p{1.8cm}|p{1.8cm}|p{7cm}|}
|
||||||
\hline
|
\hline
|
||||||
%begin title row
|
%begin title row
|
||||||
{\cellcolor[HTML]{C0C0C0}\textbf{Aktivität}} &
|
{\cellcolor[HTML]{C0C0C0}Aktivität} & {\cellcolor[HTML]{C0C0C0}Definition}
|
||||||
{\cellcolor[HTML]{C0C0C0}\textbf{Definition}}
|
|
||||||
\footnote{Definition Arbeit ist grundlegend in Dokumentation (Doku) der Lösung
|
\footnote{Definition Arbeit ist grundlegend in Dokumentation (Doku) der Lösung
|
||||||
und erarbeiten des Codes (Code) der dazugehörigen Funktionen aufgebaut} &
|
und erarbeiten des Codes (Code) der dazugehörigen Funktionen aufgebaut} &
|
||||||
{\cellcolor[HTML]{C0C0C0}\textbf{Planung}} &
|
{\cellcolor[HTML]{C0C0C0}Planung} & {\cellcolor[HTML]{C0C0C0}Leistung} &
|
||||||
{\cellcolor[HTML]{C0C0C0}\textbf{Leistung}} &
|
{\cellcolor[HTML]{C0C0C0}Differenz} & {\cellcolor[HTML]{C0C0C0}Erklärung} \\ \hline
|
||||||
{\cellcolor[HTML]{C0C0C0}\textbf{Differenz}} &
|
|
||||||
{\cellcolor[HTML]{C0C0C0}\textbf{Erklärung}} \\ \hline
|
|
||||||
%endtitle row
|
%endtitle row
|
||||||
Projekt Management & Doku & 10 & 20 & 10 & Wir hatten uns zu Beginn
|
|
||||||
darauf festgelegt alle zwei Wochen ein kurzes Meeting abzuhalten. Die
|
|
||||||
Meetings wurden dann aber mit durchschnittlich 1h länger als
|
|
||||||
ursprünglich angenommen. \\ \hline
|
|
||||||
|
|
||||||
Dokumentation & Doku & 25 & 45 & 20 & Wir haben bei dieser Arbeit
|
Projekt Management & Doku & 10 & 20.08 & 10.08 & Nach dem definieren der
|
||||||
wesentlich mehr Zeit in die Dokumentation investiert. Ein Teil davon
|
Meetings wurde uns schnell bewusst, dass eine Absprache alle 2 Wochen Nötig ist,
|
||||||
ist sicher der Tatsache zu Schulden das wir die Arbeit in LaTeX
|
um den Fortschritt im Auge zu behalten. \\ \hline
|
||||||
geschrieben haben. \\ \hline
|
Dokumentation & Doku & 25 & 32 & 7 & \ \\ \hline
|
||||||
|
Vision & Doku & & & 0 & \ \\ \hline
|
||||||
Vision & Doku & 1 & 1 & 0 & \ \\ \hline
|
User Stories & Doku & 2 & 2 & 0 & \ \\ \hline
|
||||||
|
RM erstellen & Doku & 3 & 4 & 1 & Beim RM haben wir viel weniger Details
|
||||||
User Stories & Doku & 2 & 2 & 0 & \ \\ \hline
|
eingezeichnet sondern uns Hauptsächlich darauf beschränkt uns eine
|
||||||
|
|
||||||
ERM erstellen & Doku & 3 & 2 & -1 & Beim RM haben wir weniger Details
|
|
||||||
eingezeichnet, sondern uns hauptsächlich darauf beschränkt uns eine
|
|
||||||
grobe Übersicht zu verschaffen. \\ \hline
|
grobe Übersicht zu verschaffen. \\ \hline
|
||||||
|
ERM erstellen & Doku & 4 & 12 & 8 & \ \\ \hline
|
||||||
ERD erstellen & Doku & 4 & 12 & 8 & Die Aufgabenstellung hat sich als
|
Testplan aufgebaut & Doku & 12 & 1 & -11 & \ \\ \hline
|
||||||
wesentlich komplizierter herausgestellt als wir angenommen hatten. \\ \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
|
||||||
User Stories(Diagramm) erstellen & & 1 & 1 & 0 & \ \\ \hline
|
zuerst versucht
|
||||||
|
Haben die Länder und Städte Listen bereits komplett zu erstellen. \\ \hline
|
||||||
Testplan aufgebaut & Doku & 12 & 4 & -8 & Erwies sich als weniger
|
Frontend erstellen & Code & 25 & 16 & -9 & -25 \\ \hline
|
||||||
Aufwand, als ursprünglich gedacht. Da wir mit den Use Cases bereits
|
Datenbankverbindung & & 2 & 4 & 2 & \ \\ \hline
|
||||||
gute Vorlagen hatten. \\ \hline
|
GUI Planung + Erstellen & & 2 & 2 & 0 & \ \\ \hline
|
||||||
|
Konzept des Aufbaus & & & & 0 & \ \\ \hline
|
||||||
SQL Code & & & & & \ \\ \hline
|
Standort-Abfrage & & 4 & 9 & 5 & \ \\ \hline
|
||||||
SQL Scripts erstellen & Code & 7 & 8 & 1 & Das Erstellen der Testdaten
|
Rent-Reservation-Eingabe & & & & 0 & \ \\ \hline
|
||||||
Scripts hat etwas mehr Zeit gebraucht als erwartet. Insbesondere da
|
Rent-Abfrage & & & & 0 & \ \\ \hline
|
||||||
wir zuerst versucht haben, die Länder und Städte Listen bereits
|
Coding & Code & 16 & 24 & 8 & \ \\ \hline
|
||||||
komplett zu erstellen. \\ \hline
|
Testplan durchgeführt & Doku & 30 & & -30 & \ \\ \hline
|
||||||
|
Total & & 142 & 133.98 & & \\ \hline
|
||||||
C\# Code & & & & & \\ \hline
|
|
||||||
Frontend (GUI) erstellen & Code & 25 & 30 & 5 & Der Aufbau unseres GUI
|
|
||||||
zeigte sich um einiges komplizierte als wir es uns zu Anfang
|
|
||||||
vorgestellt haben. Ein grosser Anteil des Aufwandes ging an die
|
|
||||||
Nachforschung des Codes verloren, da wir dies zu diesem Zeitpunkt noch
|
|
||||||
nicht angewendet haben. \\ \hline
|
|
||||||
|
|
||||||
Datenbankverbindung & Code & 2 & 3 & 1 & Es entstand ein kleiner
|
|
||||||
Mehraufwand, da bei Applikation jeweils der Verbindungsstring
|
|
||||||
angepasst werden musste Wenn der Code auf einem anderen Computer
|
|
||||||
kompiliert wurde. \\ \hline
|
|
||||||
|
|
||||||
Konzept des Aufbaus & Code & 4 & 4 & 0 & Der Konzeptaufbau (Was
|
|
||||||
möchten wir darstellen?), wurde von uns öfters als geplant
|
|
||||||
umstrukturiert, hielt sich aber noch Im Zeitrahmen \\ \hline
|
|
||||||
|
|
||||||
Login und Registration & Code & 4 & 6 & -2 & Die ID- Vergabe und die
|
|
||||||
Verarbeitung benötigten mehr Aufwand als vorgesehen \\ \hline
|
|
||||||
|
|
||||||
Standort-Abfrage & Code & 6 & 9 & 3 & Durch Wissenslücken ging ein
|
|
||||||
Grossteil der Zeit in der Informationssuche verloren \\ \hline
|
|
||||||
|
|
||||||
Rent-Reservation-Eingabe & Code & 20 & 32 & 12 & Die Übergabe der
|
|
||||||
verschiedenen ID`s in der Applikation warfen einige Probleme auf, die
|
|
||||||
in der Reservation besonders Zum Vorschein gekommen sind \\ \hline
|
|
||||||
|
|
||||||
Rent-Abfrage & Code & 8 & 8 & 0 & \\ \hline
|
|
||||||
|
|
||||||
Coding (Verbinden der Funktionen) & Code & 20 & 40 & 20 & Da wir in
|
|
||||||
unserer Applikation gleich mehrere Funktionen abgebildet
|
|
||||||
haben (Login/Informationsabfrage/ Informationseingabe/Abfrage
|
|
||||||
eingefüllter Daten), war das darauffolgende Verbinden des Codes auch
|
|
||||||
ein grosser Aufwand \\ \hline
|
|
||||||
|
|
||||||
Test`s & & & & & \ \\ \hline
|
|
||||||
Testplan durchgeführt & Doku & 30 & 15 & -15 & Die Tests haben
|
|
||||||
wesentlich weniger Zeit gebraucht als angenommen und wurden meistens
|
|
||||||
on the fly gemacht. \\ \hline
|
|
||||||
|
|
||||||
\textbf{Total} & & \textbf{184} & \textbf{242} & & \\ \hline
|
|
||||||
|
|
||||||
\caption{Stundenplanung}
|
\caption{Stundenplanung}
|
||||||
\end{longtable}
|
\end{longtable}
|
||||||
%% -- end Stundenplanung table --
|
%% -- end Stundenplanung table --
|
||||||
|
@ -523,9 +465,9 @@ Zur Zusammenarbeit am Code haben wir uns für Git entschieden. Dies
|
||||||
ermöglichte es uns gleichzeitig am Code zu arbeiten und zwischendurch
|
ermöglichte es uns gleichzeitig am Code zu arbeiten und zwischendurch
|
||||||
die Änderungen des anderen zu ``mergen''. Dies war von grossem Vorteil
|
die Änderungen des anderen zu ``mergen''. Dies war von grossem Vorteil
|
||||||
da wir so unabhängig voneinander am Code weiterarbeiten konnten. So
|
da wir so unabhängig voneinander am Code weiterarbeiten konnten. So
|
||||||
entstanden insgesamt über 150 Commits.
|
entstanden insgesammt über 150 Commits.
|
||||||
|
|
||||||
Des Weiteren haben wir uns die Arbeit so aufgeteilt damit wir möglichst
|
Desweiteren haben wir uns die Arbeit so aufgeteilt damit wir möglichst
|
||||||
unabhängig voneinander arbeiten konnten und somit nicht aufeinander
|
unabhängig voneinander arbeiten konnten und somit nicht aufeinander
|
||||||
warten mussten.
|
warten mussten.
|
||||||
|
|
||||||
|
@ -586,14 +528,14 @@ jeweilige Standort hat damit mein ein Überbuchen verhindern kann.
|
||||||
Sind die eigentlichen User im System. In der Regel verweisen sie auf
|
Sind die eigentlichen User im System. In der Regel verweisen sie auf
|
||||||
eine reale Person können zu Testzwecken aber auch ohne eine reale
|
eine reale Person können zu Testzwecken aber auch ohne eine reale
|
||||||
Person im Hintergrund angelegt werden. Diese Entität wird dabei auch
|
Person im Hintergrund angelegt werden. Diese Entität wird dabei auch
|
||||||
mit den jeweiligen Käufen Verbunden damit man nachvollziehen kann wer
|
mit den jeweiligen Käufen verbunden damit man nachvollziehen kann wer
|
||||||
diese getätigt hat. Hier wird auch gespeichert ob das Mitglied die
|
diese getätigt hat. Hier wird auch gespeichert ob das Mitglied die
|
||||||
notwendigen Dokumente unterzeichnet und die Kreditüberprüfung bestanden
|
notwendigen Dokumente unterzeichnet und die Kreditüberprüfung bestanden
|
||||||
hat.
|
hat.
|
||||||
|
|
||||||
\paragraph{member\_status / (Mitgliedsstatus)}
|
\paragraph{member\_status / (Mitgliedsstatus)}
|
||||||
Die Mitgliedsstatus-Tabelle enthält die möglichen Status die ein
|
Die Mitgliedsstatus Tabelle enthält die möglichen Stati die ein
|
||||||
Mitglied haben kann. Dabei werden hier auch Mitglieder Status wie
|
Mitglied haben kann. Dabei werden hier auch Mitglieder Stati wie
|
||||||
Mitarbeiter oder Admin erfasst.
|
Mitarbeiter oder Admin erfasst.
|
||||||
|
|
||||||
\paragraph{subscribtions / (Abonnemente)}
|
\paragraph{subscribtions / (Abonnemente)}
|
||||||
|
@ -601,9 +543,9 @@ Beschreiben die Abonnementsarten welche von den Mitgliedern gekauft
|
||||||
werden können.
|
werden können.
|
||||||
|
|
||||||
\paragraph{commercials / (Werbung)}
|
\paragraph{commercials / (Werbung)}
|
||||||
Diese Tabelle enthält alle Daten zu Änderungen des Webauftritts eines
|
Diese Tabelle enthällt 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 die zugelassene Anzahl an Änderungen
|
kann das ein Mitglied nur nur die zugelassene Anzahl an Änderungen
|
||||||
beantragt.
|
beantragt.
|
||||||
|
|
||||||
Je nach Kundenwunsch könnte man diese noch erweitern um zusätzliche
|
Je nach Kundenwunsch könnte man diese noch erweitern um zusätzliche
|
||||||
|
@ -618,15 +560,15 @@ Zusätzlich wird erfasst an welchem Tag der Check geplant ist und Ob
|
||||||
der Check bestanden wurde.
|
der Check bestanden wurde.
|
||||||
|
|
||||||
\paragraph{subscription\_orders / (Abonnementsbestellungen)}
|
\paragraph{subscription\_orders / (Abonnementsbestellungen)}
|
||||||
Enthält die Abo Käufe die ein Mitglied macht und welcher Standort dabei
|
Enthält die Abokäufe die ein Mitglied macht und welcher Standort dabei
|
||||||
gewählt wurde Sowie an welchem Tag der Kauf getätigt wurde. Das
|
gewählt wurde Sowie an welchem Tag der Kauf getätigt wurde. Das
|
||||||
Kaufdatum kann in der finalen Version dazu verwendet werden zu
|
Kaufdatum kann in der finalen Version dazu verwendet werden zu
|
||||||
berechnen ob das aktuelle Abo noch gültig ist oder nicht.
|
berechnen ob das aktuelle Abo noch gültig ist oder nicht.
|
||||||
|
|
||||||
\paragraph{trial\_period / (Probezeit)}
|
\paragraph{trial\_period / (Probezeit)}
|
||||||
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 Fix Wert im Code abgelegt werden muss. Diese sollte es ermöglichen
|
ein Fixwert im Code abgelegt werden muss. Diese sollte es ermöglichen
|
||||||
dass die Dauer der Probezeit auch nachträglich noch einfach angepasst
|
das die Dauer der Probezeit auch nachträglich noch einfach angepasst
|
||||||
werden kann.
|
werden kann.
|
||||||
|
|
||||||
\paragraph{rents / (Mieten)}
|
\paragraph{rents / (Mieten)}
|
||||||
|
@ -640,13 +582,6 @@ Diese Tabelle weist jedem Standort einen Preis zu. Dies ermöglicht es die
|
||||||
Preise für jeden Standort flexibel zu halten und den regionalen
|
Preise für jeden Standort flexibel zu halten und den regionalen
|
||||||
Interessengruppen anzupassen.
|
Interessengruppen anzupassen.
|
||||||
|
|
||||||
\paragraph{RentedLocations}
|
|
||||||
Damit wir die getätigten Mieten in der Applikation sauber ausgeben
|
|
||||||
können war es nötig eine View zu erstellen. Diese beinhaltet drei
|
|
||||||
``inner joins'' über die Tabellen ``members'', ``rents'',
|
|
||||||
``rent\_prices'' und ``locations''. Somit kann man einsehen welches
|
|
||||||
Mitglied an welchem Ort und zu welchem Preis einen Stand gemietet hat.
|
|
||||||
|
|
||||||
\begin{landscape}
|
\begin{landscape}
|
||||||
\begin{figure}
|
\begin{figure}
|
||||||
\centering
|
\centering
|
||||||
|
@ -666,7 +601,7 @@ Mitglied an welchem Ort und zu welchem Preis einen Stand gemietet hat.
|
||||||
|
|
||||||
\subsection{C\#}
|
\subsection{C\#}
|
||||||
|
|
||||||
In dieser Sektion wird das Erstellen einer kleinen Anwendung
|
In dieser Sektion wird das Erstellen einer kleiner Anwendung
|
||||||
beschrieben, in der wir gewisse Segmente unserer Datenbank abrufen und
|
beschrieben, in der wir gewisse Segmente unserer Datenbank abrufen und
|
||||||
bearbeiten können. Damit zeigen wir die Funktionalität und
|
bearbeiten können. Damit zeigen wir die Funktionalität und
|
||||||
Verarbeitung unsere Datenbank auf.
|
Verarbeitung unsere Datenbank auf.
|
||||||
|
@ -695,13 +630,13 @@ Hier werden alle eingesetzten Klassen der Applikation vorgestellt
|
||||||
und definiert.
|
und definiert.
|
||||||
|
|
||||||
Zu jeder Klasse gibt es eine passende Grafik welche ihre Methoden und
|
Zu jeder Klasse gibt es eine passende Grafik welche ihre Methoden und
|
||||||
Attribute beschreibt. Nachfolgend haben wir eine Beispiel Grafik, Abbildung:
|
Attribute beschreibt. Nachfolgend habe wir eine Beispiel Grafik, Abbildung:
|
||||||
(\ref{fig:class_example}) eingefügt welche die Symbole und den Aufbau
|
(\ref{fig:class_example}) eingefügt welche die Symbole und den Aufbau
|
||||||
beschreibt.
|
beschreibt.
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/example.png}
|
\includegraphics[scale=0.7]{diagrammes/example.png}
|
||||||
\caption{Beispiel Klassen\label{fig:class_example}}
|
\caption{Beispiel Klassen\label{fig:class_example}}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
||||||
|
@ -722,16 +657,17 @@ Diese Klasse, Abbildung: (\ref{fig:login_class}) wurde für das
|
||||||
Registrieren und Einloggen des Benutzers mit einem dazugehörigen GUI
|
Registrieren und Einloggen des Benutzers mit einem dazugehörigen GUI
|
||||||
von uns erstellt. Dadurch können sich Benutzer durch das Eingeben der
|
von uns erstellt. Dadurch können sich Benutzer durch das Eingeben der
|
||||||
Email-Adresse und des Passwortes mit dem ``Register-Button''
|
Email-Adresse und des Passwortes mit dem ``Register-Button''
|
||||||
Registrieren. Bei erfolgreicher Registrierung erhalten sie dann eine
|
Registrieren, Abbildung: (\ref{fig:register}), und durch ein zweites
|
||||||
entsprechende Meldung, Abbildung: (\ref{fig:register}). Durch ein
|
eingeben der Daten und betätigen des ``Login-Button'' auch gleich
|
||||||
zweites Eingeben der Daten und betätigen des ``Login-Button'' können
|
einloggen, Abbildung: (\ref{fig:login}). Nach dem Login wird auch
|
||||||
sie sich dann auch gleich einloggen, Abbildung: (\ref{fig:login}).
|
gleich eine Nachricht der Applikation dem Benutzer mit dem Text ``It
|
||||||
Nach dem erfolgreichen Login wird der User dann auf das Dashboard
|
worked'' aufgezeigt, um den erfolgreichen Login zu melden. Dadurch
|
||||||
weitergeleitet.
|
möchten wir die Funktion des Einfüllens und Lesen der Daten aus der
|
||||||
|
Datenbank aufzeigen.
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/loginform.png}
|
\includegraphics[scale=0.7]{diagrammes/loginform.png}
|
||||||
\caption{LoginForm Klasse}
|
\caption{LoginForm Klasse}
|
||||||
\label{fig:login_class}
|
\label{fig:login_class}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -760,14 +696,15 @@ herausgelesenen Daten der ``locations'' und ``rents'' Tabellen im GUI,
|
||||||
Abbildung: (\ref{fig:dashboard}) aufgezeigt und/ oder eingefügt. Damit
|
Abbildung: (\ref{fig:dashboard}) aufgezeigt und/ oder eingefügt. Damit
|
||||||
möchten wir einen Teil der finalen Applikation und Datenbank abbilden
|
möchten wir einen Teil der finalen Applikation und Datenbank abbilden
|
||||||
mit dem, die Benutzer Standorte heraussuchen und den Mietbeginn
|
mit dem, die Benutzer Standorte heraussuchen und den Mietbeginn
|
||||||
eingegeben können. Um einen Standort zu mieten muss ein User sich
|
eingegeben können. Um unsere Demo-Applikation simpel zu halten, kann
|
||||||
zuerst einen Standort heraussuchen und diesen markieren. Anschliessend
|
ein Mitglied nach dem Registrieren und Einloggen die vom Verwalter
|
||||||
kann er das passende Datum markieren und zum Abschluss die Miete mit
|
hinzugefügten Standorte heraussuchen, sie dann in unsere Mietbox
|
||||||
dem ``Rent-Button'' tätigen.
|
schieben und nach dem wählen des gewünschten Zeitpunktes den Standort
|
||||||
|
mieten.
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/dashboard.png}
|
\includegraphics[scale=0.7]{diagrammes/dashboard.png}
|
||||||
\caption{Dashboard Klasse}
|
\caption{Dashboard Klasse}
|
||||||
\label{fig:dashboard_class}
|
\label{fig:dashboard_class}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -790,7 +727,7 @@ der Login des Benutzers darin geprüft.
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/dataaccess.png}
|
\includegraphics[scale=0.7]{diagrammes/dataaccess.png}
|
||||||
\caption{DataAccess Klasse}
|
\caption{DataAccess Klasse}
|
||||||
\label{fig:dataaccess}
|
\label{fig:dataaccess}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -801,25 +738,25 @@ Um Daten herauszulesen oder zur Datenbank zu schicken, haben wir in
|
||||||
C\# Klassen der ``locations'', ``rents'' und ``members'' erstellt, die
|
C\# Klassen der ``locations'', ``rents'' und ``members'' erstellt, die
|
||||||
sie abbilden. Damit nehmen die dazu benötigten Spalten der jeweiligen
|
sie abbilden. Damit nehmen die dazu benötigten Spalten der jeweiligen
|
||||||
Tabellen entgegen. Danach werden die benötigten Datensätze mit den
|
Tabellen entgegen. Danach werden die benötigten Datensätze mit den
|
||||||
``Methoden-Infos'' der derzeitigen Klasse aufgerufen.
|
``Methoden-Infos'' der derweiligen Klasse aufgerufen.
|
||||||
|
|
||||||
Die ``GetMembers'' Klasse, Abbildung: (\ref{fig:getmembers}), wird für
|
Die ``GetMembers'' Klasse, Abbildung: (\ref{fig:getmembers}), wird für
|
||||||
die Registration und den Login der Mitglieder benötigt:
|
die Registration und den Login der Mitglieder benötigt:
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/getmembers.png}
|
\includegraphics[scale=0.7]{diagrammes/getmembers.png}
|
||||||
\caption{GetMembers Klasse}
|
\caption{GetMembers Klasse}
|
||||||
\label{fig:getmembers}
|
\label{fig:getmembers}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
||||||
Die ``GetLocations'' Klasse, Abbildung: (\ref{fig: getlocations}), für
|
Die ``GetLocations'' Klasse, Abbildung: (\ref{fig:getlocations}), für
|
||||||
das Herauslesen der Märkte um dem Mitglied alle im Moment
|
das Herauslesen der Märkte um dem Mitglied alle im Moment
|
||||||
hinzugefügten Mietoptionen darzubieten:
|
hinzugefügten Mietoptionen darzubieten:
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/getlocations.png}
|
\includegraphics[scale=0.7]{diagrammes/getlocations.png}
|
||||||
\caption{GetLocations Klasse}
|
\caption{GetLocations Klasse}
|
||||||
\label{fig:getlocations}
|
\label{fig:getlocations}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -829,7 +766,7 @@ und Abbilden der jeweiligen Märkte:
|
||||||
|
|
||||||
\begin{figure}[H]
|
\begin{figure}[H]
|
||||||
\centering
|
\centering
|
||||||
\includegraphics[scale=0.23]{diagrammes/getrents.png}
|
\includegraphics[scale=0.7]{diagrammes/getrents.png}
|
||||||
\caption{GetRents Klasse}
|
\caption{GetRents Klasse}
|
||||||
\label{fig:getrents}
|
\label{fig:getrents}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
@ -842,16 +779,16 @@ und Abbilden der jeweiligen Märkte:
|
||||||
Test-Anwender der Datenbank angepasst werden.
|
Test-Anwender der Datenbank angepasst werden.
|
||||||
|
|
||||||
\item Insert Data
|
\item Insert Data
|
||||||
Nach den ersten Tests wurde uns klar, dass wir ein Problem mit
|
Nach den ersten Test's wurde uns klar, dass wir ein Problem mit
|
||||||
der Weitergabe der ID's hatten. Der Fehler kam erst ans Licht, als wir
|
der weitergabe der ID's hatten. Der Fehler kam erst ans Licht, als wir
|
||||||
anfingen die jeweiligen ``locations'' und ``members''- ID's durch das
|
anfingen die jeweiligen ``locations'' und ``members''- ID's durch das
|
||||||
GUI einzufügen. Gelöst wurde das Ganze mit einer statischen Klasse.
|
GUI einzufügen. Gelöst wurde das ganze mit einer statischen Klasse.
|
||||||
|
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
|
|
||||||
\subsubsection{Addons/ Packages}
|
\subsubsection{Addons/ Packages}
|
||||||
Dapper \cite{dbcs6} ist ein simpler ``object mapper'' für .NET. Wir
|
Dapper \cite{dbcs6} ist ein simpler ``object mapper'' für .NET. Wir
|
||||||
nutzen ihn anstelle von einem ADO.NET data reader da er nützliche
|
nutzen ihn anstelle von einem ADO.NET data reader da er nütziche
|
||||||
Erweiterungen bei unserer IDbConnection bietet, indem er
|
Erweiterungen bei unserer IDbConnection bietet, indem er
|
||||||
Erweiterungsmethoden zur Datenbankabfrage bietet.
|
Erweiterungsmethoden zur Datenbankabfrage bietet.
|
||||||
|
|
||||||
|
@ -881,126 +818,95 @@ Weiter Infos unter : http://dapper-tutorial.net/dapper
|
||||||
\cellcolor[HTML]{C0C0C0}Testdata & \cellcolor[HTML]{C0C0C0}Expected Result &
|
\cellcolor[HTML]{C0C0C0}Testdata & \cellcolor[HTML]{C0C0C0}Expected Result &
|
||||||
\cellcolor[HTML]{C0C0C0}Postcondition & \cellcolor[HTML]{C0C0C0}Result \\ \hline
|
\cellcolor[HTML]{C0C0C0}Postcondition & \cellcolor[HTML]{C0C0C0}Result \\ \hline
|
||||||
% end title row
|
% end title row
|
||||||
|
|
||||||
TC-01 & Registrierung am System & - & 1. Öffnen des Programms \newline
|
TC-01 & Registrierung am System & - & 1. Öffnen des Programms \newline
|
||||||
2. Eingeben des Usernamens \newline
|
2. Eingeben des Usernamens \newline
|
||||||
3. Eingeben des Passworts\newline
|
3. Eingeben des Passworts\newline
|
||||||
4. Klicken des ``Register'' Knopf & Username: muster@gmx.ch Passwort:
|
4. Klicken des ``Register'' Knopf & Username: muster@gmx.ch
|
||||||
123456 & Pop-up mit ``Member Registered'' Text erscheint & User
|
Passwort: 123456 & Erfolgreiche Registrierung & User registriert & Erfolgreich durchgeführt.
|
||||||
registriert & Erfolgreich durchgeführt. 27.07.2017 A.Z. \\ \hline
|
|
||||||
|
|
||||||
TC-02 & Registrierung am System & TC-01 ausgeführt. & 1. Öffnen des
|
|
||||||
Programms \newline
|
|
||||||
2. Eingeben des Usernamens \newline
|
|
||||||
3. Eingeben des Passworts \newline
|
|
||||||
4. Klicken des ``Register'' Knopf & Username: \newline
|
|
||||||
muster@gmx.ch Passwort: \newline
|
|
||||||
123456 & Fehlermeldung: \newline
|
|
||||||
“User already exists.” & Login / Registrierung Wird wieder
|
|
||||||
angezeigt & Beim ersten Durchführen fehlte Noch eine Try/Catch
|
|
||||||
Funktion Was die Applikation zum Abstürzen brachte. Erfolgreich
|
|
||||||
durchgeführt. 13.08.2017 I.C. \\ \hline
|
|
||||||
|
|
||||||
TC-03 & Anmeldung am System & TC-01 ausgeführt. & 1. Öffnen des Programms \newline
|
|
||||||
2. Eingeben des Usernamens \newline
|
|
||||||
3. Eingeben des Passworts \newline
|
|
||||||
4. Klicken des ``Login'' Knopf \newline
|
|
||||||
5. Quittieren des Pop-Up & Username: \newline
|
|
||||||
muster@gmx.ch Passwort: \newline
|
|
||||||
123456 & Der User wird zum Dashboard weitergeleitet & Dashboard wird
|
|
||||||
Angezeigt. & Erfolgreich durchgeführt. 27.07.2017 A.Z. \\ \hline
|
|
||||||
|
|
||||||
TC-04 & Anmeldung am System & TC-01 ausgeführt. & 1. Öffnen des Programms \newline
|
|
||||||
2. Eingeben des Usernamens \newline
|
|
||||||
3. Eingeben des Passworts \newline
|
|
||||||
4. Klicken des ``Login'' Knopf \newline
|
|
||||||
5. Fehlermeldung quittieren & Username: \newline
|
|
||||||
muster@gmx.ch Passwort: \newline
|
|
||||||
WrongPassword & Fehlermeldung: \newline
|
|
||||||
``Username or Password Not correct.'' & Login / Registrierung Wird
|
|
||||||
wieder angezeigt & Erfolgreich durchgeführt. 27.07.2017 A.Z. \\ \hline
|
|
||||||
|
|
||||||
TC-05 & Anmeldung am System & - & 1. Öffnen des Programms \newline
|
|
||||||
2. Eingeben des Usernamens \newline
|
|
||||||
3. Eingeben des Passworts \newline
|
|
||||||
4. Klicken des ``Login'' Knopf \newline
|
|
||||||
5. Fehlermeldung quittieren & Username: \newline
|
|
||||||
muster@gmx.ch Passwort: \newline
|
|
||||||
123456 & Fehlermeldung: \newline
|
|
||||||
``Username or Password Not correct.'' & Login / Registrierung Wird
|
|
||||||
wieder angezeigt & Erfolgreich durchgeführt. 27.07.2017 A.Z. \\ \hline
|
|
||||||
|
|
||||||
TC-06 & Standorte anzeigen & TC-01 und TC-03 Ausgeführt & 1.
|
|
||||||
Suchbegriff eingeben 2. ``Search'' Knopf klicken & Suchbegriff: \newline
|
|
||||||
Markt & Suchresultat: \newline
|
|
||||||
``Markstrasse 300 Testmarkt'' erscheint & Suchresultat wird Angezeigt.
|
|
||||||
& Zuerst wurde mit ``equal'' gesucht was es sehr Schwierig machte zu
|
|
||||||
suchen. Wurde zu ``like'' korrigiert. Erfolgreich durchgeführt.
|
|
||||||
27.07.2017 A.Z. \\ \hline
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
TC-02 & Registrierung am System & TC-01 ausgeführt. & 1. Öffnen des Programms \newline
|
||||||
|
2. Eingeben des Usernamens \newline
|
||||||
|
3. Eingeben des Passworts \newline
|
||||||
|
4. Klicken des ``Register'' Knopf & Username: \newline muster@gmx.ch
|
||||||
|
Passwort: \newline 123456 & Fehlermeldung: \newline
|
||||||
|
“User already exists.” & Login / Registrierung
|
||||||
|
Wird wieder angezeigt & Beim ersten Durchführen fehlte
|
||||||
|
Noch eine Try/Catch Funktion
|
||||||
|
Was die Applikation zum Abstürzen brachte.
|
||||||
|
|
||||||
TC-07 & Standorte anzeigen & TC-01 und TC-03 Ausgeführt & 1. keinen
|
Erfolgreich durchgeführt.
|
||||||
Suchbegriff eingeben 2. ``Search'' Knopf klicken & & Suchresultat: \newline
|
13.08.2017 I.C. \\ \hline
|
||||||
``Markstrasse 300 Testmarkt Teststrasse 450 Testmark2'' Erscheint &
|
TC-03 & Anmeldung am System & TC-01 ausgeführt. & 1. Öffnen des Programms \newline
|
||||||
Suchresultat wird Angezeigt. & Erfolgreich durchgeführt. 27.07.2017
|
2. Eingeben des Usernamens \newline
|
||||||
A.Z. \\ \hline
|
3. Eingeben des Passworts \newline
|
||||||
|
4. Klicken des ``Login'' Knopf \newline
|
||||||
|
5. Quittieren des Pop-Up & Username: \newline muster@gmx.ch
|
||||||
|
Passwort: \newline 123456 & Meldung: \newline
|
||||||
|
``It worked''
|
||||||
|
Quittierung führt zum
|
||||||
|
Dashboard & Dashboard wird
|
||||||
|
Angezeigt. & Erfolgreich durchgeführt.
|
||||||
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
TC-04 & Anmeldung am System & TC-01 ausgeführt. & 1. Öffnen des Programms \newline
|
||||||
|
2. Eingeben des Usernamens \newline
|
||||||
|
3. Eingeben des Passworts \newline
|
||||||
|
4. Klicken des ``Login'' Knopf \newline
|
||||||
|
5. Fehlermeldung quittieren & Username: \newline muster@gmx.ch
|
||||||
|
Passwort: \newline WrongPassword & Fehlermeldung: \newline
|
||||||
|
``Username or Password
|
||||||
|
Not correct.'' & Login / Registrierung
|
||||||
|
Wird wieder angezeigt & Erfolgreich durchgeführt.
|
||||||
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
TC-05 & Anmeldung am System & - & 1. Öffnen des Programms \newline
|
||||||
|
2. Eingeben des Usernamens \newline
|
||||||
|
3. Eingeben des Passworts \newline
|
||||||
|
4. Klicken des ``Login'' Knopf \newline
|
||||||
|
5. Fehlermeldung quittieren & Username: \newline muster@gmx.ch
|
||||||
|
Passwort: \newline 123456 & Fehlermeldung: \newline
|
||||||
|
``Username or Password
|
||||||
|
Not correct.'' & Login / Registrierung
|
||||||
|
Wird wieder angezeigt & Erfolgreich durchgeführt.
|
||||||
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
TC-06 & Standorte anzeigen & TC-01 und TC-03
|
||||||
|
Ausgeführt & 1. Suchbegriff eingeben
|
||||||
|
2. ``Search'' Knopf klicken & Suchbegriff: \newline Markt & Suchresultat: \newline ``Markstrasse
|
||||||
|
300 Testmarkt'' erscheint & Suchresultat wird
|
||||||
|
Angezeigt. & Zuerst wurde mit ``equal'' gesucht was es sehr
|
||||||
|
Schwierig machte zu suchen.
|
||||||
|
Wurde zu ``like'' korrigiert.
|
||||||
|
|
||||||
TC-08 & Standort mieten & TC-01, TC-03 und
|
Erfolgreich durchgeführt.
|
||||||
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
TC-07 & Standorte anzeigen & TC-01 und TC-03
|
||||||
|
Ausgeführt & 1. keinen Suchbegriff eingeben
|
||||||
|
2. ``Search'' Knopf klicken & & Suchresultat: \newline
|
||||||
|
``Markstrasse 300 Testmarkt
|
||||||
|
Teststrasse 450 Testmark2''
|
||||||
|
Erscheint & Suchresultat wird
|
||||||
|
Angezeigt. & Erfolgreich durchgeführt.
|
||||||
|
27.07.2017 A.Z. \\ \hline
|
||||||
|
TC-08 & Standort mieten & TC-01, TC-03 und
|
||||||
TC-06 ausgeführt. & 1. keinen Suchbegriff eingeben \newline
|
TC-06 ausgeführt. & 1. keinen Suchbegriff eingeben \newline
|
||||||
2. ``Search'' Knopf klicken \newline
|
2. ``Search'' Knopf klicken \newline
|
||||||
3. beliebigen Standort wählen \newline
|
3. beliebigen Standort wählen \newline
|
||||||
4. Mietdatum auswählen \newline
|
4. ``Add'' Knopf klicken \newline
|
||||||
5. ``Rent'' Knopf klicken & & Miete wird in Datenbank Verbucht. & &
|
5. Mietdatum auswählen \newline
|
||||||
Erfolgreich durchgeführt. 22.08.2017 I.C. \\ \hline
|
6. ``Rent'' Knopf klicken & & Miete wird in Datenbank
|
||||||
|
Verbucht. & & Erfolgreich durchgeführt.
|
||||||
TC-09 & Mieten anzeigen & TC-01, TC-03, TC-06 Und TC-08 ausgeführt &
|
22.08.2017 I.C. \\ \hline
|
||||||
1. ``Refresh'' Knopf klicken & & Die ``Rents'' Liste wird Aktualisiert
|
TC-09 & Mieten anzeigen & TC-01, TC-03, TC-06
|
||||||
und gibt Die in TC-08 getätigte Miete aus. & Mietliste wurde Befüllt.
|
Und TC-08 ausgeführt & 1. ``Refresh'' Knopf klicken & & Die ``Rents'' Liste wird
|
||||||
& Erfolgreich durchgeführt. 22.08.2017 I.C. \\ \hline
|
Aktualisiert und gibt
|
||||||
|
Die in TC-08 getätigte
|
||||||
|
Miete aus. & Mietliste wurde
|
||||||
|
Befüllt. &
|
||||||
|
Erfolgreich durchgeführt.
|
||||||
|
22.08.2017 I.C. \\ \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 --
|
||||||
\end{landscape}
|
\end{landscape}
|
||||||
|
|
||||||
\section{Fazit}
|
|
||||||
|
|
||||||
In Bezug auf die Planung verlief diese Casestudy wesentlich besser
|
|
||||||
als die vorherige in Webtechnologie.
|
|
||||||
Insbesondere die Zeitplanung lief sehr gut, da wir diesbezüglich Erfahrungen aus der Webtechnologie- Case Study mitnehmen konnten.
|
|
||||||
Wir hatten zwar geplant nach den Sommerferien mit der Arbeit grösstenteils fertig zu
|
|
||||||
sein, was schlussendlich nicht erreicht wurde. Jedoch wurden wir
|
|
||||||
ca. einen Monat später, (anfangs September), mit dem grössten Teil der
|
|
||||||
Arbeit fertig und lagen somit immer noch sehr gut in der Zeit.
|
|
||||||
|
|
||||||
Durch die regelmässigen Meetings, waren wir bezüglich des Fortschritts
|
|
||||||
immer auf dem aktuellsten Stand. Zusätzlich ermöglichten uns die
|
|
||||||
Meetings frühzeitig Korrekturen der Planung vorzunehmen und
|
|
||||||
somit allfällige Probleme zu umgehen.
|
|
||||||
|
|
||||||
Des Weiteren hatten wir so auch ideal Zeit technische Schwierigkeiten
|
|
||||||
miteinander zu besprechen. Beispielsweise wie wir gewisse Entitäten abbilden
|
|
||||||
möchten, oder Probleme die bei der C\# Applikation auftraten.
|
|
||||||
|
|
||||||
Die C\# Applikation war insgesamt der grösste Knackpunkt dieser
|
|
||||||
Casestudy. Die Anwendung funktioniert so weit wie geplant, jedoch könnte sie in
|
|
||||||
dieser Form allerdings wohl eher nicht produktiv eingesetzt werden.
|
|
||||||
|
|
||||||
Der Aufbau der Datenbank hat uns dazu im Vergleich verhältnismässig
|
|
||||||
wenig Probleme bereitet. Das Hauptproblem dabei war hauptsächlich die
|
|
||||||
schwammige Beschreibung der Anforderung des Kunden.
|
|
||||||
|
|
||||||
Wie auch in der letzten Case Study hat sich das Arbeiten mit Git
|
|
||||||
wieder bewährt. Allerdings könnten wir uns die Funktionen von Git
|
|
||||||
stärker zu nutzen machen. Etwa Test Branches erstellen, um schnell
|
|
||||||
etwas zu testen, oder die Commits noch sauberer zu erstellen, damit man
|
|
||||||
einfacher mit ihnen arbeiten kann.
|
|
||||||
|
|
||||||
Bezüglich der Dokumentation haben wir uns ein gute und stabile
|
|
||||||
Umgebung in \LaTeX aufgebaut welche wir so nun auch ohne weiteres in
|
|
||||||
späteren Arbeiten verwenden können. Insbesondere die Tabellen werden
|
|
||||||
wir sehr gut auch in späteren Projekten nutzen können.
|
|
||||||
|
|
||||||
%%% Local Variables:
|
%%% Local Variables:
|
||||||
%%% mode: latex
|
%%% mode: latex
|
||||||
%%% TeX-master: "main"
|
%%% TeX-master: "main"
|
||||||
|
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 7.1 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class Dashboard {
|
class Dashboard {
|
||||||
+ Dashboard()
|
+ Dashboard()
|
||||||
- void UpdateBinding()
|
- void UpdateBinding()
|
||||||
|
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 6.7 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class DataAccess {
|
class DataAccess {
|
||||||
+ SqlConnection connection
|
+ SqlConnection connection
|
||||||
+ List<GetLocations> GetLocations()
|
+ List<GetLocations> GetLocations()
|
||||||
|
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 4.7 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class Beispiel {
|
class Beispiel {
|
||||||
+ public Attribute
|
+ public Attribute
|
||||||
~ internal Attribute
|
~ internal Attribute
|
||||||
|
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 4.4 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class GetLocations {
|
class GetLocations {
|
||||||
+ int location_id
|
+ int location_id
|
||||||
+ string streetname
|
+ string streetname
|
||||||
|
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 4.8 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class GetMembers {
|
class GetMembers {
|
||||||
+ int member_id
|
+ int member_id
|
||||||
+ string email_address
|
+ string email_address
|
||||||
|
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 5.4 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class GetRents {
|
class GetRents {
|
||||||
+ int rent_id
|
+ int rent_id
|
||||||
+ string rent_date
|
+ string rent_date
|
||||||
|
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 3.9 KiB |
|
@ -1,5 +1,4 @@
|
||||||
@startuml
|
@startuml
|
||||||
skinparam dpi 300
|
|
||||||
class LoginForm {
|
class LoginForm {
|
||||||
+ LoginForm()
|
+ LoginForm()
|
||||||
- void RegistrationButton_Click()
|
- void RegistrationButton_Click()
|
||||||
|
|
|
@ -14,7 +14,7 @@ go
|
||||||
dbo.rent_prices.rent_price,
|
dbo.rent_prices.rent_price,
|
||||||
dbo.rents.rent_date,
|
dbo.rents.rent_date,
|
||||||
dbo.members.email_address
|
dbo.members.email_address
|
||||||
FROM dbo.members
|
FROM dbo.members
|
||||||
INNER JOIN dbo.rents ON dbo.members.member_id = dbo.rents.member_id
|
INNER JOIN dbo.rents ON dbo.members.member_id = dbo.rents.member_id
|
||||||
INNER JOIN dbo.rent_prices ON dbo.rents.rent_price_id = dbo.rent_prices.rent_price_id
|
INNER JOIN dbo.rent_prices ON dbo.rents.rent_price_id = dbo.rent_prices.rent_price_id
|
||||||
INNER JOIN dbo.locations ON dbo.rents.location_id = dbo.locations.location_id
|
INNER JOIN dbo.locations ON dbo.rents.location_id = dbo.locations.location_id
|