Übungsklausur Software Engineering
Software Engineering
Software Engineering
-
- 1 / 53
-
Flashcards
Welche Ziele werden mit dem Software Engineering verfolgt?
- Reduktion der Softwareentwicklungskosten,
- Erhöhung der Softwarequalität,
- Erhöhung der Wiederverwendbarkeit,
- Reduktion der Fehlerrate im Betrieb
Kostenfaktoren eines SW-Projekts?
- Laufende Kosten (Gehälter, Management, Werbung, Räume, Rechner, Netzwerke und Software als Teil der Infrastruktur, )
- Projektbezogene Kosten (Kosten des Zeitpersonals, Vertragskosten, Spesen, Hardware und Software als Teil des Produkts bzw. der Anlage)
Theorie der Badewannenkurve
Analyse => Betrieb
Spezifikation => Installation
Entwurf => Integration
Codierung => Modultest
Eingabe => Übersetzung
Beschreiben Sie, wozu die SOLL-Analyse dient.
Trägt zum Ziel dem Kundenwunsch nach zu gehen. Aufnahme der durch den Kunden gewünschten Veränderungen
Lastenheft
Die Analyse ist die Vorarbeit und Voraussetzung der Spezifikation; ihr Ergebnis wird auch als Lastenheft bezeichnet
Was versteht man unter einer objektivierbaren Spezifikation?
Die Spezifikation ist so geschrieben, dass das entwickelte System gegen die Spezifikation geprüft werden kann
Was bedeutet die Vorgehensrichtung "Inside-out" beim Softwareentwurf?
Das Beschreiben der Software von den inneren Abläufen aus
Welche Eigenschaften muss eine Software-Komponente erfüllen?
- bietet ihrer Umgebung eine Menge von Diensten an
- bietet diese über wohldefinierte Schnittstellen an
- nutzt spezifizierte Dienste anderer Komponenten
- besitzt syntaktische, funktionale und nicht funktionale Merkmale
Welche Definition trifft auf die Systemsicht auf eine Softwarearchitektur zu?
Zeigt, wie das zu entwickelnde System in die Umgebung eingebettet ist, mit welchen anderen Systemen es interagiert
Definieren Sie die Begriffe Kopplung und Zusammenhalt im Kontext des modularen Entwurfs.
Kopplung ist die Breite und Komplexität der Schnittstelle. Zusammenhalt ist die Verwandtschaft zwischen den Bestandteilen
Auswirkungen der jeweiligen Ausprägungen (starke und lose Kopplung, hoher und niedriger Zusammenhalt) sowie das angestrebte Ziel beim Software-Entwurf an.
starke Kopplung schlecht, lose Kopplung gut
Hoher Zusammenhalt gut, geringer Zusammenschalt schlecht
Welche Ziele verfolgt der modulare Entwurf?
Einfache und leicht verständliche Struktur und Neue Modulversionen sollten gegen alte Modulversionen testbar sein
Was bedeutet das Grundprinzip "Separation of Concerns"?
- Jede Komponente ist für genau einen definierten Aufgabenbereich zuständig
- Trennung von Zuständigkeiten
Wie setzt sich die Produktqualität zusammen?
Gebrauchsqualität: Qualität aus Sicht des Benutzers, der mit der Software arbeitet
Wartungsqualität: Qualität aus Sicht einer Person, die an der Software arbeitet
Prozessqualität sagt aus...?
+ Kosten- und Termingrenzen einzuhalten
+ seinen Aufwand zu minimieren
+ Kenntnisse zu sammeln und zu dokumentieren
+ wiederverwendbare Komponenten zu schaffen
+ das Betriebsklima zu pflegen
Offen-geschlossen-Prinzip: Geschlossenes Modul?
1. Schnittstelle des Moduls ist so gestaltet, dass alle Anforderungen des Kundenmoduls abgedeckt sind und das Modul ohne Anpassung verwendet werden kann.
2. Problem bei Veränderungen / Erweiterungen an diesem Modul! (Revision der Kundenmodule notwendig)
Offen-geschlossen-Prinzip: Offenes Modul?
1. Problemlose Erweiterung möglich.
2. Verhaltensänderungen möglich -> nicht stabil!
Arbeiten, die an Software ausgeführt werden:
- Analyse
- Spezifikation der Anforderungen
- Architekturentwurf, SpezifikationderModule
- Codierung und Modultest
- Integration,Test, Abnahme
- Betrieb und Wartung
- Auslauf und Ersetzung
Welche 2 Arten von Modellen gibt es?
Abbilder von etwas oder Vorbilder für etwas.
Sie werden auch als:
- deskriptive (beschreibende) Bsp: Foto von mir beschreibt wie ich zur Zeit x aussah
- präskriptive (vorschreibende) Bsp: Bauplan des Gebäude, solang es noch nicht fertigt gebaut (existiert) wurde Modelle bezeichnet.
Welche 3 Modellmerkmale gibt es?
+ Abbildungsmerkmal (zum fiktiven, geplanten oder bestehenden Original gib es ein Modell)
+ Verkürzungsmerkmal (weggefallene präterierte Attribute des Originals werden durch abundante Attribute des Modells ersetzt) Bsp: Foto, präteriert sind Körpergewicht, abundant sind Kopierpapierqualität
+ pragmatisches Merkmal (Modell kann unter gewissen Umständen/Fragestellungen das Original ersetzen) Bsp: Unfallfoto kann Unfallanwesenheit ersetzen
4 Schritte von einem Modell zur Realität
vom
+ IST-Zustand über
+ das präskriptiven Modell per Modellierung über
+ deskriptive Modell per Realisierung zum
+ GEPLANTEN Zustand
No Or In Ra Ab
- Nominalskala (ungeordnete Obstkiste)
- Ordinalskala (nach Vorliebe geordnete Obstkiste ohne Nullpunkt und Abstand)
- Intervallskala (Obst nach Vorliebe mit Abständen sortiert)
- Rationalskala (Obst nach Vorlieben mit Abstand und VorliebenNullpunkt sortiert)
- Absulutskala (Obstkiste ohne Obst mit absoluten Werten gefüllt, Reihenvolge, Abstand, Nullpunkt)
Ein idealer Testfall ist
repräsentativ ,
fehlersensitiv ,
redundanzarm.
Ziele des Black-Box-Tests
+ Aktivieren aller Funktionen des Programms
+ Bearbeiten aller möglichen Eingaben
+ Erzeugen aller möglichen Ausgabeformen
+ Ausloten der Leistungsgrenzen
Muss man bei dem Glass-Box-Test den Code lesen und verstehen?
Nein, man muss nur die Stellen analysieren, die nicht zum gewählten Überdeckungsmaß beitragen
Beim Glass-Box-Test kommt es nur auf die Messung der Überdeckung an!
Welche Ueberdeckungskriterien werden bei einem Glass-Box-Test angestrebt ?
Anweisungsüberdeckung,
Zweigüberdeckung,
Termüberdeckung
Was ist die Integration?
Sie ist die Montage des Systems, Ziel ist es ein vollständiges und funktionstüchtiges System
Was ist das Ziel eines Integrationstest?
Aufspüren von Konsistenzproblemen zwischen den Komponenten
Baseline
Eine Konfiguration, die so zusammengestellt und geprüft ist, dass sie als stabil gilt und als Bezugspunkt für die weitere Entwicklung geeignet ist
Release
Ist eine Baseline, die mit dem Zweck definiertwurde, diese Konfiguration an den Kunden auszuliefern
Was ist eine Adaptive Wartung?
Die Software wird so verändert, dass sie neue oder geänderte Anforderungen erfüllt; diese können funktional oder nichtfunktional sein
Was ist eine Korrektive Wartung?
Die Software wird so verändert, dass ein beobachteter Fehler nicht mehr auftritt. Im weiteren Sinne kann man eine Entschärfung des Fehlers als Korrektur bezeichnen
Aufgaben der Konfigurationsverwaltung
Versionskontrolle, Konfigurationskontrolle, Konstruktion ausführbarer Programme, Änderungskontrolle, Koordination der Teamarbeit
Schließt die Konfigurationsverwaltung die Versions- und Variantenbildung mit ein?
Was ist eine Präventive Wartung?
Die Software wird so verändert, dass bestimmte Fehler gar nicht erst auftreten
Was bedeutet Reengineering?
Das ist die Prüfung und Änderung eines Systems, um es in neuer Form zu rekonstruieren und die anschließende Umsetzung der neuen Form
Nennen Sie mir die 4 Phasen des RUP Phasenmodells?
Konzeption (inception),
Ausarbeitung (elaboration),
Konstruktion (construction),
Übergabe (transition)
Was ist das Begriffslexikon, wo wird es gefŸhrt und was beinhaltet es?
- während Analyse wird auch das Begriffslexikon angelegt
- dieses wird während der gesamten Software
- Entwicklung verwendet und ergänzt.
- beinhaltet für das gemeinsame Projektverständnis bedeutende, missverständliche Definitionen und Begriffe (Performance) aus den Gesprächen und Interviews abgeleitet
- weitere Bestandteile: Begriff und Synonyma aus Spezifikation, allgemeine Bedeutung (Definition, Erklärung), begriffliche Abgrenzung, Gültigkeit (zeitlich, räumlich, sonst), Fragen der Beziehung, noch ungeklärte Unklarheiten, verwandte Begriffe (Querverweise)
- als Teil der Spezifikation bzw. des Spezifikationsdokuments wird zur Unterstützung und zur Verringerung bzw. Verhütung von Verständnisproblemen zwischen Analytiker und Klient
Was ist die IST-Analyse?
= undankbare Feststellung des bestehenden Zustands, um neues Systems mindestens so stark wie aktuelles System werden zu lassen, hervorgerufen durch implizite Erwartung des Klienten dass das Gute ja erhalten bleibt!