Welcome to the world of evidence! Evidence-based teaching is effective teaching, and we bring you the most effective methods. Read on to find out more.
M. Blumendorf, G. Lehmann, and S. Albayrak. Proceedings of the 2nd ACM SIGCHI symposium on Engineering interactive computing systems, page 9--18. New York, NY, USA, ACM, (2010)
P. Santos-Neto, R. Resende, and C. Pádua. SAC '07: Proceedings of the 2007 ACM symposium on Applied computing, page 1409--1415. New York, NY, USA, ACM, (2007)
B. Hasling, H. Goetz, and K. Beetz. Software Testing, Verification, and Validation, 2008 1st International Conference on, (April 2008)ST: Vorgehensweise:
In diesem Paper wird eine Testtechnik für den Systemtest beschrieben, die von Siemens im medizinischen Bereich angewendet wurde. Aus einem Use Case Modell, dessen Szenarien durch Aktivitätsdiagramme und Sequenzdiagramme beschrieben werden und Äquivalenzklassen für die erforderlichen Testdaten, können Testfälle generiert werden. Dazu wird das Tool TDE/UML benutzt, welche in vorhergehenden Ansätzen entwickelt wurde. Neu an dieser Technik zu den vorher entwickelten Techniken ist die Verbindung des Requirements-Prozesses mit dem Testprozess durch die Benutzung von Use-Cases, die schon im RE erstellt werden.
Eignung:
Vom Prinzip her ist die Vorgehensweise vergleichbar mit der Idee in ScenTEDTDG, da auf den gleichen Modellen gearbeitet wird und Äquivalenzklassen für die Testdatengewinnung herangezogen werden. Variabilität fehlt, da es ein Einzelsystemansatz ist..
N. Raza, A. Nadeem, and M. Iqbal. Quality Software, 2007. QSIC '07. Seventh International Conference on, (October 2007)ST: Vorgehensweise: Aus diesen Diagrammen sollen Testpfade für den Systemtest generiert werden. Die Diagramme sind mit Pre- und Postconditions durch OCL versehen. Aus diesen Diagrammen wird ein Zustandsautomat generiert. Nun können Abdeckungskriterien wie Zustandsüberdeckung oder Transitionsüberdeckung angewendet werden um Testpfade abzuleiten.
Eignung: Es können Testpfade für den Systemtest abgeleitet werden aber wie die Testdaten systematisch abgeleitet werden bleibt offen..
P. Samuel, and A. Joseph. Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing, ACIS International Conference on, (2008)ST: Vorgehensweise: Es wurden vier Arten von Abhängigkeiten identifiziert die zwischen Nachrichten in einem Sequenzdiagramm bestehen können. Aus einem UML 2.0 Sequenzdiagramm wird ein Graph generiert, der diese Abhängigkeiten darstellt. Daraus werden dann Test-Sequenzen abgeleitet.
Eignung: Es werden zwar Testfälle generiert, aber es wird nicht festgelegt woher die Testdaten kommen..
P. Carpenter. Ada Lett., XIX (3):
23--29(1999)ST: Vorgehensweise: Das Paper ordnet den Vorgang, wie man sicherheitskritische Anforderungen verifizieren kann, in einen Software Life-Cycle ein. Use-Cases werden mit Parametern für Daten versehen. Die Eingabedaten werden mit Hilfe eines Tools generiert per üblicher Ä-Klassenanalyse.
Eignung: Es ist nichts über die Testgüte zu finden (Abdeckungskriterium etc.). Außerdem wird kein Testmodell o.ä. erwähnt, welches alternative Ausführungspfade des Use Cases repräsentiert..
C. Mingsong, Q. Xiaokang, and L. Xuandong. AST '06: Proceedings of the 2006 international workshop on Automation of software test, page 2--8. New York, NY, USA, ACM, (2006)ST: Vorgehensweise: Erst wird eine große Menge von zufälligen Testfällen generiert. Das Programm wird mit diesen Testfällen ausgeführt und man erhält die entsprechenden Ausführungspfade. Diese werden mit den Aktivitätsdiagrammen verglichen auf Basis des Abdeckungskriteriums. Man wählt die übereinstimmenden Ausführungspfade aus und erhält so eine reduzierte Menge von Testfällen die das Abdeckungskriterium erfüllt. So kann auch die Konsistenz des Programms mit dem Aktivitätsdiagramm geprüft werden.
Eignung: Man findet keine Hinweise darauf, woher die Testdaten für die zufällig erzeugten Testfälle kommen. Für diesen Schritt wird auf ein Paper verwiesen, welches zufällige Testfälle für den Unittest erzeugt, siehe „A Tool for Random Generation of Unit Tests for Java Classes.”.
P. Murthy, P. Anitha, M. Mahesh, and R. Subramanyan. SCESM '06: Proceedings of the 2006 international workshop on Scenarios and state machines: models, algorithms, and tools, page 75--82. New York, NY, USA, ACM, (2006)
J. Calame, N. Ioustinova, and J. van de Pol. Electronic Notes in Theoretical Computer Science, (October 2007)MR: Stark formalisiertes und mathematisch ergründetes Werk.
Basierend auf der Spezifikation des IUT (gegeben in LTS) wird der Lösungsraum durch data abstraction eingeengt (mittels µCRL). Mittels enumerativ tools (wie TGV) werden dann abstrakte Testfälle generiert. Die konkreten Daten (Ein und Ausgaben!) werden mittels constraint-solving techniques (mittels Prolog) ermittelt.
Future Work soll ermöglichen UML-Spezifikationen als Eingabe zu erlauben und die Testfälle sollen in TTCN-3 generiert werden!
Spätestens dann wird dieser Ansatz für IST-SPL sehr interessant..