\documentclass[10pt]{article}
%\documentclass[10pt,a4paper,DIV15]{scrartcl}

\usepackage{ngerman,a4}
\usepackage{amstext}
\usepackage{amssymb}
\usepackage{amsmath}
%\usepackage{stmaryrd}
\usepackage{enumerate}
%\usepackage{alltt}
\usepackage[latin1]{inputenc}
%\usepackage{graphicx}
\usepackage{cancel}

\thispagestyle{empty}

\title{Softwaretechnik (WS 2005/2006) - Übungsblatt 3}
\author{Jan Hendrik Dithmar - Matrikelnummer 2031259 \\
		Übungsgruppe Mi, 8-10 Uhr \\
		Dirk Heine - Matrikelnummer 2030941 \\
		Übungsgruppe Di, 14-16 Uhr
	}
\date{}

\begin{document}

\newcommand{\AND}{\ensuremath{\wedge}}
\newcommand{\OR}{\ensuremath{\vee}}
\newcommand{\SetR}{\ensuremath{\mathbb{R}}}
\newcommand{\SetN}{\ensuremath{\mathbb{N}}}
\newcommand{\SetC}{\ensuremath{\mathbb{C}}}
\newcommand{\SetZ}{\ensuremath{\mathbb{Z}}}
\newcommand{\SetQ}{\ensuremath{\mathbb{Q}}}
\newcommand{\SetB}{\ensuremath{\mathbb{B}}}
\newcommand{\R}{\ensuremath{\mathbb{R}}}
\newcommand{\N}{\ensuremath{\mathbb{N}}}
\newcommand{\C}{\ensuremath{\mathbb{C}}}
\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
\newcommand{\Q}{\ensuremath{\mathbb{Q}}}
\newcommand{\B}{\ensuremath{\mathbb{B}}}
\newcommand{\QED}{\ensuremath{\hspace*{\fill}\square}}
\newcommand{\FLASH}{\ensuremath{\hspace*{\fill}\lightning}}
\newcommand{\OnotO}{\ensuremath{\mathcal{O}}}
\newcommand{\bild}[4]{
	\begin{figure}[htpb]
		\centering
			\includegraphics[width=#1cm]{#2}\\[0.2cm]
			\caption{#3}
			\label{#4}
	\end{figure}
	}

\maketitle

\newpage
\section*{Aufgabe 1}
\subsubsection*{1.}
Eric Raymond berichtet in seinem Artikel \glqq The Luxury of Ignorance: An Open-Source Horror Story\grqq\ ein grundsätzliches Problem der Open-Source Bewegung. Open-Source Software wird meist von technisch versierten Menschen programmiert und benutzt. %Doch was passiert nun, wenn sich ein eher unerfahrener Nutzer z.B. an Linux wagt? Eric Raymond beschreibt dieses Problem an Hand seiner Erfahrungen mit dem Common Unix Printing System (CUPS). \\
Das größte Problem besteht darin, dass die Entwickler von Open-Source Software meist die Sichtweise des (unerfahrenen) Nutzers vernachlässigen. %Man kann laut Raymond den Entwicklern jedoch keine böse Absicht unterstellen - im Gegenteil: gerade bei CUPS wurde versucht, ein zugängliches System zu schaffen, jedoch werden die guten Absichten und die Mühen nicht wirklich belohnt. \\
Eric Raymond ist z.B. auf eine unübersichtliche Benutzeroberfläche gestoßen und musste in die Dokumentation schauen. In dieser Hinsicht meint er, dass man etwas falsch im Design der Oberfläche gemacht hat, da Dialoge selbsterklärend sein sollten. Gerade hier müssen die Entwickler seiner Meinung nach aus ihrer Rolle des Entwicklers heraus und sich ihre Software mit den Augen eines unerfahrenen Nutzers, der z.B. die GUI zum ersten Mal sieht, sehen. \\
Die Auswahl des \glqq Queue Type\grqq\ war ein weiteres Problem. Er bekommt hier verschiedene Möglichkeiten in einem Dropdown-Feld angezeigt, die teilweise nicht auf sein System passen. Raymond meint, in diesem Fall hätte man die Oberfläche so gestalten können, dass nicht zutreffende Einträge nicht erscheinen oder zumindest ausgegraut werden; eine Empfehlung in Form eines Anhangs \glqq (recommended)\grqq\ wäre ebenfalls hilfreich gewesen. \\
Die Dokumentation wird von Raymond auch als Problem identifiziert. Wie er erfahren musste, verschweigt die Dokumentation bei Open-Source Projekten meist Dinge, die für den unerfahrenen Anwender unbedingt erforderlich sind. So sagte ihm die Dokumentation, dass CUPS in der Lage ist, Drucker im gleichen Subnet automatisch zu erkennen - genau die Funktion, die er wollte, aber bisher ohne Erfolg war. Die Dokumentation verschweigt aber, dass man diese Funktion in einer Datei im /etc-Verzeichnis auf dem Computer ändern muss, an dem der Drucker angeschlossen ist, da die Autokonfiguration (wahrscheinlich aus Sicherheitsgründen) deaktiviert ist. Ein kleiner Hinweis im Konfigurationsassistenten oder der Dokumentation hätte wohl genügt.

\subsubsection*{2.}
\begin{enumerate}
	\item Mit einer GUI sollte man sich auf den ersten Blick zurecht finden. Es sollte alles logisch unterteilt sein und keine Fülle an Optionen geben, sodass man leicht den Überblick verliert.
		\begin{itemize}
			\item \textbf{Gutes Beispiel:} Dialog mit mehreren Punkten in einer Baumstruktur, die man nach Bedarf auf- und zuklappen kann. Die einzelnen Punkte sind nicht mit Funktionen überladen. (OpenOffice Writer)
			\item \textbf{Schlechtes Beispiel:} Dialog mit Registerkarten und pro Registerkarte vollgestopft mit Einstellungsmöglichkeiten. (Microsoft Word)
		\end{itemize}
	\item Dialoge sollten dem Benutzer immer behilflich sein und Ratschläge geben, wie der Benutzer weitermachen kann. Der Benutzer darf bei keinem Arbeitsvorgang vom System im Stich gelassen werden.
		\begin{itemize}
			\item \textbf{Gutes Beispiel:} \glqq Fehler beim Senden der Nachricht. Der Mail-Server antwortete: \verb!4.1.8 To send mail, first check your mail with a! \\ \verb!valid POP3 account; this prevents unauthorized SPAM relaying.!. Bitte überprüfen Sie, ob  Ihre E-Mail-Adresse in den Konten-Einstellungen stimmt und wiederholen Sie den Vorgang. [OK]\grqq\ (Mozilla Thunderbird)%\glqq Ihre eMail konnte derzeit leider nicht zugestellt werden. Bitte versuchen Sie es in 10 Minuten erneut. [OK]\grqq
			\item \textbf{Schlechtes Beispiel:} \glqq There has been an error transferring your mail. I said: \verb!MAIL FROM:<mmcclinc@vt.edu>! an then the SMTP server said: \verb!503 Polite people say HELO first! [OK]\grqq\ (Eudora)
		\end{itemize}
	\item Eine grafische Oberfläche sollte auch ohne Dokumentation intuitiv zu benutzen sein.
		\begin{itemize}
			\item \textbf{Gutes Beispiel:} Der Wizard von Nero Burning ROM ist sehr einfach und intuitiv zu bedienen. Man wird Schritt für Schritt bis zum Brennvorgang geführt.
			\item \textbf{Schlechtes Beispiel:} Die Oberfläche der aktuellen Office-Version scheint zu unübersichtlich zu sein. Neun von zehn Anwender haben ihr Wünsche für Office nicht gefunden, obwohl sie in der Suite bereits vorhanden sind (vgl. http://www.heise.de/newsticker/meldung/63880).
		\end{itemize}
	\item Eine Dokumentation sollte stets vollständig und ausführlich sein.
		\begin{itemize}
			\item \textbf{Gutes Beispiel:} Die Hilfe von Mozilla Firefox ist gut. Es wurde sogar extra ein Kapitel für Internet Explorer Umsteiger in die Dokumentation aufgenommen.
			\item \textbf{Schlechtes Beispiel:} Die Dokumentation von CUPS ist (immernoch) nicht gut.
		\end{itemize}
	\item \glqq Der Kunde (Benutzer) ist König\grqq : Bugs und Designschwächen sollten ernst genommen werden und schnellstmöglich behoben werden.
		\begin{itemize}
			\item \textbf{Gutes Beispiel:} Microsoft geht auf Kundenwünsche ein. Dazu wird folgende Gegebenheit als Grundlage der Behauptung verwendet: Das neue Office (Version 12) soll eine neue Oberfläche bekommen, weil neun von zehn Kundenwünschen für die Office Suite bereits vom Programm beherrscht wurden, der Benutzer sie aber nicht gefunden hat (vgl. ebenfalls http://www.heise.de/newsticker/meldung/63880). Indirekt geht Microsoft damit auf die Wünsche seiner Kunden ein, indem dem Anwender die gewünschten Funktionen (besser) zugänglich gemacht werden.
			\item \textbf{Schlechtes Beispiel:} (Die Antwort hierfür beschreibt kein konkretes Beispiel...) Es gibt genug Hobbyprogrammierer, die weder auf Vorschläge zur (Um-)Gestaltung der Oberfläche noch auf Bugs eingehen.
		\end{itemize}
	\item Man sollte mit dem Benutzer so viel wie nötig und so wenig wie möglich interagieren.
		\begin{itemize}
			\item \textbf{Gutes Beispiel:} Die Installation von Windows, die mit Hilfe von Assistenten den Benutzer gut durch das Setup führt.
			\item \textbf{Schlechtes Beispiel:} Die Installation von Debian Linux, welche teilweise vom Benutzer \glqq knifflige\grqq\ Fragen beantwortet haben möchte.
		\end{itemize}
\end{enumerate}

\newpage
\section*{Aufgabe 2}
\subsubsection*{Dialog 1}
\begin{itemize}
	\item Der Dialog arbeitet sehr viel mit Icons. Ohne Tooltips ist einem unerfahrenen Nutzer die Bedeutung der Schaltflächen völlig fremd. Falls nicht geschehen, sollte hier dringend mit Tooltips gearbeitet werden. Außerdem sind die einzelnen Schaltflächen und Eingabemöglichkeiten sehr dicht gedrängt. Auch hier sollte etwas getan werden, da die Gefahr sehr hoch ist, dass ein Benutzer sich verklickt. Für den Anfang würde es schon reichen, nicht genutzen Platz (in diesem Dialog ausreichend vorhaden) besser auszunutzen, um alles etwas mehr zu entzerren.
	\item Der Dialog ist sehr klein. Würde man dafür etwas mehr Platz vereinnahmen, dann wäre ebenfalls das oben angesprochene Problem der dicht gedrängten Schaltflächen und Eingabemöglichkeiten gelöst. Außerdem kann durch die Vergrößerung ebenfalls die Übersichtlichkeit gesteigert werden. Im Zuge einer Vergrößerung des Dialogs könnte man ebenfalls den Schriftgrad etwas vergrößern, da z.B. Labels wie \glqq Target\grqq\ schwer lesbar sind.
\end{itemize}

\subsubsection*{Dialog 2}
\begin{itemize}
	\item In diesem Dialog findet sich keine offensichtliche Möglichkeit, einen Server hinzuzufügen. Ein erfahrener Nutzer würde vielleicht noch nachsehen, ob er unter \glqq Advanced...\grqq\ einen hinzufügen kann oder würde den kleinen Button neben der Scrollbar entdecken. Des weiteren ist das Häkchen \glqq Save\grqq\ nicht eindeutig: kann man bei seiner Aktivierung das Passwort oder den ganzen Eintrag speichern? Die Vermutung liegt nahe, dass damit gemeint ist, das Passwort zu speichern (\glqq Save password\grqq\ oder etwas ähnliches wäre hier besser gewesen). Genauso gut könnte es sein, dass beim Klick auf \glqq OK\grqq\ der Server gespeichert wird, wenn \glqq Save\grqq\ aktiviert ist.
	\item Man findet keine Möglichkeit, einen gewünschten Server zu suchen. Hat man eine große Serverliste, so muss man in der Liste scrollen, bis man den gewünschten Server gefunden hat. Ein Dialog oder ein Feld, welches einem die Suche nach einem Server ermöglicht, wäre von Vorteil. Eine andere Möglichkeit, den Dialog benutzerfreundlich zu machen, wäre die Möglichkeit, die Liste durch Klick auf die Spaltenüberschrift sortierbar zu machen, eine Funktion, welche man eigentlich erwartet.
	\item Die Icons vor \glqq Server\grqq , \glqq Directory\grqq , \glqq Username\grqq\ und \glqq Password\grqq\ sind nicht gerade störend oder falsch platziert, erhöhen aber auch nicht unbedingt die Verständlichkeit. Treibt man die Ausstaffierung der Dialoge mit Icons weiter, so kann es jedoch leicht passieren, dass Dialoge unverständlich und überfüllt wirken.
\end{itemize}

\subsubsection*{Dialog 3}
\begin{itemize}
	\item \glqq Edit Server...\grqq\ ist in der Dropdown-Liste schlecht platziert. Besser wäre es zum einen gewesen, daraus einen Button zu machen. Andererseits ist die Beschriftung auch nicht klar, ob durch Auswahl von \glqq Edit Server...\grqq\ nur der durch ein Häkchen ausgewählte Server editiert werden kann oder alle. In diesem Fall wäre \glqq Edit Servers...\grqq\ oder \glqq Edit Serverlist...\grqq\ besser gewählt worden.
\end{itemize}

\end{document}