SE600_Klassendiagramme_Z Flashcards

1
Q

Was sind Klassendiagramme und wofür werden sie verwendet?

A

Klassendiagramme sind ein wesentlicher Bestandteil der objektorientierten Modellierung und werden verwendet, um die Struktur eines Systems durch die Darstellung seiner Klassen, deren Attribute, Operationen und die Beziehungen zwischen ihnen zu visualisieren.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist eine Klasse und welche Verantwortlichkeiten hat sie?

A

Eine Klasse ist eine Schablone zur Instanziierung von Objekten gleicher Art. Ihre Verantwortlichkeiten umfassen das Verwalten von Daten, Operationen und Assoziationen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was sind die Bestandteile eines UML Klassendiagramms?

A

Ein UML Klassendiagramm besteht aus Klassen mit Attributen, Assoziationen zwischen Klassen, Operationen und Vererbungshierarchien.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Welche Funktion haben UML Klassendiagramme?

A

UML Klassendiagramme bilden die Geschäftslogik und die zu implementierenden Aufgaben ab.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welche Arten von Klassendiagrammen gibt es im Software Development Life Cycle (SDLC)?

A

Es gibt drei Hauptarten: 1. Domänenmodell / Conceptual Model 2. Grobentwurf 3. Feinentwurf / Software Design

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was ist ein Domänenmodell und wann wird es erstellt?

A

Ein Domänenmodell wird während der Anforderungserhebung erstellt und stellt Fachklassen und Assoziationen der zu lösenden Aufgabe dar, meist noch ohne Methoden/Operationen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was charakterisiert den Grobentwurf eines Klassendiagramms?

A

Der Grobentwurf erweitert das Domänenmodell um technische Komponenten wie User Interface, Datenbank und Schnittstellen, ohne dabei technische Details zu berücksichtigen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was umfasst der Feinentwurf / Software Design eines Klassendiagramms?

A

Der Feinentwurf verfeinert kontinuierlich den Entwurf, gebunden an spezifische Implementierungen und fokussiert auf technische Entwurfs- und Architekturmuster wie Model-View-Controller.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was sind Beispiele für Klassendiagramme in verschiedenen Entwicklungsphasen?

A

Beispiele sind das Domänenmodell einer Krankenversicherung, der Grobentwurf eines Zeichenprogramms und der Feinentwurf eines Embedded Controllers für einen Mikrowellenherd.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Warum ist Modularisierung in Klassendiagrammen wichtig?

A

Modularisierung ist wichtig, weil sie Klassen zu Paketdiagrammen zusammenfasst und dadurch die Übersichtlichkeit erhöht.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Welche Schritte sind notwendig, um vom Domänenmodell zum Feinentwurf zu gelangen?

A

Die Schritte umfassen: 1. Ergänzen der nötigen Klassen und Operationen. 2. Festlegen der Verantwortlichkeiten durch Assoziationsnamen und Navigationsrichtung. 3. Fertigstellung des Grobentwurfs mit Datentypen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was bedeutet das SOLID-Prinzip und welche Prinzipien umfasst es?

A

Das SOLID-Prinzip umfasst fünf Designprinzipien für die Erstellung robuster und wartbarer Softwarearchitekturen: 1. Single Responsibility Principle 2. Open-Closed Principle 3. Liskov Substitution Principle 4. Interface Segregation Principle 5. Dependency Inversion Principle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind GRASP-Prinzipien und warum sind sie wichtig?

A

GRASP-Prinzipien sind eine Sammlung von neun Designprinzipien, die helfen, eine gute objektorientierte Softwarearchitektur zu erstellen: 1. Controller 2. Creator 3. Indirection 4. Information Expert 5. High Cohesion 6. Low Coupling 7. Polymorphism 8. Protected Variations 9. Pure Fabrication Diese Prinzipien unterstützen ein gutes Design und sind essenziell für die Erstellung robuster und wartbarer Softwarearchitekturen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly