From 7cf7f36a17a91c8979a1a8ce1d49dc7de188a762 Mon Sep 17 00:00:00 2001 From: "M.Scholz" Date: Tue, 24 Jan 2012 16:06:00 +0100 Subject: [PATCH] qs --- ws2011/BP/QS-Dokument/QS-Dokument.pdf | Bin 119730 -> 119517 bytes ws2011/BP/QS-Dokument/QS-Dokument.tex | 90 +++++++++++--------------- 2 files changed, 36 insertions(+), 54 deletions(-) diff --git a/ws2011/BP/QS-Dokument/QS-Dokument.pdf b/ws2011/BP/QS-Dokument/QS-Dokument.pdf index 5feab78a347aa222632ee5943fcbe9bf70a10df3..996305cdb7d4c44cf2ec8943eabbb0d7c3b52eaf 100644 GIT binary patch delta 31017 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 delta 31267 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 WI-8lpv9NG+adN^@P)I0A!u=l!+qS&` diff --git a/ws2011/BP/QS-Dokument/QS-Dokument.tex b/ws2011/BP/QS-Dokument/QS-Dokument.tex index 2a8dc93f..e603cdd8 100644 --- a/ws2011/BP/QS-Dokument/QS-Dokument.tex +++ b/ws2011/BP/QS-Dokument/QS-Dokument.tex @@ -76,24 +76,24 @@ Version: 0.9.0 vom 24.01.2012} \textbf{Auftraggeber:} & \textbf{Immanuel Schweizer} \\ & Telecooperation Group TU Darmstadt \\ & Büro: S2|02 A216 \\ - & mail: \href{mailto:schweizer@tk.informatik.tu-darmstadt.de}{schweizer@tk.informatik.tu-darmstadt.de} \\ + & E-Mail: \href{mailto:schweizer@tk.informatik.tu-darmstadt.de}{schweizer@tk.informatik.tu-darmstadt.de} \\ & \\ & \\ \textbf{Teamleiter:} & \textbf{Dominik Fischer} \\ - & mail: \href{mailto:dfischer@stud.tu-darmstadt.de}{dfischer@stud.tu-darmstadt.de} \\ + & E-Mail: \href{mailto:dfischer@stud.tu-darmstadt.de}{dfischer@stud.tu-darmstadt.de} \\ & \\ & \\ \textbf{Gruppe:} & \textbf{Murat Batu} \\ - & mail: \href{mailto:wu07hufy@rbg.informatik.tu-darmstadt.de}{wu07hufy@rbg.informatik.tu-darmstadt.de} \\ + & E-Mail: \href{mailto:wu07hufy@rbg.informatik.tu-darmstadt.de}{wu07hufy@rbg.informatik.tu-darmstadt.de} \\ & \\ & \textbf{Ulf Gebhardt} \\ - & mail: \href{mailto:hu56nifa@rbg.informatik.tu-darmstadt.de}{hu56nifa@rbg.informatik.tu-darmstadt.de} \\ + & E-Mail: \href{mailto:hu56nifa@rbg.informatik.tu-darmstadt.de}{hu56nifa@rbg.informatik.tu-darmstadt.de} \\ & \\ & \textbf{Lulzim Murati} \\ - & mail: \href{mailto:l\_murati@rbg.informatik.tu-darmstadt.de}{l\_murati@rbg.informatik.tu-darmstadt.de} \\ + & E-Mail: \href{mailto:l\_murati@rbg.informatik.tu-darmstadt.de}{l\_murati@rbg.informatik.tu-darmstadt.de} \\ & \\ & \textbf{Michael Scholz} \\ - & mail: \href{mailto:mi48azih@rbg.informatik.tu-darmstadt.de}{mi48azih@rbg.informatik.tu-darmstadt.de} \\ + & E-Mail: \href{mailto:mi48azih@rbg.informatik.tu-darmstadt.de}{mi48azih@rbg.informatik.tu-darmstadt.de} \\ \end{tabular} @@ -123,9 +123,16 @@ Der Themenbereich umfasst die Umstellung der \gls{API} auf eine neue Datenbank u \section{Qualitätsziele} +\subsection{Benutzbarkeit} +\label{Ziel:Benutzbarkeit} +Die Benutzbarkeit unterteilen wir, wie vom Auftraggeber im zweiten Teil des Praktikums gefordert, in die drei Qualitätsmerkmale \textit{Verständlichkeit}, \textit{Bedienbarkeit} und \textit{Attraktivität}, welche wir nach \cite{ISO/IEC 9126} definieren. \\ \\ +Eine intuitive und leicht bedienbare Benutzeroberfläche steigert die Aufmerksamkeit des Besuchers und verhilft dem Projekt zu einem höheren Bekanntheitsgrad. Hierbei kommt eine moderne und attraktive Visualisierung der Daten zum Einsatz, die die Informationserfassung unterstützt. Durch das Bekanntwerden des Projekts erhofft sich unser Auftraggeber eine breite Verteilung der kommenden da-sense Android-App, mit der Benutzer Daten sammeln und in die Datenbank transferieren können. Die Daten sind anschließend über die Webapplikation abrufbar. + + + \subsection{Funktionalität} \label{Ziel:Funktionalitaet} -Die Funktionalität unterteilen wir in die drei Qualitätsmerkmale \textit{Richtigkeit}, \textit{Interoperabilität} und \textit{Sicherheit}, welche wir nach \cite{ISO/IEC 9126} definieren. Diese Punkte werden von unserem Auftraggeber gefordert. +Die Funktionalität unterteilen wir, wie vom Auftraggeber gefordert, in die drei Qualitätsmerkmale \textit{Richtigkeit}, \textit{Interoperabilität} und \textit{Sicherheit}, welche wir nach \cite{ISO/IEC 9126} definieren. \begin{itemize} \item Richtigkeit: \\ Da an dem gesamten Projekt da-sense viele Studenten mitwirken, können wir nicht für jede existierende Funktion die Richtigkeit garantieren. Wir beschränken uns hierbei auf die Funktionen der Datenbankinteraktionen und der Darstellung der neuen Visualisierung, welche von uns selbst implementiert werden. @@ -135,16 +142,12 @@ Das Merkmal der Sicherheit wird beim Datenaustausch zwischen Smartphones bzw. \g Das Merkmal der Interoperabilität wird im zweiten Teil des Praktikums, bei der Visualisierung der gesammelten Daten, gewährleistet. Die Darstellung der gesammelten Daten muss in allen gängigen Webbrowsern (Firefox, Chrome, Internet Explorer und Safari) fehlerfrei sein. Wir beschränken uns bei den angegebenen Browsern auf die jeweilige aktuelle Version. Dies ist notwendig, da die neue Visualisierung auf \gls{HTML5} basiert. \end{itemize} -\subsection{Benutzbarkeit} -\label{Ziel:Benutzbarkeit} -Die Benutzbarkeit unterteilen wir in die drei Qualitätsmerkmale \textit{Verständlichkeit}, \textit{Bedienbarkeit} und \textit{Attraktivität}, welche wir nach \cite{ISO/IEC 9126} definieren. Diese Punkte werden von unserem Auftraggeber im zweiten Teil des Praktikums gefordert. \\ \\ -Eine intuitive und leicht bedienbare Benutzeroberfläche steigert die Aufmerksamkeit des Besuchers und verhilft dem Projekt zu einem höheren Bekanntheitsgrad. Hierbei kommt eine moderne und attraktive Visualisierung der Daten zum Einsatz, die die Informationserfassung unterstützt. Durch das Bekanntwerden des Projekts erhofft sich unser Auftraggeber eine breite Verteilung der kommenden da-sense Android-App, mit der Benutzer Daten sammeln und in die Datenbank transferieren können. Die Daten sind anschließend über die Webapplikation abrufbar. \subsection{Erweiterbarkeit} \label{Ziel:Codequalitaet} >>Any fool can write code that a computer can understand. Good programmers write code that humans can understand.<< \cite{fowler}. \\ \\ -Der Quellcode des Projektes ist offen für Erweiterungen und wird von weiteren Gruppen genutzt. Daher muss darauf geachtet werden, dass sämtliche Codebausteine auch für Außenstehende lesbar und verständlich sind. Geplant ist die Veröffentlichung des Quellcodes, so dass auch unifremde Entwickler Zugriff haben und von der bestehenden Codequalität profitieren. Es werden die Open Standards nach \cite{opensource.org} angewandt. Diese schließen den Einsatz von kommerziellen Tools im Projekt aus. +Der Quellcode des Projektes ist offen für Erweiterungen und wird von weiteren Gruppen genutzt. Daher muss darauf geachtet werden, dass sämtliche Codebausteine auch für Außenstehende lesbar und verständlich sind. Geplant ist die Veröffentlichung des Quellcodes, so dass auch unifremde Entwickler Zugriff haben und von der bestehenden Codequalität profitieren. Es werden die Open Standards nach \cite{opensource.org} angewandt. Diese schließen unter anderem den Einsatz von kommerziellen Tools im Projekt aus. @@ -155,44 +158,9 @@ Der Quellcode des Projektes ist offen f \section{Maßnahmen zum Erreichen der Qualitätsziele} -%\subsection{Qualitätswerkzeuge} -%\label{Masnahme:Qualitaetswerkzeuge} -%\begin{itemize} -%\item FireBug: \\ -%Dient der Fehlersuche, Bearbeitung und Monitoring des \gls{Webinterface}. FireBug ermöglicht uns die Ladezeiten einzelner Seitenelemente zu analysieren. Dies wird bei der neuen Visualisierung, deren Berechnung mittels HTML5 clientseitig ablaufen soll, von Bedeutung sein. -%\item Git: \\ -%Als Versionsverwaltung dient \gls{Git}. Hierdurch ist ein einfacher Codeaustausch mit den übrigen Gruppen von da-sense möglich, wodurch jede Person stets über den aktuellen Code verfügt. Der Vorteil des \gls{Git} gegenüber einem \gls{SVN} ist für uns die Möglichkeit des lokalen commits, wodurch eine lokale Versionierung vorliegt. Somit kann jedes Gruppenmitglied seine Änderungen rückgängig machen. -%\item Netbeans:\\ -%Als integrierte Entwicklungsumgebung (IDE) wird Netbeans verwendet, wodurch Syntaxfehler vermieden werden. -%\item PHPUnit:\\ -%Testframework für PHP. Es beinhaltet eine Testumgebung für Datenbankinteraktionen, was für unser Projekt von Vorteil ist. Zudem arbeitet es mit XDebug zusammen und ermöglicht die Erstellung von CodeCoverage Analysen. -%\item soapUI:\\ -%Freies Werkzeug, welches dem Testen des Webservices dient. Hierdurch ist es möglich manuelle Anfragen an den Webservice zu stellen und die Antworten auszuwerten. Zudem beinhaltet soapUI eine umfangreiche Testsuite. -%\item XDebug:\\ -%Diagnose-Werkzeug (PHP-Debugger). Dient dem Auffinden von Fehlern und Code-Coverage Tests bei Ausführung des Programms. -%\end{itemize} - - -\subsection{Funktionalität} -\label{Masnahme:Funktionalitaet} % ß wird von LaTex nicht akzeptiert als Label -Zur Sicherung der einzelnen Funktionalitätsmerkmale werden die folgenden Maßnahmen ergriffen: -\begin{itemize} -\item Richtigkeit: \\ -Zur Sicherstellung der Richtigkeit werden \glspl{whitebox} mit \gls{PHPUnit} und \glspl{blackbox} mit \gls{Selenium} durchgeführt. Die korrekten Datenbankinteraktionen werden durch die Einhaltung der Vorgaben von \gls{Propel} sichergestellt. \gls{PHPUnit} erlaubt durch die integrierten Funktionen das einfache Testen von \gls{PHP}-Methoden. Somit können auftretende Fehler schnell beseitigt werden. \gls{Selenium} testet automatisiert die Anbindung der Daten an die Visualisierung. Hierzu wird eine Benutzereingabe aufgezeichnet, die nun im weiteren Entwicklungsprozess durch Selenium wiederholt ausgeführt werden kann. - -\item Sicherheit: \\ -Das von uns verwendete \gls{ORM} \gls{Propel} nutzt \glspl{PreparedStatement}, mit denen sich \glspl{SQL-Injection} wirksam unterbinden lassen. Hierbei werden \gls{SQL}-Code und Daten getrennt. Zudem erfordert Propel keine \gls{SQL} Kentnisse, wodurch für neue Entwickler der Einstieg erleichtert wird. Der Eintrag der Daten über die \gls{API} erfolgt mittels HTTP-GET Parameter. Bevor die Aufnahme neuer Daten in die Datenbank erfolgen kann, ist eine Authentifizierung des Nutzers notwendig. Die Implementierung der Authentifizierung unterliegt nicht unserem Aufgabenbereich. - -\item Interoperabilität: \\ -Um die Interoperabilität mit den einzelnen Webbrowsern sicherzustellen, werden manuelle Tests durchgeführt. Hierzu wird jeweils die aktuelle Version des Webbrowsers verwendet. Jeder Browser wird mit denselben Benutzereingaben ausgeführt. Die jeweiligen Ausgaben erlauben einen direkten Vergleich. Außerdem werden im Rahmen der Benutzerstudie Fragebögen an Probanden ausgegeben. Die Auswertung dieser Fragebögen ermöglicht es uns, Rückschlüsse auf eventuell auftretende Fehler in der Visualisierung zu ziehen und zu beseitigen. -\end{itemize} - - - \subsection{Benutzbarkeit} \label{Masnahme:Benutzbarkeit} -% TODO: -> Die Benutzerstudie kann das Qualitätsmerkmal nicht sicherstellen. Sie kann nur Grundlage für anschließende Maßnahmen sein! -Die Benutzerstudie wird in der ersten Märzwoche 2012 (Kalenderwoche 9) durchgeführt. Somit bleibt uns genug Zeit die Ergebnisse auszuwerten und Schwachstellen in der Benutzeroberfläche zu beseitigen. +In der ersten Märzwoche 2012 (Kalenderwoche 9) wird eine Benutzerstudie durchgeführt. Somit bleibt uns genug Zeit die Ergebnisse auszuwerten und Schwachstellen in der Benutzeroberfläche zu beseitigen. Zur Benutzerstudie werden freiwilligen Probanden Fragebögen ausgeteilt, welche der Bewertung der einzelnen Kriterien (Abschnitt \ref{Ziel:Benutzbarkeit}) der Benutzbarkeit des \glspl{Webinterface} dienen. Durch die Benutzerstudie können somit Defizite des \glspl{Webinterface} aufgespürt und beseitigt werden. \\ \\ Das Ziel der Benutzerstudie ist es eine Rückmeldung zu erhalten, ob und wie sich der Benutzer auf der Website zurechtfindet. Es gilt herauszufinden, ob der User in einer für ihn angemessenen Zeit die gewünschten Informationen abrufen kann. Da das fertige Projekt eine breite Masse an Personen erreichen wird, ist es wichtig, dass die Benutzerstudie möglichst viele verschiedene Personengruppen umfasst. Das heißt, es werden Personen unterschiedlichen Alters und mit unterschiedlicher Interneterfahrung ausgewählt. Zudem können durch die Studie unvorhersehbare Probleme entdeckt werden, da ein Benutzer auf eine andere Art und Weise mit der Website interagiert als ein Entwickler. \newline \\ \textbf{Was wir wissen wollen:} @@ -212,16 +180,32 @@ Die Beobachtung des Probanden w \item Vergangene Zeit bis zum Erhalt der gewünschten Informationen \end{itemize} - \subsubsection{Fragebogen} \label{fragebogen} -Mit Hilfe des Fragebogens (siehe Anhang) erhalten wir Informationen von verschiedenen Personengruppen. Der Fragebogen lässt sich in die folgenden drei Kategorien unterteilen: +Mit Hilfe des Fragebogens erhalten wir Informationen von verschiedenen Personengruppen. Der Fragebogen lässt sich in die folgenden drei Kategorien unterteilen: \begin{itemize} \item Informationen über den Nutzer \item Bewertung der aktuellen Website \item Verbesserungsvorschläge \end{itemize} -Durch Punkt eins können wir die Probanden in verschiedene Personengruppen einteilen. Die Einteilung der Personen in Gruppen erfolgt durch die Merkmale Alter und Interneterfahrung. Anschließend werden die gesammelten Ergebnisse aus Punkt zwei den einzelnen Personengruppen zugeteilt. Unterscheiden sich die Ergebnisse der einzelnen Gruppen stark, so muss der Auftraggeber entscheiden, für welche Zielgruppe die Benutzeroberfläche optimiert werden soll. Punkt drei erlaubt die Anpassung der Steuerungsoptionen der Website. \\ +Durch Punkt eins können wir die Probanden in verschiedene Personengruppen einteilen. Die Einteilung der Personen in Gruppen erfolgt durch die Merkmale Alter und Interneterfahrung. Anschließend werden die gesammelten Ergebnisse aus Punkt zwei den einzelnen Personengruppen zugeteilt. Unterscheiden sich die Ergebnisse der einzelnen Gruppen stark, so muss der Auftraggeber entscheiden, für welche Zielgruppe die Benutzeroberfläche optimiert werden soll. Punkt drei erlaubt die Anpassung der Steuerungsoptionen der Website. Der Fragebogen ist im Anhang zu finden und kann sich noch bis zur Durchführung der Benutzerstudie ändern. Dies hängt mit dem von uns verwendeten Prozess der Agilen Softwareentwicklung zusammen. Es können Fragen hinzukommen oder aber bereits vorhandene geändert bzw. herausgenommen werden. Die Entscheidung über die zu stellenden Fragen obliegt dem gesamten Team.\\ + + + +\subsection{Funktionalität} +\label{Masnahme:Funktionalitaet} % ß wird von LaTex nicht akzeptiert als Label +Zur Sicherung der einzelnen Funktionalitätsmerkmale werden die folgenden Maßnahmen ergriffen: +\begin{itemize} +\item Richtigkeit: \\ +Zur Sicherstellung der Richtigkeit werden \glspl{whitebox} mit \gls{PHPUnit} und \glspl{blackbox} mit \gls{Selenium} durchgeführt. Die korrekten Datenbankinteraktionen werden durch die Einhaltung der Vorgaben von \gls{Propel} sichergestellt. \gls{PHPUnit} erlaubt durch die integrierten Funktionen das einfache Testen von \gls{PHP}-Methoden. Somit können auftretende Fehler schnell beseitigt werden. \gls{Selenium} testet automatisiert die Anbindung der Daten an die Visualisierung. Hierzu wird eine Benutzereingabe aufgezeichnet, die nun im weiteren Entwicklungsprozess durch Selenium wiederholt ausgeführt werden kann. + +\item Sicherheit: \\ +Das von uns verwendete \gls{ORM} \gls{Propel} nutzt \glspl{PreparedStatement}, mit denen sich \glspl{SQL-Injection} wirksam unterbinden lassen. Hierbei werden \gls{SQL}-Code und Daten getrennt. Zudem erfordert Propel keine \gls{SQL} Kentnisse, wodurch für neue Entwickler der Einstieg erleichtert wird. Der Eintrag der Daten über die \gls{API} erfolgt mittels HTTP-GET Parameter. Bevor die Aufnahme neuer Daten in die Datenbank erfolgen kann, ist eine Authentifizierung des Nutzers notwendig. Die Implementierung der Authentifizierung unterliegt nicht unserem Aufgabenbereich. + +\item Interoperabilität: \\ +Um die Interoperabilität mit den einzelnen Webbrowsern sicherzustellen, werden manuelle Tests durchgeführt. Hierzu wird jeweils die aktuelle Version des Webbrowsers verwendet. Jeder Browser wird mit denselben Benutzereingaben ausgeführt. Die jeweiligen Ausgaben erlauben einen direkten Vergleich. Außerdem werden im Rahmen der Benutzerstudie Fragebögen an Probanden ausgegeben. Die Auswertung dieser Fragebögen ermöglicht es uns, Rückschlüsse auf eventuell auftretende Fehler in der Visualisierung zu ziehen und zu beseitigen. +\end{itemize} + \subsection{Erweiterbarkeit} @@ -229,7 +213,7 @@ Durch Punkt eins k Um das Ziel der Erweiterbarkeit sicherzustellen, treffen wir folgende Vereinbarungen: \begin{itemize} \item Codedokumentation: \\ -Jede von uns geschriebene Funktion besitzt einen Kommentarkopf der folgenden Form: \\ +Jede von uns geschriebene Funktion besitzt einen vom geläufigen Javadoc-Format inspirierten Kommentarkopf der folgenden Form: \\ /** \\ * \textit{Description} \\ * @param \textit{paramtype} \\ @@ -259,8 +243,6 @@ Die aufgef \subsubsection{Fragebogen} -Der folgende Fragebogen kann sich während des gesamten Projekts ändern, da wir uns für den Prozess der \glspl{Agile Softwareentwicklung} entschieden haben und somit gut auf sich änderte Anforderungen reagieren können. Es können neue Fragen hinzukommen oder aber bereits vorhandene geändert bzw. herausgenommen werden. Die Entscheidung über die zu stellenden Fragen obliegt dem gesamten Team. - \begin{enumerate} \item Wie alt sind Sie?