BankAndCustomer
|
Eine Assoziationsklasse ist Bestandteil einer Assoziationsbeziehung zwischen zwei anderen Klassen. Es kann eine Assoziationsklasse einer Assoziationsbeziehung zugeordnet werden, um zusätzliche Informationen, die nur diese Beziehung betreffen, anzugeben. Eine Assoziationsklasse ist eine normale Klasse und kann Attribute und Operationen enthalten.
Zum Beispiel verfügt eine "Bank" eine Assoziation zu "Bankkunden". Der "Bankkunden" wird durch die Klasse [Person] dargestellt und ist eine Oberklasse von z.B. natürlichen Personen [NaturalPerson] und [LegalEntity] von der die Klasse [Bank] abgeleitet ist.
Eine Assoziationsklasse mit dem Namen [BankAccount] definiert die Beziehung zwischen den Klassen [Bank] und [Person] näher, indem die IBAN zur Assoziationsbeziehung angegeben wird.
Da eine "Bank" eine sehr große Menge an Bankkunden mit deren Konten verwalten muss, sind die "Bankkonten" nicht über eine Liste von der "Bank" aus zu erreichen, sondern die Konten werden über einen indizierten glo::TAllSet < BankAccount > mit entsprechenden Index-Filter verwaltet. Mit selben Muster sind die "Bankkonten" auch vom "Bankkunden" (Objekte der Klasse [Person] bzw. deren Unterklassen) erreichbar.
Die Assoziationsklasse [BankAccount] hat zu der eindeutigen IBAN jeweils eine Objekt-ID-Referenz auf die "Bank" und den "Bankkunden".