GI-Applikationsentwicklung - Vorgehensmodelle Flashcards

1
Q

Definition (Vorgehensmodelle)

A

Beschreibung des organisatorischen Ablaufes bei der Entwicklung eines IT -Systems durch einheitliche und verbindliche Festlegung von

  • abgegrenzten Abschnitten (Phasen) und Aktivitäten
  • Reihenfolge der Phasen
  • Rollen
  • Methoden und Werkzeuge zu den Aktivitäten
  • Ergebnisse

=> WAS ist WANN durch WEN mit welchem ERGEBNIS zu tun?

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

Definition (Vorgehensmodelle): Vorteile

A
  • Leitfaden für die Systementwicklung
  • gemeinsame und verbindliche Sicht der logischen und zeitlichen Struktur eines Projektes
  • projektbegleitende Dokumentation
  • Planbarkeit
  • Zertifizierbarkeit
  • Unabhängigkeit von Personen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Definition (Vorgehensmodelle): Vorgehensmodell (Prozessmodell)

A

Festlegung von

https://ibb.co/c1V564n

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

Begriffe (Vorgehensmodelle)

A

■ Aktivitäten bzw. Phasen sind z.B.

  • Analyse
  • Entwurf
  • Implementierung
  • Test
  • Inbetriebnahme

■ Artefakte

-Zwischenergebnisse/Produkte einzelner Aktivitäten/Phasen

■ Meilenstein

  • Erreichung eines bestimmten (wesentlichen) Zwischenzieles; i.d.R. Abschluss einer Aktivität oder Phase
  • Vorliegen definierter Ergebnisse
  • dient der Überprüfung des Projektstandes

■ Tailoring

  • Anpassung des Vorgehensmodells an das jeweilige Projekt
  • Vor dem Einsatz
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Klassifizierung (Vorgehensmodelle) : Lineare Modelle

A

□ Definieren zeitlich (relativ streng) aufeinander folgende Phasen

=> sequentieller Durchlauf

□ Das Ergebnis jeder Phase sind eingangs definierte Artefakte

□ Diese sind gleichzeitig Genehmigungspunkt und fungieren als Meilenstein im Projekt

□ Anschließende Phase darf nur gestartet werden, wenn die zuvor definierten Phasenziele erreicht wurden

□ Rücksprünge in bereits abgeschlossene Phasen sind nur an zuvor definierten Zeitpunkten zulässig

□ Vorteile:

  • einfache und klare Planung, Organisation und Überwachung
  • Komplexität größerer Projekte gut beherrschbar

□ Nachteile

  • PlanungsPlanungs-und Entwicklungsfehler werden erst spät erkannt
  • Hohes Projektrisiko am Ende
  • Berücksichtigung von Anforderungsänderungen schwierig und kostenintensiv
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Klassifizierung (Vorgehensmodelle) : Iterative Modelle

A

□ Der Entwicklungsprozess besteht aus einer Folge von Zyklen (Iterationen Iterationen)

• Inkrementell

  • Anforderungsanalyse und Entwurf nur zu Beginn der Entwicklung
  • Zerlegung in sinnvolle, selbstständig entwickelbare Teile (Inkremente)
  • Entwicklung der Inkremente parallel oder nacheinander bis zum Gesamtprodukt

• Evolutionär

  • Anforderungsanalyse und Entwurf in jeder Iteration
  • Prototyp (Kernfunktionalität vs. risikobehaftet) wird evolutionär weiterentwickelt

□ Am Ende jedes Zyklus steht eine neue (ausführbare) Version des SW SW-Produktes, welche die vorherige Version verbessert und erweitert

□ Frühzeitige lauffähiges Teilsystem

=> Abschätzung von Entwicklungsrisiken
=> Frühzeitige Rückäußerungen durch Kunden/Anwender

□ Neue/geänderte Kundenanforderungen wahrscheinlich

□ Festpreisangebote schwierig

□ Zeitige Festlegung der Systemarchitektur

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

Klassifizierung (Vorgehensmodelle) : Agile Modelle

A

□ Weiterentwicklung der evolutionären Vorgehensweise mit (sehr) kleinen Inkrementen und kurzen Zyklen
□ Reaktion auf sich schnell ändernde Bedingungen
□ Weniger formalisiert

□ Vorteile (vgl. Schönberger, Aichele: App4U, Mehrwerte durch Apps im B2B und B2C, 2014)

  • Gute Einsetzbarkeit bei unklaren Zielen und sich ändernden Anforderungen.
  • Hohe Flexibilität und verringerte Komplexität der Projektverwaltung.
  • Erhöhte Transparenz auf den Projektstand und mögliche Risiken.

□ Nachteile (vgl. Schönberger, Aichele: App4U, Mehrwerte durch Apps im B2B und B2C, 2014 2014)

  • Eigenverantwortlichkeit des Projektteams kann zu Schwierigkeiten führen.
  • Erhöhter KommunikationsKommunikations-und Abstimmungsaufwand.
  • Häufig fehlende Dokumentation der Ergebnisse.

■ Mischformen

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

Klassifizierung (Vorgehensmodelle) : Code and Fix

A

■ SHIT-Methode (Software vom Hirn ins Terminal)

■ Schritte
Programmieren -> Software nutzen und Fehler finden
Software nutzen und Fehler finden -> Programmieren

■ Vorgehen aus der Anfangszeit der Softwareentwicklung und für kleine (Ein Ein-Mann -)Projekte

  • keine Analyse, kein Entwurf, keine Dokumentation

■ Nachteile

□ Nachträgliche Anforderungen und/oder zu behebende Fehler bauen u.U. das gesamte Programm um
=> wird jedes Mal teurer
□ Code kann nur vom Programmierer selber gewartet werden
□ => sinnvoll evtl. dann, wenn Programmierer = Nutzer

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

Klassifizierung (Vorgehensmodelle): Lineare Modelle&raquo_space; Wasserfallmodell

A

https://ibb.co/vXPGbjJ

■ erstmalig vorgestellt : 1970 von Dr. W. Royce
Weiterentwicklung durch Barry Boehm
■ Streng sequentiell
■ Änderungen von Anforderungen können nicht berücksichtigt werden
■ Sehr spät lauffähige Version
■ Erst danach wird getestet

-> hohes Risiko bzgl. Kosten für Fehlerbeseitigung

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

Klassifizierung (Vorgehensmodelle): Lineare Modelle&raquo_space; Lineare Modelle&raquo_space; Lineare Modelle&raquo_space; V
Modell XT

A

■ Integration der Qualitätssicherung im Modell:
Tests werden während jeder Phase entworfen und durchgeführt.

□Verifikation: Übereinstimmung zwischen einem Software Produkt und seinerSpezifikation (Wird ein korrektes Produkt entwickelt?)

□ Validation : Eignung und Wert eines Produktes bezogen auf seinenEinsatzzweck (Wird das richtige Produkt entwickelt?)

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

Klassifizierung (Vorgehensmodelle): Lineare Modelle&raquo_space; Lineare Modelle&raquo_space; V Modell

A

■ Weiterentwicklung durch V Modell XT

“Das V Modell XT ist ein Vorgehensmodell für die Durchführung von IT Projekten, insbesondere zur Entwicklung von Softwaresystemen. Es
unterstützt die Arbeit von Projekten, indem es Ergebnisse und Abläufe vorgibt, so dass zu keinem Zeitpunkt unnötige Arbeiten und möglichst auch
keine Leerlaufzeiten entstehen. Zusätzlich regelt das V Modell XT die Kommunikation zwischen Auftraggeber und Auftragnehmern, um typische Quellen für Missverständnisse zwischen den Beteiligten auszuschließen
… Der Zusatz “XT” steht dabei für “ eXtreme Tailoring “ und unterstreicht die flexible Anpassbarkeit an spezifische Projektumfelder”

Quelle: http://www.v modell xt.de/

□ Verbindliches Modell für Projekte des Bundes
□ sehr komplex mit hohem Management und Dokumentationsaufwand
□ geeignet für große , komplexe Systeme
□ nicht zwingend linear, sondern anpassbar

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

Klassifizierung (Vorgehensmodelle): Lineare Modelle&raquo_space; Iterativ/ Inkrementelle Modelle

A

Beispiel: Anwendung des Wasserfallmodells für ein iterativ/inkrementelles Vorgehen

https://ibb.co/mSTYLRZ

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

Klassifizierung (Vorgehensmodelle): Lineare Modelle&raquo_space; Iterativ/ Inkrementelle Modelle

A

■ Rational Unified Software Development Prozess (RUP)
□ 1999 durch Ivar Jacobsen, Fa. Rational
□ Lizenziert
□ Phasen
•Inception ( Projekteinstieg , Produktvision
•Elaboration ( Risikoanalyse , Use Cases, Systemarchitektur
•Construktion Iterationen mit Detailanforderungsanalyse , Detaildesign , Codierung ,
Modul –)Test, Integration)
•Transition ( Qualitätsprüfung , Übergabe , Schulungen)

https://ibb.co/R6XsFs1

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

Agile Softwareentwicklung: Merkmale

A

Kurze Zyklen , in denen sich Planungs-und Entwicklungsschritte abwechseln

https://ibb.co/n6XFJMN

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

Agile Softwareentwicklung: Merkmale

A

□ Wenige Regeln
□ hoher Grad an Kommunikation
□ selbstorganisierende Teams
□ kleinere Teams ( bis 10 PersonenPersonen)
□ räumlicheräumlicheNähe
□ früher SystemeinsatzSystemeinsatz, kurze Releasezyklen
□ Transparenz

■ Methoden
 □ Paarprogrammierung (pair
 □ Testgetriebene Entwicklung
 □ permanentes Refactoring
 □ schnelle Codereviews
 □ …
BEISPIELE
 X Paarprogrammierung (pair programming)
 X Testgetriebene Entwicklung
 X permanentes Refractoring
 X schnelle Codereviews
 X ...
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Agile Softwareentwicklung» Scrum

A
Timeboxed
 •Sprint Planning Meeting
• Sprint
• Daily Scrum
• Sprint Review
• Sprint Retrospective
Rollen
Product Owner
Scrum Master
Entwicklungs-Team
Management derOrganisation
Stakeholder

Ereignisse

Stakeholder
Daily Scrum
Sprint Review
Sprint
Sprint Planning

Artefakte

Product Backlog
Burndown Chart
funktionierendes Teilprodukt
Sprint Backlog
Produkt

https://ibb.co/rbmZCJ6

17
Q

Agile Softwareentwicklung» Scrum: Ablauf

A

https://ibb.co/F0DGpCM