UML - Unified Modelling Language (Vereinheitlichte Modellierungssprache)

ist eine Sammlung von Diagrammarten zur Beschreibung von Programmen.

Bsp.: UML-Klassendiagramm

UML-Klassendiagramm Warteschlange-Kunde

Mit diesem Klassendiagramm lassen sich folgende Klassendefinitionen fast vollständig beschreiben:

class Warteschlange:
    def __init__(self):
        self.__kunden = []
    def anstellen(self, kunde):
        self.__kunden.append(kunde)
    def verlassen(self):
        return self.__kunden.pop(0)
    def getKunden(self):
        return self.__kunden

class Kunde:
    def __init__(self, kundenNr, kundenName):
        self.__kundenNr = kundenNr
        self.__kundenName = kundenName
    def getKundenNr(self):
        return self.__kundenNr
    def getKundenName(self):
        return self.__kundenName

Man benötigt ein weiteres Diagramm, um die tatsächlichen Objekte beschreiben zu können:

Bsp.: UML-Objektdiagramm

UML-Objektdiagramm Warteschlange-Kunde

Hiermit lässt sich folgende Quellcode beschreiben:

k1 = Kunde(1001, "Schmitt")
k2 = Kunde(1002, "Meier")
k3 = Kunde(1003, "Müller")
ws1 = Warteschlange()

ws1.anstellen(k1)
ws1.anstellen(k2)
ws1.anstellen(k3)

Mit folgendem Code lassen sich Eigenschaften der Kunden ausgeben (wird nicht in den Diagrammen vorgegeben):

print("Kunde verlässt Schlange: " + ws1.verlassen().getKundenName())

for k in ws1.getKunden():
    print(k.getKundenName())

Last modified: Sunday, 15 March 2015, 11:37 AM