3 Vorgehensmodelle und Entwicklungsprozesse Flashcards

1
Q

Was ist das Wasserfallmodell?

A

Vorgehensmodell zur Entwicklung von Software
- Vorgehen linear in vorher festgelegten Phasen > Erlauben keinen Rückschritt
- Im Rahmen jeder Phase werden klar definierte Ergebnisse erzielt und dokumentiert, bevor die nächste Phase gestartet wird

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

Welche Phasen umfasst das Wasserfallmodell?

A
  1. Anforderungserhebung
    - Anforderungen definieren
    - Dokumentation in Lastenheft (funktionale und nicht-funktionale Anforderungen)
  2. Design und Spezifikation
    - Beschreibung der Funktionsweise der Software (basierend auf vorher definierten Anforderungen)
    - Pflichtenheft: Dokumentation der Software-Spezifikation, beschreibt, wie und womit die jeweiligen Anforderungen erfüllt werden sollen
  3. Implementierung / Programmierung
    - Software wird basierend auf Pflichtenheft programmiert.
    - Innerhalb der Implementierung erste Tests der einzelnen entwickelnden Funktionen (Modultests)
  4. Test
    - Entwickeltes System wird in seiner Gesamtheit auf korrekte Funktionalität überprüft
    - Umfasst das Zusammenspiel der einzelnen entwickelten Funktionen und den Datenaustausch mit anderen Systemen über Schnittstellen
  5. Inbetriebnahme
  6. Wartung
    - Fehlerbehebung und nachträglich entstandene Änderungswünsche
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was sind die Vorteile des Wasserfallmodells?

A
  • leicht verständlich, erklärbar und enthält klare Anforderungen an die Dokumentation der einzelnen Phasen
  • Fortschritt im Projekt gut erkennbar und kontrollierbar
  • Erleichterte Planung des Gesamtprojekts
    o Erstellung einer darauf basierenden gesamtheitlichen Aufwands-, Kosten- und Zeitplanung erstellt werden kann
    o Voraussetzung zu Beginn des Projekts Umfang an Anforderungen transparent und unveränderter Projektverlauf
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was sind die Nachteile des Wasserfallmodells?

A

Nachteile:
- Unflexibel: starr und linear, kein Rückschritt möglich
o bei Überarbeitung und Neudefinition von Anforderungen
- Aufwändigen Phasen vor der Implementierung
o tatsächliche Software entsteht spät
o Anforderer sehen spät wie ihre Anforderungen in Systemfunktionen umgesetzt werden

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

Was ist die agile Vorgehensweise?

A
  • Iteratives Vorgehen > in der Entwicklung Schritt für Schritt dem Ziel annähern
  • übergeordnetes Ziel: möglichst früh einen funktionsfähigen Prototyp der Software zur Verfügung zu stellen, der dann iterativ verbessert und erweitert wird
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Mögliche Probleme beim agilen Vorgehen

A
  • wenn Ziele zu Projektbeginn nicht klar definiert
  • nicht einfach Verträge mit Dienstleistern auf Basis agiler Vorgehensweise zu definieren, da keine genaue Planung die kommerzielle Bewertung erleichtert
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was ist ein Sprint?

A
  • regelmäßigen Abstände, in denen eine neue Version der Software erstellt wird
  • läuft für einen zuvor definierten Zeitraum (meist 2-4 Wochen)
  • beginnt mit Sprintplanung
  • endet mit Sprintreview
  • Innerhalb des Sprints werden bestimmte Anforderungen umgesetzt > damit Erstellung neuer Version von potenziell auslieferbarer Software
  • Kunden/Anforderern möglich schnell und kontinuierlich Feedback zu geben
    o Erhöhte Anwenderakzeptanz
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Vorteile Agiles Vorgehen

A
  • Anpassungsfähigkeit: Agile Methoden erlauben flexible Anpassungen an veränderte Anforderungen.
  • Frühe und regelmäßige Softwareversionen: Durch die kurzen Sprints entstehen kontinuierlich funktionale Versionen.
  • Ständige Rückkopplung: Erhöht die Relevanz und Akzeptanz der Software.
  • Transparenz und Teamkommunikation: Regelmäßige Meetings fördern die Zusammenarbeit.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Nachteile Agile Methoden

A
  • Unklare Ziele zu Beginn: Fehlende Projektziele können zu Orientierungsproblemen führen.
  • Planungs- und Kostenschätzungsschwierigkeiten: Fehlende langfristige Planung erschwert Kostenschätzung und Zeitpläne.
  • Abhängigkeit von Kundenfeedback: Der Erfolg hängt von regelmäßiger Kundeneinbindung ab.
  • Teamdisziplin und Selbstorganisation: Agile Methoden verlangen hohe Eigenverantwortung und Disziplin im Team.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was sind die Hauptrollen im Scrum-Team?

A
  • Product Owner: Verantwortlich für die Maximierung des Wertes des Produkts und die Verwaltung des Product Backlogs.
  • Scrum Master: Unterstützt das Scrum-Team bei der Umsetzung von Scrum und entfernt Hindernisse.
  • Entwickler (Developers): Fachleute, die die Arbeit zur Produktentwicklung durchführen. Dies umfasst Softwareentwickler, Designer, Tester und andere relevante Fachleute
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was sind die Ereignisse (Events) im Scrum?

A
  • Sprint: Eine Zeitbox von in der Regel ein bis vier Wochen, in der ein funktionierendes Inkrement des Produkts erstellt wird.
  • Sprint Planning: Eine Besprechung, in der das Team die Arbeit für den Sprint plant.
  • Daily Scrum: Eine tägliche kurze Besprechung, in der das Team den Fortschritt und die Pläne für den Tag bespricht.
  • Sprint Review: Eine Besprechung am Ende des Sprints, in der das Team das fertige Inkrement präsentiert und Feedback erhält.
  • Sprint Retrospective: Eine Besprechung, in der das Team den Sprint reflektiert und Möglichkeiten zur Verbesserung identifiziert.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Artefakte im Scrum

A
  • Product Backlog: Eine priorisierte Liste von Funktionen, Anforderungen und Verbesserungen für das Produkt.
  • Sprint Backlog: Eine Liste der Aufgaben, die das Team während des Sprints erledigen möchte.
  • Increment: Das fertige, funktionierende Ergebnis des Sprints.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was ist Kanban?

A
  • Visualisierung: Aufgaben werden auf einem Kanban-Board visualisiert, das in Spalten wie “Offen”, “In Arbeit” und “Erledigt” unterteilt ist.
  • Pull-Prinzip: Teammitglieder wählen sich Aufgaben selbstständig, sobald sie Kapazitäten frei haben.
  • WIP-Limit: Eine Obergrenze für die Anzahl gleichzeitig bearbeiteter Aufgaben, um Überlastung zu vermeiden (Work-In-Progress)
  • Stetige Verbesserung: Regelmäßige Abstimmungen zur Prozessoptimierung.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was ist Extreme Programming?

A
  • Technische Exzellenz: Fokus auf hohe Code-Qualität durch Praktiken wie Testgetriebene Entwicklung und kontinuierliche Integration (Code in Hauptrepository > aktueller Stand)
  • Kurze Entwicklungszyklen: Häufige und kleine Software-Updates, um schnell auf Änderungen und Feedback reagieren zu können.
  • Paar-Programmierung: Zwei Entwickler arbeiten gemeinsam an einer Aufgabe, um Wissen zu teilen und Fehler frühzeitig zu erkennen.
  • Kollektive Code-Eigentümerschaft: Jeder im Team kann Änderungen vornehmen.
  • Kundeneinbindung: Der Kunde ist in den gesamten Entwicklungsprozess integriert.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Was sind die Unterschiede zwischen Wasserfall und Agile Methoden?

A

Vorgehensweise:
* Wasserfallmodell: Sequenzielles Vorgehen mit klar definierten Phasen.
* Agile Methoden: Iteratives Vorgehen mit kurzen Entwicklungszyklen (Sprints).

Phasenübergänge:
* Wasserfallmodell: Jede Phase muss abgeschlossen und dokumentiert sein, bevor die nächste beginnt; Rückschritte sind nicht vorgesehen.
* Agile Methoden: Jede Iteration liefert eine lauffähige Softwareversion, die ständig weiterentwickelt wird.

Planbarkeit und Flexibilität:
* Wasserfallmodell: Gut planbar und kontrollierbar, jedoch unflexibel bei sich ändernden Anforderungen.
* Agile Methoden: Flexibel und anpassungsfähig, da Anforderungen laufend angepasst werden können.

Feedback:
* Wasserfallmodell: Feedback ist meist erst am Ende möglich, wenn das Produkt nahezu fertig ist.
* Agile Methoden: Kontinuierliches Kundenfeedback nach jedem Sprint, was die Relevanz und Qualität des Endprodukts erhöht.

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

Was sind hybride Vorgehensmodelle?

A

Kombinieren Elemente von Wasserfall- und agilen Modellen, um die Vorteile beider Ansätze zu nutzen und deren Nachteile zu vermeiden.

Typischer Ablauf:
* Wasserfall für Planung: Zu Beginn werden Planung und Anforderungsdokumentation nach Wasserfallprinzipien erstellt, was als Basis für Festpreisangebote dienen kann.
* Agile Implementierung: Während der Implementierung wird iterativ und agil vorgegangen, mit häufigen Feedbackschleifen, um die Kundenerwartungen besser zu erfüllen.

17
Q

Welche Faktoren sind bei der Auswahl eines Vorgehensmodells zu berücksichtigen?

A

Faktoren sind: 1. Klarheit der Anforderungen 2. Stabilität der Anforderungen 3. Wissen der Beteiligten über Vorgehensweisen 4. Erwartung an Ergebnisse.

18
Q

Welche Maßnahmen können den Erfolg eines agilen CRM-Projekts fördern?

A

Maßnahmen sind: 1. Schulung der Projektmitglieder 2. Verständnis für agile Vorgehensweisen erzeugen 3. Transparente Vertragsgestaltung 4. Umfangreiche Anforderungserhebung zu Beginn.