Hallo zusammen! Viele von Euch (auch ich) programmieren, wie es uns gefällt. Ich arbeite aber gerade in einem 4er-Team: Person ❶ kennt die Bedürfnisse oder bringt sie zur Klärung. Ich (❷) schreibe alles auf, also * algemmeinverständlich die Bedürfnisse von ❶ als "Information" und * sogenannte 'atomare Anforderungen', daraus abgeleitet, also die 'Requirements' für Programmierer und Tester. Person ❸ soll anhand der Requirements die µC-SW implementieren. Person ❹ soll alle Anforderungen testen und muss automatisierte Testsequenzen (Testfälle) definieren und durchführen, die "i.o." oder "n.i.o." sein können. Nun meine Idee: ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ Beim Erstellen der Requirements möchte ich mir gleichzeitig Gedanken über die Testbarkeit machen, ohne die Testfälle vorzugeben, denn das ist der Job von ❹. Als Methode wurde uns die FTA (Fehlerbaumanalyse) nahegelegt. Diese funktioniert aber eigentlich "top-down". Im Gegensatz dazu ist der FMEA-Ansatz zwar "bottom-up", aber die Idee ist eine andere: Ich möchte parallel zu den Requirements auch 'Testbedingungen' erstellen, aus denen ❹ dann Testsequenzen erzeugen kann. Dadurch verbessere ich die Vollständigkeit meiner Spezifikation und spezifiziere nix, was nicht testbar ist. Nun meine Fragen: ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ 1. Ist das üblich? Gibt es für diese Methodik eine Bezeichnung? Aus genannten Gründen passt weder "FMEA" noch "FTA". 2. Wie macht man 'Testschritte' aus den 'Testbedingungen'? Gibt es dafür ein Schema, also eine bekannte Methodik? Beispiel: ¯¯¯¯¯¯¯¯¯ Req_1: Die Signale werden aus dem EEPROM initialisiert. Req_2: Bei einen CRC-Fehler werden die Signale mit … initialisiert. Req_3: Der Zeitstempel wird aus der aktuellen gültigen Uhrzeit gebildet. Req_4: Bei ungültiger Uhrzeit (Timeout oder ungültig) ist der Zeit- stempel auf den 1. Januar 1970 zu setzen (Fehler-Ersatzwert). … Initialisierung: TestBed_1: Initialisierung mit gültigem CRC. TestBed_2: Initialisierung mit ungültigem CRC. Zeitstempel: TestBed_3: Gültiger Zeitstempel ohne Timeout TestBed_4: Ungültiger Zeitstempel (z.B. Stunde > 23) TestBed_5: Timeout vom Zeit-Server …: ^^^^ Das sind die 'TestBedingungen', die ich zusammen mit den Anforderungen erstellen will. Disclaimer: ¯¯¯¯¯¯¯¯¯¯¯ * Es geht zwar um µC-Programmierung, nicht um PC, aber eher um "allgemeine Programmierfragen ohne direkten Mikrocontroller-Bezug" als um "Fragen rund um Mikrocontroller". * Es gibt viele Projekte und Konstellationen, wo diese Methodik Quatsch ist. Nehmt bitte mal an, dass es sich um ein Projekt handelt, wo diese Methodik sinnvoll ist. Referenzen: ¯¯¯¯¯¯¯¯¯¯¯ * FTA (Fehlerbaumanalyse) http://www.ias.uni-stuttgart.de/lehre/vorlesungen/zsa/vorlesung/umdruck/zsa_ss15_kapitel_02.pdf * FMEA (Fehlermöglichkeits- und Einfluss-Analyse) http://www.ias.uni-stuttgart.de/lehre/vorlesungen/zsa/vorlesung/umdruck/zsa_ss15_kapitel_03.pdf
:
Bearbeitet durch User
Parallel zu 'Requirements' auch die Testbarkeit zu betrachten, ist doch so naheliegend, dass es weder 'neu' noch 'Quatsch' sein kann. * Gibt es Erfahrungen zu einer entsprechenden geeigneten Methodik? * Weiß jemand, ob die Methodik bereits eine Bezeichnung hat, nach der man googeln könnte? Ich meine nicht 'ATDD' oder 'TDD'. Testgetriebene Entwicklung wäre ja quasi 'anders herum'.
:
Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.