IGIS

Grundlagen der industriellen Softwaretechnik

Grundlagen der industriellen Softwaretechnik


M. S.
Diese Lernkarten behandeln fortgeschrittene Themen des Software Engineering und Projektmanagements auf Universitätsniveau. Sie konzentrieren sich auf verschiedene Prozessmodelle wie Scrum, RUP und V-Modell XT, sowie auf Rollen und Aktivitäten im Softwareentwicklungsprozess. Die Karteikarten eignen sich für Studierende und Berufstätige, die sich mit Softwareprozessmodellen, Projektmanagement und der Erstellung von Softwarearchitekturen vertraut machen möchten.
Flashcards
135
Students
4
Language
German
Category
Maths
Level
University
Created / Updated
18.10.2015 / 06.09.2023

Flashcards

Make-or-Buy Entscheidung

Existieren verfügbare Softwarelösungen für den Bedarf gibts Standardprodukte oder muss ein neues System entwickelt werden?

Planung eines Softwareprojekts?

-Bedarfsermittlung

-Make-or-Buy Entscheidung

-Zeit- & Ressourcenplanung

-Auftragsvergabe

Zeit- & Ressourcenplanung in der Planung?

Erstellung eines ersten Projektsplans bis zur Einführung

-Einplanung der benötigten Ressourcen

Auftragsvergabe eines Softwareprojekts?

-externer Dienstleister oder eigene IT-Abteilung?

-Bei Vergabe an einen Dienstleister müssen bei Auftragsvergabe die Anforderungen bereits dokumentiert vorliegen

Phasen der Entwicklung?

-Requirements Engineerin & Spezifikation

-Architektur & Implementierung

-Qualitätssicherung

Phasen des Betriebs?

-Bereitstellung der Ausführungsumgebung

-Integration

-Inbetriebnahme

Sicherzustellende Qualitätsanforderungen im Betrieb?

-Sicherheit

-Verfügbarkeit

-Skalierbarkeit

Typische Elemente der IT-Infrastruktur?

-Server

-Schnittstellen

-Softwaresysteme

-Speichersysteme

-Sicherheitssysteme

Zielkonflikte zwischen Anwendungsentwicklung & Betrieb?

Schnell auf fachliche Anpassungen reagieren zu können andererseits ein sicher & zuverlässig arbeitendes System zu haben

typische Aktivitäten in der Weiterentwicklung?

Aktivitäten aus der Phase Erstellung (RE, Spezifikation, Architektur, Implementierung & Qualitätssicherung)

Ergänzung neuer Fachfunktionen

Typische Aktivitäten der Phase Wartung?

Korrektur von Fehlern & Verbesserungen (Laufzeitverhalten & Performance)

Wichtige Aktivitäten in der Phase Abschaltung?

-Herauslösung aus der Anwendungslandschaft

-Migration von Daten

-Verträge kündigen

-Personal weiterqualifizieren

Typische Gründe für eine Abschaltung?

-Ablösung durch neue Systeme

-Zusammenführung / Vereinheitlichung bzw. Konsolidierung der Anwendungslandschaft

-Aufgabe von Geschäftsfeldern oder Auslagern von Aktivitäten

Risiken beim Herauslösen von Altsystemen aus der Anwendungslandschaft?

-schwer zu erkennende Abhängigkeiten an Schnittstellen aufgrund von mangelnder Dokumentation / Kenntnissen der genutzten Technologien

-Abbildung vom alten auf das neue Datenschema

-Vergessen von Küdnigung von Verträgen im Zusammenhang mit dem Altsystem

Requirements Engineering?

Aktivitäten zum methodischen & strukturierten Ermittlen von Anforderungen an ein System

Eigenschaften des Requirements Engineering?

koorperativ, iterativ, inkrementell

Drei Kernaktivitäten des Requirements Engineering?

-Ermittlung von Anforderungen

-Dokumentation von Anforderungen

-Prüfen & Abstimmen von Anforderungen

systematisch Ermittlung von Anforderungen?

1. Systemkontext bestimmen

 -> Stakeholder & Systemabhängigkeiten bestimmen

2. Quellen für Anforderungen ermitteln

 -> z.B. Stakeholder, Dokumente oder andere Systeme

3. Geeignete Ermittlungstechniken auswählen

 -> Befragung, Beobachtung, Prototypen

Zu gewährleistende Ziele des Requirements Engineering?

-relevante Anforderungen bekannt und genügend verstanden

-konform dokumentiert & spezifiziert

-ausreichende Übereinstimmung über bekannte Anforderungen bei allen involvierten Stakeholdern

Systematische Dokumentation von Anforderungen?

1. Zweck & Zielgruppe der Dokumentation bestimmen

2.Detailebene & Darstellungsart wählen

3.Anforderungen dokumentieren

4.Prüfen: Passt die Dokumenation noch zu Zweck und Zielgruppe

Vier Schritte zum Prüfen & Abstimmen von Anforderungen?

1. Prüfkriterien festlegen

2. Prüfprinzipien & Prüftechniken auswählen

3. Prüfung durchführen & Ergebnisse dokumentieren

4. Abstimmen der Anforderungen und Konfliktmanagement

Konfliktmanagement?

das methodische identifizieren, analysieren und auflösen von Konflikten

Formen der Dokumentation?

- Beschreibung in Textform

- graphische Modelle

Ziel der Spezifikation?

Erstellung einer technischen Dokumentation der nach außen relevanten Anforderungen

Verwendung der Spezifikation?

Basis für Systemdesign, Implementierung und Erstellung von Testfällen

Elemente einer Spezifikation?

fachliches Verhalten:

-Datenmodelle (Geschäftsobjekte)

-Fachfunktionen

-Geschäftsregeln

technische Systemschnittstellen:

Zweck der Schnittstelle

-technische Protokolle (FTP, HTTP, SMTP)

-Datenstruktur

-GUI

sowie:

Qualitätseigenschaften und Randbedingungen

Spezifikation von Benutzerschnittstellen (GUI)?

-Inhalt und Aufbau einzelnder Dialogmasken

-Validierung von Daten

-Dialogfluss

textuell & visuell spezifiziert

Spezifikation von Aufbau und Abläufen des Systems?

- Komponenten

 ->deren Abgrenzung, Funktion und Zusammenspiel

- Fachliche Datenmodelle

 -> Modell zur Spezifikation von fachlichen Entitäten und deren Zusammenhänge

- Geschäftsregeln

 -> Aussagen die fachliche Aspekte definiert / bedingt

Spezifikation von Qualitätseigenschaften

"Gesamtheit der Merkmale & Merkmalswerte eines Softwareprodukts, die sich auf dessen Eignung zur Erfüllung gegebener Erfordernisse bezieht."

-gute Usability, Datensicherheit, Erreichbarkeit

Architektur im Software Engineering?

alle Festlegungen und Entscheidunggen über das System die vor der Implementierung getroffen werden

Überführung von Problemraum in Lösungsraum?

Problemraum (RE / Spezifikation)

Prozess / Ergebnis (IT-Architektur)

Lösungsraum (Implementierung)

Architekturbeschreibung

- Vorlage und Rahmenwerk für die Aktivitäten der Implementierung

- Ergebnis von Entscheidungen und Gestaltungsaktivitäten auf Basis der Ergebnisse des Requirements Engineering und der Spezifikation

Kernaktivitäten der Architekturerstellung?

1. Erfassung der Anforderungen & Interessen der Stakeholder

 -> abwägen und entscheiden zwischen Kosten und Funktionalität / erste Aufwandschätzung

2. Entwerfen einer Architektur zur Erfüllung dieser Anforderungen

3. Beschreiben und Dokumentieren der Architektur

Verhältnis von Architektur und System?

Architektur ist systemimmanent

-> es kann zwar ein System ohne bestehende Architekturbeschreibung implementiert werden, dennoch weist das fertige System eine Architektur auf.

Dokumentation von IT-Architekturen?

- Skizzen / Grafiken

- Strukturierte Softwaremodelle (z.B. UML)

- spezifische Architekturbeschreibungssprachen (finden vor allem in der Forschung Verwendung)

- Beschreibung direkt im Programmcode

A priori Dokumentation?

Erstellung der Dokumentation vor der Implementierung

Ex Post Dokumentation

Erstellung der Dokumentation nach der Implementierung

Ebenen von IT-Architekturen

- Facharchitektur

- Softwarearchitektur

- IT-Unternehmensarchitektur

Beziehung zwischen Architektur und Implementierung?

Architekt ist Ansprechpartner für Entwickler bei Rückfragen / Entscheidungen die sich auf mehrere Teile des Systems ausüben. Desweiteren dient die Architekturbeschreibung als Rahmenwerk für die Implementierung.

Manifestatione eines Softwaresystems?

- durch Entwickler erzeugter Quellcode

- ausführbare, kompilierte Binärversion

Study