Sicherheitsimplikationen beim Einsatz von Test Doubles zur automatisierten Bewertung studentischer Java-Programme mit Graja und mockito

نویسنده

  • Robert Garmann
چکیده

Im ersten Teil demonstrieren wir die Erstellung eines sog. AssignmentGraders, der in der Lage ist, interne Programmschnittstellen eines maschinell zu bewertenden Java-Programms zu beobachten. Beispielhaft nutzen wir den Autobewerter Graja in Verbindung mit mockito Test Doubles. Wir zeigen, wie man Leistungsaspekte einer studentischen Lösung einzeln und gezielt automatisiert bewertet. Bei einer Beschränkung auf die Beobachtung externer Programmschnittstellen würden sich diese Aspekte der gezielten Bewertung entziehen. Im zweiten Teil beleuchten wir Bedrohungen des das zu bewertende Programm ausführenden Systems und gewichten ausgewählte Ursachen. Wir konzentrieren uns auf Bedrohungen, die mit Mitteln der Java-2Sicherheitsarchitektur beherrschbar sind und liefern einige Beispiele zur Abgrenzung. Die Eigenheiten der Java-2Sicherheitsarchitektur werfen im Kontext des Test Double Einsatzes Fragen auf, die wir im dritten Teil erörtern. Test Doubles sollten in einem anderen Schutzbereich der Java-2Sicherheitsarchitektur als der studentische Code liegen. Um eine privilegierte Ausführung der Test Doubles auch dann zu forcieren, wenn der Aufruf aus studentischem Code erfolgt, schlagen wir den Einsatz von Proxy-Objekten vor. Um auch Nicht-Spezialisten der beschriebenen Sicherheitsbelange die Autorenschaft von AssignmentGradern zu ermöglichen, entwickeln wir eine Wrapper-Bibliothek für mockito, deren zentrale Entwurfsideen wir kurz skizzieren.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Evaluation automatisierter Programmbewertung bei der Vermittlung der Sprachen Java und SQL mit den Gradern "aSQLg" und "Graja" aus studentischer Perspektive

Als Bestandteil der Informatik-Lehre werden für die Programmierausbildung vermehrt Methoden der automatisierten Programmbewertung eingesetzt. Für die Programmiersprachen Java und SQL stehen hierfür an der Hochschule Hannover die Werkzeuge „Graja“ und „aSQLg“ zur Verfügung. In einer Evaluationsstudie wurde ermittelt, inwieweit diese beiden Werkzeuge Studierende und Dozenten unterstützen und wo d...

متن کامل

Feedback-Möglichkeiten in automatischen Prüfungssystemen

Eine wichtige Fragestellung beim Einsatz automatischer Prüfungssysteme ist, wie den Lernenden Rückmeldung über ihre Leistung gegeben wird. Noch vor der Frage der Präsentation dieser Meldungen ist zu klären, mit welchem Aufwand welche Quellen für die Generierung von Meldungen genutzt werden können. Der vorliegende Beitrag beschreibt und analysiert, welche konkreten Arten der Rückmeldung in einem...

متن کامل

Web-basierte Programmierpraktika mit Praktomat

Das System Praktomat unterstützt die webbasierte Durchführung von Programmierpraktika durch automatisiertes Praktikums-Management und Qualitätskontrolle der eingereichten Lösungen. Die Kernfunktionalität des Systems wird in diesem Artikel knapp umrissen. Die vierjährigen Erfahrungen haben gezeigt, dass der Einsatz zu reduziertem Betreuungsaufwand führt, die Qualität der studentischen Programme ...

متن کامل

E-Assessment mit Graja - ein Vergleich zu Anforderungen an Softwaretestwerkzeuge

Automatisiert bewertbare Programmieraufgaben zu erstellen ist so aufwändig, dass man die Aufgaben häufig wiederverwenden und idealerweise auch zwischen verschiedenen Autobewertern (Gradern) portieren will. Da die automatisierte Bewertung studentischer Einreichungen Parallelen zum automatisierten Test in der professionellen Softwareentwicklung aufweist, setzen Autobewerter häufig de-facto-Standa...

متن کامل

Entwicklung eines objektiven Bewertungsverfahrens für Softwarearchitekturen im Bereich Fahrerassistenz

Der vorliegende Beitrag beschreibt ein Vorgehensmodell und die erzielten Ergebnisse im Umfeld der Bewertung von Softwarearchitekturen von Automotive Embedded Software. Softwarearchitektur stellt im Allgemeinen ein entscheidendes Instrument zur Beeinflussung nicht-funktionaler Eigenschaften (z.B. Skalierbarkeit, Erweiterbarkeit, Portierbarkeit) von Software dar, bis heute gibt es jedoch keinen g...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013