SlideShare ist ein Scribd-Unternehmen logo
Garbage in – garbage out:
Wie das Anforderungsmanagement die
Softwarequalität beeinflusst
iks Thementag
„Mehr Softwarequalität – Ausgewählte Themen“
22.05.2014
Autor:
Jörg Vollmer
Seite 3 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Was stört Sie im IT-Alltag am meisten?
Befragt wurden 142 Software-Entwickler:
1. Unklare Anforderungen 51.41 %
2. Zu häufig & schnell wechselnde Anforderungen 37.32 %
3. Termindruck => Quick & Dirty 30.99 %
4. Schlechtes Projektmanagement 28.87 %
5. Unverständlicher Code (z.B. hist. gewachsen) 28.17 %
6. Geringe oder fehlende Testabdeckung 28.17 %
7. Unzureichende Kommunikation im Team 25.35 %
8. Ineffektive (Entwicklungs-) Prozesse 21.13 %
9. Unnötige Meetings & Diskussionen 15.49 %
10. Nicht machbare Aufwandsschätzungen 14.79 %
Quelle: http://umfrage.clean-coder.de (Stand 14. Okt. 2013)
Seite 4 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Unklare Anforderungen (51.41%)
Requirements Engineering = Unklare Anforderungen beseitigen!
Konstruktive Maßnahmen
– Welche Fertigkeiten des RE helfen dabei?
– Sieben typische Fallen beim RE
– Welchen Einfluss haben Werkzeuge auf das RE?
Analytische Maßnahmen
– Kann das RE selbst qualitativ und quantitativ bewertet werden?
– Wie lässt sich RE-Qualität messen und sichern?
– Wirkt sich RE-Qualität auf die Software-Qualität aus?
Seite 5 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Agenda
Anforderungen aufnehmen
Dokumentieren von Anforderungen
Der Effekt von Akzeptanztests
Anforderungen vermessen und validieren
Verwalten von Anforderungen
Zusammenfassung

Empfohlen für Sie

Open Data
Open DataOpen Data
Open Data

Vortrag zu Open Data beim Open Science Panel in Wien 15.9.2014 http://www.ms-wissenschaft.de/programm/veranstaltungen/dad-wien.html

openscienceospw14opendata
Mata
MataMata
Mata

Este documento presenta el portafolio de cálculo diferencial de un estudiante de ingeniería de sistemas informáticos en la Universidad Técnica de Manabí. Incluye la misión y visión de la universidad y facultad, una descripción del curso, objetivos de aprendizaje, temas cubiertos, y detalles sobre la evaluación.

Vier jahreszeiten
Vier jahreszeitenVier jahreszeiten
Vier jahreszeiten
aleman jahreszeiten aprentic3
Seite 6 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Agenda
Anforderungen aufnehmen
Dokumentieren von Anforderungen
Der Effekt von Akzeptanztests
Anforderungen vermessen und validieren
Verwalten von Anforderungen
Zusammenfassung
Seite 7 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Aufgaben zum Projektbeginn
Eine initiale Bestandsaufnahme des Projektumfelds ist
unverzichtbar
– Auch im agilen Umfeld
Wichtige Aufgaben sind
– Ziele des Produkts und dessen Nutzen ermitteln
– Ermitteln aller Stakeholder
– Systemkontext und -grenzen bestimmen
– Qualitätsanforderungen identifizieren
… denn sonst bleiben sie unklar  Unklare Anforderungen!
Seite 8 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Beobachtungstechniken
Apprenticing: Der RE wird wie ein Lehrling eingearbeitet
Der RE lernt hierbei den Fachjargon kennen
Arbeitsschritte hinterfragen und ineffiziente Prozesse entdecken! ...
Die (neue) Software ist eng mit den Geschäftsprozessen verwoben
Seite 9 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 1
Ineffiziente Meetings

Empfohlen für Sie

Presentación bloq cierre fatla
Presentación bloq cierre fatlaPresentación bloq cierre fatla
Presentación bloq cierre fatla

La metodología PACIE propone dividir el proceso educativo en bloques, incluyendo un bloque de cierre compuesto por las secciones de negociación y retroalimentación. Este bloque final es importante porque permite a estudiantes y tutores evaluarse mutuamente y reconocer áreas de mejora, con el fin de mejorar el proceso educativo.

bloque0paciecierre
Other bangle s_07-02-2011_part-1
Other bangle s_07-02-2011_part-1Other bangle s_07-02-2011_part-1
Other bangle s_07-02-2011_part-1

Este documento contiene una lista de códigos de modelo que comienzan con 1- seguidos de letras y números, incluyendo 1-PUE, 1-POX, 1-LVC y más de 80 códigos de modelo adicionales.

Triangulos rectangulos solucion recuperacion
Triangulos rectangulos solucion recuperacionTriangulos rectangulos solucion recuperacion
Triangulos rectangulos solucion recuperacion

El documento describe las aplicaciones de la teoría de funciones de costo, ingreso y utilidad en economía. Explica que la función de costo marginal es la derivada de la función de costo y representa el cambio en el costo con respecto a las unidades producidas. También describe que la función de ingreso marginal es la derivada de la función de ingreso y representa el cambio en el ingreso con respecto a las unidades vendidas. Finalmente, explica que para maximizar las utilidades y los ingresos se debe aplicar estas funciones de costo marginal, ingreso y utilidad.

Seite 10 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Unnötige Meetings & Diskussionen
Der RE sollte wissen:
– Jede Debatte, die nicht in fünf Minuten beigelegt werden kann,
kann nicht durch Debattieren gelöst werden (Kent Beck)
– Selbstdarsteller machen andere ratlos und stumm
– Häufig geht es dann nicht mehr um die beste Lösung
 Moderationstechniken anwenden
Risiko von falschen Entscheidungen  Software-Qualität
s. auch [bdw]
Seite 11 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 2
Faule Kompromisse
Seite 12 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Unzulässige Verallgemeinerungen
Stakeholder A:
– Bei einem Fehler muss das System anhalten
Stakeholder B:
– Bei einem Fehler muss das System neustarten
RE einigt sich mit A und B auf
– Im Fehlerfall wird eine Ausnahmeroutine veranlasst
Fauler Kompromiss!
Eine Mehrdeutigkeit in einem Anforderungsdokument steht oft
für einen Konflikt bei den Stakeholdern (de Marco)
Seite 13 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 3
Designfehler bei Geschäftsobjekten

Empfohlen für Sie

Juegos olimpicos lonrdes 2012
Juegos olimpicos lonrdes 2012Juegos olimpicos lonrdes 2012
Juegos olimpicos lonrdes 2012

Los Juegos Olímpicos de Londres 2012 se celebrarán del 27 de julio al 12 de agosto. Serán los primeros Juegos en Londres y han generado críticas e impulsado el desarrollo de la ciudad. Algunos deportes incluyen atletismo, bádminton, baloncesto, balonmano y boxeo.

Enriquez y tapie proyecto final
Enriquez y tapie proyecto finalEnriquez y tapie proyecto final
Enriquez y tapie proyecto final

Este documento presenta un resumen del proyecto de investigación sobre la incidencia del Sistema Armonizado en la aplicación de la NANDINA en la ciudad de Tulcán. El objetivo principal es determinar cómo incide el Sistema Armonizado mediante el uso de una encuesta aplicada a operadores de comercio exterior. Se expone la problemática de una incorrecta clasificación arancelaria y sus consecuencias. También incluye la fundamentación legal y científica del Sistema Armonizado y la NANDINA a nivel de la Comunidad Andina y Ecuador. Finalmente,

Calculo mastarreno
Calculo mastarrenoCalculo mastarreno
Calculo mastarreno

Este documento presenta la información sobre el curso de Cálculo Diferencial impartido en la Universidad Técnica de Manabí. El curso tiene 4 créditos y 64 horas de duración en el segundo semestre. El curso enseña conceptos como funciones, límites, derivadas y sus aplicaciones. El docente es José Antonio Cevallos y el estudiante es Luis Miguel Mastarreno Macías. El documento incluye el programa del curso, objetivos, temas, bibliografía, políticas y evaluación.

Seite 14 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Das Auto soll verschiedene Farben haben
Was der RE verstand:
Was der Kunde wollte:
Seite 15 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Unterschiede ziehen sich durch alle Schichten
Datenbank
Datenmodell
Service-Schicht
Benutzeroberfläche
 Fachobjekte und deren Beziehungen identifizieren (DDD)
Hohe Korrekturkosten ↔ es geht auf Kosten der Softwarequalität
Seite 16 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 4
Unklare Fachbegriffe
Seite 17 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Unklare Fachbegriffe
Was meinte der Banker mit „Engagement“?
– Meinte er persönlichen Einsatz oder
– doch eine vertragliche Verpflichtung wie beim Theater?
Wikipedia
– Risiko bzw. Chance eines Kursverlusts oder -gewinns
Die Fachabteilung
– Das, was die Bank verliert, wenn der Kunde bankrott ist
 Fachbegriffe analysieren, Glossar, ubiquitäre Sprache

Empfohlen für Sie

Karriereschmiede Mittelstandskonzern
Karriereschmiede MittelstandskonzernKarriereschmiede Mittelstandskonzern
Karriereschmiede Mittelstandskonzern

Pressemitteilung ifm electronic wpi 416-04_11

karriereschmiedeifmmittelstandskonzern
Maquinas y mecanismos
Maquinas  y mecanismosMaquinas  y mecanismos
Maquinas y mecanismos

El documento describe las máquinas simples, incluyendo la palanca. Explica que la palanca es una máquina simple compuesta por una barra rígida que gira alrededor de un punto de apoyo llamado fulcro, y que puede usarse para amplificar fuerza o cambiar la velocidad o distancia de un objeto. También menciona que el trabajo tiene la intención de obtener una buena calificación y mostrar interés en las máquinas simples.

Scratch
ScratchScratch
Scratch

Este documento proporciona instrucciones para crear un juego básico en Scratch utilizando dos objetos animados (un caballero y un dragón) que se pueden mover y que interactúan entre sí. Explica cómo crear y animar cada objeto de forma independiente y añadir un fondo de paisaje natural antes de guardar y probar el juego.

Seite 18 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Best Practices
Überprüfen Sie:
– Wurden Ihre Prozesse jemals untersucht und hinterfragt?
– Verlaufen Ihre (RE-) Meetings effizient und effektiv?
– Welche Stakeholder-Konflikte behindern Entscheidungsfindungen?
– Sprechen alle Stakeholder eine gemeinsame Fachsprache?
– Existiert ein Glossar?
Seite 19 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Agenda
Anforderungen aufnehmen
Dokumentieren von Anforderungen
Der Effekt von Akzeptanztests
Anforderungen vermessen und validieren
Verwalten von Anforderungen
Zusammenfassung
Seite 20 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Anforderungen dokumentieren
Anforderungen aufschreiben, das kann doch jeder
Aber: Meinungen zu bestehender Dokumentation
– Versteht nur der, der‘s geschrieben hat
– Ist nicht mehr aktuell
– Die kniffligen Sonderfälle fehlen
– Bis man dort die richtige Stelle findet
– Das Wichtigste ist die Telefonliste von Ansprechpartnern
→ Sehr viel Dokumentation wird gar nicht erst gelesen!
Seite 21 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Nichts Halbes, nichts Ganzes

Empfohlen für Sie

Educación ambiental
Educación  ambientalEducación  ambiental
Educación ambiental

El documento habla sobre la educación ambiental en los colegios de Bogotá. Se creó el Comité Ambiental Escolar mediante el artículo 166 de 2005 para promover el Pacto de Responsabilidad Ambiental Escolar (PRAE). El ser humano es el principal responsable de la contaminación a través de la emisión de gases y aerosoles de los vehículos. El comité busca combatir problemas como la falta de solidaridad, el egoísmo y la irresponsabilidad que afectan al medio ambiente.

Identidad
IdentidadIdentidad
Identidad

La identidad es el resultado de un proceso continuo de construcción a nivel individual y colectivo, en el que elementos contradictorios se unen y mantienen en tensión. Este proceso implica cambios y continuidad, formando una totalidad de elementos que permiten la identificación e diferenciación tanto de los individuos como de la comunidad.

 
von UNT
psicología socialidentidad
Clcgs prevencion riesgos 2
Clcgs prevencion riesgos 2Clcgs prevencion riesgos 2
Clcgs prevencion riesgos 2

Este documento presenta los planes y procedimientos de emergencia de una institución educativa. Describe las funciones y equipamiento de los diferentes comités y brigadas encargados de la seguridad, primeros auxilios, evacuación y prevención de incendios. Además, detalla los objetivos y actividades de los simulacros realizados para entrenar al personal en situaciones de emergencia. El marco legal se basa en el deber del Estado colombiano de proteger a las personas y asegurar su bienestar.

Seite 22 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Wie entsteht gute (Anforderungs-) Dokumentation?
Es empfiehlt sich die Verwendung
einer Standardgliederung / Template
– RUP
– IEEE 830
– V-Modell
– Volere
Einleitung
Zweck,
Stakeholder
Referenzen
Übersicht
Systemumfeld
Architektur
Benutzer
Randbedingungen
Anforderungen
Funktionalität
Qualitätsanforderungen
Abnahme
Akzeptanzkriterien
Testszenarien
Anhang
Glossar
Index
Seite 23 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Dokumentation in Form von Prosatext
Vorteile
– Wird von allen Beteiligten „verstanden“
– Kein Stakeholder muss eine neue Notation erlernen
– Themenunabhängig universell einsetzbar
Nachteile
– Mehrdeutigkeit leicht möglich
– Kann je nach Kontext verschieden interpretiert werden
– Es gehört zum guten Ausdruck, die Wortwahl zu variieren 
Missverständnisse
Seite 24 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 5
Unverständliche Formulierungen
Seite 25 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Negativbeispiel
Auszug aus einer Spezifikation:
– Funktionalität
In einer „Übersicht“ über alle noch nicht zugeordneten
Geschäftspartner werden alle Geschäftspartner aller Mandanten
ungleich Mandant 0 angezeigt, die bisher keinem Geschäftspartner im
Mandanten 0 zugeordnet wurden. …
Satzstruktur zu komplex

Empfohlen für Sie

Fracaso escolar
Fracaso escolarFracaso escolar
Fracaso escolar

El documento habla sobre el fracaso escolar, definiéndolo como cuando un niño no alcanza el nivel de rendimiento esperado para su edad. Explica que las causas más comunes son trastornos de aprendizaje como la dislexia y trastornos emocionales. También menciona factores familiares como estilos parentales inadecuados o problemas en el núcleo familiar. Finalmente, señala que el fracaso escolar afecta negativamente al alumno, su familia y la sociedad en general.

Trabajo de Ciudadanía
Trabajo de Ciudadanía Trabajo de Ciudadanía
Trabajo de Ciudadanía

Mesopotamia surgió entre los ríos Tigris y Éufrates donde la agricultura y la ganadería se establecieron entre 6000-5000 a.C. marcando la entrada al Neolítico. Las ciudades mesopotámicas tenían murallas gruesas de paredes verticales y cortadas en ángulos rectos. La escultura representaba soberanos, dioses, funcionarios u otras personas individualizadas.

Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...

Jedes IT-System stirbt irgendwann und muss durch ein neues System abgelöst werden. Solche Systemablösen bergen zahlreise Herausforderungen: Keine Doku, eine Technologie, die niemand mehr gut kennt, wissende Mitarbeiter sind nicht mehr greifbar, hoher Zeitdruck, großes Risiko im Betrieb etc. - oft eher Organtransplantation, als IT-Projekt. Im Vortrag möchte ich meine Erfahrungen aus großen Systemablöseprojekten teilen. Wir werden uns ansehen, wie man Methoden aus Requirements Engineering und Reverse Engineering so kombiniert, dass alle notwendigen Anforderungen entdeckt werden. Wir werden sehen, dass die Zusammenarbeit zwischen Fachbereich und IT der kritische Erfolgsfaktor ist, wie man das am Besten organisiert und wie man Use Cases und ein Glossar dabei unterstützend einsetzt.

requirements engineeringreverse engineeringsoftware engineering
Seite 26 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 6
Versteckte Annahmen
Seite 27 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Negativbeispiel
Auszug aus einer Spezifikation:
– Funktionalität
In einer „Übersicht“ über alle noch nicht zugeordneten
Geschäftspartner werden alle Geschäftspartner aller Mandanten
ungleich Mandant 0 angezeigt, die bisher keinem Geschäftspartner
im Mandanten 0 zugeordnet wurden. …
Fragen:
– Was ist die „Übersicht“?
– Wo befindet sich diese?
– Wer ordnet was wem zu?
– Was ist Mandant 0?
– Was bedeutet „im Mandanten“ sprachlich?
Seite 28 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Das Sophist-REgelwerk
Passiv unterschlägt den Täter
– Beispiel: Ein Auftrag kann storniert werden
– Frage: Von wem? Von jedem, immer?
Analyse des Prozesswortes
– Beispiel: Das System zeigt das Ergebnis nach der Berechnung an
– Prozesswort ist „anzeigen“. Fragen: Wem, Wie, Wann, Warum, …
Vergleiche und Steigerungen
– Beispiel: Die GUI muss schneller reagieren als beim Altsystem
– Frage: Um wie viel schneller? Ist eine Millionstel Sek. auch gültig?
… etc.
Seite 29 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Vorschlag: Satzschablonen
Beispiel: Die User-Story
Agile Methoden verwenden sog. User-Stories
Aufbau:
– As a <role> I want <goal/desire> so that <benefit>
– Als ein Autor will ich meine Präsentation speichern können,
damit ich nicht noch einmal alles eingeben muss
Das „damit“ hinterfragt den Geschäftswert
Man beantwortet somit das „Wer“, „Was“ und „Warum / Wozu“

Empfohlen für Sie

Lizenzmanagement in der Praxis
Lizenzmanagement in der PraxisLizenzmanagement in der Praxis
Lizenzmanagement in der Praxis

Es wird viel geschrieben über Lizenzmanagement, aber wer hat es schon vollständig eingeführt und lebt es konsequent? Unser erfahrener Kursleiter Markus Schweizer berichtete in seinem Referat vom 8. März 2016 von einem Projekt, welches er im Versicherungsbereich geleitet hat. Dabei wurde eine komplette Lizenzmanagement-Lösung eingeführt, die dem Unternehmen ermöglicht, stressfrei mit dem Thema umzugehen. Markus Schweizer blickte zurück auf die Aufwände der Implementierung und die Erfahrungen im Betrieb. Ebenfalls zeigt er auf, welche Vorteile ein aktives Lizenzmanagement haben.

license managementlizenzmanagementdigicomp
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte

PM Forum 2017, Nürnberg: Vortrag von Michael Rohleder (@Rohleder10, Bereichsleiter bei QAware) Abstract: Agiles Vorgehen funktioniert weitgehend reibungslos für kleine IT-Projekte. Eine Herausforderung stellen agile Großprojekte dar, vor allem dann, wenn der Auftragnehmer ein agiles Festpreisgewerk verantwortet. Der Vortrag beschreibt sieben Erfolgsfaktoren für solche Projekte: 1. Mehrere Ebenen der Planung und Steuerung 2. Sicherstellung der Baubarkeit von User Stories 3. Eliminierung von Zeitfresser und Produktivitätskiller 4. Softwarequalität als Gegenpol zu Feature-Gier 5. Rekordgeschwindigkeit durch den Software-OEM-Ansatz 6. Absicherung der Qualität durch Testautomatisierung 7. One Team Approach

agileitopen source
Tipps für Requirements Management Tools
Tipps für Requirements Management ToolsTipps für Requirements Management Tools
Tipps für Requirements Management Tools

Worauf kommt es bei der Auswahl von Anforderungsmanagement Werkzeugen aus? Was unterscheidet gute von schlechten Werkzeugen? Was können Werkzeuge überhaupt leisten? In diesen Slides finden Sie einen ersten Überblick über diese Fragestellungen. Wenn Sie mehr zu dem Thema wissen oder mir Ihre Erfahrungen mit Anforderungsmanagement Werkzeugen mitgeben möchten, schreiben Sie mir einfach ein Mail an markus.unterauer@software-quality-lab.com. Würde mich sehr über Ihr Feedback freuen :-)

requirementstoolsanforderungsmanagement
Seite 30 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Formale Spezifikationen, Modelle
Beispiele: ER-Diagramme, UML, BPEL, BPMN, DSLs,…
Vorteile
– Sind eindeutiger und aussagekräftiger
– Kompaktere übersichtliche Darstellung
– Für den geübten Leser verständlicher
– Der Implementierung bereits viel näher
– Zum Teil lässt sich Code daraus generieren
Nachteile
– Sind nicht universell einsetzbar
– Syntax / Semantik muss vom Leser verstanden bzw. erlernt werden
– Zusätzliche Tools müssen erlernt werden  evtl. Schulungen
Seite 31 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Die Mischung beider ergänzt sich positiv
Vorteile
– Modelle können durch natürlich-sprachliche Ergänzungen
verständlicher werden
– Prosatext kann durch Modelle eindeutiger und exakter werden
Beispiel: Mathematische Texte
– Aus jeder nicht-negativen reellen Zahl lässt sich die Wurzel ziehen
–
Häufig verschwindet die (Beweis-) Idee hinter der Abstraktion
Seite 32 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Beispiel
Seite 33 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Funktionale Anforderungen – Prosa
Der Nikolaus verteilt am 6.12. eines jeden Jahres Geschenke an Kinder
Die Geschenke sind unterschiedlich viel wert
Jedes Kind bekommt ein oder mehrere
Geschenke
Ziel: Der Summenwert der Geschenke soll
für jedes Kind möglichst gleich sein
Aufgabe: Eine Software soll bei Eingabe der
Kinderzahl und der Geschenkwerte eine gerechte Verteilung berechnen

Empfohlen für Sie

Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen

Zum Testen von Software gehören sowohl das Aufspüren von Fehlern während der Entwicklung, als auch die Überprüfung des Gesamtproduktes. Das heißt, man sucht zunächst in einzelnen Codefragmenten nach Fehlern, und überprüft dann das Gesamtpaket auf seine Vollständigkeit und Korrektheit hin. Unzureichende oder unvollständige Dokumentationen führen häufig zu einer unzulänglichen Erfassung von fehlerfhaften Anforderungen. Dies fällt besonders bei sich wiederholenden und sich schnell verändernden PHP-Entwicklungen ins Gewicht. Der Grund dafür ist, dass PHP als nicht typisierte Sprache die Möglichkeit bietet, in hohem Tempo neue Funktionalitäten zu bestehender Software hinzuzufügen und zu ändern. Anwendungsteile, die mit PHP implementiert wurden, bedürfen keiner Neukompilierung. Die Genauigkeit des Gesamtkontextes kann noch während der Laufzeit des Prozesses geprüft werden. Des Weiteren muss auch sichergestellt werden, dass die Rückgabewerte von Methoden der Quellcode-Dokumentation bzw. dem erwarteten Typ entsprechen. In Projekten mit größeren Teams wird es häufig zur Wiederverwendung von Komponenten – oft auch in einem vom Software-Autor nicht erwarteten Kontext – kommen. Somit ist immer noch das Wichtigste nicht genannt: Sind neue Funktionen korrekt umgesetzt, und funktioniert die alte Funktionalität noch?

software-testenphpweb
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte

Frankfurter Entwicklertag 2018, Frankfurt am Main: Vortrag von Michael Rohleder (@Rohleder10, Bereichsleiter bei QAware) Abstract: Agile Vorgehensmodelle funktionieren weitgehend reibungslos für kleine IT-Projekte. Eine Herausforderung stellen agile Großprojekte dar, vor allem dann, wenn der Auftragnehmer ein agiles Festpreisgewerk verantwortet und die Schnittstellenpartner im Projektumfeld noch nicht auf agil getrimmt sind. Der Vortrag beschreibt u.a. folgende Erfolgsfaktoren für solche Projekte: 1. Mut zur Planung trotz Agilität, im Idealfall auf den Planungsebenen Sprint, Release, Roadmap und Produktvision 2. Frontrunning, Mini-Specs und Definition of Ready (DOR), um die Baubarkeit von User Stories im Sprint sicherzustellen 3. Effiziente Meeting-Strukturen und unterbrechungsarmes Arbeiten, um die Produktivität im Team sicherzustellen 4. Einen Gegenpol zur Feature-Gier etablieren, um Qualitätsschulden zu vermeiden 5. Open-Source-Software professionell als Software-OEM einsetzen, um schnell in der Entwicklung zu sein 6. Testautomatisierung zur Qualitätssicherung einsetzen, auch für Akzeptanztests, um Produktqualität sicherzustellen 7. Dem Projektteam das Mandat zu Lösung geben und Projekterfolge feiern Klassische agile Vorgehensweisen wie Scrum liefern keine angemessene Antwort auf die Frage, wie man in Großprojekten agil sein kann. Die Kernkritik in manch agilem Abgesang dieser Tage ist, dass die klassischen agilen Vorgehensmodelle die Dinge über-simplifizieren, also unterhalb der für viele Projekte notwendigen Komplexität ansetzen. Ein paar Kniffe muss man sich also überlegen, um die Erfolgsrezepte von agilen Vorgehensweisen übertragen zu können auf große und komplexe Projektorganisationen. Genau diese Kniffe soll dieser Vortrag liefern.

frankfurter entwicklertagagileit
Requirement Engineering & PDD
Requirement Engineering & PDDRequirement Engineering & PDD
Requirement Engineering & PDD

ProsWas bezweckt dieser Event? In unserem ersten Meetup wurde ein Schwerpunkt rund um das Requirements Engineering, Process Definition Documents (PDD) und das Handover an die Entwickler identifiziert. Wir wollen einen Austausch zu diesen Bereichen in (RPA-)Projekten führen und mögliche Rollenteilungen im klassischen Sinne (der Softwareentwicklung) vorzustellen. Zudem sollen Pros & Cons einer Verkörperung mehrerer dieser Rollen aufgezeigt und diskutiert werden. Was sind allgemeine Schlüsselfaktoren bei der Prozessaufnahme und worauf kommt es an? Welche Erfahrungen wurden bei der Übergabe an die Developers gemacht oder was haben Entwickler selbst erlebt? Die Agenda findest Du weiter unten.

#german#uipath #rpa#rpadevelopers
Seite 34 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Funktionale Anforderungen – Illustriert
≈+ ≈+ +
…
…
Seite 35 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Funktionale Anforderungen – Formal
Voraussetzung
– Gegeben seien natürliche Zahlen
– und eine Preisfunktion .
Aufgabe
– Finde eine Partitionierung , sodass
minimal wird, wobei .
Geschenke Kinder
Gesamtgeschenkwert beim Kind n
Seite 36 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Abnahme: Der Nikolaus testet und …Abnahme: … war nicht ganz glücklich.
Seite 37 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Warum?
Version 0.9
– Die Lösungen waren anfangs z.T. völlig falsch.
• Der Entwickler hatte die Idee hinter der Formel zunächst nicht ganz
verstanden.
Version 1.0
– Die Verteilung der Geschenke gefiel dem Nikolaus gar nicht:
• Manche Kinder bekamen viele „wertlose“ Geschenke.
• Die Geschenke sollten sich doch möglichst gleich verteilen!
Version 1.1
– Der katastrophale Fall „Kinderheim“:
• 50 Geschenke, 20 Kinder:
• Die Anwendung antwortet nicht mehr!

Empfohlen für Sie

Mehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-CleancodingMehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-Cleancoding

Die Qualitätsanforderungen an Individualsoftware sind hoch. Sie soll funktional, zuverlässig, benutzerfreundlich und wartbar sein. Nicht zuletzt muss die Kosten-Nutzen-Relation stimmen. Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege

JavaScript und trotzdem Softwerker
JavaScript und trotzdem SoftwerkerJavaScript und trotzdem Softwerker
JavaScript und trotzdem Softwerker

Dinge die Softwerker wissen sollten, um getreu Software Craftmanship Prinzipien, auch in JavaScript Projekten erfolgreich zu entwickeln.

plattformencodesoftware
Vergleich Agentursoftware - So finden Sie die richtige Software!
Vergleich Agentursoftware - So finden Sie die richtige Software!Vergleich Agentursoftware - So finden Sie die richtige Software!
Vergleich Agentursoftware - So finden Sie die richtige Software!

Die Prozesse Ihrer Agentur laufen nicht so, wie sie sollen und einen wirklichen Überblick haben Sie auch schon lange nicht mehr? Dann denken Sie vielleicht daran, sich eine Agentursoftware anzuschaffen. Aber welche ist die Richtige? Worauf Sie bei der Auswahl unbedingt achten sollten, erfahren Sie in unserer Präsentation! Because Software entwickelt und vertreibt Standardsoftware für Werbeagenturen. Seit rund 30 Jahren am Markt präsent, hat sich Because Software als einer der führenden Anbieter von Agentursoftware etabliert. Die Lösungen zeichnen sich durch große Funktionstiefe und individuelle Anpassungsmöglichkeiten aus. Sie werden kontinuierlich weiterentwickelt und um neue Bereiche erweitert. Durch kompetente Anwendungsberatung und kundenorientierten Service bietet Because Software kurze Integrationszeiten und somit eine dauerhaft funktionierende Gesamtlösung. easyJOB Die Agentursoftware easyJOB wurde konsequent als Komplettlösung mit großem Funktionsumfang entwickelt: Bewährte Jobabwicklung von der Kalkulation bis zur Rechnungsstellung, Reports und Controlling, Dokumentenmanagement, E-Mail-Integration, Ressourcenplanung und viele weitere Zusatzmodule und Schnittstellen liefern die Basis für einen optimalen Workflow. Die flexible parametrisierbare Oberfläche kann dabei die unterschiedlichsten Arbeitsweisen ohne zusätzliche Programmierung perfekt abbilden. So können Stand-Alone-Programme abgelöst und zahlreiche Synergieeffekte in der Agentur geschaffen werden. Das rechnet sich schnell und macht die Arbeit effektiver und angenehmer.

agentursoftwareagentursoftware vergleichagentursteuerung
Seite 38 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Falle 7
Seite 39 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Erkenntnis
Selbst eine vollständige
und widerspruchsfreie
Spezifikationen garantiert
keine gute Software!
Doch wie lässt sich das
Problem bekämpfen?
Seite 40 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Specification by Example
Zwei Kinder, 6 Geschenke im Wert von 1, 2, 2, 4, 6, 9 Euro
– Lösung: 2 + 4 + 6 = 12 = 1 + 2 + 9
– Ungültig: 1 + 4 + 6 = 11 < 13 = 2 + 2 + 9
Zwei Kinder, 6 Geschenke im Wert von 1, 2, 2, 4, 5, 9 Euro
– Lösung: 2 + 4 + 5 = 11 < 12 = 1 + 2 + 9
Zwei Kinder, 10 Geschenke im Wert von 1, 1, 1, 1, 1, 1, 1, 1, 4, 4 Euro
– Lösung: 1 + 1 + 1 + 1 + 4 = 8 = 1 + 1 + 1 + 1 + 4
– Schlecht: 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 = 8 = 4 + 4
20 Kinder, 50 Geschenke im Wert von jeweils 1 Euro
– Lösung: 10 Kinder: 1 + 1, 10 Kinder: 1 + 1 + 1 usw. …
Seite 41 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Klassisch: Stille Post
Klassisches Vorgehen:
Kunde Requirements Engineer
Der RE abstrahiert und formuliert eine Spezifikation
Entwickler Software
Tester Testfälle
Kunde Abnahme
anhand von Beispielen
anhand der Spezifikation
anhand der Spezifikation
anhand von Akzeptanzkriterien

Empfohlen für Sie

Mehr Softwarequalität: Team Clean Coding
Mehr Softwarequalität: Team Clean CodingMehr Softwarequalität: Team Clean Coding
Mehr Softwarequalität: Team Clean Coding

Die Qualitätsanforderungen an Individualsoftware sind hoch. Sie soll funktional, zuverlässig, benutzerfreundlich und wartbar sein. Nicht zuletzt muss die Kosten-Nutzen-Relation stimmen. Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege

Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
Community Camp 2016: Die richtige Forensoftware
Community Camp 2016: Die richtige ForensoftwareCommunity Camp 2016: Die richtige Forensoftware
Community Camp 2016: Die richtige Forensoftware

Welche Forensoftware ist die richtige für meine Community oder mein Forum?

forensoftwareforumcommunity
Seite 42 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Idee des Acceptance Test Driven Development
Beispiele Tests
Anforderungen
werden zu
verifizierenreflektieren
Seite 43 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Wer schreibt Akzeptanztests?
RE und Entwickler erstellen zusammen Akzeptanztests
Diese werden in natürlicher Sprache verfasst
Vorrangiges Ziel ist ein gemeinsames Verständnis der Anforderung!
Schön wäre ein einheitliches Format (Satzschablone)…
...mit dem Ziel, daraus Test-Code generieren zu können
Dies ist die Idee das sog. Behavior Driven Development (BDD)
Seite 44 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Angenommen … falls … dann …
Ergänzend zur User-Story werden sog. Scenarios formuliert
(zusammen bilden sie ein sog. Feature)
User Story
Als ein Nikolaus
will ich dass meine Geschenke an Kinder gerecht verteilt werden,
um Enttäuschungen der Kinder zu vermeiden.
Scenario1: Zwei Kinder, vier Geschenke
Angenommen Nikolaus gibt »2« beim Feld Kinder ein,
und Nikolaus gibt »1, 2, 3, 4« beim Feld Geschenke ein.
Falls Nikolaus auf Rechnen drückt,
dann muss im Feld Ergebnis erscheinen:
»Kind 1: 1 + 4, Kind 2: 2 + 3«
Seite 45 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Beispiel mit JBehave
Die Datei nikolaus.story:
Die Test-Klasse:
Given Nikolaus gibt 2 beim Feld Kinder ein
Given Nikolaus gibt 1,2,3,4 beim Feld Geschenke ein
When Nikolaus auf Rechnen drueckt
Then muss im Feld Ergebnis erscheinen: Kind 1: 1 + 4 = 5, Kind 2: 2 + 3 = 5
@Given("Nikolaus gibt $kinder beim Feld Kinder ein")
public void eingabeKinder(int kinder) {
this.kinder = kinder;
}
@Given("Nikolaus gibt $geschenke beim Feld Geschenke ein")
public void eingabeGeschenke(List<Integer> geschenke) {
this.geschenke = geschenke;
}
@When("Nikolaus auf Rechnen drueckt")
public void rechnenDruecken() {
rechner = new Rechner(kinder, geschenke);
solution = rechner.calculate();
}
@Then("muss im Feld Ergebnis erscheinen: $ergebnis")
public void dasErgebnisMussSein(String ergebnis) {
String loesung = rechner.solutionToString(solution);
Assert.assertEquals(ergebnis, loesung);
}
s. auch [JBehave]
und [Cucumber]

Empfohlen für Sie

20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf

„Automate everything“ ist ein viel zitiertes Mantra und vor allem im Continuous Delivery Umfeld nicht wegzudenken. Neben der Automatisierung von Tests liegen hier natürlich auch Potenziale bei Build, Deployment, Bereitstellung von Infrastruktur und Monitoring. Wie die Praxis allerdings zeigt, verbleibt Testing in der Regel dennoch der Flaschenhals. Erstaunlicherweise werden die Potenziale der Testautomatisierung trotz einer langen Tradition dieses Ansatzes in den meisten Fällen nur unzureichend genutzt. Alexander zeigt in seinem Vortrag, warum Testautomatisierung für Continuous Delivery so wichtig ist, und wie man diese vernünftig angeht.

testtestautomatisierungsoftware testing
User Experience im Digital Banking
User Experience im Digital BankingUser Experience im Digital Banking
User Experience im Digital Banking

Mein Beitrag an einer Ausbildung der Fachhochschule Luzern zum Thema "Usererlebnis" im Banking. Irgendwie banal, doch schaffen es so ziemlich alle Finanzinstitute täglich dagegen zu verstossen und behandeln mich als ob ich ein Fremdkörper bin, der ihr Geschäft nicht versteht und die am arbeiten hindert.

ebankingonline bankinguser experience
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's

Speaker: Michael Ferber, Head of Consulting Über 170 Kunden setzen auf Camunda Enterprise zur Automatisierung ihrer Geschäftsprozesse. Die meisten wurden in ihren Projekten durch unsere Berater begleitet. Basierend auf diesem Erfahrungsschatz wird Michael Ferber die folgenden Fragen beantworten: Wann macht der Einsatz von Camunda überhaupt Sinn? Welche Probleme lassen sich damit lösen? Welche personellen Ressourcen brauche ich für erfolgreiche Camunda-Projekte? Wie aufwendig ist die Projektumsetzung mit Camunda? Wie kann ich einen Business Case rechnen?

camunda bpmroadshow2018
Seite 46 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Beispiel mit JBehave
Die Log-Datei im Erfolgsfall:
Die Log-Datei im Fehlerfall:
Running story com/javacook/nikolaus/nikolaus.story
Scenario:
Given Nikolaus gibt 2 beim Feld Kinder ein
Given Nikolaus gibt 1,2,3,4 beim Feld Geschenke ein
When Nikolaus auf Rechnen drueckt
Then muss im Feld Ergebnis erscheinen: Kind 1: 1 + 4 = 5, Kind 2: 2 + 3 = 9 (FAILED)
(org.junit.ComparisonFailure:
expected:<... 5, Kind 2: 2 + 3 = [9]> but was:<... 5, Kind 2: 2 + 3 = [5]>)
Running story com/javacook/nikolaus/nikolaus.story
Scenario:
Given Nikolaus gibt 2 beim Feld Kinder ein
Given Nikolaus gibt 1,2,3,4 beim Feld Geschenke ein
When Nikolaus auf Rechnen drueckt
Then muss im Feld Ergebnis erscheinen: Kind 1: 1 + 4 = 5, Kind 2: 2 + 3 = 5
Seite 47 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Vergleich der Entwicklung: klassisch & BDD
Kunde wird interviewt
RE spezifiziert Anforderungen
Implementierung
QA testet
Auslieferung & Abnahme
Kunde wird interviewt
RE spezifiziert Anforderungen
RE & Entwickl. → Akzeptanztest
Implementierung
QA & autom. Akzeptanztests
Auslieferung & Abnahme
Seite 48 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Fazit
Das Erstellen von Akzeptanztests erzwingt eine detailliertere
Auseinandersetzung bereits zu Beginn
Es fördert die Kommunikation zwischen Auftraggeber, RE
und Entwicklung
Es entstehen (nebenbei) automatisierte Tests,
die das System unmissverständlich dokumentieren
Seite 49 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Best Practices
Überprüfen Sie (stichprobenartig) einige Anforderungsdokumente
– Sind die Dokumente auffindbar, versioniert?
– Sind die Dokumente einheitlich strukturiert?
– Ist der Text (auch für Uneingeweihte) klar und verständlich?
– Wurden formale Methoden verwendet?
– Enthalten sie Akzeptanzkriterien?
– Sind in Ihren Dokumenten ausreichend Musterfälle enthalten?

Empfohlen für Sie

Test-Alternativen
Test-AlternativenTest-Alternativen
Test-Alternativen

Was ist effizienter und effektiver als Tests (im Finden von Fehlern)

software testingtdd
ONE Konferenz: Von der Idee zur App
ONE Konferenz: Von der Idee zur AppONE Konferenz: Von der Idee zur App
ONE Konferenz: Von der Idee zur App

Herausforderungen im Projektmanagement bei der Erstellung von Mobile Apps

Kosten technischer Qualität in der Softwareentwicklung
Kosten technischer Qualität in der SoftwareentwicklungKosten technischer Qualität in der Softwareentwicklung
Kosten technischer Qualität in der Softwareentwicklung

Einnahmen-Ausgabenrechnung für Clean Code Was kostet die Definition & Sicherung hoher technischer Qualität? Was bringt hohe technische Qualität w��hrend der Entwicklung, beim Test, in der Wartung? Was kostet die Verbesserung schlechter technischer Qualität? Konkrete Zahlen aus Literatur, Forschung und eigenen Projekten, Techniken zur Reduktion der Ausgaben und Erhöhung der Einnahmen, Sustainable Pace, Quality Gates, Limbo-Tanzen mit Softwarequalität, …

software qualitysoftware testingsoftware development
Seite 50 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Agenda
Anforderungen aufnehmen
Dokumentieren von Anforderungen
Der Effekt von Akzeptanztests
Anforderungen vermessen und validieren
Verwalten von Anforderungen
Zusammenfassung
Seite 51 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Anforderungen vermessen und validieren
Warum?
– Anforderungsdokumente sind häufig Grundlage für Verträge
– Einen Qualitätsstandard sicherstellen
– Qualität der Anforderungen wirkt sich auf die Software-Qualität aus
– Fehler & Mängel frühzeitig zu finden, denn…
Seite 52 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Kosten von RE-Fehlern bezogen auf Projektphasen
Seite 53 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Qualitätsmerkmale für Anforderungen
Wann ist eine Anforderungsspezifikation gut?
– Aktualität (insb. Kundenwunsch-konform)
– Eindeutigkeit
– Widerspruchsfreiheit
– Identifizierbarkeit
– Vollständigkeit
– Änderbarkeit
– Prüfbarkeit
– Realisierbarkeit
– Verständlichkeit

Empfohlen für Sie

Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?

Vier gute Gründe, warum Sie sich um ein neues Tool kümmern sollten: 1. Sie haben eine IT-Reorganisation durchgeführt und können die geänderte Ablauf- und Prozessorganisation nicht oder nur sehr kostenintensiv in Ihrem ITSM-Tool abbilden? 2. Sie müssen die IT weiterer Standorte oder Firmen supporten, die Leistungsfähigkeit des ITSM- Tools ist aber begrenzt? 3. Die Kosten für Wartung und Betrieb Ihres ITSM-Tools sind im Verhältnis zum Nutzen zu hoch? 4. Der Vertrag des bestehenden ITSM-Tools läuft aus und Sie wollen sich neu orientieren? Referentin: Dörte Jaskotka

itilday2013
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt

Vortragspräsentation zum Online Vortrag von Martin Gossen am 7.3.24.

kikünstliche intelligenzazure ki services
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...

Worauf es bei evolvierbarer Software wirklich ankommt.

Seite 54 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Konkrete Qualitätsmetrik
nach [RuppSoph]
Prozessworteindeutigkeit in Satz i
Bezugspunkteindeutigkeit in Satz i
Begriffseindeutigkeit in Satz i
Eindeutigkeit
Anzahl aller Sätze
Seite 55 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Review-Prüfmethoden
Stellungnahme
– Eine weitere Person (am besten fachfremd) wird gebeten,
das Dokument zu prüfen
Inspektion
– Sehr strenger aufwändiger Prozess mit vielen Beteiligten
(Moderator, Prüfer, Termine, Checklisten, Abschlussbericht)
Walkthrough
– Leichtgewichtiges Review (Autor trägt vor, Prüfer, Protokollant)
Automatisiert durch Tools
– Befindet sich in der Forschung
Seite 56 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Prüfungsnachbereitung
Ergebnisse standardisiert dokumentieren
Bei Unterschreitungen der Toleranzgrenze
– Ursachen bestimmen!
– Prozesse anpassen
– Evtl. nachschulen
Seite 57 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Bezug zur Software-Qualität (exemplarisch)
Funktionalität Korrektheit Wartbarkeit
Aktualität x
Eindeutigkeit x
Widerspruchsfreiheit x
Identifizierbarkeit x
Vollständigkeit x
Änderbarkeit x
Prüfbarkeit x x
Realisierbarkeit x
Verständlichkeit x x
...

Empfohlen für Sie

Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf

Wege, mit alternder Software umzugehen

Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...

Modernisierung von Software

Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf

Mut zur Modernisierung, ein Praxisbeispiel

Seite 58 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Best Practices
Werden Qualitätsprüfungen bzgl. der Anforderungen bei
Ihnen durchgeführt?
– Planen Sie den Prozess sorgfältig und passen ihn gezielt
auf Ihre Bedürfnisse an
– Qualitätsprüfungen sind bislang noch nicht die Regel
– Tun Sie es, nutzen Sie den Vorsprung!
Seite 59 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Agenda
Anforderungen aufnehmen
Dokumentieren von Anforderungen
Der Effekt von Akzeptanztests
Anforderungen vermessen und validieren
Verwalten von Anforderungen
Zusammenfassung
Seite 60 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Anforderungen verwalten
Ist eine Hauptaufgabe des agilen RE!
Wird umso wichtiger, je
– mehr Anforderungen zu verwalten sind
– mehr Stakeholder auf die Informationen zugreifen
– mehr Änderungen zu erwarten sind
– länger das Produkts (erwartungsgemäß) in Betrieb ist
Die Wahl des(r) richtigen Tools bringt entscheidende Vorteile
Entscheidend für das Software-Qualitätsmerkmal Wartbarkeit
Seite 61 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Erwartungen an ein Management-Tool
Notwendige Eigenschaften:
– Anlegen, Ändern, Löschen von Anforderungen
– Strukturierbarkeit
– Gute Suchmöglichkeiten
– Versionsverwaltung / Versionierung
– Einfache Handhabung von Grafiktypen
– Verfolgbarkeit (Traceability)
Wünschenswert
– Konfigurierbarkeit von Eingabemasken und Workflow
– Benutzer- und Rechteverwaltung
– Automatische Analyse von Texten…

Empfohlen für Sie

Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf

Einführung in die Softwaremodernisierung

Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf

Erfolgreiche Anwendungen aus dem Data-Science- und Big-Data-Umfeld

Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf

Architektur und Data Engineering am konkreten Model präsentiert. Verarbeitung von Echtzeitdaten und Umsetzungen von MLOps-Konzepten

Seite 62 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Tools
Word & Excel: immer noch üblich
– Grund: Wird von jedem beherrscht
Im Kommen: Issue-Tracker & Wikis
– Grund: Einfaches Erlernen, einfache Bedienung
– Offen für den Aufbau einer Werkzeugkette (!)
Auswahl verschiedener RE-Tools (alphabetisch):
– Caliber RM Contour Cradle
– DESIRe DOORS Enterprise Architect
– HP Quality Center IrQA Lotus Notes
– OptimalTrace ProR RequisitePro
– YAKINDU …
[VolereTools] enthält eine weitaus größere Übersicht
Seite 63 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Traceability – so wichtig und doch kaum vorhanden
Typische Wartungsaufgabe:
– Im Risiko-Report vom 31.3 stimmt das Ausfalldatum nicht
Findet der Entwickler folgende Informationen effizient?
– Woher stammt das Datum (Eingabe, Import)?
– In welchen Klassen wird es verarbeitet?
– Welche Datenbankfelder sind involviert?
– Welche fachlichen Abhängigkeiten gibt es zu anderen Daten?
– Wie groß sind die Risiken von Änderungen?
– …
Seite 64 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Ideale Welt
RE-Tool
Suchergebnis
Source
Verarbeitung
Lösung
RE-Tool
Anforderung
RE-Tool
"Ausfalldatum"
Modellierung
Fachklassen
Seite 65 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Die Realität
Source DB-Tool
Source-Code-Analysen können das zig-fache an Zeit kosten!
Word

Empfohlen für Sie

Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf

Der Weg vom Prototypen und die Produktion mit Hilfe von MLOps-Konzepten

Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf

Explorative Datenanalyse der gesammelten Bahndaten. Welche Kriterien entscheiden, ob ein Zug pünktlich ist?

Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning

Mit den passenden Algorithmen lassen sich aus Daten Erkenntnisse, Muster und Schlüsse gewinnen. Data Scientists steigen tief in die Welt der Daten und Algorithmen ein und entwerfen die zum Anwendungsfall passende Lösung. Auch Führungskräfte sollten ein Grundwissen über die wichtigsten Begriffe und Zusammenhänge der Welt der Data Science haben.

Seite 66 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Vision: Traceability innerhalb der Werkzeugkette
Anforderungs-
management
IDE
Projekt-
management
Build-
Management
Issue Tracking
Modellierung
Persistenz
Delivery
Collaboration
BP-
Management
Monitoring
Configuration-
Management
Seite 67 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Best Practices
Prüfen Sie, ob bei Ihnen die passenden Werkzeugkette
im Einsatz ist
Erwägen Sie eine Neuanschaffung:
– Nehmen Sie sich Zeit für die richtige Wahl
– Lassen Sie sich von Experten beraten
– Planen Sie auch den Einsatz von Schulungen
Seite 68 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Agenda
Anforderungen aufnehmen
Dokumentieren von Anforderungen
Der Effekt von Akzeptanztests
Anforderungen vermessen und validieren
Verwalten von Anforderungen
Zusammenfassung
Seite 69 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Warum ist RE wirtschaftlich?

Empfohlen für Sie

Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...

Unser Vortrag gibt einen Überblick über Möglichkeiten von Big Data und Machine Learning und zeigt, wie mit agilen Mitteln und den richtigen Skills der Einstig in die neue Welt gelingt

Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...

Der Vortrag zeigt die Grenzen bisheriger Lösungen und gibt einen Überblick über neue Lösungen. Er zeigt, wie Systemlandschaften weltweit tätiger (Internet-)Konzerne aussehen und leitet daraus herunterskalierte, praktikable Lösungen auch für kleinere Unternehmen mit weit weniger Datenvorkommen ab.

Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?

Unser Vortrag gibt einen Überblick über Möglichkeiten von Big Data und Machine Learning und zeigt, wie mit agilen Mitteln und den richtigen Skills der Einstig in die neue Welt gelingt.

Seite 70 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Zusammenfassung
Einsparungen beim RE bewirken wenig Qualität bei hohen Kosten!
Eine gute Anforderungsanalyse erfordert spezielle RE-Fertigkeiten
– Mit direkten Auswirkungen auf die Softwarequalität
Gute Dokumentation erfordert Talent, Technik und Disziplin
– Sprachkonventionen, Modelle, neue Verfahren (BDD)
– Ziel: Formales und systematisches Vorgehen
– Gute RE-Management-Tools helfen nennenswert
Auch Anforderungen lassen sich qualitätsprüfen
– Ziel: Qualitätssteigerungen durch kontinuierliches Messen
– Qualität bei den Anforderungen  Software-Qualität
Seite 71 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Referenzen
[RuppSoph]
Chris Rupp, die SOPHISTen; Requirements-Engineering und –
Management, 5. Auflage, Hanser, 2009, ISBN: 978-3446418417
[VolereTools]
http://www.volere.co.uk/tools.htm
[Cucumber]
http://cukes.info
[Jbehave]
http://jbehave.org
[bdw]
http://www.bild-der-
wissenschaft.de/bdw/bdwlive/heftarchiv/index2.php?object_id=32911270
Seite 72 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Weiterführende Literatur
Klaus Pohl, Chris Rupp; Basiswissen Requirements Engineering;
2. Auflage, Dpunkt Verlag, 2010, ISBN: 978-3898646130
S. Robertson, J. Robertson; Mastering the Requirements Process;
Addison Wesley, 1999, ISBN: 978-0201360462
U. Vigenschow, B.Schneider, I. Meyrose; Soft Skills für Softwareent-
wickler; 2. Auflage, Dpunkt Verlag, 2010, ISBN: 978-3898646710
Rainer Gerlich; 111 Thesen zur erfolgreichen Softwareentwicklung;
1. Auflage, Springer, 2005, ISBN: 978-3540209102
Seite 73 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Weiterführende Literatur
Mr. Malcolm Tredinnick, Behaviour Driven Development,
http://www.youtube.com/watch?v=XXHknWKuG2U
Gojko Adzic; Bridging the Communication Gap: Specification by Example
and Agile Acceptance Testing;
Neuri Limited, 2009, ISBN: 978-0955683619
Gojko Adzic; Specification by Example: How Successful Teams Deliver
the Right Software;
Manning, Juni 2011, ISBN: 978-1617290084

Empfohlen für Sie

Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...

Unser Vortrag gibt einen Überblick über Möglichkeiten von Big Data und Machine Learning und zeigt, wie mit agilen Mitteln und den richtigen Skills der Einstig in die neue Welt gelingt

Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...

Der Vortrag zeigt die Grenzen bisheriger Lösungen und gibt einen Überblick über neue Lösungen. Er zeigt, wie Systemlandschaften weltweit tätiger (Internet-)Konzerne aussehen und leitet daraus herunterskalierte, praktikable Lösungen auch für kleinere Unternehmen mit weit weniger Datenvorkommen ab.

Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning

Mit den passenden Algorithmen lassen sich aus Daten Erkenntnisse, Muster und Schlüsse gewinnen. Data Scientists steigen tief in die Welt der Daten und Algorithmen ein und entwerfen die zum Anwendungsfall passende Lösung. Auch Führungskräfte sollten ein Grundwissen über die wichtigsten Begriffe und Zusammenhänge der Welt der Data Science haben.

Seite 74 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Folie 9: http://openclipart.org/image/800px/svg_to_png/169415/discussion.png
http://openclipart.org/image/800px/svg_to_png/169418/go-round.png
Folie 13: http://www.clker.com/cliparts/7/1/a/f/11949851591518961590dodge_neon_green_ganson.svg.med.png
Folie 19: http://www.clker.com/clipart-15442.html
Folie 29: http://upload.wikimedia.org/wikipedia/commons/thumb/d/d0/Lage-_und_Verhältnisbestimmung_Zahn.jpg/
800px-Lage-_und_Verhältnisbestimmung_Zahn.jpg
Folie 32: http://openclipart.org/detail/1956/santa-and-his-bag-by-johnny_automatic
Folie 33: http://www.wpclipart.com/people/children/girls/girls_3/girl_with_pigtails.png.html
http://www.wpclipart.com/people/children/boys/little_boy.png.html
http://www.wpclipart.com/holiday/Christmas/gifts/gift_box_silver.png.html
http://www.wpclipart.com/holiday/Christmas/gifts/gift_black.png.html
…
Bildernachweise
Seite 75 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Folie 33: http://www.wpclipart.com/holiday/Christmas/gifts/gifts_w_tags.png.html
http://www.wpclipart.com/holiday/Christmas/gifts/gift_box_blue_ribbon/package_blue_ribbon_and_blue.png.html
http://www.wpclipart.com/holiday/valentines/candy_and_gifts/valentine_gift_box.png.html
Folie 38: http://www.doktoranden-netz.de/Idee.GIF
Folie 55: http://openclipart.org/detail/29647/quality-control:-rejected-by-stijnbern
Folie 63: http://docs.typo3.org/flow/TYPO3FlowDocumentation/_images/DomainModel-2.png
Folie 64: http://openclipart.org/image/800px/svg_to_png/94723/db.png
Sämtliche hier nicht aufgeführte Bilder bzw. Grafiken wurden vom Autor selbst erstellt.
Bildernachweise
Seite 76 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst
Abkürzungen
ATDD Acceptance Test Driven Development
BDD Behavior Driven Development
BPEL Business Process Execution Language
BPMN Business Process Model and Notation
DDD Domain-Driven Design
DSL Domain-Specific Language
ER Entity Relationship
QA Quality Assurance
QS Qualitätssicherung
RE Requirements Engineering bzw. Requirements Engineer
TDD Test-Driven Development
UML Unified Modeling Language
Fragen?

Empfohlen für Sie

Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?

Unser Vortrag gibt einen Überblick über Möglichkeiten von Big Data und Machine Learning und zeigt, wie mit agilen Mitteln und den richtigen Skills der Einstig in die neue Welt gelingt.

Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning

Mit den passenden Algorithmen lassen sich aus Daten Erkenntnisse, Muster und Schlüsse gewinnen. Data Scientists steigen tief in die Welt der Daten und Algorithmen ein und entwerfen die zum Anwendungsfall passende Lösung. Auch Führungskräfte sollten ein Grundwissen über die wichtigsten Begriffe und Zusammenhänge der Welt der Data Science haben.

big datamachnine learningkünstliche intelligenz
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...

Der Vortrag zeigt die Grenzen bisheriger Lösungen und gibt einen Überblick über neue Lösungen. Er zeigt, wie Systemlandschaften weltweit tätiger (Internet-)Konzerne aussehen und leitet daraus herunterskalierte, praktikable Lösungen auch für kleinere Unternehmen mit weit weniger Datenvorkommen ab.

big databig-data-architekturhadoop eco system
www.iks-gmbh.com

Weitere ähnliche Inhalte

Andere mochten auch

Vincularte -tec-- completo
Vincularte  -tec-- completoVincularte  -tec-- completo
Vincularte -tec-- completo
Thanya Fuentes
 
Enriquez y tapie proyecto
Enriquez y tapie proyectoEnriquez y tapie proyecto
Enriquez y tapie proyecto
LeidyEnriquez
 
Cap 1 de , el sistema social, exposición.
Cap 1 de , el sistema social, exposición.Cap 1 de , el sistema social, exposición.
Cap 1 de , el sistema social, exposición.
Laura Diosa
 
Open Data
Open DataOpen Data
Mata
MataMata
Vier jahreszeiten
Vier jahreszeitenVier jahreszeiten
Vier jahreszeiten
juansojeda
 
Presentación bloq cierre fatla
Presentación bloq cierre fatlaPresentación bloq cierre fatla
Presentación bloq cierre fatla
RosaMarquezG
 
Other bangle s_07-02-2011_part-1
Other bangle s_07-02-2011_part-1Other bangle s_07-02-2011_part-1
Other bangle s_07-02-2011_part-1
Surbhita Singh
 
Triangulos rectangulos solucion recuperacion
Triangulos rectangulos solucion recuperacionTriangulos rectangulos solucion recuperacion
Triangulos rectangulos solucion recuperacion
madara-32
 
Juegos olimpicos lonrdes 2012
Juegos olimpicos lonrdes 2012Juegos olimpicos lonrdes 2012
Juegos olimpicos lonrdes 2012
milelamejor
 
Enriquez y tapie proyecto final
Enriquez y tapie proyecto finalEnriquez y tapie proyecto final
Enriquez y tapie proyecto final
LeidyEnriquez
 
Calculo mastarreno
Calculo mastarrenoCalculo mastarreno
Calculo mastarreno
Miguel Mastarreno Macías
 
Karriereschmiede Mittelstandskonzern
Karriereschmiede MittelstandskonzernKarriereschmiede Mittelstandskonzern
Karriereschmiede Mittelstandskonzern
ifm electronic gmbh
 
Maquinas y mecanismos
Maquinas  y mecanismosMaquinas  y mecanismos
Maquinas y mecanismos
mariaalejandraocampo
 
Scratch
ScratchScratch
Scratch
checho98
 
Educación ambiental
Educación  ambientalEducación  ambiental
Educación ambiental
checho98
 
Identidad
IdentidadIdentidad
Identidad
UNT
 
Clcgs prevencion riesgos 2
Clcgs prevencion riesgos 2Clcgs prevencion riesgos 2
Clcgs prevencion riesgos 2
milena1016
 
Fracaso escolar
Fracaso escolarFracaso escolar
Fracaso escolar
Karen Velasquez
 
Trabajo de Ciudadanía
Trabajo de Ciudadanía Trabajo de Ciudadanía
Trabajo de Ciudadanía
teoroblesjimenez
 

Andere mochten auch (20)

Vincularte -tec-- completo
Vincularte  -tec-- completoVincularte  -tec-- completo
Vincularte -tec-- completo
 
Enriquez y tapie proyecto
Enriquez y tapie proyectoEnriquez y tapie proyecto
Enriquez y tapie proyecto
 
Cap 1 de , el sistema social, exposición.
Cap 1 de , el sistema social, exposición.Cap 1 de , el sistema social, exposición.
Cap 1 de , el sistema social, exposición.
 
Open Data
Open DataOpen Data
Open Data
 
Mata
MataMata
Mata
 
Vier jahreszeiten
Vier jahreszeitenVier jahreszeiten
Vier jahreszeiten
 
Presentación bloq cierre fatla
Presentación bloq cierre fatlaPresentación bloq cierre fatla
Presentación bloq cierre fatla
 
Other bangle s_07-02-2011_part-1
Other bangle s_07-02-2011_part-1Other bangle s_07-02-2011_part-1
Other bangle s_07-02-2011_part-1
 
Triangulos rectangulos solucion recuperacion
Triangulos rectangulos solucion recuperacionTriangulos rectangulos solucion recuperacion
Triangulos rectangulos solucion recuperacion
 
Juegos olimpicos lonrdes 2012
Juegos olimpicos lonrdes 2012Juegos olimpicos lonrdes 2012
Juegos olimpicos lonrdes 2012
 
Enriquez y tapie proyecto final
Enriquez y tapie proyecto finalEnriquez y tapie proyecto final
Enriquez y tapie proyecto final
 
Calculo mastarreno
Calculo mastarrenoCalculo mastarreno
Calculo mastarreno
 
Karriereschmiede Mittelstandskonzern
Karriereschmiede MittelstandskonzernKarriereschmiede Mittelstandskonzern
Karriereschmiede Mittelstandskonzern
 
Maquinas y mecanismos
Maquinas  y mecanismosMaquinas  y mecanismos
Maquinas y mecanismos
 
Scratch
ScratchScratch
Scratch
 
Educación ambiental
Educación  ambientalEducación  ambiental
Educación ambiental
 
Identidad
IdentidadIdentidad
Identidad
 
Clcgs prevencion riesgos 2
Clcgs prevencion riesgos 2Clcgs prevencion riesgos 2
Clcgs prevencion riesgos 2
 
Fracaso escolar
Fracaso escolarFracaso escolar
Fracaso escolar
 
Trabajo de Ciudadanía
Trabajo de Ciudadanía Trabajo de Ciudadanía
Trabajo de Ciudadanía
 

Ähnlich wie Mehr Softwarequalität: Requirements Engineering

Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Markus Unterauer
 
Lizenzmanagement in der Praxis
Lizenzmanagement in der PraxisLizenzmanagement in der Praxis
Lizenzmanagement in der Praxis
Digicomp Academy AG
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
QAware GmbH
 
Tipps für Requirements Management Tools
Tipps für Requirements Management ToolsTipps für Requirements Management Tools
Tipps für Requirements Management Tools
Markus Unterauer
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen
Gjero Krsteski
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
QAware GmbH
 
Requirement Engineering & PDD
Requirement Engineering & PDDRequirement Engineering & PDD
Requirement Engineering & PDD
Cristina Vidu
 
Mehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-CleancodingMehr Softwarequalität: Team-Cleancoding
JavaScript und trotzdem Softwerker
JavaScript und trotzdem SoftwerkerJavaScript und trotzdem Softwerker
JavaScript und trotzdem Softwerker
Dennis Wilson
 
Vergleich Agentursoftware - So finden Sie die richtige Software!
Vergleich Agentursoftware - So finden Sie die richtige Software!Vergleich Agentursoftware - So finden Sie die richtige Software!
Vergleich Agentursoftware - So finden Sie die richtige Software!
Because Software
 
Mehr Softwarequalität: Team Clean Coding
Mehr Softwarequalität: Team Clean CodingMehr Softwarequalität: Team Clean Coding
Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
Christian Baranowski
 
Community Camp 2016: Die richtige Forensoftware
Community Camp 2016: Die richtige ForensoftwareCommunity Camp 2016: Die richtige Forensoftware
Community Camp 2016: Die richtige Forensoftware
Franziska Hauck
 
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
Stefan Jobst
 
User Experience im Digital Banking
User Experience im Digital BankingUser Experience im Digital Banking
User Experience im Digital Banking
Jürg Stuker
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's
camunda services GmbH
 
Test-Alternativen
Test-AlternativenTest-Alternativen
Test-Alternativen
Sebastian Dietrich
 
ONE Konferenz: Von der Idee zur App
ONE Konferenz: Von der Idee zur AppONE Konferenz: Von der Idee zur App
ONE Konferenz: Von der Idee zur App
Netcetera
 
Kosten technischer Qualität in der Softwareentwicklung
Kosten technischer Qualität in der SoftwareentwicklungKosten technischer Qualität in der Softwareentwicklung
Kosten technischer Qualität in der Softwareentwicklung
Sebastian Dietrich
 
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Digicomp Academy AG
 

Ähnlich wie Mehr Softwarequalität: Requirements Engineering (20)

Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
 
Lizenzmanagement in der Praxis
Lizenzmanagement in der PraxisLizenzmanagement in der Praxis
Lizenzmanagement in der Praxis
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
 
Tipps für Requirements Management Tools
Tipps für Requirements Management ToolsTipps für Requirements Management Tools
Tipps für Requirements Management Tools
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
 
Requirement Engineering & PDD
Requirement Engineering & PDDRequirement Engineering & PDD
Requirement Engineering & PDD
 
Mehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-CleancodingMehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-Cleancoding
 
JavaScript und trotzdem Softwerker
JavaScript und trotzdem SoftwerkerJavaScript und trotzdem Softwerker
JavaScript und trotzdem Softwerker
 
Vergleich Agentursoftware - So finden Sie die richtige Software!
Vergleich Agentursoftware - So finden Sie die richtige Software!Vergleich Agentursoftware - So finden Sie die richtige Software!
Vergleich Agentursoftware - So finden Sie die richtige Software!
 
Mehr Softwarequalität: Team Clean Coding
Mehr Softwarequalität: Team Clean CodingMehr Softwarequalität: Team Clean Coding
Mehr Softwarequalität: Team Clean Coding
 
Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
 
Community Camp 2016: Die richtige Forensoftware
Community Camp 2016: Die richtige ForensoftwareCommunity Camp 2016: Die richtige Forensoftware
Community Camp 2016: Die richtige Forensoftware
 
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
20191113 dev ops und continuous delivery_testautomatisierung ist trumpf
 
User Experience im Digital Banking
User Experience im Digital BankingUser Experience im Digital Banking
User Experience im Digital Banking
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's
 
Test-Alternativen
Test-AlternativenTest-Alternativen
Test-Alternativen
 
ONE Konferenz: Von der Idee zur App
ONE Konferenz: Von der Idee zur AppONE Konferenz: Von der Idee zur App
ONE Konferenz: Von der Idee zur App
 
Kosten technischer Qualität in der Softwareentwicklung
Kosten technischer Qualität in der SoftwareentwicklungKosten technischer Qualität in der Softwareentwicklung
Kosten technischer Qualität in der Softwareentwicklung
 
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
Toolauswahl im IT Service Management – eine rationale Bauchentscheidung?
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH (20)

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
 
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 

Mehr Softwarequalität: Requirements Engineering

  • 1. Garbage in – garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst iks Thementag „Mehr Softwarequalität – Ausgewählte Themen“ 22.05.2014 Autor: Jörg Vollmer
  • 2. Seite 3 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Was stört Sie im IT-Alltag am meisten? Befragt wurden 142 Software-Entwickler: 1. Unklare Anforderungen 51.41 % 2. Zu häufig & schnell wechselnde Anforderungen 37.32 % 3. Termindruck => Quick & Dirty 30.99 % 4. Schlechtes Projektmanagement 28.87 % 5. Unverständlicher Code (z.B. hist. gewachsen) 28.17 % 6. Geringe oder fehlende Testabdeckung 28.17 % 7. Unzureichende Kommunikation im Team 25.35 % 8. Ineffektive (Entwicklungs-) Prozesse 21.13 % 9. Unnötige Meetings & Diskussionen 15.49 % 10. Nicht machbare Aufwandsschätzungen 14.79 % Quelle: http://umfrage.clean-coder.de (Stand 14. Okt. 2013)
  • 3. Seite 4 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Unklare Anforderungen (51.41%) Requirements Engineering = Unklare Anforderungen beseitigen! Konstruktive Maßnahmen – Welche Fertigkeiten des RE helfen dabei? – Sieben typische Fallen beim RE – Welchen Einfluss haben Werkzeuge auf das RE? Analytische Maßnahmen – Kann das RE selbst qualitativ und quantitativ bewertet werden? – Wie lässt sich RE-Qualität messen und sichern? – Wirkt sich RE-Qualität auf die Software-Qualität aus?
  • 4. Seite 5 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Agenda Anforderungen aufnehmen Dokumentieren von Anforderungen Der Effekt von Akzeptanztests Anforderungen vermessen und validieren Verwalten von Anforderungen Zusammenfassung
  • 5. Seite 6 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Agenda Anforderungen aufnehmen Dokumentieren von Anforderungen Der Effekt von Akzeptanztests Anforderungen vermessen und validieren Verwalten von Anforderungen Zusammenfassung
  • 6. Seite 7 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Aufgaben zum Projektbeginn Eine initiale Bestandsaufnahme des Projektumfelds ist unverzichtbar – Auch im agilen Umfeld Wichtige Aufgaben sind – Ziele des Produkts und dessen Nutzen ermitteln – Ermitteln aller Stakeholder – Systemkontext und -grenzen bestimmen – Qualitätsanforderungen identifizieren … denn sonst bleiben sie unklar  Unklare Anforderungen!
  • 7. Seite 8 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Beobachtungstechniken Apprenticing: Der RE wird wie ein Lehrling eingearbeitet Der RE lernt hierbei den Fachjargon kennen Arbeitsschritte hinterfragen und ineffiziente Prozesse entdecken! ... Die (neue) Software ist eng mit den Geschäftsprozessen verwoben
  • 8. Seite 9 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 1 Ineffiziente Meetings
  • 9. Seite 10 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Unnötige Meetings & Diskussionen Der RE sollte wissen: – Jede Debatte, die nicht in fünf Minuten beigelegt werden kann, kann nicht durch Debattieren gelöst werden (Kent Beck) – Selbstdarsteller machen andere ratlos und stumm – Häufig geht es dann nicht mehr um die beste Lösung  Moderationstechniken anwenden Risiko von falschen Entscheidungen  Software-Qualität s. auch [bdw]
  • 10. Seite 11 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 2 Faule Kompromisse
  • 11. Seite 12 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Unzulässige Verallgemeinerungen Stakeholder A: – Bei einem Fehler muss das System anhalten Stakeholder B: – Bei einem Fehler muss das System neustarten RE einigt sich mit A und B auf – Im Fehlerfall wird eine Ausnahmeroutine veranlasst Fauler Kompromiss! Eine Mehrdeutigkeit in einem Anforderungsdokument steht oft für einen Konflikt bei den Stakeholdern (de Marco)
  • 12. Seite 13 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 3 Designfehler bei Geschäftsobjekten
  • 13. Seite 14 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Das Auto soll verschiedene Farben haben Was der RE verstand: Was der Kunde wollte:
  • 14. Seite 15 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Unterschiede ziehen sich durch alle Schichten Datenbank Datenmodell Service-Schicht Benutzeroberfläche  Fachobjekte und deren Beziehungen identifizieren (DDD) Hohe Korrekturkosten ↔ es geht auf Kosten der Softwarequalität
  • 15. Seite 16 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 4 Unklare Fachbegriffe
  • 16. Seite 17 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Unklare Fachbegriffe Was meinte der Banker mit „Engagement“? – Meinte er persönlichen Einsatz oder – doch eine vertragliche Verpflichtung wie beim Theater? Wikipedia – Risiko bzw. Chance eines Kursverlusts oder -gewinns Die Fachabteilung – Das, was die Bank verliert, wenn der Kunde bankrott ist  Fachbegriffe analysieren, Glossar, ubiquitäre Sprache
  • 17. Seite 18 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Best Practices Überprüfen Sie: – Wurden Ihre Prozesse jemals untersucht und hinterfragt? – Verlaufen Ihre (RE-) Meetings effizient und effektiv? – Welche Stakeholder-Konflikte behindern Entscheidungsfindungen? – Sprechen alle Stakeholder eine gemeinsame Fachsprache? – Existiert ein Glossar?
  • 18. Seite 19 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Agenda Anforderungen aufnehmen Dokumentieren von Anforderungen Der Effekt von Akzeptanztests Anforderungen vermessen und validieren Verwalten von Anforderungen Zusammenfassung
  • 19. Seite 20 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Anforderungen dokumentieren Anforderungen aufschreiben, das kann doch jeder Aber: Meinungen zu bestehender Dokumentation – Versteht nur der, der‘s geschrieben hat – Ist nicht mehr aktuell – Die kniffligen Sonderfälle fehlen – Bis man dort die richtige Stelle findet – Das Wichtigste ist die Telefonliste von Ansprechpartnern → Sehr viel Dokumentation wird gar nicht erst gelesen!
  • 20. Seite 21 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Nichts Halbes, nichts Ganzes
  • 21. Seite 22 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Wie entsteht gute (Anforderungs-) Dokumentation? Es empfiehlt sich die Verwendung einer Standardgliederung / Template – RUP – IEEE 830 – V-Modell – Volere Einleitung Zweck, Stakeholder Referenzen Übersicht Systemumfeld Architektur Benutzer Randbedingungen Anforderungen Funktionalität Qualitätsanforderungen Abnahme Akzeptanzkriterien Testszenarien Anhang Glossar Index
  • 22. Seite 23 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Dokumentation in Form von Prosatext Vorteile – Wird von allen Beteiligten „verstanden“ – Kein Stakeholder muss eine neue Notation erlernen – Themenunabhängig universell einsetzbar Nachteile – Mehrdeutigkeit leicht möglich – Kann je nach Kontext verschieden interpretiert werden – Es gehört zum guten Ausdruck, die Wortwahl zu variieren  Missverständnisse
  • 23. Seite 24 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 5 Unverständliche Formulierungen
  • 24. Seite 25 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Negativbeispiel Auszug aus einer Spezifikation: – Funktionalität In einer „Übersicht“ über alle noch nicht zugeordneten Geschäftspartner werden alle Geschäftspartner aller Mandanten ungleich Mandant 0 angezeigt, die bisher keinem Geschäftspartner im Mandanten 0 zugeordnet wurden. … Satzstruktur zu komplex
  • 25. Seite 26 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 6 Versteckte Annahmen
  • 26. Seite 27 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Negativbeispiel Auszug aus einer Spezifikation: – Funktionalität In einer „Übersicht“ über alle noch nicht zugeordneten Geschäftspartner werden alle Geschäftspartner aller Mandanten ungleich Mandant 0 angezeigt, die bisher keinem Geschäftspartner im Mandanten 0 zugeordnet wurden. … Fragen: – Was ist die „Übersicht“? – Wo befindet sich diese? – Wer ordnet was wem zu? – Was ist Mandant 0? – Was bedeutet „im Mandanten“ sprachlich?
  • 27. Seite 28 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Das Sophist-REgelwerk Passiv unterschlägt den Täter – Beispiel: Ein Auftrag kann storniert werden – Frage: Von wem? Von jedem, immer? Analyse des Prozesswortes – Beispiel: Das System zeigt das Ergebnis nach der Berechnung an – Prozesswort ist „anzeigen“. Fragen: Wem, Wie, Wann, Warum, … Vergleiche und Steigerungen – Beispiel: Die GUI muss schneller reagieren als beim Altsystem – Frage: Um wie viel schneller? Ist eine Millionstel Sek. auch gültig? … etc.
  • 28. Seite 29 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Vorschlag: Satzschablonen Beispiel: Die User-Story Agile Methoden verwenden sog. User-Stories Aufbau: – As a <role> I want <goal/desire> so that <benefit> – Als ein Autor will ich meine Präsentation speichern können, damit ich nicht noch einmal alles eingeben muss Das „damit“ hinterfragt den Geschäftswert Man beantwortet somit das „Wer“, „Was“ und „Warum / Wozu“
  • 29. Seite 30 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Formale Spezifikationen, Modelle Beispiele: ER-Diagramme, UML, BPEL, BPMN, DSLs,… Vorteile – Sind eindeutiger und aussagekräftiger – Kompaktere übersichtliche Darstellung – Für den geübten Leser verständlicher – Der Implementierung bereits viel näher – Zum Teil lässt sich Code daraus generieren Nachteile – Sind nicht universell einsetzbar – Syntax / Semantik muss vom Leser verstanden bzw. erlernt werden – Zusätzliche Tools müssen erlernt werden  evtl. Schulungen
  • 30. Seite 31 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Die Mischung beider ergänzt sich positiv Vorteile – Modelle können durch natürlich-sprachliche Ergänzungen verständlicher werden – Prosatext kann durch Modelle eindeutiger und exakter werden Beispiel: Mathematische Texte – Aus jeder nicht-negativen reellen Zahl lässt sich die Wurzel ziehen – Häufig verschwindet die (Beweis-) Idee hinter der Abstraktion
  • 31. Seite 32 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Beispiel
  • 32. Seite 33 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Funktionale Anforderungen – Prosa Der Nikolaus verteilt am 6.12. eines jeden Jahres Geschenke an Kinder Die Geschenke sind unterschiedlich viel wert Jedes Kind bekommt ein oder mehrere Geschenke Ziel: Der Summenwert der Geschenke soll für jedes Kind möglichst gleich sein Aufgabe: Eine Software soll bei Eingabe der Kinderzahl und der Geschenkwerte eine gerechte Verteilung berechnen
  • 33. Seite 34 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Funktionale Anforderungen – Illustriert ≈+ ≈+ + … …
  • 34. Seite 35 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Funktionale Anforderungen – Formal Voraussetzung – Gegeben seien natürliche Zahlen – und eine Preisfunktion . Aufgabe – Finde eine Partitionierung , sodass minimal wird, wobei . Geschenke Kinder Gesamtgeschenkwert beim Kind n
  • 35. Seite 36 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Abnahme: Der Nikolaus testet und …Abnahme: … war nicht ganz glücklich.
  • 36. Seite 37 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Warum? Version 0.9 – Die Lösungen waren anfangs z.T. völlig falsch. • Der Entwickler hatte die Idee hinter der Formel zunächst nicht ganz verstanden. Version 1.0 – Die Verteilung der Geschenke gefiel dem Nikolaus gar nicht: • Manche Kinder bekamen viele „wertlose“ Geschenke. • Die Geschenke sollten sich doch möglichst gleich verteilen! Version 1.1 – Der katastrophale Fall „Kinderheim“: • 50 Geschenke, 20 Kinder: • Die Anwendung antwortet nicht mehr!
  • 37. Seite 38 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Falle 7
  • 38. Seite 39 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Erkenntnis Selbst eine vollständige und widerspruchsfreie Spezifikationen garantiert keine gute Software! Doch wie lässt sich das Problem bekämpfen?
  • 39. Seite 40 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Specification by Example Zwei Kinder, 6 Geschenke im Wert von 1, 2, 2, 4, 6, 9 Euro – Lösung: 2 + 4 + 6 = 12 = 1 + 2 + 9 – Ungültig: 1 + 4 + 6 = 11 < 13 = 2 + 2 + 9 Zwei Kinder, 6 Geschenke im Wert von 1, 2, 2, 4, 5, 9 Euro – Lösung: 2 + 4 + 5 = 11 < 12 = 1 + 2 + 9 Zwei Kinder, 10 Geschenke im Wert von 1, 1, 1, 1, 1, 1, 1, 1, 4, 4 Euro – Lösung: 1 + 1 + 1 + 1 + 4 = 8 = 1 + 1 + 1 + 1 + 4 – Schlecht: 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 = 8 = 4 + 4 20 Kinder, 50 Geschenke im Wert von jeweils 1 Euro – Lösung: 10 Kinder: 1 + 1, 10 Kinder: 1 + 1 + 1 usw. …
  • 40. Seite 41 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Klassisch: Stille Post Klassisches Vorgehen: Kunde Requirements Engineer Der RE abstrahiert und formuliert eine Spezifikation Entwickler Software Tester Testfälle Kunde Abnahme anhand von Beispielen anhand der Spezifikation anhand der Spezifikation anhand von Akzeptanzkriterien
  • 41. Seite 42 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Idee des Acceptance Test Driven Development Beispiele Tests Anforderungen werden zu verifizierenreflektieren
  • 42. Seite 43 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Wer schreibt Akzeptanztests? RE und Entwickler erstellen zusammen Akzeptanztests Diese werden in natürlicher Sprache verfasst Vorrangiges Ziel ist ein gemeinsames Verständnis der Anforderung! Schön wäre ein einheitliches Format (Satzschablone)… ...mit dem Ziel, daraus Test-Code generieren zu können Dies ist die Idee das sog. Behavior Driven Development (BDD)
  • 43. Seite 44 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Angenommen … falls … dann … Ergänzend zur User-Story werden sog. Scenarios formuliert (zusammen bilden sie ein sog. Feature) User Story Als ein Nikolaus will ich dass meine Geschenke an Kinder gerecht verteilt werden, um Enttäuschungen der Kinder zu vermeiden. Scenario1: Zwei Kinder, vier Geschenke Angenommen Nikolaus gibt »2« beim Feld Kinder ein, und Nikolaus gibt »1, 2, 3, 4« beim Feld Geschenke ein. Falls Nikolaus auf Rechnen drückt, dann muss im Feld Ergebnis erscheinen: »Kind 1: 1 + 4, Kind 2: 2 + 3«
  • 44. Seite 45 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Beispiel mit JBehave Die Datei nikolaus.story: Die Test-Klasse: Given Nikolaus gibt 2 beim Feld Kinder ein Given Nikolaus gibt 1,2,3,4 beim Feld Geschenke ein When Nikolaus auf Rechnen drueckt Then muss im Feld Ergebnis erscheinen: Kind 1: 1 + 4 = 5, Kind 2: 2 + 3 = 5 @Given("Nikolaus gibt $kinder beim Feld Kinder ein") public void eingabeKinder(int kinder) { this.kinder = kinder; } @Given("Nikolaus gibt $geschenke beim Feld Geschenke ein") public void eingabeGeschenke(List<Integer> geschenke) { this.geschenke = geschenke; } @When("Nikolaus auf Rechnen drueckt") public void rechnenDruecken() { rechner = new Rechner(kinder, geschenke); solution = rechner.calculate(); } @Then("muss im Feld Ergebnis erscheinen: $ergebnis") public void dasErgebnisMussSein(String ergebnis) { String loesung = rechner.solutionToString(solution); Assert.assertEquals(ergebnis, loesung); } s. auch [JBehave] und [Cucumber]
  • 45. Seite 46 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Beispiel mit JBehave Die Log-Datei im Erfolgsfall: Die Log-Datei im Fehlerfall: Running story com/javacook/nikolaus/nikolaus.story Scenario: Given Nikolaus gibt 2 beim Feld Kinder ein Given Nikolaus gibt 1,2,3,4 beim Feld Geschenke ein When Nikolaus auf Rechnen drueckt Then muss im Feld Ergebnis erscheinen: Kind 1: 1 + 4 = 5, Kind 2: 2 + 3 = 9 (FAILED) (org.junit.ComparisonFailure: expected:<... 5, Kind 2: 2 + 3 = [9]> but was:<... 5, Kind 2: 2 + 3 = [5]>) Running story com/javacook/nikolaus/nikolaus.story Scenario: Given Nikolaus gibt 2 beim Feld Kinder ein Given Nikolaus gibt 1,2,3,4 beim Feld Geschenke ein When Nikolaus auf Rechnen drueckt Then muss im Feld Ergebnis erscheinen: Kind 1: 1 + 4 = 5, Kind 2: 2 + 3 = 5
  • 46. Seite 47 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Vergleich der Entwicklung: klassisch & BDD Kunde wird interviewt RE spezifiziert Anforderungen Implementierung QA testet Auslieferung & Abnahme Kunde wird interviewt RE spezifiziert Anforderungen RE & Entwickl. → Akzeptanztest Implementierung QA & autom. Akzeptanztests Auslieferung & Abnahme
  • 47. Seite 48 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Fazit Das Erstellen von Akzeptanztests erzwingt eine detailliertere Auseinandersetzung bereits zu Beginn Es fördert die Kommunikation zwischen Auftraggeber, RE und Entwicklung Es entstehen (nebenbei) automatisierte Tests, die das System unmissverständlich dokumentieren
  • 48. Seite 49 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Best Practices Überprüfen Sie (stichprobenartig) einige Anforderungsdokumente – Sind die Dokumente auffindbar, versioniert? – Sind die Dokumente einheitlich strukturiert? – Ist der Text (auch für Uneingeweihte) klar und verständlich? – Wurden formale Methoden verwendet? – Enthalten sie Akzeptanzkriterien? – Sind in Ihren Dokumenten ausreichend Musterfälle enthalten?
  • 49. Seite 50 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Agenda Anforderungen aufnehmen Dokumentieren von Anforderungen Der Effekt von Akzeptanztests Anforderungen vermessen und validieren Verwalten von Anforderungen Zusammenfassung
  • 50. Seite 51 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Anforderungen vermessen und validieren Warum? – Anforderungsdokumente sind häufig Grundlage für Verträge – Einen Qualitätsstandard sicherstellen – Qualität der Anforderungen wirkt sich auf die Software-Qualität aus – Fehler & Mängel frühzeitig zu finden, denn…
  • 51. Seite 52 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Kosten von RE-Fehlern bezogen auf Projektphasen
  • 52. Seite 53 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Qualitätsmerkmale für Anforderungen Wann ist eine Anforderungsspezifikation gut? – Aktualität (insb. Kundenwunsch-konform) – Eindeutigkeit – Widerspruchsfreiheit – Identifizierbarkeit – Vollständigkeit – Änderbarkeit – Prüfbarkeit – Realisierbarkeit – Verständlichkeit
  • 53. Seite 54 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Konkrete Qualitätsmetrik nach [RuppSoph] Prozessworteindeutigkeit in Satz i Bezugspunkteindeutigkeit in Satz i Begriffseindeutigkeit in Satz i Eindeutigkeit Anzahl aller Sätze
  • 54. Seite 55 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Review-Prüfmethoden Stellungnahme – Eine weitere Person (am besten fachfremd) wird gebeten, das Dokument zu prüfen Inspektion – Sehr strenger aufwändiger Prozess mit vielen Beteiligten (Moderator, Prüfer, Termine, Checklisten, Abschlussbericht) Walkthrough – Leichtgewichtiges Review (Autor trägt vor, Prüfer, Protokollant) Automatisiert durch Tools – Befindet sich in der Forschung
  • 55. Seite 56 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Prüfungsnachbereitung Ergebnisse standardisiert dokumentieren Bei Unterschreitungen der Toleranzgrenze – Ursachen bestimmen! – Prozesse anpassen – Evtl. nachschulen
  • 56. Seite 57 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Bezug zur Software-Qualität (exemplarisch) Funktionalität Korrektheit Wartbarkeit Aktualität x Eindeutigkeit x Widerspruchsfreiheit x Identifizierbarkeit x Vollständigkeit x Änderbarkeit x Prüfbarkeit x x Realisierbarkeit x Verständlichkeit x x ...
  • 57. Seite 58 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Best Practices Werden Qualitätsprüfungen bzgl. der Anforderungen bei Ihnen durchgeführt? – Planen Sie den Prozess sorgfältig und passen ihn gezielt auf Ihre Bedürfnisse an – Qualitätsprüfungen sind bislang noch nicht die Regel – Tun Sie es, nutzen Sie den Vorsprung!
  • 58. Seite 59 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Agenda Anforderungen aufnehmen Dokumentieren von Anforderungen Der Effekt von Akzeptanztests Anforderungen vermessen und validieren Verwalten von Anforderungen Zusammenfassung
  • 59. Seite 60 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Anforderungen verwalten Ist eine Hauptaufgabe des agilen RE! Wird umso wichtiger, je – mehr Anforderungen zu verwalten sind – mehr Stakeholder auf die Informationen zugreifen – mehr Änderungen zu erwarten sind – länger das Produkts (erwartungsgemäß) in Betrieb ist Die Wahl des(r) richtigen Tools bringt entscheidende Vorteile Entscheidend für das Software-Qualitätsmerkmal Wartbarkeit
  • 60. Seite 61 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Erwartungen an ein Management-Tool Notwendige Eigenschaften: – Anlegen, Ändern, Löschen von Anforderungen – Strukturierbarkeit – Gute Suchmöglichkeiten – Versionsverwaltung / Versionierung – Einfache Handhabung von Grafiktypen – Verfolgbarkeit (Traceability) Wünschenswert – Konfigurierbarkeit von Eingabemasken und Workflow – Benutzer- und Rechteverwaltung – Automatische Analyse von Texten…
  • 61. Seite 62 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Tools Word & Excel: immer noch üblich – Grund: Wird von jedem beherrscht Im Kommen: Issue-Tracker & Wikis – Grund: Einfaches Erlernen, einfache Bedienung – Offen für den Aufbau einer Werkzeugkette (!) Auswahl verschiedener RE-Tools (alphabetisch): – Caliber RM Contour Cradle – DESIRe DOORS Enterprise Architect – HP Quality Center IrQA Lotus Notes – OptimalTrace ProR RequisitePro – YAKINDU … [VolereTools] enthält eine weitaus größere Übersicht
  • 62. Seite 63 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Traceability – so wichtig und doch kaum vorhanden Typische Wartungsaufgabe: – Im Risiko-Report vom 31.3 stimmt das Ausfalldatum nicht Findet der Entwickler folgende Informationen effizient? – Woher stammt das Datum (Eingabe, Import)? – In welchen Klassen wird es verarbeitet? – Welche Datenbankfelder sind involviert? – Welche fachlichen Abhängigkeiten gibt es zu anderen Daten? – Wie groß sind die Risiken von Änderungen? – …
  • 63. Seite 64 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Ideale Welt RE-Tool Suchergebnis Source Verarbeitung Lösung RE-Tool Anforderung RE-Tool "Ausfalldatum" Modellierung Fachklassen
  • 64. Seite 65 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Die Realität Source DB-Tool Source-Code-Analysen können das zig-fache an Zeit kosten! Word
  • 65. Seite 66 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Vision: Traceability innerhalb der Werkzeugkette Anforderungs- management IDE Projekt- management Build- Management Issue Tracking Modellierung Persistenz Delivery Collaboration BP- Management Monitoring Configuration- Management
  • 66. Seite 67 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Best Practices Prüfen Sie, ob bei Ihnen die passenden Werkzeugkette im Einsatz ist Erwägen Sie eine Neuanschaffung: – Nehmen Sie sich Zeit für die richtige Wahl – Lassen Sie sich von Experten beraten – Planen Sie auch den Einsatz von Schulungen
  • 67. Seite 68 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Agenda Anforderungen aufnehmen Dokumentieren von Anforderungen Der Effekt von Akzeptanztests Anforderungen vermessen und validieren Verwalten von Anforderungen Zusammenfassung
  • 68. Seite 69 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Warum ist RE wirtschaftlich?
  • 69. Seite 70 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Zusammenfassung Einsparungen beim RE bewirken wenig Qualität bei hohen Kosten! Eine gute Anforderungsanalyse erfordert spezielle RE-Fertigkeiten – Mit direkten Auswirkungen auf die Softwarequalität Gute Dokumentation erfordert Talent, Technik und Disziplin – Sprachkonventionen, Modelle, neue Verfahren (BDD) – Ziel: Formales und systematisches Vorgehen – Gute RE-Management-Tools helfen nennenswert Auch Anforderungen lassen sich qualitätsprüfen – Ziel: Qualitätssteigerungen durch kontinuierliches Messen – Qualität bei den Anforderungen  Software-Qualität
  • 70. Seite 71 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Referenzen [RuppSoph] Chris Rupp, die SOPHISTen; Requirements-Engineering und – Management, 5. Auflage, Hanser, 2009, ISBN: 978-3446418417 [VolereTools] http://www.volere.co.uk/tools.htm [Cucumber] http://cukes.info [Jbehave] http://jbehave.org [bdw] http://www.bild-der- wissenschaft.de/bdw/bdwlive/heftarchiv/index2.php?object_id=32911270
  • 71. Seite 72 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Weiterführende Literatur Klaus Pohl, Chris Rupp; Basiswissen Requirements Engineering; 2. Auflage, Dpunkt Verlag, 2010, ISBN: 978-3898646130 S. Robertson, J. Robertson; Mastering the Requirements Process; Addison Wesley, 1999, ISBN: 978-0201360462 U. Vigenschow, B.Schneider, I. Meyrose; Soft Skills für Softwareent- wickler; 2. Auflage, Dpunkt Verlag, 2010, ISBN: 978-3898646710 Rainer Gerlich; 111 Thesen zur erfolgreichen Softwareentwicklung; 1. Auflage, Springer, 2005, ISBN: 978-3540209102
  • 72. Seite 73 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Weiterführende Literatur Mr. Malcolm Tredinnick, Behaviour Driven Development, http://www.youtube.com/watch?v=XXHknWKuG2U Gojko Adzic; Bridging the Communication Gap: Specification by Example and Agile Acceptance Testing; Neuri Limited, 2009, ISBN: 978-0955683619 Gojko Adzic; Specification by Example: How Successful Teams Deliver the Right Software; Manning, Juni 2011, ISBN: 978-1617290084
  • 73. Seite 74 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Folie 9: http://openclipart.org/image/800px/svg_to_png/169415/discussion.png http://openclipart.org/image/800px/svg_to_png/169418/go-round.png Folie 13: http://www.clker.com/cliparts/7/1/a/f/11949851591518961590dodge_neon_green_ganson.svg.med.png Folie 19: http://www.clker.com/clipart-15442.html Folie 29: http://upload.wikimedia.org/wikipedia/commons/thumb/d/d0/Lage-_und_Verhältnisbestimmung_Zahn.jpg/ 800px-Lage-_und_Verhältnisbestimmung_Zahn.jpg Folie 32: http://openclipart.org/detail/1956/santa-and-his-bag-by-johnny_automatic Folie 33: http://www.wpclipart.com/people/children/girls/girls_3/girl_with_pigtails.png.html http://www.wpclipart.com/people/children/boys/little_boy.png.html http://www.wpclipart.com/holiday/Christmas/gifts/gift_box_silver.png.html http://www.wpclipart.com/holiday/Christmas/gifts/gift_black.png.html … Bildernachweise
  • 74. Seite 75 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Folie 33: http://www.wpclipart.com/holiday/Christmas/gifts/gifts_w_tags.png.html http://www.wpclipart.com/holiday/Christmas/gifts/gift_box_blue_ribbon/package_blue_ribbon_and_blue.png.html http://www.wpclipart.com/holiday/valentines/candy_and_gifts/valentine_gift_box.png.html Folie 38: http://www.doktoranden-netz.de/Idee.GIF Folie 55: http://openclipart.org/detail/29647/quality-control:-rejected-by-stijnbern Folie 63: http://docs.typo3.org/flow/TYPO3FlowDocumentation/_images/DomainModel-2.png Folie 64: http://openclipart.org/image/800px/svg_to_png/94723/db.png Sämtliche hier nicht aufgeführte Bilder bzw. Grafiken wurden vom Autor selbst erstellt. Bildernachweise
  • 75. Seite 76 / 76Garbage in - garbage out: Wie das Anforderungsmanagement die Softwarequalität beeinflusst Abkürzungen ATDD Acceptance Test Driven Development BDD Behavior Driven Development BPEL Business Process Execution Language BPMN Business Process Model and Notation DDD Domain-Driven Design DSL Domain-Specific Language ER Entity Relationship QA Quality Assurance QS Qualitätssicherung RE Requirements Engineering bzw. Requirements Engineer TDD Test-Driven Development UML Unified Modeling Language