Kapitel 4.1: SWE - Prozessmodelle --> Qualitätseigenschaften von Software Flashcards

1
Q

Beschreiben Sie die Eigenschaften einer „guten Software“!

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

Ihr Unternehmen plant den Einsatz eines Prozessmodells für die Entwicklungsprojekte im Bereich der Entwicklung Eingebetteter Systeme. Ihr Geschäftsführer war letzthin auf einem Management-Seminar und kennt nun die wichtigsten Schlagworte. Als QM-Beauftragter des Unternehmens bekommen Sie die Aufgabe, für eine Entscheidungsvorlage die Vor- und Nachteile der Alternativen „Wasserfallmodell“, Evolutionäres Spiralmodell“ und „inkrementelles Modell“ vorstellen. (a) Welches sind die relevanten Parameter für die Auswahl des Prozessmodells? (b) Führen Sie eine Bewertung der beiden o.g. Prozessmodelle durch!

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

(c) Beschreiben Sie die Qualitätscharakteristiken, die im Softwareentwicklungsprozess berücksichtigt werden müssen. Beschreiben Sie für jeden die Indikatoren, an Hand derer Sie die Erreichung des jeweiligen Qualitätsziels überprüfen können!

A

Referring to the Capability Maturity Model (levels 2 and 3) the essential quality characteristics and indicators for processes are as stated in the following table.

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

Auswahl eines Prozessmodells

Wählen Sie ein jeweils passendes Prozessmodell für die folgenden Projekte aus und begründen Sie Ihre Entscheidung:

(a)

Entwicklung eines graphischen Benutzeroberfläche (graphical user interface, GUI) für ein Textverarbeitungssystem.

Teamgröße 25 Entwickler

Programmkomplexität 30k LOC

Lebensdauer 5 Jahre

A

Phase model or waterfall model,

Reasons:

  • small project, short life cycle
  • well-known requirements, easy to learn

Alternativ: V-Modell mit hierarchischem Vorgehen

Um Missverständnisse zu vermeiden: Gemeint ist nicht das V-Modell gemäß der kompletten formalen Vorgaben.

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

(b)

Entwicklung eines elektronischen Steuergeräts für ein Elektromobil.

Teamgröße 3 Entwickler

Programmkomplexität 3k LOC

Lebensdauer 10 Jahre

A

Evolutionary model

Reasons:

  • complex system, medium life cycle
  • requirements hard to establish because of complex interactions with physical environment (car system )
  • difficult to test because physical environment (car system) often not yet available when development is started
  • Often a set of prototypes (named engineering samples A, B, C, …) needs to be developed and tested. Each prototype serves as a basis for a subsequent development cycle. The last engineering sample goes into production only.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

(c)

Entwicklung eines Abrechnungssystems für eine Versicherungsgesellschaft.

Teamgröße 50 Entwickler

Programmkomplexität 400k LOC

Lebensdauer 25 Jahre

A

Incremental model

Reasons:

  • huge and long project, long life cycle
  • due to the long life span it’s impossible to achieve the realization in a single development thread
  • a first version will not comprise the full range of functions yet
  • more advanced versions extending the system and adapting it to changing requirements will follow later

Generell: Attention: The team size and the LOC are not always an indicator of weather a project is huge and long or not.

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

Wasserfallmodell

(a) Ergänzen Sie das unten stehende Wasserfallmodell!

siehe Bild(4)

A

siehe Bild(5)

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

(b)

Benennen Sie einige Vorteile des Wasserfallmodells!

A

Advantages of the waterfall model

  • It motivates to a disciplined proceeding in all project phases
  • Documentation of every phase, documentation of all modifications
  • Milestones for project planning and control are transparent
  • Also maintenance can be managed
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

(c)

Erklären Sie, warum es im Entwicklungsprozess einige Schleifen / Iterationen geben muss!

A
  • incomplete specifications, e.g. missing requirements or constraints
  • inconsistent specifications, e.g. requirements are in conflict with other requirements
  • ambiguous specifications, e.g. requirements are not precise and might be interpreted differently by different persons
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

(d)

Worin besteht eine der hauptsächlichen Einschränkungen des Wasserfallmodells, die sich insbesondere bei der Einbeziehung externer Kunden bemerkbar macht?

A
  • customer accepts requirements specification although not fully understanding it (same as ordering a new family house based on a written description what it should look like)
  • and ends up to discover important deficiencies after the product is physically available only

→ i.e. discrepancies that could have been avoided at the beginning of the project are likely to crop up at the very end of the project only (the upshot then is “I know this is what I asked for, but it’s not what I really wanted.”)

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

Iterative Prozessmodelle

Ein Kollege aus der Software-Entwicklungsabteilung bemerkt in einem der obligatorischen Gespräche an der Kaffeemaschine:“Sowohl das Wasserfallmodell als auch das Spiralmodell enthalten Schleifen. Einer oder mehrere Entwicklungsschritte werden mehrfach durchlaufen. Für mich sind die beiden Modelle identisch“.

(a) Ist die Aussage des Kollegen korrekt?

A

of course, NO!

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

(b) Bitte begründen Sie und nennen Sie evtl. vorhandene Unterschiede oder Gemeinsamkeiten!

A

siehe Bild(7)

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