QS-Doc einige neue Sachen. Lest mal rein!

This commit is contained in:
M.Scholz 2011-12-09 15:21:33 +01:00
parent 096a760fab
commit 432d01e6b5
2 changed files with 92 additions and 18 deletions

View File

@ -2,28 +2,33 @@
\usepackage[latin9]{inputenc} %unter Linux muss latin9 durch utf8 ersetzt werden!!
\usepackage[ngerman]{babel}
\usepackage{enumitem}
%reihenfolge von "hyperref" und "glossaries" ist wichtig!!!! nicht ändern!
\usepackage[pdftitle={Qualitätssicherungsdokument}]{hyperref}
\usepackage[style=altlist]{glossaries}\makeglossaries %reihenfolge von "hyperref" und "glossaries" ist wichtig!!!! nicht ändern!
%\usepackage[style=long,hyper=true,number=page]{glossary}
\usepackage[style=altlist]{glossaries}\makeglossaries
% % GLOSSAR % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % % %
\makeglossaries
%\newglossaryentry{}{name={},description={}}
\newglossaryentry{API}{name={API},description={Application Programming Interface: Programmteil, durch den andere Programme die Funktionalität des eigentlichen Programmes nutzen können}}
\newglossaryentry{User-Front-End}{name={User-Front-End},description={Für den Benutzer sichtbarer Teil der Anwendung}}
\newglossaryentry{CO}{name={CO},description={Kohlenstoffmonoxid (chemische Verbindung)}}
\newglossaryentry{CO2}{name={CO2},description={Kohlenstoffdioxid (chemische Verbindung)}}
\newglossaryentry{dB}{name={dB},description={Dezibel: Logarithmische Einheit von Akustikpegeln}}
\newglossaryentry{JSON}{name={JSON},description={JavaScript Object Notation: universelles Datenaustauschformat}}
\newglossaryentry{Parser}{name={Parser},description={Uebersetzung eines (Programm-)Codes in eine neue Struktur/Format}}
\newglossaryentry{Parser}{name={Parser},description={Übersetzung eines (Programm-)Codes in eine neue Struktur/Format}}
\newglossaryentry{PHP}{name={PHP},description={Skriptsprache zur Erstellung dynamischer Webseiten}}
\newglossaryentry{SOAP}{name={SOAP},description={Simple Object Access Protocol: Netzwerkprotokoll zum Austausch XML-basierter Nachrichten}}
\newglossaryentry{UML}{name={UML},description={Modeling Language: Modellierungssprache für Software}}
\newglossaryentry{Unit-Test}{name={Unit-Test},description={Softwaretest zur Überprüfung von Programmteilen (Methoden, Klassen)}}
\newglossaryentry{Use-Case}{name={Use-Case},description={Anwendungsfall: Modellelement in der UML-Sprache}}
\newglossaryentry{Webservice}{name={Webservice},description={Schnittstelle zur Interaktion mit anderen Anwendungen via XML-basierter Nachrichten}}
\newglossaryentry{WSDL}{name={WSDL},description={Web Services Description Language: Beschreibungssprache für Webservices}}
\newglossaryentry{XML}{name={XML},description={Extensible Markup Language: Auszeichnungssprache zur hierarchisch struktierten Darstellung von Daten in Textdatenform}}
\newglossaryentry{XHTML}{name={XHTML},description={Extensible Hypertext Markup Language: Auszeichnungssprache zur strukturierten Darstellung von Texten, Bildern und Hyperlinks in Textform}}
%UML Unified Modeling Language: Modellierungssprache fu?r Software
%Unit-Test Softwaretest zur U?berpru?fung von Programmteilen (Methoden, Klassen)
%Use-Case Anwendungsfall: Modellelement in der UML-Sprache
%Webservice Schnittstelle zur Interaktion mit anderen Anwendungen via XML-basierter Nachrichten WSDL Web Services Description Language: Beschreibungssprache fu?r Webservices
%XML Extensible Markup Language: Auszeichnungssprache zur hierarchisch struktierten Darstellung von Daten in Textdatenform
\begin{document}
@ -51,22 +56,76 @@ In diesem Dokument werden Tests und Prozesse beschrieben, dokumentiert und ausge
\subsection{Das Projekt}
Das Projekt da-sense ist ein großflächiges Sensornetzwerk in Darmstadt. Es besteht aus einer Webapplikation, die dem Nutzer in Zukunft erlauben soll verschiedene Naturerscheinungen wie z.B. Lautstärkepegel, CO- und CO2-Konzentration einzusehen. Die Daten hierfür stammen aus verschiedenen Quellen (Smartphones und Sensoren) und werden in eine Datenbank transferiert, die schließlich über die Webapplikation visualisiert abgerufen werden kann. Bisher konnten die Datenbank und die Webapplikation nur mit den von Smartphones gesendeten Daten umgehen. Im Rahmen des Bachelorpraktikums im Wintersemester 2011/2012 sollen folgende Funktionalitäten hinzukommen:
Das Projekt da-sense ist ein großflächiges Sensornetzwerk in Darmstadt. Es besteht aus einer Webapplikation, die dem Nutzer in Zukunft erlauben soll verschiedene Naturerscheinungen wie z.B. Lautstärkepegel, \gls{CO}- und \gls{CO2}-Konzentration einzusehen. Die Daten hierfür stammen aus verschiedenen Quellen (Smartphones und Sensoren) und werden in eine Datenbank transferiert, die schließlich über die Webapplikation visualisiert abgerufen werden kann. Bisher konnten die Datenbank und die Webapplikation nur mit den von Smartphones gesendeten Daten umgehen. Im Rahmen des Bachelorpraktikums im Wintersemester 2011/2012 sollen folgende Funktionalitäten hinzukommen:
\begin{itemize}
\item Datenbank für neue Sensortypen umstrukturieren
\item Installation von Waspmotes Sensoren auf Straßenbahnen
\item API auf neue Datenbank anpassen und neue Visualisierung des User-Font-End erstellen
\item Android-App
\end{itemize}
Da das Projekt auf insgesamt drei Gruppen aufgeteilt wurde, werden in diesem Dokument ausschließlich die Bereiche der Gruppe 1b behandelt. Der Themenbereich umfasst die Umstellung der API auf eine neue Datenbank und die Erstellung einer neuen Visualisierung des User-Front-End.
Da das Projekt auf insgesamt drei Gruppen aufgeteilt wurde, werden in diesem Dokument ausschließlich die Bereiche der Gruppe 1b behandelt. Der Themenbereich umfasst die Umstellung der \gls{API} auf eine neue Datenbank und die Erstellung einer neuen Visualisierung des \gls{User-Front-End}.
\section{Qualitätsziele}
In diesem Abschnitt werden die zu testenden Qualitätsziele genauer spezifiziert
\subsection{Code}
Hier ein zitat mit verweis: >>Damit nur hochwertiges Wissen erzeugt und als Grundlage für weitere Arbeiten nutzbar gemacht wird, gibt es internationale Standards für wissenschaftliche Qualität<< \cite[S.9]{bss+:2008}
\subsection{Codequalität}
>>Any fool can write code that a computer can understand. Good programmers write code that humans can understand.<< \cite{fowler}. \\
Die folgenden Anforderungen und Vereinbarungen sollen ein gut lesbaren und gut strukturierten Code zur Folge haben.
\begin{itemize}
\item Kommentare: \\
Jede von uns geschriebene, nicht triviale Funktion muss einen Kommentarkopf der folgenden Form besitzen:\\
/** \\
* \textit{Description} \\
* @param \textit{paramtype} \\
* @return \textit{returntype} \\
* @tested \textit{boolean} \\
**/ \\
Wobei \textit{Description} durch einen funktionsbeschreibenden Text, \textit{paramtype} durch den Parametertyp, \textit{returntype} durch den Rückgabewert und \textit{boolean} durch den Wahrheitswert ''true'' bzw. ''false'' zu ersetzen sind.
\item Struktur: \\
Der Code soll folgenden Standards gerecht werden: \\
\begin{itemize}
\item \gls{XHTML} in Version 1.1, standardisiert vom W3C 2010, \href{http://www.w3.org/TR/xhtml11/}{http://www.w3.org/TR/xhtml11/}
\end{itemize}
\item Namenskonventionen: \\
Welche Konventionen legen wir hier fest?
\item Begrenzung der Zeilenlänge: \\
Hab ich im Internet gefunden, finde ich aber für sinnfrei ;)
\end{itemize}
\subsection{Dokumente}
%Hier ein zitat mit verweis: >>Damit nur hochwertiges Wissen erzeugt und als Grundlage für weitere Arbeiten nutzbar gemacht wird, gibt es internationale Standards für wissenschaftliche Qualität<< \cite{bss+:2008}
\subsection{Funktionalität}
Funktionalität beschreibt das Vorhandensein von geforderten Funktionen mit festgelegten Eigenschaften, die von den Funktionen erfüllt werden \cite{ISO/IEC 9126}. \\
Die Funktionalität lässt sich in die folgenden Punkte gliedern:
\begin{itemize}
\item Angemessenheit: \\
\textit{Eignung von Funktionen für spezielle Aufgaben.}
\item Richtigkeit: \\
\textit{Die Funktionen liefern die richtigen bzw. erwarteteten Ergebnisse.}
\item Interoperabilität: \\
\textit{Fehlerfreie Kooperation mit vorhandenen Systemen.}
\item Sicherheit: \\
\textit{Blockierung von unberechtigtem Zugriff auf vertraulichen Daten (Datenbank).}
\item Ordnungsmäßigkeit: \\
\textit{Einhaltung von anwendungsspezifische Normen und gesetzlichen Bestimmungen.}
\end{itemize}
\subsection{Benutzbarkeit}
\subsection{Geschwindigkeit?}
\subsection{Dokumente ?????}
dokumentqulität
\subsection{Prozess}
@ -79,6 +138,20 @@ prozessqualit
\section{Maßnahmen zum Erreichen der Qualitätsziele}
\subsection{Qualitätswerkzeuge}
\begin{itemize}
\item Netbeans:\\
Als integrierte Entwicklungsumgebung (IDE) wird Netbeans verwendet, wodurch Syntxfehler vermieden werden.
\item XDebug:\\
Diagnose-Werkzeug (PHP-Debugger). Dient dem Auffinden von Fehlern und Code-Coverage Tests bei Ausführung des Programms.
\item soapUI:\\
...
\item PHPUnit:\\
...
\end{itemize}
\subsection{Code}
maßnahmen für codequalität
@ -106,7 +179,7 @@ F
\begin{tabular}{||p{5.4cm}||p{11cm}||}
\hline \rule[-2ex]{0pt}{5.5ex} Noch eine version & test \\
\hline \rule[-2ex]{0pt}{5.5ex} test & hier soll ein Link zu \gls[hyper]{CO2} und \gls{CO2} stehen \\
\hline \rule[-2ex]{0pt}{5.5ex} test & dies soll nur ein langer sinnloser text werden, damit man überprüfen kann, ob auch der zeilenumbruch in der tabelle funktioniert.\\
\hline \rule[-2ex]{0pt}{5.5ex} v. 0.0.1 - 09.12.2011 - MS & Einleitung, Qualitätsziele (Codequalität, Funktionalität), Qualitätswerkzeuge\\
\hline \rule[-2ex]{0pt}{5.5ex} v. 0.0.0 - 01.12.2011 - MS & Dokument angelegt\\
\hline
\end{tabular}
@ -125,10 +198,11 @@ F
%fügt elemenmte dem toc hinzu
\addcontentsline{toc}{section}{Literatur}
\begin{thebibliography}{------}
\bibitem[BSS+2008]{bss+:2008} Helmut Balzert, Christian Schäfer, Marion Schröder, Uwe Kern. \emph{Wissenschaftliches Arbeiten - Wissenschaft, Quellen, Artefakte, Organisation, Präsentation}, Witten: W3L, 2008
\bibitem[ISO9126]{iso:9126} International Organization for Standardization.\emph{ISO/IEC 9126}
\bibitem[BSS+2008]{bss+:2008} Helmut Balzert, Christian Schäfer, Marion Schröder, Uwe Kern: \emph{Wissenschaftliches Arbeiten - Wissenschaft, Quellen, Artefakte, Organisation, Präsentation}, Witten: W3L, 2008
\bibitem[ISO/IEC 9126]{ISO/IEC 9126} International Organization for Standardization \emph{ISO/IEC 9126} \\Auszug: Wikipedia, \href{http://de.wikipedia.org/wiki/ISO/IEC_9126}{http://de.wikipedia.org/wiki/ISO/IEC\_9126}
\bibitem[ISO9001]{iso:9001} International Organization for Standardization. \emph{ISO 9001}, 12.2008
\bibitem[WIKI2011]{wiki:2011} Wikipedia, die freie Enzyklopädie. \emph{WIKIPEDIA}, Stand: 26.02.2011
\bibitem[FBBOR+1999]{fowler} Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts: \emph{Refactoring: Improving the Design of Existing Code}, Written: 1999
\bibitem[WIKI2011]{wiki:2011} Wikipedia, die freie Enzyklopädie. \emph{WIKIPEDIA}, Stand: 12.12.2011
\end{thebibliography}