Durchschnittlicher Fortschritt
Gewusst0
Nicht gewusst0
Noch nicht gestartet18

Empfohlene Karteikarten-Sets

Karteikarten im Karteikarten-Set

Noch nicht gestartet (18)

Herausforderungen der Softwareentwicklung
 

20019625565d3962bff23f00.49422849phpUWaAhS.png

Qualitätsmerkmale von Software

4085380945d39636f06eef4.25658619phpIOFlRr.png14767427665d396374d53512.40787570phpEaOwNG.png

Vorgehensmodelle der Softwareentwicklung ... 

...sind schematische Abbildungen oder Beschreibungen von Methoden zur Entwicklung eines Systems 

 

...dienen dazu der Komplexität des Softwares bei der Entwicklung beherrschen zu können

 

...sind die Voraussetzungen für die Entwicklung von komplexer Software 

Vorgehensmodelle der Softwareentwicklung - Vorgeschichte

21345758375d3963f3621730.24912182phpgv13av.png

Vorgehensmodelle der Softwareentwicklung – nach der SW-Krise

18989740065d3963f9a8ce97.08973224phpWeVfcE.png

Wasserfallmodell (nach W. Royce/IBM 1970)
 

16518621315d3964e4a7a396.07436543php8Fsre7.png

V-Modell (1.Version 1988)

5443243415d39650390def6.85500667phpQz2bKv.png

V-Modell  - Vor- und Nachteile

1446648915d396545bceab0.77165239phpTkdm9e.png

Das Spiralmodell (nach B.W. Boehm 1988) 

18823313555d39659a5eda39.11369993phpiYAAxa.png

Erste Iteration:

  • Anforderungsanalyse 
  • Festlegung des ersten Prototypens als Iterationsziel 
  • „Proof of Concept“ 
  • Projektplanung und Planung der nächsten Iteration

 

Weitere Iterationen:

  • Ermittlung von Alternativen 
  • Auswahl einer Alternative in der Risikoanalyse 
  • Implementierung des Iterationsprototypens

Besonderheiten:

  • Vorgehen bei der Entwicklung ist nicht in jeder Phase gleich
  • Iterative Erweiterung der Funktionalität
  • Steuerung der Entwicklung durch die Bewertung von Alternativen
  • Gute Risikoanalyse notwendig 

Probleme der genannten Modelle
 

6707606595d39665aabc7f5.05717612phpKkfsiN.png

Agile Softwareentwicklung 

Manifest Agiler Softwareentwicklung: 

Menschen und Zusammenarbeit sind wichtiger als Prozesse und Werkzeuge

 

Funktionierende Software ist wichtiger als umfassende Dokumentation

 

Zusammenarbeit mit dem Kunden ist wichtiger als Vertragsverhandlungen

 

Reagieren auf Veränderung ist wichtiger als die Einhaltung eines Plans 

Agile Softwareentwicklung - Beispiel: SCRUM
 

 agiles Vorgehensmodell für kleine Projektteams

 

 Team ist interdisziplinär zusammengesetzt

 

Entwicklung verläuft nach festgelegtem Zyklus, an dessen Ende, das sogenannte „Produktinkrement“ steht. 

 

 

SCRUM

Zentrales Element zur Aufgabenbeschreibung ist die User Story:

Aufbau: Ich als <Stakeholder> möchte <Funktion>, um <Nutzen> zu haben.

 

Ziel: Einfache Erfassung und Dokumentation von Anforderungen und Aufgaben aus Sicht eines spezifischen Stakeholders. 

 

Beispiel bezogen auf ISIS-Plattform: Ich als Student möchte Vorlesungsfolien zeitlich und örtlich uneingeschränkt herunterladen können, damit ich mich jederzeit auf die nächste Klausur vorbereiten kann

SCRUM

Teamrollen

Scrum Master (1x pro Team): Stellt sicher, dass das Team optimal arbeiten kann (Besprechungen moderieren, Prozesse optimieren und wenn es sein muss: Druckerpapier holen) und führt das Team durch den SCRUM-Prozess

 

Product Owner (1x pro Team): Gibt die User Stories und deren Priorität vor

 

Entwicklerteam: Setzt die User Stories um. 

 

--> Innerhalb des Teams existieren trotz unterschiedlicher Rollen keine Hierarchien

SCRUM (Gesamtprozess)
 

8682874835d396b32549838.73222772phpMpuRNm.png

Agile Softwareentwicklung - Beispiel: XP

20735638355d396b55e24963.72564444php3UcKAf.png

Agile Softwareentwicklung - Zusammenfassung
 

11849407305d396b7dd9c682.20294534phpYIL27l.png