@masterthesis{Herschel2020, type = {Bachelor Thesis}, author = {Herschel, Marc}, title = {Musterl{\"o}sungen in Graja als Mechanismus f{\"u}r Regressionstests}, doi = {10.25968/opus-1721}, url = {http://nbn-resolving.de/urn:nbn:de:bsz:960-opus4-17211}, school = {Hochschule Hannover}, year = {2020}, abstract = {Der Autobewerter Graja, der in der Lehre zum Bewerten studentischer Java-Programme verwendet wird, stellt ein komplexes Softwaresystem dar. Aufgrund einer kaum vorhandenen Testabdeckung durch Modul- und Integrationstests, ist die Gew{\"a}hrleistung der fehlerfreien Funktionalit{\"a}t in Hinsicht auf die Weiterentwicklung nicht garantiert. Da sich Graja auf das ProFormA-Aufgabenformat st{\"u}tzt, stellt sich die Frage, inwiefern sich die im ProFormA-Aufgabenformat vorausgesetzten Musterl{\"o}sungen, f{\"u}r einen automatisierten Regressionstestmechanismus eignen. Das Ziel dieser Forschung ist es ein Konzept, f{\"u}r einen solchen Regressionstestmechanismus zu erstellen und mithilfe einer Referenzimplementierung als Graja-Erweiterung in die Praxis umzusetzen. Der daraus entstandene Mechanismus operiert durch Verhaltensaufzeichnung und Verhaltensabgleich und konvertiert so das in Graja beobachtete Bewertungsverhalten einer Musterl{\"o}sung in einen Testfall. In der Testphase findet anschließend ein Abgleich des Soll-Verhaltens eines Testfalls und des beobachteten Ist-Verhaltens einer Musterl{\"o}sung statt. Die Differenzen dieses Abgleichs sind als potenzielle Regressionen zu behandeln, da diese eine semantische {\"A}nderung des Bewertungsergebnisses darstellen. Um diesen Verhaltensabgleich robust und mit m{\"o}glichst wenigen Fehlalarme zu realisieren, wurden die in Graja verwendeten Datenmodelle auf Eignung bez{\"u}glich einer Verhaltensaufzeichnung untersucht. Außerdem fand eine Datenaufzeichnung mit einer Teilmenge der Musterl{\"o}sungen statt. Nachfolgend wurde eine Analyse dieser Rohdaten, mit dem Ziel potenzielles Rauschen innerhalb der Aufzeichnungen zu detektieren, durchgef{\"u}hrt. So konnte letztendlich eine Strategie f{\"u}r eine Rauschunterdr{\"u}ckung innerhalb der Verhaltensaufzeichnung entwickelt werden. Abschließend wurde ein Datenmodell entwickelt, das erlaubt, die durch den Verhaltensabgleich detektierten Regressionen verst{\"a}ndlich und lokalisierbar darzustellen. Der durch diese Arbeit entstandene automatisierte Regressionstestmechanismus stellt somit eine Grundlage f{\"u}r die Gew{\"a}hrleistung der korrekten Bewertungsfunktionalit{\"a}t innerhalb des Graja-Entwicklungsprozesses dar. Durch das Detektieren von Regressionen mithilfe der Musterl{\"o}sungen, lassen sich nun {\"A}nderungen an Graja gewissenhaft in eine Produktionsumgebung {\"u}bernehmen.}, subject = {Softwaretest}, language = {de} } @techreport{Garmann2019, author = {Garmann, Robert}, title = {Ein Format f{\"u}r Bewertungsvorschriften in automatisiert bewertbaren Programmieraufgaben}, doi = {10.25968/opus-1343}, url = {http://nbn-resolving.de/urn:nbn:de:bsz:960-opus4-13432}, year = {2019}, abstract = {Automatisiert bewertbare Programmieraufgaben definieren Tests, die auf Einreichungen angewendet werden. Da Testergebnisse nicht mit Bewertungsergebnissen gleichzusetzen sind, schlagen wir ein Beschreibungsformat vor, das Testergebnisse auf Bewertungsergebnisse abbildet. Lehrkr{\"a}fte k{\"o}nnen die Abbildungsvorschrift an ihren Lehrkontext anpassen. Der Vorschlag ist unabh{\"a}ngig von den beteiligten Autobewertern, von den eingesetzten Benutzungsschnittstellen und von der zu lernenden Programmiersprache einsetzbar. Das Format basiert auf verschachtelten Bewertungskategorien, welche um ein Nullifikationen-Konzept erg{\"a}nzt werden. Letzteres sucht einen Ausgleich im Spannungsfeld zwischen einem f{\"u}r Studierende einfach verst{\"a}ndlichen Bewertungsergebnis und den Eigenarten der eigentlich nicht f{\"u}r Bewertungszwecke erfundenen, nichtsdestotrotz regelm{\"a}ßig und sinnvollerweise f{\"u}r Bewertungszwecke eingesetzten Softwarewerkzeuge.}, subject = {Programmierung}, language = {de} } @techreport{Garmann2016, author = {Garmann, Robert}, title = {Graja - Autobewerter f{\"u}r Java-Programme}, doi = {10.25968/opus-941}, url = {http://nbn-resolving.de/urn:nbn:de:bsz:960-opus4-9418}, pages = {20}, year = {2016}, abstract = {In diesem Bericht wird der Autobewerter Graja f{\"u}r Java-Programme vorgestellt. Wir geben einen {\"U}berblick {\"u}ber die unterst{\"u}tzten Bewertungsmethoden sowie die beteiligten Nutzerrollen. Wir gehen auf technische Einzelheiten und Randbedingungen der in Graja eingesetzten Bewertungsmethoden ein und zeigen die Einbindung von Graja in eine technische Gesamtarchitektur. An einem durchgehenden Beispiel stellen wir die Struktur einer Programmieraufgabe sowie die von Graja unterst{\"u}tzten Feedback-M{\"o}glichkeiten dar. Informationen zum bisherigen Einsatz des Graders runden den Bericht ab.}, subject = {Programmierung}, language = {de} } @techreport{Garmann2016, author = {Garmann, Robert}, title = {Bewertungsaspekte und Tests in Java-Programmieraufgaben f{\"u}r Graja im ProFormA-Aufgabenformat}, doi = {10.25968/opus-834}, url = {http://nbn-resolving.de/urn:nbn:de:bsz:960-opus4-8344}, pages = {27}, year = {2016}, abstract = {Ein Autobewerter f{\"u}r von Studierenden eingereichte Programme f{\"u}hrt die im ProFormA-Aufgabenformat sequentiell spezifizierten "Tests" aus, um die Einreichung zu pr{\"u}fen. Bzgl. der Interpretation und Darstellung der Testausf{\"u}hrungsergebnisse gibt es derzeit keinen grader{\"u}bergreifenden Standard. Wir beschreiben eine Erweiterung des ProFormA-Aufgabenformats um eine Hierarchie von Bewertungsaspekten, die nach didaktischen Aspekten gruppiert ist und Referenzen auf die Testausf{\"u}hrungen besitzt. Die Erweiterung wurde in Graja umgesetzt, einem Autobewerter f{\"u}r Java-Programme. Je nach gew{\"u}nschter Detailaufschl{\"u}sselung der Bewertungsaspekte m{\"u}ssen in der Konsequenz Testausf{\"u}hrungen in Teilausf{\"u}hrungen aufgebrochen werden. Wir illustrieren unseren Vorschlag unter Einsatz der Testwerkzeuge Compiler, dynamischer Softwaretest, statische Analyse sowie unter Einsatz menschlicher Bewerter.}, subject = {Programmierung}, language = {de} } @techreport{Garmann2015, author = {Garmann, Robert}, title = {E-Assessment mit Graja - ein Vergleich zu Anforderungen an Softwaretestwerkzeuge}, doi = {10.25968/opus-618}, url = {http://nbn-resolving.de/urn:nbn:de:bsz:960-opus4-6180}, pages = {15}, year = {2015}, abstract = {Die automatisierte Bewertung studentischer {\"U}bungsabgaben in Programmieren-Lehrveranstaltungen weist Parallelen zum automatisierten Test in der professionellen Softwareentwicklung auf. Allerdings muss ein Autobewerter (Grader), um lernf{\"o}rderlich zu sein, andere Zielsetzungen erf{\"u}llen als {\"u}blicherweise im professionellen Softwaretest eingesetzte Analyse- und Testwerkzeuge. Dieser Beitrag identifiziert wesentliche Unterschiede und beschreibt, wie sich diese Unterschiede in dem an der Hochschule Hannover entwickelten und seit mehreren Jahren im Einsatz befindlichen Autobewerter "Graja" niederschlagen.}, subject = {Computerunterst{\"u}tztes Lernen}, language = {de} }