Klausur Flashcards
(84 cards)
Welche Phasen gibt es in der Softwareentwicklung? Was wird in diesen gemacht?
- Planungsphase
- Lastenheft, Glossar
- Aufwandsschätzung
- Definitionsphase
- Pflichtenheft
- OO-Modellierung mit UML
- Entwurfsphase
- Softwarearchitektur
- Komponenten
- Einführung, Betrieb, Wartung
- Abnahme, Installation
- Weiterentwicklung
Was ist Software?
Software ist eine Menge von Programmen und Daten, zusammen mit begleitenden Dokumente, die für ihre Anwendung notwendig oder hilfreich sind.
Was ist Systemsoftware?
- Auch “Basissoftware” genannt
- Speziell für eine Hardware(-familie) entwickelt
- Betriebssytem, Compiler, Datenbanken und Dienstprogramme
Was ist Anwendungssoftware?
- Löst die Aufgaben des Anwenders mithilfe eines Computersystems
- Setzt auf die Systemsoftware und Hardware auf
Was beinhaltet ein Computer-System?
Anwendungssoftware +
Systemsoftware +
Hardware
Was unterscheidet Softwareentwicklung von der Systementwicklung?
Softwareentwicklung:
- Ausschließliche Entwicklung von Software
- Verschieden Sprache je nach eingesetzte Technologie
Systementwicklung:
- Entwicklung eines Systems, das aus Software und Hardware besteht
- Bei der Entwicklung müssen zusätliche Randbedingungen berücksichtigt werden
Nennen Sie Eigenschaften von Software!
- Software ist immateriell
- Software wird nicht gefertigt, nur entwickelt
- Software unterliegt keinem Verschleiß, Wartung erzeugt neuen Zustand (stellt keinen alten wieder her)
- Software ist nicht durch physikalische Gesetze beschränkt
- Software ist schwer zu vermessen
Welche Arten von Qualität kennt Software?
Gebrauchsqualität (extern)
- Relevanz und Effektivität
- Betriebsqualität
- Zuverlässigkeit
- Benutzungsfreundlichkeit
Produktqualität (intern)
- Korrektheit
- Robustheit
- Wartbarkeit
- Übertragbarkeit
Prozessqualität
Welche Anforderungen werden an Software gestellt?
- Funktionstreue
- Qualitätstreue
- Termintreue
- Kostentreue
Was ist Gegenstand der Softwaretechnik?
Sie befasst sich mit der professionellen Entwicklung großer Softwaresysteme wobei Anwendungssoftware im Vordergrund steht.
Was sind die wichtigsten Prinzipien der Softwaretechnik?
- Prinzip der Abstraktion
- Prinzip der Strukturierung
- Prinzip der Hierachisierung
- Prinzip der Modularisierung
=> Übergeordnetes Ziel ist die Reduzierung von Komplexität!
Was ist eine Rolle, Artefakt, Artefaktmuster?
Rolle
Beschreibt die notwendigen Erfahrungen, Kenntnisse und Fähigkeiten, über die ein Mitarbeiter verfügen muss, um eine bestimmte Aktivität durchzuführen.
Artefakt
Greifbares Stück Information.
Artefaktmuster
Legt den Inhalt, die Struktur und das Layout von Artefakten fest.
Wie funktioniert das “Wasserfallmodell”?
- Folge von Phasen
- Phasenabschluss durch Meilenstein
- Resultat einer Phase ist Eingabe für die nachfolgende Phase

Wie wird das “Phasenmodell” bewertet?
+ Definierte Einbindung der Nutzer
+ Gut strukturiert durch Meilensteine
+ Aufgaben klar definiert
+ Definierte Nutzereinbindung
- Lange “Latenzzeit”
- Fehler unvermeidbar
- Änderungen unvermeidbar
Was bedeutet das “Tayloring” von Prozessmodellen? Welche Ziele hat es?
Anpassung von Prozessmodellen zwischen Standadisierung und kreative Freiheit.
Ziele
- So wenig Phasen, Artefakte, Rollen wie möglich
- Optimale Werkzeugunterstützung
- Jedes Artefakt wird qst
Was sind die Eigenschaften des inkrementellen und evolutionären Phasenmodells? Wo liegt der Unterschied?
- Produkt wird in lauffähige Teilprodukte eingeteilt
- Phasen werden mehrfach durchlaufen
- Gesamtprodukt entsteht in Ausbaustufen
=> Unterschied: Bei inkrementellen Vorgehen steht am Anfang eine vollständige Anforderungsanalyse, welche dann iterativ in mehreren Teilprodukten umgesetzt werden.
=> Evolutionäres Model: Schnell kleine Teilprodukte ausliefern und dann wieder Anforderungen abholen, einbauen. (Funktionsumfang nimmt hier evolutionär zu)
Was sind die Rechte und Pflichten des Kunden bei agiler Entwicklung?
Rechte
- Festlegung des Releaseinhalts
- Erhalt des vereinbarten Umfangs
- Änderung der Anforderungen
Pflichten
- Formulierung der Anforderungen
- Festlegung von Akzeptanzkriterien
Was sind die Ziele agiler Softwareentwicklung?
- Effizienz in Hinblick auf Zeit, Kosten, Quantität und Qualität
- Schnelles Feedback
- Einbindung des Kunden
- Eigenverantwortung des Entwicklungsteam
- Schnell lauffähige Programme
=> “Embrace the change”
Was sind die Rechte und Pflichten der Entwickler bei agiler Entwicklung?
Rechte
- Unabhängige Aufwandsschätzung
- Risikoeinschätzung
- Festlegung des Releaseumfangs
Pflichten
- Einhaltung des Releaseplans
- Einhaltung der Qualitätsanforderungen
Nennen Sie wichtige Techniken agiler Softwareentwicklung!
- Iteratives Vorgehen mit kurzen Releasezyklen
- Transparenter Schätzprozess
- Continous Delivery
- Userstories
- Common Codeownership
- Akzeptanztests
- Test First
Was macht ein Phasenmodell?
Ein Phasenmodell gliedert die Entwicklung in verschiedene Phasen, in denen vorgegebene Aktivitäten durchgeführt werden. Jede Phase endet mit einem Meilenstein.
Was ist das Ziel einer Durchführbarkeitsanalyse?
- Die fachliche, personelle & ökonomische Machbarkeit aufzeigen
- Bestehende Risiken und Alternativen finden
- Am Ende der Planungsphase entscheiden ob Weitermachen oder Projekt beenden
Was ist der Unterschied zwischen der “Outside-In” und der “Inside-Out”-Modellierung?
Outside-In
Zunächst wird die Umwelt des Produkts modelliert und davon ausgehend die Produktinterna.
Inside-Out
Zunächst werden die Produktinterna und anschließend die Umwelt des Produkts modelliert.
Was ist das Ziel beim Anlegen eines Glossars?
Definition und Erklärung der Begriffe, Schaffung einer einheitlichen Terminologie














