\documentclass{schuleab}
\usepackage[utf8]{inputenc}
\usepackage{schulinf}

% Dieses Dokument ist in der Zusammenarbeit von Informatikreferendaren und
% ehemaligen Informatikreferendaren der Studienseminare (heute ZfsL) Arnsberg,
% Hamm und Solingen entstanden.
%
% Das Dokument steht unter der Lizenz: Creative Commons by-nc-sa Version 4.0
% http://creativecommons.org/licenses/by-nc-sa/4.0/deed.de
%
% Nach dieser Lizenz darf das Dokument beliebig kopiert und bearbeitet werden,
% sofern das Folgeprodukt wiederum unter gleichen Lizenzbedingungen vertrieben
% und auf die ursprünglichen Urheber verwiesen wird.
% Eine kommerzielle Nutzung ist ausdrücklich ausgeschlossen.
%
% Die Namensnennung durch einen Verweis und die Lizenzangabe der ursprünglichen
% Urheber auf den Materialien für Schülerinnen und Schüler ist erforderlich.
%
% Die Sammlung der Dokumente steht unter
% http://ddi.uni-wuppertal.de/material/materialsammlung/
% zur Verfügung.
%
% Das LaTeX-Paket zum Setzen der Dokumente der Sammlung steht
% unter  http://www.ctan.org/pkg/schule
% zur Verfügung.

\usepackage[pdfauthor={Referendare der Informatikfachseminare Arnsberg, Hamm und Solingen}]{hyperref}
\includexmp{lizenz}
\cclizenz{byncsaeu}
\footerQRLink{materialsammlung_qr_url.pdf}

\svnid{$Id: ab_03_sequenzdiagramme.tex 626 2014-05-22 21:36:50Z pieper $}

\dokName{Sequenzdiagramme}
\jahrgang{11}

\begin{document}

\section*{Interaktion von Objekten: Sequenzdiagramme}

Objektdiagramme zeigen lediglich statische Beziehungen zwischen den vorkommenden Objekten und Momentaufnahmen von Attributwerten.

\begin{center}
  \includegraphics[width = \textwidth]{objektdiagramm_gustav_wecker_methoden-1}
\end{center}

Will man jedoch darstellen, wie die Objekte miteinander interagieren, so muss der zeitliche Ablauf beschrieben werden.
Dies geschieht in den sogenannten \emph{Sequenzdiagramm}en.

Es ist möglich, sich die Interaktion der Objekte als Kommunikation (d.~h. als einen Austausch von \glqq Nachrichten\grqq) vorzustellen.
Jedes Objekt bietet allen anderen an, seine \glqq Dienste\grqq\ zu nutzen -- in der Fachsprache: Seine Methoden aufzurufen.

Das folgende Sequenzdiagramm zeigt, wie das Objekt \texttt{gustav} beim Objekt \texttt{gustavsRadiowecker} die aktuelle Uhrzeit abfragt.

\begin{center}
	\begin{sequencediagram}
		\tikzstyle{inststyle}+=[rounded corners=3.2mm] %% hier werden weitere Optionen angegeben
		\newthread{pers}{gustav}
		\newinst[3]{wecker}{gustavsRadiowecker}
		\begin{call}{pers}{gibUhrzeit()}{wecker}{12:15}
		\end{call}
	\end{sequencediagram}
\end{center}

\minisec{Aufgabe}
\begin{enumerate}
	\item Erstellen Sie ein Sequenzdiagramm, das beschreibt, wie Gustavs Mutter ihren Sohn dazu auffordert, seinen Wecker einzuschalten!
	\item Überlegen Sie sich, wie eine der Teilnehmenden Mannschaften (z.~B. die \glqq Crazy Frogs\grqq) den Sieger des Basketballturniers in Erfahrung bringen kann.

	Klären Sie dazu zunächst, über welche zusätzlichen Methoden die Objekte noch verfügen müssen (beispielsweise eine Methode \texttt{ermittleSieger()} des Eröffnungsspiels) und halten Sie kurz schriftlich fest, was diese Methoden leisten.
	
	Erstellen Sie dann das zugehörige Sequenzdiagramm!
\end{enumerate}



\end{document}
 