From 52bc7549838fefca030a527e4dbb4a78129ae8eb Mon Sep 17 00:00:00 2001 From: Andreas Zweili Date: Thu, 13 Sep 2018 20:41:04 +0200 Subject: [PATCH] finallize the documentation --- docs/normfallstudie.org | 160 +++++++++++++++++------------ docs/normfallstudie.tex | 200 +++++++++++++++++++++--------------- docs/pictures/hotel.png | Bin 0 -> 5300 bytes docs/pictures/rmentity.png | Bin 30874 -> 34647 bytes docs/pictures/roomdate.png | Bin 0 -> 15026 bytes docs/pictures/roomtype.png | Bin 0 -> 6425 bytes docs/pictures/selection.png | Bin 0 -> 23176 bytes 7 files changed, 213 insertions(+), 147 deletions(-) create mode 100644 docs/pictures/hotel.png create mode 100644 docs/pictures/roomdate.png create mode 100644 docs/pictures/roomtype.png create mode 100644 docs/pictures/selection.png diff --git a/docs/normfallstudie.org b/docs/normfallstudie.org index d90b417..d97e6ef 100644 --- a/docs/normfallstudie.org +++ b/docs/normfallstudie.org @@ -14,12 +14,14 @@ * Einführung -Aufgabe war es ein System aufzubauen welches Hotelbetreibern erlaubt ihre -freien Zimmer auf einem zentralen System zu melden. Das System sollte dann bei -angeschlossenen Fluggesellschaften über einen WCF Service nach passenden Flügen -suchen und diese Verbindung dann als ein Kombiangebot in der Datenbank -speichern. Diese Kombiangebot sollte dann von einem Kunden mithilfe einer -WinForm/WPF Applikation gebucht werden können. +Aufgabe war es ein System aufzubauen, welches Hotelbetreibern und +Fluggesellschaften auf einfach Weise Last Minute Angebote zu erstellen und auf +den Markt zu bringen. + +Das System sollte dann bei angeschlossenen Fluggesellschaften über einen WCF +Service nach passenden Flügen suchen und diese Verbindung dann als ein +Kombiangebot in der Datenbank speichern. Diese Kombiangebot sollte dann von +einem Kunden mithilfe einer WinForm/WPF Applikation gebucht werden können. * Ziele @@ -52,13 +54,13 @@ Aufgrund der Ziele wurden anschliessend folgende Diagramme ausgearbeitet. ** Verteilungsdiagramm Das Verteilungsdiagramm, Abbildung:([[fig:verteilungsdiagramm]]), wurde im -Unterricht ausgearbeitet. Der Klasse erschien es am sinnvollsten wenn die +Unterricht ausgearbeitet. Der Klasse erschien es am sinnvollsten, wenn die Plattform als ASP.NET Applikation erstellt wird und somit auf dem IIS Web Server läuft. Da die Plattform das zentrale System ist, ist es für die -Normfallstudie auch sinnvoll wenn der Datenbank Server auf dem gleichen System +Normfallstudie auch sinnvoll, wenn der Datenbank Server auf dem gleichen System läuft wie die Plattform. In einer realen Umgebung müsste hier allenfalls eine separater Server aufgesetzt werden. Der Airline Service und der WPF Client -wurden entsprechend der Vorgagben als externe Applikationen geplant. +wurden entsprechend der Vorgaben als externe Applikationen geplant. #+LATEX:\newpage #+LATEX:\begin{landscape} @@ -71,11 +73,13 @@ wurden entsprechend der Vorgagben als externe Applikationen geplant. ** Relationales Modell -In der Abbildung:([[fig:rm]]) ist das relationale Modell zu sehen welches durch -den Studenten vorgängig zur Umsetzung erstellt wurde. In der -Abbildung:([[fig:rmentity]]) ist die das relationale Modell zu sehen welches dann -durch das Entity Framework effektiv in der Datenbank erstellt wurde. - +Das relationale Modell, Abbildung:([[fig:rm]]), wurde durch den Studenten vor gängig +zur Umsetzung erstellt. In der Abbildung:([[fig:rmentity]]) ist die das relationale +Modell zu sehen welches, dann durch das Entity Framework effektiv in der +Datenbank erstellt wurde. Wie man sieht, sind sich die beiden Diagramme sehr +ähnlich. Entity Framework erstellt beim Code First Ansatz die Datenbank +ziemlich genau so, wie man sie auch von Hand erstellen würde. Zumindest im Bezug +auf die Tabellen. #+LATEX:\newpage #+LATEX:\begin{landscape} @@ -101,14 +105,14 @@ Applikationen zugewiesen. Dies sollte dazu dienen die Zuständigkeiten zu regeln ** Airline Service -Da die Airlnes alle Flugdaten zur Verfügung haben erschien es sinnvoll das -diese einen Service bereitstellen welcher die Parameter Anzahl Passiegere, +Da die Airlines alle Flugdaten zur Verfügung haben erschien es sinnvoll das +diese einen Service bereitstellen, welcher die Parameter Anzahl Passagiere, Start- und Enddatum sowie die Destination aufnimmt. Der Service sollte dann im -Hintergrund automatisch die bereits besetzten Flüge und Flüge welche nicht auf -die restlichen Paramter passen ausfiltern und nur passende Flüge ausgeben. +Hintergrund automatisch die bereits besetzten Flüge und Flüge, welche nicht auf +die restlichen Parameter passen ausfiltern und nur passende Flüge ausgeben. -Desweiteren sollte der Airline Service eine Möglichkeit bieten Flüge zu buchen -sowie zu stornieren. Im Code Ausschnitt:(\ref{airline}) sieht man die Signature +Des Weiteren sollte der Airline Service eine Möglichkeit bieten Flüge zu buchen +sowie zu stornieren. Im Code Ausschnitt:(\ref{airline}) sieht man die Signatur des Airline Services. Respektive des Interfaces davon. #+BEGIN_EXPORT latex @@ -126,7 +130,7 @@ Flight BookFlight(Flight flight, int numberOfSeats); Flight CancelFlight(Flight flight, int numberOfSeats); \end{sexylisting} #+END_EXPORT - +#+latex: \newpage Somit wurden dem Airline Service folgende Ziele zugewiesen: - Es dürfen nur freie Flüge in Kombiangeboten vorkommen. - Start- und Zielort des Fluges im Kombiangebot müssen passend zum Hotelzimmer @@ -136,17 +140,17 @@ Somit wurden dem Airline Service folgende Ziele zugewiesen: ** Plattform Die Plattform stellt den Grossteil der Logik und Funktionen bereit. Sie sollte -einerseits ein Möglichkeit bieten damit die Hotelbetreiber Zimmer und ihre +einerseits eine Möglichkeit bieten damit die Hotelbetreiber Zimmer und ihre Hotels erfassen könne sowie das Matching zwischen Hotelzimmer und Flügen erledigen. -Zusätzlich sollte sie die erstellten Komiangebote and den WPF Client -weiterleiten können. Auch das entgegennehmen der Bestellungen sowie +Zusätzlich sollte sie die erstellten Kombiangebote und den WPF Client +weiterleiten können. Auch das Entgegennehmen der Bestellungen sowie Reservationen des WPF Clients entgegennehmen und an den Airline Service weiterleiten. Auch die Überprüfung der Reservationszeit sowie die entsprechende -Reakation war für die Plattform geplant. +Reaktion war für die Plattform geplant. -Zu guter letzt sollten dann die reservertierten respektive gebuchten Flüge an +Zu guter Letzt sollten dann die reservierten respektive gebuchten Flüge an die passende Airline zur Buchung weitergeleitet werden. Im Falle einer Stornierung des Angebots müsste dann natürlich auch noch der Flug storniert werden. @@ -173,7 +177,7 @@ sehen. #+BEGIN_EXPORT latex \label{plattform} -\begin{sexylisting}{Plattfrom Service} +\begin{sexylisting}{Plattform Service} [OperationContract] List GetSpecialOffers(); [OperationContract] @@ -191,31 +195,31 @@ List GetCities(); \end{sexylisting} #+END_EXPORT -** TODO WPF Client +** WPF Client -Der WPF Client sollte nur aus einem simplen graphischen Interface bestehen +Der WPF Client sollte nur aus einem simplen graphischen Interface bestehen, welches einem User erlaubt hätte nach Städten und Daten zu filtern und ihm dann die entsprechenden Kombiangebote angezeigt hätte. Das gewünschte Angebot hätte er dann über den WCF Service auf der Plattform reservieren oder direkt buchen -können. Zwei frühe Screenshots des Clients sind in der Abbildung:([[wpf1]]) und -Abbildung:([[wpf2]]) zu sehen. +können. Die folgenden zwei Screenshots, Abbildung:([[fig:wpf1]]) und ([[fig:wpf2]]), +zeigen einen frühen Stand des Clients. -#+CAPTION: früher Screenshot des WPF Clients +#+CAPTION: Screenshot des Client Hauptfensters #+ATTR_LATEX: :width .8\textwidth -#+NAME: wpf1 +#+NAME: fig:wpf1 [[file:pictures/wpf1.png]] -#+CAPTION: früher Screenshot des WPF Clients -#+ATTR_LATEX: :width .8\textwidth -#+NAME: wpf2 +#+CAPTION: Screenshot der Kundendateneingabeform +#+ATTR_LATEX: :width 6cm +#+NAME: fig:wpf2 [[file:pictures/wpf2.png]] * Offene Punkte Aufgrund enormen Zeitmangels war es leider nicht möglich das Projekt zu -realisieren. In dieser Sektion soll ein kurzer Überblick darüber gegeben werden -welche Punkte in welchem Teil des Projektes noch offen sind und nicht -fertigstellt oder überhaupt angegangen werden konnten. +realisieren. In dieser Sektion soll ein kurzer Überblick darüber gegeben +werden, welche Punkte in welchem Teil des Projektes noch offen sind, nicht +fertigstellt sind oder überhaupt angegangen werden konnten. ** Airline Service @@ -225,8 +229,8 @@ zumindest die erwarteten Daten zurück geliefert. ** Plattform -Aufgrund eines Bugs welcher auch mit Hilfe des Dozenten nicht behoben werden -konnte ist es zur Zeit nicht möglich die Plattform überhaupt zu starten. Das +Aufgrund eines Bugs, welcher auch mit Hilfe des Dozenten nicht behoben werden +konnte, ist es zurzeit nicht möglich die Plattform überhaupt zu starten. Das Provisionieren der Datenbank schlägt mit dem folgenden Fehler fehl. #+CAPTION: Plattform Error @@ -237,53 +241,79 @@ Airline.ExtensionData in Set Airlines. An Entity with Key (PK) will not round-trip when: Entity is type [Plattform.DB.Airline] #+END_EXAMPLE -Die Zimmererfassung für die Hotels konnte zuvor jedoch soweit fertigstellt -werden. Noch offen sind zur Zeit: +Für die Abgabe wurde ein früherer Stand des Codes ausgecheckt, welcher jedoch +insgesamt auch nicht so performt wie er sollte. Der Airline Service und die +Plattform lassen sich jedoch starten. +Die Zimmererfassung, Abbildung:([[fig:room]]), für die Hotels konnte zuvor +jedoch soweit fertigstellt werden. Der Hotelbetreiber kann den Raumtypen und +das Hotel auswählen, sowie die Daten angeben von wann bis wann der Raum frei +ist. Sollte der Raumtyp nicht existieren kann er in einer separaten Form, +Abbildung:([[fig:roomtype]]), erfasst werden. Gleiches gilt auch für das Hotel, +Abbildung:([[fig:hotel]]). + +#+CAPTION: Screenshot der Raumeingabeform +#+ATTR_LATEX: :width 5cm +#+NAME: fig:room +[[file:pictures/selection.png]] + +#+CAPTION: Screenshot der Raumtyp Erstellungsform +#+ATTR_LATEX: :width 5cm +#+NAME: fig:roomtype +[[file:pictures/roomtype.png]] + +#+CAPTION: Screenshot der Hotel Erstellungsform +#+ATTR_LATEX: :width 5cm +#+NAME: fig:hotel +[[file:pictures/hotel.png]] + + +Bei der Plattform noch offene Punkte sind: - Der Plattform Service ist mangels eines passenden Clients komplett - ungetestet. Somit ist unklar ob die Buchung oder Reservationen der + ungetestet. Somit ist unklar, ob die Buchung oder Reservationen der Kombiangebote funktionieren. -- Flüge werden in der Datenbank gespeichert. +- Flüge und ihre Randdaten werden in der Datenbank gespeichert. - Kombiangebote werden in der Datenbank gespeichert. -- Zu buchende Flüge werden an die Fluggesellschaften gemeldet. +- Zu buchende/stornierende Flüge werden an die Fluggesellschaften gemeldet. - Der Service wird innerhalb von 2s aufgebaut, läuft mindestens 30 Tage durch, bietet eine Verfügbarkeit von 0.995 und ist innerhalb von 0.5s ansprechbar. - Bezahlte Reservationen werden fix gebucht. ** WPF Client -Vom WPF Client exisistiert zur Zeit nur das Grundgerüst. Da die Plattform nicht -funktionsfähig war hat der Student am WPF Client gearbeitet soweit es möglich +Vom WPF Client existiert zurzeit nur das Grundgerüst. Da die Plattform nicht +funktionsfähig war, hat der Student am WPF Client gearbeitet soweit es möglich war. Allerdings war dies ohne den WCF Service der Plattform nur sehr beschränkt -möglich. Viel mehr als die graphische Oberfläche existiert zur Zeit nicht. +möglich. Viel mehr als die grafische Oberfläche existiert zurzeit nicht. * Fazit Ein Booking System welches Kombiangebote wie in der Aufgabenstellung verlangt -bereitstellt ist eine uglaublich komplexes System. Das Matching der Flüge zu -passenden Hotelzimmer hat enorm viele Variabeln welche berücksichtigt werden -müssen. +bereitstellt ist eine unglaublich komplexes System. Das Matching der Flüge zu +passenden Hotelzimmer hat enorm viele Variablen welche berücksichtigt werden +müssen. Auch das Zusammenspiel des Clients zur Plattform bietet durchaus einige +Knackpunkte. Dadurch lässt sich das Projekt in keiner Weise innerhalb von ca. 20 Stunden -erstellen. Der Student hat weit über 40 Stunden in das Projekt in Heimarbeit -investiert und kein brauchbares Ergebnis erziehlen können. Für den Studenten -ist dies eine enorm unbefriedigende Situation. +erstellen. Der Student hat bereits weit über 40 Stunden in das Projekt in +Heimarbeit investiert und kein brauchbares Ergebnis erzielen können. Für den +Studenten ist dies eine enorm unbefriedigende Situation. Das .NET und Entity Framework bieten einige interessante Features. Allerdings -wirkt der Code-First Ansatz von Entity Framework so als ob die ganzen +wirkt der Code-First Ansatz von Entity Framework so, als ob die ganzen Überprüfungen in der Applikation gemacht werden sollten anstatt in der -Datenbank. Allenfalls ist das noch eine Altlast von früher allerdings gibt es -heutzutage Frameworks die dies wesentlich eleganter lösen. Der Student findet -dass, das Framework die Datenbank so sauber wie möglich erstellen sollte und es -dem Entwickler möglichst einfach machen sollte erweiterte Features der -Datenbank zu nutzen. +Datenbank. Allenfalls ist das noch eine Altlast von früher. Heutzutage gibt es +Frameworks die dies wesentlich eleganter lösen. Der Student findet dass, das +Framework die Datenbank so sauber wie möglich erstellen sollte und es dem +Entwickler möglichst einfach machen sollte erweiterte Features der Datenbank zu +nutzen. Auch empfindet der Student C# eher als ungeeignet um innerhalb von so kurzer -Zeit ein Projekt zu realiseren. Die Sprache fühlt sich dafür einfach zu sperrig -und die zusätzliche Komplexität durch Visual Studio ist leider nicht immer nur +Zeit ein Projekt zu realisieren Die Sprache fühlt sich dafür einfach zu sperrig +an. Die zusätzliche Komplexität durch Visual Studio ist leider nicht immer nur eine Hilfe. WCF Services sind in der Grundidee eine sehr interessante Technologie und der -Stundet wird WCF Services oder ähnliche Technologien in der Zukunft sicher -inbetracht ziehen. Insbesondere das Teilen der Klassen bietet interessante +Student wird WCF Services oder ähnliche Technologien in der Zukunft sicher +in Betracht ziehen. Insbesondere das Teilen der Klassen bietet interessante Möglichkeiten. diff --git a/docs/normfallstudie.tex b/docs/normfallstudie.tex index e283538..63d8949 100644 --- a/docs/normfallstudie.tex +++ b/docs/normfallstudie.tex @@ -1,16 +1,18 @@ \section{Einführung} -\label{sec:org8fb0510} +\label{sec:orgdb3f13c} -Aufgabe war es ein System aufzubauen welches Hotelbetreibern erlaubt ihre -freien Zimmer auf einem zentralen System zu melden. Das System sollte dann bei -angeschlossenen Fluggesellschaften über einen WCF Service nach passenden Flügen -suchen und diese Verbindung dann als ein Kombiangebot in der Datenbank -speichern. Diese Kombiangebot sollte dann von einem Kunden mithilfe einer -WinForm/WPF Applikation gebucht werden können. +Aufgabe war es ein System aufzubauen, welches Hotelbetreibern und +Fluggesellschaften auf einfach Weise Last Minute Angebote zu erstellen und auf +den Markt zu bringen. + +Das System sollte dann bei angeschlossenen Fluggesellschaften über einen WCF +Service nach passenden Flügen suchen und diese Verbindung dann als ein +Kombiangebot in der Datenbank speichern. Diese Kombiangebot sollte dann von +einem Kunden mithilfe einer WinForm/WPF Applikation gebucht werden können. \section{Ziele} -\label{sec:orgd74726f} +\label{sec:orgf2b95aa} Aus der Aufgabenstellung lassen sich folgende Ziele an die Systeme ableiten. @@ -37,48 +39,50 @@ sein. \end{itemize} \section{Analyse} -\label{sec:orgcdbca69} +\label{sec:orge638b06} Aufgrund der Ziele wurden anschliessend folgende Diagramme ausgearbeitet. \subsection{Verteilungsdiagramm} -\label{sec:org4e02ec7} +\label{sec:org4a69d10} -Das Verteilungsdiagramm, Abbildung:(\ref{fig:org740a4dc}), wurde im -Unterricht ausgearbeitet. Der Klasse erschien es am sinnvollsten wenn die +Das Verteilungsdiagramm, Abbildung:(\ref{fig:org9b29fa0}), wurde im +Unterricht ausgearbeitet. Der Klasse erschien es am sinnvollsten, wenn die Plattform als ASP.NET Applikation erstellt wird und somit auf dem IIS Web Server läuft. Da die Plattform das zentrale System ist, ist es für die -Normfallstudie auch sinnvoll wenn der Datenbank Server auf dem gleichen System +Normfallstudie auch sinnvoll, wenn der Datenbank Server auf dem gleichen System läuft wie die Plattform. In einer realen Umgebung müsste hier allenfalls eine separater Server aufgesetzt werden. Der Airline Service und der WPF Client -wurden entsprechend der Vorgagben als externe Applikationen geplant. +wurden entsprechend der Vorgaben als externe Applikationen geplant. \newpage \begin{landscape} \begin{figure}[htbp] \centering \includegraphics[width=.9\linewidth]{pictures/verteilungsdiagramm.pdf} -\caption{\label{fig:org740a4dc} +\caption{\label{fig:org9b29fa0} Verteilungsdiagramm} \end{figure} \end{landscape} \newpage \subsection{Relationales Modell} -\label{sec:orgfba2251} - -In der Abbildung:(\ref{fig:orgb94eae4}) ist das relationale Modell zu sehen welches durch -den Studenten vorgängig zur Umsetzung erstellt wurde. In der -Abbildung:(\ref{fig:orga89e980}) ist die das relationale Modell zu sehen welches dann -durch das Entity Framework effektiv in der Datenbank erstellt wurde. +\label{sec:org14bf1bc} +Das relationale Modell, Abbildung:(\ref{fig:org54ab668}), wurde durch den Studenten vor gängig +zur Umsetzung erstellt. In der Abbildung:(\ref{fig:org8d1bc2d}) ist die das relationale +Modell zu sehen welches, dann durch das Entity Framework effektiv in der +Datenbank erstellt wurde. Wie man sieht, sind sich die beiden Diagramme sehr +ähnlich. Entity Framework erstellt beim Code First Ansatz die Datenbank +ziemlich genau so, wie man sie auch von Hand erstellen würde. Zumindest im Bezug +auf die Tabellen. \newpage \begin{landscape} \begin{figure}[htbp] \centering \includegraphics[width=.9\linewidth]{pictures/rm.pdf} -\caption{\label{fig:orgb94eae4} +\caption{\label{fig:org54ab668} Relationen Modell} \end{figure} \end{landscape} @@ -89,29 +93,29 @@ Relationen Modell} \begin{figure}[htbp] \centering \includegraphics[width=.9\linewidth]{pictures/rmentity.png} -\caption{\label{fig:orga89e980} +\caption{\label{fig:org8d1bc2d} Relationen Modell} \end{figure} \end{landscape} \newpage \section{Zugewiesene Ziele} -\label{sec:org9c0eaf8} +\label{sec:org36a3104} Im Anschluss zu der Analyse hat der Student die Ziele den einzelnen Applikationen zugewiesen. Dies sollte dazu dienen die Zuständigkeiten zu regeln. \subsection{Airline Service} -\label{sec:orgf9c1eec} +\label{sec:org967e670} -Da die Airlnes alle Flugdaten zur Verfügung haben erschien es sinnvoll das -diese einen Service bereitstellen welcher die Parameter Anzahl Passiegere, +Da die Airlines alle Flugdaten zur Verfügung haben erschien es sinnvoll das +diese einen Service bereitstellen, welcher die Parameter Anzahl Passagiere, Start- und Enddatum sowie die Destination aufnimmt. Der Service sollte dann im -Hintergrund automatisch die bereits besetzten Flüge und Flüge welche nicht auf -die restlichen Paramter passen ausfiltern und nur passende Flüge ausgeben. +Hintergrund automatisch die bereits besetzten Flüge und Flüge, welche nicht auf +die restlichen Parameter passen ausfiltern und nur passende Flüge ausgeben. -Desweiteren sollte der Airline Service eine Möglichkeit bieten Flüge zu buchen -sowie zu stornieren. Im Code Ausschnitt:(\ref{airline}) sieht man die Signature +Des Weiteren sollte der Airline Service eine Möglichkeit bieten Flüge zu buchen +sowie zu stornieren. Im Code Ausschnitt:(\ref{airline}) sieht man die Signatur des Airline Services. Respektive des Interfaces davon. \label{airline} @@ -127,7 +131,7 @@ Flight BookFlight(Flight flight, int numberOfSeats); [OperationContract] Flight CancelFlight(Flight flight, int numberOfSeats); \end{sexylisting} - +\newpage Somit wurden dem Airline Service folgende Ziele zugewiesen: \begin{itemize} \item Es dürfen nur freie Flüge in Kombiangeboten vorkommen. @@ -137,20 +141,20 @@ sein. \end{itemize} \subsection{Plattform} -\label{sec:org97f30f6} +\label{sec:orgbf967a7} Die Plattform stellt den Grossteil der Logik und Funktionen bereit. Sie sollte -einerseits ein Möglichkeit bieten damit die Hotelbetreiber Zimmer und ihre +einerseits eine Möglichkeit bieten damit die Hotelbetreiber Zimmer und ihre Hotels erfassen könne sowie das Matching zwischen Hotelzimmer und Flügen erledigen. -Zusätzlich sollte sie die erstellten Komiangebote and den WPF Client -weiterleiten können. Auch das entgegennehmen der Bestellungen sowie +Zusätzlich sollte sie die erstellten Kombiangebote und den WPF Client +weiterleiten können. Auch das Entgegennehmen der Bestellungen sowie Reservationen des WPF Clients entgegennehmen und an den Airline Service weiterleiten. Auch die Überprüfung der Reservationszeit sowie die entsprechende -Reakation war für die Plattform geplant. +Reaktion war für die Plattform geplant. -Zu guter letzt sollten dann die reservertierten respektive gebuchten Flüge an +Zu guter Letzt sollten dann die reservierten respektive gebuchten Flüge an die passende Airline zur Buchung weitergeleitet werden. Im Falle einer Stornierung des Angebots müsste dann natürlich auch noch der Flug storniert werden. @@ -178,7 +182,7 @@ Die Signatur des Plattform Services ist im Codebeispiel:(\ref{plattform}) zu sehen. \label{plattform} -\begin{sexylisting}{Plattfrom Service} +\begin{sexylisting}{Plattform Service} [OperationContract] List GetSpecialOffers(); [OperationContract] @@ -196,49 +200,49 @@ List GetCities(); \end{sexylisting} \subsection{WPF Client} -\label{sec:org51a2b6d} +\label{sec:orgd974396} -Der WPF Client sollte nur aus einem simplen graphischen Interface bestehen +Der WPF Client sollte nur aus einem simplen graphischen Interface bestehen, welches einem User erlaubt hätte nach Städten und Daten zu filtern und ihm dann die entsprechenden Kombiangebote angezeigt hätte. Das gewünschte Angebot hätte er dann über den WCF Service auf der Plattform reservieren oder direkt buchen -können. Zwei frühe Screenshots des Clients sind in der Abbildung:(\ref{fig:orga2f98a0}) und -Abbildung:(\ref{fig:org230721d}) zu sehen. +können. Die folgenden zwei Screenshots, Abbildung:(\ref{fig:org91c1dd3}) und (\ref{fig:orgc096aff}), +zeigen einen frühen Stand des Clients. \begin{figure}[htbp] \centering \includegraphics[width=.8\textwidth]{pictures/wpf1.png} -\caption{\label{fig:orga2f98a0} -früher Screenshot des WPF Clients} +\caption{\label{fig:org91c1dd3} +Screenshot des Client Hauptfensters} \end{figure} \begin{figure}[htbp] \centering -\includegraphics[width=.8\textwidth]{pictures/wpf2.png} -\caption{\label{fig:org230721d} -früher Screenshot des WPF Clients} +\includegraphics[width=6cm]{pictures/wpf2.png} +\caption{\label{fig:orgc096aff} +Screenshot der Kundendateneingabeform} \end{figure} \section{Offene Punkte} -\label{sec:org514fb95} +\label{sec:org49618f0} Aufgrund enormen Zeitmangels war es leider nicht möglich das Projekt zu -realisieren. In dieser Sektion soll ein kurzer Überblick darüber gegeben werden -welche Punkte in welchem Teil des Projektes noch offen sind und nicht -fertigstellt oder überhaupt angegangen werden konnten. +realisieren. In dieser Sektion soll ein kurzer Überblick darüber gegeben +werden, welche Punkte in welchem Teil des Projektes noch offen sind, nicht +fertigstellt sind oder überhaupt angegangen werden konnten. \subsection{Airline Service} -\label{sec:orgeb5d070} +\label{sec:org928bde7} Soweit der Student dies zum jetzigen Zeitpunkt beurteilen kann ist der Airline Service soweit abgeschlossen. In ersten nicht dokumentierter Tests wurden zumindest die erwarteten Daten zurück geliefert. \subsection{Plattform} -\label{sec:orgfe10e28} +\label{sec:orgbd6a22f} -Aufgrund eines Bugs welcher auch mit Hilfe des Dozenten nicht behoben werden -konnte ist es zur Zeit nicht möglich die Plattform überhaupt zu starten. Das +Aufgrund eines Bugs, welcher auch mit Hilfe des Dozenten nicht behoben werden +konnte, ist es zurzeit nicht möglich die Plattform überhaupt zu starten. Das Provisionieren der Datenbank schlägt mit dem folgenden Fehler fehl. \begin{verbatim} @@ -248,57 +252,89 @@ Airline.ExtensionData in Set Airlines. An Entity with Key (PK) will not round-trip when: Entity is type [Plattform.DB.Airline] \end{verbatim} -Die Zimmererfassung für die Hotels konnte zuvor jedoch soweit fertigstellt -werden. Noch offen sind zur Zeit: +Für die Abgabe wurde ein früherer Stand des Codes ausgecheckt, welcher jedoch +insgesamt auch nicht so performt wie er sollte. Der Airline Service und die +Plattform lassen sich jedoch starten. +Die Zimmererfassung, Abbildung:(\ref{fig:orga9e5c58}), für die Hotels konnte zuvor +jedoch soweit fertigstellt werden. Der Hotelbetreiber kann den Raumtypen und +das Hotel auswählen, sowie die Daten angeben von wann bis wann der Raum frei +ist. Sollte der Raumtyp nicht existieren kann er in einer separaten Form, +Abbildung:(\ref{fig:orga543285}), erfasst werden. Gleiches gilt auch für das Hotel, +Abbildung:(\ref{fig:org3a14ab5}). + +\begin{figure}[htbp] +\centering +\includegraphics[width=5cm]{pictures/selection.png} +\caption{\label{fig:orga9e5c58} +Screenshot der Raumeingabeform} +\end{figure} + +\begin{figure}[htbp] +\centering +\includegraphics[width=5cm]{pictures/roomtype.png} +\caption{\label{fig:orga543285} +Screenshot der Raumtyp Erstellungsform} +\end{figure} + +\begin{figure}[htbp] +\centering +\includegraphics[width=5cm]{pictures/hotel.png} +\caption{\label{fig:org3a14ab5} +Screenshot der Hotel Erstellungsform} +\end{figure} + + +Bei der Plattform noch offene Punkte sind: \begin{itemize} \item Der Plattform Service ist mangels eines passenden Clients komplett -ungetestet. Somit ist unklar ob die Buchung oder Reservationen der +ungetestet. Somit ist unklar, ob die Buchung oder Reservationen der Kombiangebote funktionieren. -\item Flüge werden in der Datenbank gespeichert. +\item Flüge und ihre Randdaten werden in der Datenbank gespeichert. \item Kombiangebote werden in der Datenbank gespeichert. -\item Zu buchende Flüge werden an die Fluggesellschaften gemeldet. +\item Zu buchende/stornierende Flüge werden an die Fluggesellschaften gemeldet. \item Der Service wird innerhalb von 2s aufgebaut, läuft mindestens 30 Tage durch, bietet eine Verfügbarkeit von 0.995 und ist innerhalb von 0.5s ansprechbar. \item Bezahlte Reservationen werden fix gebucht. \end{itemize} \subsection{WPF Client} -\label{sec:orgc557364} +\label{sec:orga9fb630} -Vom WPF Client exisistiert zur Zeit nur das Grundgerüst. Da die Plattform nicht -funktionsfähig war hat der Student am WPF Client gearbeitet soweit es möglich +Vom WPF Client existiert zurzeit nur das Grundgerüst. Da die Plattform nicht +funktionsfähig war, hat der Student am WPF Client gearbeitet soweit es möglich war. Allerdings war dies ohne den WCF Service der Plattform nur sehr beschränkt -möglich. Viel mehr als die graphische Oberfläche existiert zur Zeit nicht. +möglich. Viel mehr als die grafische Oberfläche existiert zurzeit nicht. \section{Fazit} -\label{sec:orgbf428dc} +\label{sec:org9560ca2} Ein Booking System welches Kombiangebote wie in der Aufgabenstellung verlangt -bereitstellt ist eine uglaublich komplexes System. Das Matching der Flüge zu -passenden Hotelzimmer hat enorm viele Variabeln welche berücksichtigt werden -müssen. +bereitstellt ist eine unglaublich komplexes System. Das Matching der Flüge zu +passenden Hotelzimmer hat enorm viele Variablen welche berücksichtigt werden +müssen. Auch das Zusammenspiel des Clients zur Plattform bietet durchaus einige +Knackpunkte. Dadurch lässt sich das Projekt in keiner Weise innerhalb von ca. 20 Stunden -erstellen. Der Student hat weit über 40 Stunden in das Projekt in Heimarbeit -investiert und kein brauchbares Ergebnis erziehlen können. Für den Studenten -ist dies eine enorm unbefriedigende Situation. +erstellen. Der Student hat bereits weit über 40 Stunden in das Projekt in +Heimarbeit investiert und kein brauchbares Ergebnis erzielen können. Für den +Studenten ist dies eine enorm unbefriedigende Situation. Das .NET und Entity Framework bieten einige interessante Features. Allerdings -wirkt der Code-First Ansatz von Entity Framework so als ob die ganzen +wirkt der Code-First Ansatz von Entity Framework so, als ob die ganzen Überprüfungen in der Applikation gemacht werden sollten anstatt in der -Datenbank. Allenfalls ist das noch eine Altlast von früher allerdings gibt es -heutzutage Frameworks die dies wesentlich eleganter lösen. Der Student findet -dass, das Framework die Datenbank so sauber wie möglich erstellen sollte und es -dem Entwickler möglichst einfach machen sollte erweiterte Features der -Datenbank zu nutzen. +Datenbank. Allenfalls ist das noch eine Altlast von früher. Heutzutage gibt es +Frameworks die dies wesentlich eleganter lösen. Der Student findet dass, das +Framework die Datenbank so sauber wie möglich erstellen sollte und es dem +Entwickler möglichst einfach machen sollte erweiterte Features der Datenbank zu +nutzen. Auch empfindet der Student C\# eher als ungeeignet um innerhalb von so kurzer -Zeit ein Projekt zu realiseren. Die Sprache fühlt sich dafür einfach zu sperrig -und die zusätzliche Komplexität durch Visual Studio ist leider nicht immer nur +Zeit ein Projekt zu realisieren Die Sprache fühlt sich dafür einfach zu sperrig +an. Die zusätzliche Komplexität durch Visual Studio ist leider nicht immer nur eine Hilfe. WCF Services sind in der Grundidee eine sehr interessante Technologie und der -Stundet wird WCF Services oder ähnliche Technologien in der Zukunft sicher -inbetracht ziehen. Insbesondere das Teilen der Klassen bietet interessante +Student wird WCF Services oder ähnliche Technologien in der Zukunft sicher +in Betracht ziehen. Insbesondere das Teilen der Klassen bietet interessante Möglichkeiten. diff --git a/docs/pictures/hotel.png b/docs/pictures/hotel.png new file mode 100644 index 0000000000000000000000000000000000000000..e49c01782e8bcd20f9c6f43cef5a480ffb244243 GIT binary patch literal 5300 zcmd5=XH=70mqt)fxga3r3JRh~5hF;Kdf`TT5vkH5B7|l_uMv`H}mV+=UwkU=Y98jp1t?k@sEvl*e>&5 zW?*1o)6)e$Im2ZJhI5FEjAxc(sPMNlVDi<{GrxH8;?%s!+}ZM)-y>^3GpLJSprem7 z0~i8*=?w67@^N;C__{*A^njY?K{*>F6ITK7CzkJ@(j$&@%M{L$)uIVQ zQ9Pja-@iJDTeB8EVQ-&#UI80NX9$+5x!sJzp4XB%UmEvppL<)YqKePxtH}L_*7sw? zIV$)rdrJ|Q9^Z2;CZ�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 literal 0 HcmV?d00001 diff --git a/docs/pictures/rmentity.png b/docs/pictures/rmentity.png index 2332d5b30d41ac77ba954f8959846a56002a4813..3235c76d5828c26011855a65ca8ba54e1f5a6452 100644 GIT binary patch literal 34647 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 DlX0aY literal 30874 zcmb5Wby!sG+Bduq6%-HJ+YkidNJ+w#APBu3g05L$UIV|; z!Vyma7jy>^sh60TnBy}Fzrp{KIEtw|D%%)4y6D*(K_=EVRz^$?2KGiq)()mNj$7#U zLJ;&2l7c^f>6*AcsbET_R<(WgC0tiT|4qGSS<(d6dqDtr~U+bD_e0nzm$IfESRf z-)8wZfoPqY!1u`5-Ybw^Dzm;~;?%-Zm{Tw(!$F?HWa3a+qK8*PS^5?j^&8s5fm96e z1EhuDGz2csT<{R+;5zx-5(iuyF^ajsrI+IW-yegLqoSgo(*p7vb22w7rl%=^sq{i6>$S{*3wWFV*lQTUMLH36FJ-Etmlx@K@9o>b=AJ=>OCFW~@ErRdljg`>bUT{-d&xWrGI2*?b5_ z*WW&rAHZL|q#741`C#AV8JNL~{I_9_pI&=jNWzUbg}uu7=wS9m;YHmP~`&&1QSJx@lw?6ta3S(Zgz>h;{Co$4`QR9mAk5#*z%YN!WJSQ4_9d57j zwE6w0H3TuE-m#zPN`oJ^@S#%1+4d9mQpEaHrPJIF)y0K_k}L!@xPf^o_}o4y@dY

A$^ucXqR~7NYCNF5E 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 diff --git a/docs/pictures/roomdate.png b/docs/pictures/roomdate.png new file mode 100644 index 0000000000000000000000000000000000000000..d31c9bf9c787ddf67d6a330f881538ba173757a9 GIT binary patch literal 15026 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 NLtUT_O8fb%{{RMhZMOgb literal 0 HcmV?d00001 diff --git a/docs/pictures/selection.png b/docs/pictures/selection.png new file mode 100644 index 0000000000000000000000000000000000000000..1131497f40ca68c405646da9e0374b211bb6400c GIT binary patch literal 23176 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