1. Ein Bekannter erzählt Ihnen, er mache sich nicht die Mühe, lange über die Sichtbarkeiten von Methoden und Attributen einer Klasse nachzudenken. Er setze die
Sichtbarkeit kurzer Hand immer auf public.
Was halten Sie von diesem Vorgehen? Begründen Sie bitte Ihre Antwort.
10 Pkt.
2. Was drückt das folgende Klassendiagramm aus? Welche Beziehungen bestehen zwischen den Klassen „Gebäude“ und „Zimmer“ beziehungsweise zwischen den Klassen
„Gebäude“ und „Wand“?
Abb. I.1: Klassendiagramm
5 Pkt.
3. Welche Informationen liefert Ihnen die folgende Beschreibung einer Methode aus
einem Klassendiagramm?
+ sucheTreffer(fNr: Integer = 10, mNr: Integer): Boolean
15 Pkt.
4. In einem System werden zwei unterschiedliche Server-Typen (Typ A und Typ B) und
ein Client-Typ eingesetzt. Der Server-Typ A steht nur mit dem Server-Typ B in
Verbindung, nicht aber mit den Clients. Die Clients kommen mindestens 25 Mal vor,
die beiden Server-Typen je genau dreimal. Eine obere Grenze für die Clients gibt es
nicht. Die Verbindungen werden über das lokale Netzwerk hergestellt. Erstellen Sie
ein Verteilungsdiagramm für dieses System.
10 Pkt.
5. Stellen Sie das Internet in einem Verteilungsdiagramm dar. Sie müssen dabei nur
zwei Rechnertypen darstellen: die Clients und die Server. Verwenden Sie als Verbindungstyp <<internet>>.
Ein Tipp:
Das Verteilungs-Diagramm ist recht klein und enthält nur zwei Knotentypen.
Wichtig ist die Multiplizität.
20 Pkt.
6. In einem System sollen die Schichten einer Software auf mehrere Computer verteilt
werden. Es gibt lediglich einen Server, der schon sehr stark ausgelastet ist. Die Anwendung muss in jedem Fall mit einer zentralen Datenbasis für alle Clients arbeiten.
Welche Art der Verteilung wählen Sie, um den Server möglichst wenig zu belasten
und gleichzeitig eine gemeinsamen Zugriff auf die Daten zu ermöglichen?
20 Pkt.
7. Die folgenden Zeilen beschreiben umgangssprachlich einen Programmablauf in einzelnen Anweisungen. Analysieren Sie die Anweisungen und stellen Sie sie dann in
einer lesbareren Form dar. Berücksichtigen Sie dabei die Richtlinien zur lesbaren und
verständlichen Darstellung von Quelltexten.
{ Zahl1 einlesen; Zahl2 einlesen; Wenn Zahl1 > 10 dann Zahl1 um
20 erhöhen; Sonst Zahl1 und Zahl2 addieren; Ergebnis ausgeben;
Meldung „Programmende“ ausgeben }
10 Pkt.
8. Sie haben für eine Anwendung im Entwurf ein vollständiges Klassendiagramm erstellt. Weitere Dokumente liegen nicht vor. Lässt sich aus diesem Klassendiagramm
automatisch der vollständige Code einer Methode mit sämtlichen Anweisungen erzeugen? Begründen Sie bitte Ihre Antwort.
10 Pkt.