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.
Karten
135
Lernende
4
Sprache
Deutsch
Kategorie
Mathematik
Stufe
Universität
Erstellt / Aktualisiert
18.10.2015 / 06.09.2023

Lernkarten

Möglichkeiten zur Erstellung des Programmcodes?

- Schreiben von Code

- Wiederverwendung von bestehendem Code (Frameworks / Bibliotheken)

- Code automatisch generieren

Wichtigste Funktionen von Entwicklungsumgebungen?

- Ünterstützung beim Schreiben von Code

- Einbindung von Bibliotheken & Frameworks

- Generierung von Code für triviale Aufgaben

- Unterstützung der Versionsverwaltung

- Erzeugen einer lauffähigen Version aus dem Code

Arten von Programmiersprachen?

- imperative (C)

- objektorientierte (Java)

- Web-Anwendungssprachen (JavaScript)

- Datenbanksprachen (SQL)

- Beschreibungssprachen (HTML, CSS)

Faktoren für die Auswahl einer Programmiersprache?

- Ausführungsumgebung

- zur Verfügung stehende Entwickler

- Anwendungslandschaft

- vorhandene Frameworks / Bibliotheken

- Erfahrungen mit der Sprache

- vorhandenes Fachwissen

- Unterstützung für zukünftige Systemplattformen

Systemtechniker

Ziel: Bereitstellen & Gewährleisten von technischen Ressourcen

Aufgaben - Evaluation, Installation und Wartung (Hardware und Software)

- Bereitstellung von Ressourcen

- Überwachung der genutzten Ressourcen

- Sicherstellung der Verfügbarkeit

Softwarequalität?

-wird auf Basis der Spezifikation bestimmt

- für den Kunden ist entscheidend, dass er mit dem System arbeiten kann

Qualitätsmanagement?

Zusammenfassung aller organisierten Maßnahmen, die der Verbesserung der Qualität von Produkten, Prozessen oder Leistungen dienen.

konstruktives Qualitätsmanagement?

Maßnahmen des Qualitätsmanagements die vor der Erstellung des Produkts stattfinden:

- technische Maßnahmen

- organisatorische Maßnahmen

- sozio-psychologische Maßnahmen

analytisches Qualitätsmanagement?

Maßnahmen zur Prüfung und Bewertung des aktuellen Qualitätsniveaus:

- statische & dynamische Testverfahren

statische Test?

Reviews oder Audits

Auswertung durch Kennzahlen oder Metriken

dynamische Tests

Ausführung mit konkreten Eingabewerten und anschließende Bewertung der Ausführung

Testgegenstand?

- erzeugter Programmcode

- fachliche Anforderungen

- technische Spezifikation

- Architekturbeschreibungen

- Testfälle

Teststufen?

- Komponententest

- Integrationstest

- Systemtest

- Abnahmetest

Releaseplan?

legt Termine fest zu denen Änderungswünsche und Anpassungen in Betrieb genommen werden.

Continiuous Integration?

durch Automatisierung und Werkzeugunterstützung tägliche und wöchentliche Releases von Softwaresystemen und automatische Tests.

Continuous Delivery?

Aufbau eines automatische Deployments der angepassten Anwendung.

- kurze Zyklen ohne konkrete Termine

IT-Service-Portfolio?

- Katalog über verfügbare Services eines IT-Betriebs

(z.B. Bereitstellung von Datennetzen, Serversystemen, Betriebssystemen, Speichersystemen und Backuplösungen)

Herausforderungen bei der Weiterentwicklung?

- Degenerierung der internen Struktur mit jeder Veränderung

- neue Anforderungen werden durch verwendete Technologien nicht ünterstützt

- mangelnde Dokumentation

- Fehlendes Wissen über Architektur und Programmiersprache

- Bestandswahrung bei funktionierenden Teilen des Systems

Architektur- & Dokumentationsdisziplin?

Es ist bedeutsam auch unter Zeitdruck die Dokumentation zu beachten und diese zu pflegen.

Rolle?

wird Personen zugeordnet und ist gekennzeichnet durch spezifische Aufgaben und Zielsetzungen

Projektmanager?

Ziel: erfolgreiche Durchführung des Projekts

Aufgaben:

- Planung, Organisation und Kostenschätzung

- Steuerung und Koordination von Aktivitäten und Personen

- Kontrolle und Verfolgung der erzielten Ergebnisse

- Überwachung von Projektplan und Produktivität

Risikomanager?

Ziel: Risikominimierung des Projekts

Aufgaben:

- Indentifikation aller Risiken

- Risikoanalyse & Beurteilung

- Risikoauflösung / -abschwächung

- Risikoüberwachung

Qualitätsmanager?

Ziel: hohe Qualität des Produkts

Aufgaben:

- Definition der Systemqualität

- Erstellung einer überprüfbaren Plans zur Qualitätssicherung

- Koordination der Maßnahmen zur Qualitätsicherung

- Verabschiedung von Qualitätsrichtlinien

- Sicherstellen der Kundenzufriedenheit

Requirements Engineer?

Ziel: Lieferung der fachlichen Aufgabenstellung

Aufgaben:

- Quellenbestimmung für Anforderungen++

- Ermittlung der Anforderungen & Dokumentation

- Übereinstimmung der Stakeholder erreichen

- Prüfen & Abstimmen der Anforderungen

- Verwaltung & NAchverfolgung der Anforderungen

Spezifizierer

Ziel: Erstellung einer detaillierten technischen Spezifikation

Aufgaben:

- Beschreibung des Verhaltens von Daten & Funktionen

- Definition überprüfbarer Qualitätsanforderungen

- Vorbereitung der Qualitätssicherung durch Definition von Testfällen

Architekt?

Ziel: erfolgreiche technische Umsetzung der fachlichen Anforderungen

Aufgaben:

- Gestaltung & Beschreibung der Architektur

- Sicherstellung der Einhaltung der Qualitätsanforderungen & technischen Randbedingungen

- Überwachung der Architektur während der Implementierung

Vorbereitung der Systemintegration

Entwickler?

Ziele: Erstellung funktionierenden Programmcodes

Aufgaben:

- Programmierung einzelner Module

- Definition von Algorithmen

- Modultests

- Integration einzelner Module

Tester?

Ziel: Auffinden von Fehlern

Aufgaben:

- Auswahl der Testverfahren

- Testplan, Testfälle, Testdaten, Testverfahrensspezifikation

- Durchführung der Teststufen

- Dokumentation der Testbedingungen & Ergebnisse

Integrator?

Ziel:Einpassung des Systems in die bestehende Systemlandschaft

Aufgaben:

- Prüfung der Integrierbarkeit

- Ausprobieren der Integration

- Prognose des Ressourcenbedarfs

- Integration des fertigen Systems

- Herstellung von technischen Verbindungsstellen

Vom Prozessparadigma zumd Softwareprozess?

Prozessparadigma

Softwareprozessmodell Rahmenwerk

Individuelles Softwareprozessmodell

Softwareprozess

Prozessparadigma?

sehr allgemeine Vorgehensmodelle ohne Rollen, Zuständigkeiten oder detaillierte Abläufe

Softwareprozessmodell Rahmenwerk?

detaillierte Beschreibungen zu Rollen, Zuständigkeiten, konkreten Aktivitäten & deren Abhängigkeiten

Individuelles Softwareprozessmodell?

legt fest:

- Welche Akitvitäten durchzuführen sind

- deren Reihenfolge

- zugeordnete Rollen & Organisationseinheiten

- Werkzeuge und Methoden zur Unterstützung

Typen der Objekte die erzeugt werden sollen

Softwareprozess?

- ein konkretes Softwareprojekt, die Ausprägung eines Softwareprozessmodells

- Welche Aktivitäten werden wann von wem ausgeführt

- Welche Objekte wann erzeugt, bzw. verarbeitet werden

Wasserfallmodell?

schrittweise, jeweils vollständige Bearbeitung einzelner Phasen in festgelegter Reihenfolge ohne Überschneidung. Rückkopplung ist möglich.

V-Modell

ähnlich dem Wasserfallmodell, jedoch wird jeder Phase der Konstruktion eine Teststufe zugeordnet.

Nachdem die konstruktiven Phasen abgeschlossen sind, durchläuft das System die Teststufen

Evolutionäre Entwicklung?

- basiert auf Idee ein Softwaresystem in mehreren Zyklen entstehen zu lassen

- System steht stärker im Fokus als die Dokumentation

- Typischer Zyklus:

1. Festlegen der Funktionen

2. Umsetzen

3. integration in bestehendes System

4. Testen & Bewerten

- erscheint aus Managementsicht unstrukturiert und ohne definiertes Ziel

V-Modell XT?

-deutsches Softwareprozessmodell Rahmenwerk, welches verbindlich für viele öffentliche IT-Projekte ist

Hauptelemente:

- Projekttypen

- Entscheidungspunkte & Projektdurchführungsstrategien

- Vorgehensbausteine

- Referenzen

Projekttypen im V-Modell XT

Projekt eines Auftraggebers

Projekt eines Auftragnehmers

Projekt eines Auftraggebers mit Auftragnehmer in der gleichen Organisation

Einführung & Pflege eines organisationsspezifischen Vorgehensmodells

-> Für jeden Projekttyp wird beschrieben welche Vorgehensbausteine vorkommen müssen und welche optional sind

Entscheidungspunkte & Projektdurchführungsstrategien im V-Modell XT?

An diesen Punkten wird entschieden ob eine bestimme Projektfortschrittsstufe erreich wird

Die Reihenfolge der Punkte wird in der Projektdurchführungstrategie festgelegt und leitet sich aus Projekttyp & spezifischen Projektmerkmalen ab

Lernen