• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/30

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

30 Cards in this Set

  • Front
  • Back
Das Wasserfallmodell ist ein Klassiker unter den Vorgehensmodellen in der Softwareentwicklung. Nennen Sie die 5 Stufen dieses Modells
- Analyse und Definition
- Entwurf
- Implementation
- Test
- Einsatz und Wartung
Das Wasserfallmodell orientiert sich am Prinzip "Code it now, fix it later."
Ist diese Aussage richtig?
Nein, es betont Aktivitäten, die der Implementierung vorgelagert sind
In Bezug auf das Wasserfallmodell spricht man von kurzfristiger Kundenorientierung. Was ist damit gemeint?
Der Kontakt mit dem Kunden ist zunächst sehr hoch (Analyse und Definition) und sorgt damit für Zufriedenheit. Der Kunde fühlt sich "abgeholt". Im Verlauf der weiteren Phasen (Entwurf, Auslieferung, Wartung) sinkt die Zufriedenheit stetig, da der Kontakt reduziert wird und Terminverzögerungen bis zur "BigBang"-Programmeinführung eintreten.
Was sind die wesentlichen Nachteile des Wasserfallmodells?
- Realität von Softwareentwicklungsprojekten wird nur ungenügend abgebildet
- Der Evolutionäre Charakter wird wegdefiniert und bricht in späteren Phasen (“Wartung”) in chaotischer Form aus
- Termine & Kosten überzogen; Gebrauchsqualität
unbefriedigend; Unzufriedenheit auf allen Seiten
Nennen Sie mindestens 2 Merkmale des Spiralmodells
• Benannte und standardisierte Entwicklungsschritte wie beim
Wasserfallmodell.
• Phasen werden zyklisch mehrfach durchlaufen, bis das Produkt fertig gestellt
ist.
• Schwierigkeiten der intitialen Anforderungsermittlung und Lernprozesse
werden berücksichtigt.
Nennen Sie mindestens 2 Nachteile des Spiralmodells
• Ziel ist nach wie vor ein festes Produkt.
• Starke Trennung von Herstellung und Einsatz bzw. Wartung bleibt erhalten.
• Die Aktivitäten sind technikzentriert.
• Versionen und Ausbaustufen werden nicht hinreichend berücksichtigt.
Was bedeutet die Abkürzung STEPS?
SoftwareTechnik für Evolutionäre, Partizipative Systemgestaltung
Was ist ein Qualitätszirkel?
In Qualitätszirkeln sitzen die Methodenexperten, die Technikexperten und die Fachlichen Experten
zusammen und entwickeln das Softwaresystem

Ein Qualitätszirkel hilft dabei, die Prozessqualität zu erhöhen
Was sind die 3 Bestandteile des Autor-Kritiker-Zyklus
- Modellieren, Konstruieren
- Bewerten
- Analysieren
Was versteht man unter horizontalem Prototyping?
Umfasst Prototypen mit nicht ausgearbeiteten Funktionsbereichen

Beispiel: Darstellung einer Benutzeroberfläche ohne tiefgehende Funktionalität ("wie es später aussieht...")
Was versteht man unter vertikalem Prototyping?
Umfasst Prototypen mit ausgesuchten, funktional ausgearbeiteten Bereichen

Beispiel: Ein bestimmter Programmbereich, der komplett, inklusive aller Funktionalität abgebildet wurde
Was sind wichtige Aufgaben des Prototyping? Nennen Sie mindestens 3
- Fachliche Konzepte überprüfen
- Handhabung bewerten
- Gestaltungsprinzipien kontrollieren
- Konzepte erkennen (Gegenstände, Verhalten)
- Strukturierung
- Wiederverwendung
Wozu werden Vorgehensmodell in der Softwareentwicklung benötigt?
Sie helfen dabei den Entwicklungsprozess zu strukturieren und transparent werden zu lassen
Nur unter welcher Voraussetzung kann Produktqualität erreicht werden?
Durch Prozessqualität
Prozesse sollen „beherrscht“ sein, also in immer gleich guter Qualität und ohne Störungen ablaufen, und die Ergebnisse den jeweils gestellten (Kunden-)Forderungen entsprechen
Warum Agile Methoden?
• Eigendynamik von Softwareentwicklungsprojekten
• “Staffellläufermodelle”, bei denen aufgrund von Arbeitsteilung (“Analytiker”,
“Designer”, “Programmierer”, “Anwender”) Zwischenergebnisse weitergereicht werden, schaffen Mehraufwand und Termin- und
Kostenunsicherheit
• (Kommerzielle) Softwareentwicklung ist ein kooperativer Gruppenprozess unter Beteiligung verschiedenster Expertenprofile.
• Spezifikationsphasen im klassischen Vorgehen schlucken meist den Grossteil des Projektbudgets und der Zeit. Die technische Umsetzung wird
dann stets unter starkem Zeitdruck und mit Qualitätseinbußen vollzogen.
• Langlaufende, komplexe Entwicklungsprojekte beinhalten stets ein grosses Unsicherheitspotential über die Zweckmässigkeit initial festgelegter Ziele.
Deswegen nehmen Change Requests in fortgeschrittenen Projekten einen immer grösseren Teil der Projektarbeit ein.
Beschreiben Sie kurz die Ebenen Release, Iteration und Day von agilen Teams
- Releaseplanung
berücksichtigt die user stories, die für ein neues Release eines Systems entwickelt werden sollen

- Iterationsplanung
hier berücksichtigt der Product Owner auf der Grundlage der vorherigen Iteration die hoch priorisierten Aufgaben, die das Team in der neuen Iteration angehen soll

- Tagesplanung
in täglichen Stand-upmeetings werden rbeitspläne erstellt, beurteilt und revidiert. Alle Planungshorizonte beschränken sich dabei auf den nächsten Tag zum nächsten Meeting
Definieren Sie folgenden Bestandteile der Methode SCRUM:
- Produkt Backlog
- Sprint Backlog
- Daily Scrum Meeting
- Potentially shippable product increment
- Produkt Backlog
Vom Kunden gewünschte, priorisierte Produktmerkmale

- Sprint Backlog
Die einem Sprint zugeordneten Features

- Daily Scrum Meeting
Tägliches Standup-Meeting (15 Min) Scrum Master fragt: Was wurde erreicht, welche Schwierigkeiten gab es, was sind die Pläne bis zum nächsten Meeting?

- Potentially shippable product increment
Neue Funktionalität, die präsentiert wird
Nennen Sie mindestens 3 Merkmale der Methode SCRUM
• Selbstorganisierte Teams
• Produktfortschritt durch eine Serie von 2-4 wöchigen “sprints”
• Anforderungen werden als Listenelemente im
“product backlog”erfasst.
• Es werden keinespezifischen Engineering-Praktiken vorgeschrieben
• Es werden generative Regeln genutzt, um ein “agiles Umfeld” für Projekte zu schaffen
• Scrum ist nur eines von “agilen” Prozessmodellen
Definieren Sie in folgende Rollen in Bezug auf das Modell SCRUM:

- Produkt Owner
- SCRUM Master
- Team
• Product Owner: derjenige, der bestimmt, wohin das Produkt geht, auch finanziell verantwortlich, priorisiert features, ...

• Scrum Master: der Projektmanager, verantwortlich dafür, dass der agile Prozess funktioniert, Moderator, beseitigt Störungen

• Das Team: funktionsübergreifend(!), organisiert sich selbst, definiert die Aufgabenerfüllung im Team, sollte konstant bleiben über ein Projekt
Definieren Sie folgende Arten von Meeting in Bezug auf das Modell SCRUM:

- Sprint Planung
- Tägliches Scrum Meeting
- Sprint Review
- Sprint Retrospektive
• Sprint Planung: Priorisierungen (Analyse des Backlogs), Sprint Ziele festlegen, Lösungswege festlegen, Aufwandsschätzungen

• Tägliches Scrum Meeting: täglich, ca. 15 min, alle sind eingeladen, sprechen dürfen nur Scrum Master, Team, Product Owner

• Sprint Review: Die Präsentation dessen, was im Sprint erreicht wurde (üblicherweise Funktionalität oder Architektur)
• Sprint Retrospektive: Nach jedem Sprint, “lessons learned” aus dem Sprint fixieren (was war gut, was war nicht so gut:beginnen/aufhören/weitermachen)
Definieren Sie folgende Artefakte in Bezug auf das Modell SCRUM:
- Product Backlog
- Sprint Backlog
- Burn-down Diagramm
• Product Backlog: Die Anforderungen (high level) werden gelistet, Listeneinträge werden vom Product Owner priorisiert

• Sprint Backlog: Diejenigen Anforderungen aus dem Product Backlog, die im Sprint bearbeitet werden. Eine festgelegte Liste, die das Sprintziel definiert.
• Burn-down Diagramm: Die grafische Präsentation, die zeigt, wie sich der Restaufwand entwickelt.
Was versteht man unter dem sogenannten "gold plating"
gold plating entsteht dann, wenn ein Entwickler über die eigentlichen Anforderungen hinaus, Erweiterungen an einer Anwendung vornimmt, da er davon ausgeht, dass dies dem Product Owner gefallen könnte. Ist dies nicht der Fall, sind unnötige Aufwände entstanden
Sehen Sie einen Budget-Vorteil bei der Anwendung von SCRUM?
Ja, da das Budget jederzeit voll kontrolliert werden kann. Für jeden Sprint wird überlegt, ob man sich eine Weiterentwicklung noch leisten kann, oder nicht.
Früh im Projekt verfügt der Kunde über eine funktionsfähige Software mit den am höchsten priorisierten Kernfunktionen, die den größten Kundennutzen bieten
Nennen Sie die 5 Prozesse des FDD
Prozess #1: Entwickle ein Gesamtmodell (Rollen: alle Projektbeteiligte)

Prozess #2: Erstelle eine Feature-Liste (Rollen: in der Regel nur die Chefprogrammierer)

Prozess #3: Plane je Feature (Rollen: Projektleiter, Entwicklungsleiter, Chefprogrammierer)

Prozess #4: Entwirf je Feature (Rollen: Chefprogrammierer, Entwickler)

Prozess #5: Konstruiere je Feature (Rollen: Entwickler)
Was ist ein Vorteil von FDD gegenüber SCRUM?
FDD definiert ein Prozess- und ein Rollenmodell, die gut mit existierenden klassischen Projektstrukturen harmonieren. Daher fällt es vielen Unternehmen leichter, FDD einzuführen als Scrum
Nennen Sie die wesentlichen Bestandteile des Modells XP
•Instantielles Programmieren als Grundlage von XP

•Pair Programming/Pair
Negotiation: Program-mierer
und Anwender sitzen zusammen an der Entwicklungsworkbench und entwickeln schnelle Prototypen

•Stand-up meetings: hier werden Ergebnisse,
Erwartungen und die nächsten Ziele ausgetauscht und festgelegt.
Nennen Sie 2 wesentliche Eigenschaften agiler Prozesse
• Entwickelt für wenig konstante /
unbekannte Anforderungen

• Requirements engineering als Tätigkeit, die
über den gesamten Project-Lebenszyklus verfolgt wird

• Anforderungen werden in sehr engem zeitlichen Zusammenhang mit ihrer Implementierung erhoben

• Zu Beginn eines Projekts werden nur solche Anforderungen detailliert ermittelt, die unmittelbar nötig sind für die erste Iteration

• Kommunikation ist ein integraler Bestandteil des Agilen requirements engineering.

• In agilen Prozessen sind alle Teammitglieder gleichberechtigt und gleichermassen wichtig
Wann macht agiles Vorgehen in komplexen Projekten Sinn?
- Bei Unklarheiten
Projektumfang, fachliche/technische Machbarkeit, Leistungsfähigkeit des Teams

- In Explorationsphasen
Initial und bei starkem Wechsel der Rahmenbedingungen auch Wegwerf-Prototypen
Sollte beendet werden, wenn ausreichend Klarheit herrscht (1-3 Monate): Aufgabenpakete und grober Release-Plan soll entwickelt sein.
Agile Methoden sind gut geeignet, wenn...
• Anforderungen unklar sind oder rasch wechseln
• eine völlig neue Anwendung entstehen soll
• ein sehr komplexes Anwendungsgebiet vorliegt
• AG und AN vergleichbare Firmenkultur haben
• Das Team sein Handwerkszeug beherrscht
Agile Methoden sind weniger geeignet, wenn...
• Entwickler nicht wirklich teamfähig sind
• Kein guter Software-Architekt im Projekt ist
• AG/AN-Verhältnis zu stark traditionell formalisiert ist