Return-Path: Received: from informatik.uni-kl.de by local-channel id aa21677 for ; 10 Jun 99 12:37 MESZ Received: from informatik.uni-kl.de ( informatik.uni-kl.de ) by nivea.informatik.uni-kl.de id aa21677 ; 10 Jun 99 12:37 MESZ Received: from informatik.uni-kl.de ( wagenbi@azzaro.informatik.uni-kl.de [131.246.244.113] ) by nivea.informatik.uni-kl.de id aa21665 for ; 10 Jun 99 12:36 MESZ Sender: wagenbi@informatik.uni-kl.de Message-ID: <375F9543.C99BBDCD@informatik.uni-kl.de> Date: Thu, 10 Jun 1999 12:36:52 +0200 From: Wolfgang Wagenbichler X-Mailer: Mozilla 4.51 [en] (X11; I; SunOS 5.6 sun4m) X-Accept-Language: en MIME-Version: 1.0 To: SE1_Prak@informatik.uni-kl.de Subject: Vererbung bei PresenceController Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hallo! In der Reviewsitzung der Gruppe Lichtregelung Flur ist uns ein Problem mit dem PreseceController und dessen Subklassen aufgefallen: Alle drei Klassen (PresenceController, PresenceControllerHallway, PresenceControllerRoom) besitzen ein eigenes State-Diagramm. Eine Vererbungsbeziehung bedeutet jedoch, dass das Verhalten der Basisklasse (PresenceController) auf die Subklassen (-Hallway, -Room) uebertragen wird. Die derzeitige Dokumentation beschreibt dies nur unbefriedigend. Deshalb folgende Aenderung: Der PresenceController erhaelt fuer die Do-Aktivitaeten eine abstrakte Methode ErmittleAnwesenheit(). Sie ersetzt die bisherigen Do-Aktivitaeten (Contact.AbfrageZustand()). Die abstrakte Methode kann dann durch den PresenceControllerHallway und -Room ueberschreiben werden und somit die korrekte Anzahl von Kontakten abfragen. Weiterhin werden die State-Diagramme der Klassen PresenceControllerHallway und -Room geloescht und durch eine Note ersetzt. Hier beschreibt ihr, dass die Methode ErmittleAnwesenheit() entsprechend ueberschrieben wird und 2 oder 3 Kontakt abfragt. TODO: Die Gruppe Lichtregelung Flur sollte das State-Diagramm PreseceControllerHallway durch eine Note ersetzen, die das Ueberschreiben der Methode ErmittleAnwesenheit() erklaert. Die State-Machine muss jedoch erhalten bleiben !!! (Was eine State-Machine ist, wird im Dokument "Korrekte StP-Benutzung zur Generierung..." erklaert) Weiterhin muesst Ihr die State-Tables des PresenceControllerHallway loeschen. Die Gruppe Lichtregelung Raum sollte das State-Diagramm PresenceControllerRoom durch eine Note ersetzen. Auch hier muss die State-Machine erhalten bleiben. Ueberprueft die Existenz von State-Tables und loescht diese. Die Aenderungen an der Klasse PresenceController werde ich selbst vornehmen. Gruss, Wolfgang