MSE
Fichier Détails
Cartes-fiches | 18 |
---|---|
Langue | Deutsch |
Catégorie | Informatique |
Niveau | Université |
Crée / Actualisé | 13.01.2014 / 13.01.2014 |
Lien de web |
https://card2brain.ch/box/moderne_softwareentwicklung4
|
Intégrer |
<iframe src="https://card2brain.ch/box/moderne_softwareentwicklung4/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
4 Merkmale "Guter" Software
- Wartbarkeit: Impelementation von Software so, dass auch veränderte
Kundenbedürfnisse eine Anpassung der Software ermöglichen
- Zuverlässigkeit: Vermeiden von körperlichen und wirtschaftlichen Schäden durch den
Einsatz der Software (darunter fallen: Verlässlichkeit, Zugriffsschutz, Betriebssicherheit etc.)
- Effizienz: Effiziente Nutzung der Systemressourcen z.B. Auswirkungen auf Verarbeitungszeit, Reaktionszeit usw.
- Benutzerfreundlichkeit: Softwareprodukt ohne unangemessene Anstrengungen des Nutzers
verwendbar. Hierzu zählt auch eine ausreichende Dokumentation der Bedienoberfläche.
Risikomanagements
- Risikoanalyse: Abwägung der Risiken hinsichtlich ihrer Wahrscheinlichkeiten und Auswirkungen. Ergebnis ist eine tabellarische Aufstellung der gefundenen Risiken und ihrer Bewertung
- Risikoplanung:
- Vermeidungsstrategie: Auftreten des Risikos minimieren
- Minimierungsstrategie: Auswirkungen des Risikos minimieren
- Notfallpläne: Einstellen auf das schlimmste Szenario und planen wie mit diesem umzugehen ist
- Risikoüberwachung:
- regelmäßige Überwachung (fortlaufender Prozess) der erkannten Risiken
- haben sich die Wahrscheinlichkeiten der Risiken verändert?
- haben sich die Auswirkungen der Risiken verändert?
- sind neue Risiken hinzugekommen?
Welche Phasen sind im Spiralmodell enthalten und wie oft werden diese durchlaufen?
4 Phasen, die zyklisch durchlaufen werden:
- Festlegung der Ziele
- Ziele und Anforderungen an das (Teil-)Produkt
- Lösungsvarianten
- Nebenbedingungen und Einschränkungen
- Beurteilung von Alternativen, Risikoanalyse
- Erarbeitung und Beurteilung von Lösungsvarianten
- Erkennen und beseitigen von Risiken
- Entwicklung und Testen
- Entwicklung und Validierung des Produkts der nächsten Stufe
- Planung des nächsten Zyklus
- Einverständnis über nächsten Zyklus herstellen
Welche Inhalte haben die 9 Teile des V-Modells-XT in Ihren Worten*** 1-4
- Grundlagen des V-Modells: Dieser Teil führt in die zentralen Grundkonzepte des V-Modells ein und beschreibt das Zusammenspiel unterschiedlicher V-Modell-Projekte. Ferner werden Anwendungsrichtlinien eingeführt, welche die Umsetzung des V-Modells in konkreten Projekten regeln.
- Eine Tour durch das V-Modell: Zeigt in Ausschnitten, wie das V-Modell im Rahmen eines konkreten Beispielprojektes angewendet wird.
- V-Modell-Referenz Tailoring: Beschreibt die Projekttypen, Projektvarianten und Projektmerkmale, mittels derer ein für das jeweilige Projekt spezifisches Anwendungsprofil erstellt wird. Ferner stellt sie die wesentlichen Inhalte der mit dem V-Modell möglichen Projektdurchführungsstrategien und Vorgehensbausteine dar. Darüber hinaus werden die im V-Modell verfügbaren Entscheidungspunkte vorgestellt.
- V-Modell-Referenz Rollen: Vermittelt einen Überblick über alle im V-Modell vorgesehenen Rollen. Neben einer detaillierten Rollenbeschreibung wird für jede einzelne Rolle festgehalten, für welche Produkte und Aktivitäten die Rolle verantwortlich ist und wo sie mitwirkt.
Welche Inhalte haben die 9 Teile des V-Modells-XT in Ihren Worten*** 5-9
- V-Modell-Referenz Produkte: Beinhaltet dem hierarchischen Produktmodell entsprechend alle Disziplinen, Produkte und Themen des V-Modells. Dabei werden explizit auch die Zusammenhänge zwischen den einzelnen Produkten durch sogenannte Produktabhängigkeiten beschrieben.
- V-Modell-Referenz Aktivitäten: Beinhaltet dem hierarchischen Aktivitätenmodell entsprechendalle Aktivitäten und Arbeitsschritte des V-Modells. Dabei wird insbesondere die Abwicklung dereinzelnen Arbeitsschritte im Rahmen einer Aktivität beschrieben
- V-Modell-Referenz Konventionsabbildungen: Als Basis organisationsweiter Entwicklungsprozesse muss das V-Modell kompatibel mit aktuellen (Quasi-)Standards, Normen und Vorschriften sein, wie zum Beispiel zur ISO 9001:2000, zur ISO/IEC 15288 und zum CMMI. Für jede dieser Konventionen enthält die V-Modell-Referenz Konventionsabbildungen eine Abbildung der Begriffe aus der entsprechenden Konvention in die Begriffswelt des V-Modells
- Anhang: Beinhaltet eine Reihe von Verzeichnissen und Nachschlagewerken, wie zum Beispiel Methodenreferenzen, Werkzeugreferenzen, Glossar, Abkürzungsverzeichnis und Literaturangaben.
- Vorlagen: Beinhaltet Vorlagen für die einzelnen Produkte in Form von RTF-Dokumenten. Diese Vorlagen können im Rahmen eines Projektes direkt eingesetzt oder gegebenenfalls zuvor angepasst und dann eingesetzt werden.
Wofür steht „Extreme Tailoring“ beim V-Modell-XT und nennen Sie Beispiele.
Extrem Tailoring steht für projektspezifische Anpassung des V-Modells. Das Tailoring beschränkt sich auf:
- die Auswahl eines Projekttyps und in Anschluss
- der Auswahl einer der möglichen Projekttypvarianten und
- der Belegung mit Werten der dazugehörigen Projektmerkmale
Man unterscheidet dabei zwischen
- Statischen Tailoring: Das Anwendungsprofil wird am Anfang eines Projektes definiert und bleibt während der Projektlaufzeit stabil.
- Dynamisches Tailoring: Bestimmte Projektmerkmale ändern sich während der Projektlaufzeit
z.B. können in einem Projekt, das zunächst auf reine SW-Entwicklung ausgelegt war, im Projektverlauf noch HW-Anteile identifiziert werden. Auch die Abläufe in der Projektdurchführungsstrategie können angepasst werden
Scrum– Artefakte
Scrum– Artefakte
- Vision (Idee)
- ProductBacklog: Alle noch zu liefernden Funktionalitäten (eine vom ProductOwner nach Geschäftswert geordnete Liste von Produktanforderungen)
- ProductBacklog Item: Die zu liefernden Funktionalitäten, die in einem ProductBacklog aufgelistet sind
- Sprint Goal: Ziel des Sprints (festgelegt von Team und ProductOwner)
- Selected ProductBacklog: Für diesen Sprint ausgewählte Backlog Items (entsteht im Sprint Planning Meeting 1)
- Aufgaben: alles was getan werden muss, um das Ziel des Sprints zu erreichen
- Sprint Backlog: Täglich aktualisierte Liste von offenen Backlog Items des akt. Sprints (entsteht im Sprint Planning Meeting 2)
- Releaseplan: Übersichtsplan (informativ) der Backlog Items und Ihrer zugehörigen Sprints (zeigt, in welchem Sprint welches Backlog Item vom Team geliefert werden kann)
- ImpedimentBacklog: Liste aller Blockaden, die ausgeräumt werden müssen
Scrum – Das Team
- Forming: Das Team kommt zusammen und die Mitglieder des Teams kennen sich noch nicht
- Storming: Erste Ideen werden gemeinsam entwickelt und auch die eine oder andere Sackgasse beschritten. Hierbei lernt das Team sich kennen
- Norming: Die ersten Regeln innerhalb des Teams werden vereinbart. Die vom Team übernommen Verantwortung nimmt zu.
- Performing: Das Team beginnt auf einem intuitiven Level miteinander zu arbeiten. Die Fähigkeiten der Teammitglieder werden nun voll genutzt.
Scrum – Der Sprint
- Estimation Meeting
- Sprint Planung, Sprint Goal
- Spezifisch
- Messbar
- Attraktiv
- Realistisch
- Termin
- Sprint Planning 2 – Design
- Daily Scrum
- Was habe ich erreicht?
- Was will ich erreichen?
- Was steht mir dabei im Weg?
- Sprint Review
Anforderungsanalyse – Anforderungen (allgemein)***
- Benutzeranforderungen: Spezifikationen in natürlicher Sprache und Diagrammen, zur Beschreibung der Funktionen des Softwaresystems und der Rahmenbedingungen in denen es betrieben werden soll
- Systemanforderungen: Funktionen und Einschränkungen detaillierter festgelegt. Hieraus lässt sich z.B. das Pflichtenheft erstellen
- Spezifikation des Softwareentwurfs: Abstrakte Beschreibung des Softwareentwurfs. Grundlage für exakten Entwurf, mit Details für Spezifikation des Softwareentwurfs.
Beispiele:
- Benutzeranforderung: Die Software muss über Mittel zur Darstellung externer, von anderen Werkzeugen erzeugten Dateien verfügen und auf sie zugreifen können
- Systemanforderungen:
- Benutzer sollte über Möglichkeiten zur Definition externer Datentypen verfügen
- Jeder externe Datentyp kann eine damit verknüpfte Anwendung besitzen, mit der die Datei bearbeitet wird
- Jeder externe Dateityp kann als best. Symbol auf dem Bildschirm des Anwenders dargestellt werden
Funktionale Anforderungen***
Funktionale Anforderungen sind Anforderungen, die sich direkt auf die Funktion(en) des Systems beziehen.
Beispiele:
- Der Benutzer soll die gesamte anfängliche Menge der Datenbank durchsuchen oder eine Teilmenge davon auswählen können
- Das System soll geeignete Betrachtungswerkzeuge bieten, damit der Benutzer Dokumente aus dem Dokumentenspeicher lesen kann
- Jeder Bestellung soll ein eindeutiger Bezeichner zugeordnet werden und der Benutzer soll diesen in den permanenten Speicher seines Kontos kopieren können
Arten Nichtfunktionaler Anforderungen***
- Produktanforderungen: Anforderungen an das Verhalten des Produkts (z.B. Leistungsanforderungen, Zuverlässigkeitsanforderungen usw.)
- Unternehmensanforderungen: Anforderungen aus dem Unternehmen heraus an das Produkt (z.B. Vorschriften für die Entwicklung, Entwurfsmethode, Anforderungen an Doku)
- Externe Anforderungen: Alle Anforderungen außerhalb des Systems und des Entwicklungsprozesses (z.B. Kompatibilitätsanforderungen, gesetzliche Anforderungen)
Beispiele:
- Produktanforderungen: Es soll möglich sein, dass die gesamte nötige Kommunikation zwischen den Applikationen und dem Benutzer durch den ADA-Standardzeichensatz ausgedrückt wird
- Unternehmensanforderungen: Der Systementwicklungsprozess und lieferbare Dokumente sollen dem Vorgehen und den Ergebnissen entsprechen, die in XYSCo-SP-STAN-95 definiert sind
- Externe Anforderungen: Das System soll den Benutzer des Systems keine persönlichen Informationen über den Kunden preisgeben, abgesehen vom Namen und der Referenznummer
User-Stories***
In Alltagssprache formulierte Systemanforderungen
Beispiele:
- Als Betreiber der Software möchte ich jedem Besucher Werbung einblenden, um Geld zu verdienen
- Als Datenschutzbeauftragter möchte ich, dass die gespeicherten Daten anonymisiert werden
- Als Admin möchte ich, dass die IP-Adressen vor der Speicherung anonymisiert werden, um den Anforderungen des Datenschutzbeauftragen gerecht zu werden
Aufbau eines Use Case***
- Name und Identifier: Eindeutiger Name und Identifikationsnummer
- Beschreibung: Kurze Beschreibung, was im Case passiert, 2-3 Zeilen
- Beteiligte Akteure: Beteiligte Personen oder Systeme, z.B. Anwender, Kunde, System etc.
- Status: Status der Bearbeitung des Use Case, in Arbeit / bereit zum Review / im Review / abgelehnt / abgenommen
- Verwendete Use Case: Greift der Case Use auf andere Case Use zurück werden diese hier aufgeführt
- Auslöser: Fachlicher Grund dafür, das dieser Use Case ausgeführt wird
- Vorbedingungen: Bedingungen, die vor der Ausführung diese Cases erfüllt sein müssen
- Nachbedingungen / Ergebnis: Zustand, der nach einem erfolgreichen Durchlauf des Use Case erwartet wird
- Invarianten: Bedingungen, innerhalb und durch den Use Case nicht verändert werden dürfen
- Standardablauf: Typisches Szenario. Am Ende steht das Ziel des Use Case durch den Akteur. Nummerierung der Schritte. Beschreibung in strukturierter Sprache. Bei UML: Aktivitätsdiagramme oder Sequenzdiagrammen
- Alternativer Ablauf: Szenarien außerhalb des Standardablaufs. Am Ende steht Misserfolg, Zielerreichung des Akteurs oder Rückkehr zum Standardablauf
- Hinweis: Kurze Erklärungen zum besseren Verständnis. Hinweise zu Nebeneffekten, etc.
- Änderungsgeschichte: Versionierung, Name des Autors, Datum
Prüfungen für Anforderungen im Pflichtenheft***
- Gültigkeitsprüfung: Sind alle Funktionen enthalten? Haben sich aus den Anforderungen heraus neue Funktionen ergeben? Sind einzelne Anforderungen zu streichen, weil sie nicht von genügend Nutzern benötigt werden?
- Konsistenzprüfung: Sind die Anforderungen im Dokument Widerspruchsfrei?
- Vollständigkeitsprüfung: Sind alle durch den Systembenutzer erwarteten Funktionen und Einschränkungen im Anforderungsdokument enthalten?
- Realisierbarkeitsprüfung: Ist das Zielsystem mit der aktuellen Technologie innerhalb der Budget- und Zeiteinschränkungen realisierbar?
- Verifizierbarkeitsprüfung: Sind die Anforderungen aus dem (Vertrags-) Dokument konkret verifizierbar im Zielsystem?
Methoden zur Anforderungsvalidierung***
- Anforderung-Review: Team von Gutachtern analysieren systematisch die Anforderungen
- Prototypen: Der Endbenutzer/Kunde überprüft die geforderten Anforderungen an einem funktionsfähigen Prototyp.
- Testfallerzeugung: Für die Überprüfung der Anforderungen im Zielsystem wird ein Testfall erarbeitet, um die korrekte Umsetzung zu überprüfen
- Automatische Konsistenzprüfung: Werden die Anforderungen in einer formalen Notation ausgedrückt, so können sie mittels CASE-Werkzeugen automatisch auf Konsistenz geprüft werden.
Anforderungs-Reviews***
- Verifizierbarkeit: Ist die Anforderung überprüfbar?
- Verständlichkeit: Wurde die Anforderung richtig verstanden bei der Beschreibung durch den Endbenutzer / Kunden?
- Nachvollziehbarkeit: Ist der Ursprung einer Anforderung und die auf sie aufbauenden Anforderungen klar erkennbar? Wichtig für die Abschätzung von Folgen einer Änderung.
- Anpassungsfähigkeit: Kann die Anforderung ohne große Auswirkungen auf neue Systemanforderungen hin geändert werden?
Anforderungsmanagement***
- Anforderungsidentifikation: Eindeutige Identifikation der betroffenen Anwendung
- Ablauf des Änderungsmanagements: Aufgaben und Auswirkungen (Kosten / Zeitplanänderungen etc.), die sich aus der Änderung ergeben
- Richtlinien zur Nachvollziehbarkeit: Definieren Verbindungen zwischen Anforderungen untereinander und zwischen Anforderungen und dem Systementwurf
- Unterstützung durch CASE-Werkzeuge: Im Anforderungsmanagement treten große Informationsmengen auf, diese können mit verschiedenen Werkzeugen verwaltet werden. Von speziellen Systemen, bis hin zum einfachen Texteditor / Tabellenkalkulationsprogramm
Management für Anforderungsänderungen