004 Informatik
Refine
Year of publication
Document Type
- Report (20) (remove)
Has Fulltext
- yes (20)
Is part of the Bibliography
- no (20)
Keywords
- Computerunterstütztes Lernen (8)
- E-Learning (8)
- Lernaufgabe (8)
- Programmierung (8)
- Autobewerter (6)
- E-Assessment (6)
- Grader (6)
- Übung <Hochschule> (6)
- Softwaretest (5)
- IT-Sicherheit (4)
At University of Applied Sciences and Arts Hannover, LON-CAPA is used as a learning management system beside Moodle. LON-CAPA has a strong focus on e-assessment in mathematics and sciences. We used LON-CAPA in Hannover mainly in mathematics courses.
Since theoretical computer science needs a lot of mathematics, this course is also well-suited for e-assessment in LON-CAPA. Beside this, we already used JFLAP as an interactive tool to deal with automata, machines and grammars in theoretical computer science. In LON-CAPA, there exists a possibility of using external graders to grade problems.
We decided to write a grading engine (with JFLAP inside) to grade automata, machines and grammars handed in by students and to couple this with LON-CAPA. This report describes the types of questions that are now possible with this grader and how they can be authored in LON-CAPA.
Automatische Bewertungssysteme für Programmieraufgaben (Grader) sind komplexe Softwaresysteme. Automatisch ausführbare Regressionstests können kostengünstig potenzielle Fehler im Grader aufdecken. Im vorliegenden Beitrag soll beschrieben werden, wie Musterlösungen als Eingabedaten für automatische Regressionstests fungieren können. Es geht also um die Vorstellung einer Lösung eines Software Engineering Problems für E-Learning-Systeme. Wir betrachten, welche Eigenschaften des ProFormA-Aufgabenformats für automatische Regressionstests genutzt werden können und schlagen Erweiterungen des Formats vor. Der Beitrag beschreibt die beispielhafte Implementierung eines automatischen Black Box Systemtests für den Autobewerter Graja und geht dabei u. a. auf die Gestaltung eines Record-Playback-Vorgehens, auf einen unscharfen Soll-Ist-Vergleich sowie auf die Frage der Lokalisierbarkeit von entdeckten Regressionen ein.
Dieses Research Paper befasst sich mit dem Thema der Hochverfügbarkeit von Automatisierungsnetzwerken am Beispiel von PROFINET. Anhand von verschiedenen PROFINET-Topologien soll verdeutlicht werden, durch welche Maßnahmen eine hohe Verfügbarkeit erzielt werden kann. Zuvor wird mithilfe von grundliegenden Berechnungsbeispielen gezeigt, wie sich die Verfügbarkeit eines technischen Systems ermitteln lässt. Anschließend erfolgt für die Betrachtung der Gesamtverfügbarkeit einer PROFINET-Anlage eine genaue Bestimmung der jeweiligen Verfügbarkeitswerte für die einzelnen PROFINET-Geräte. Ein besonderes Augenmerk richtet sich hierbei speziell auf die Verwendung von IO Devices mit redundanten bzw. nicht-redundanten Interfacemodulen. Für das Erzielen einer hohen Verfügbarkeit sind nicht nur PROFINET-Geräte von entscheidender Bedeutung, sondern auch die Stuktur des PROFINET-Netzwerks. Im Zusammenspiel mit den bereits existierenden Redundanzprotokollen, die für die Verwaltung des Datenverkehrs zuständig sind, werden in diesem Bericht mehrere Topologien anhand verschiedener Eigenschaften und Voraussetzungen auf ihre Vor- und Nachteile untersucht und entsprechend ihrer Gesamtverfügbarkeitswerte bewertet.
Dieses Research Paper basiert im Wesentlichen auf der Bachelorarbeit von Herrn Sebastian Stelljes an der Hochschule Hannover. Im Nachgang zur Arbeit wurden noch weitere Aspekte untersucht und mit den Inhalten der Bachelorarbeit zu diesem Research Paper zusammengeführt.
Im Rahmen des vom Bundesministerium für Wirtschaft und Technologie geförderten Forschungsprojektes INSA sollen wichtige Beiträge zur Verbesserung der IT-Sicherheit von Produktionsanlagen insbesondere in kleinen und mittelständischen Unternehmen (KMU) realisiert und erprobt werden.
Die IT-Sicherheit von Produktionsanlagen wird zu einer immer wichtigeren Komponente des Schutzes von Unternehmen gegen Cyber-Attacken. Neben Angriffen aus dem Internet sind dabei interne Angriffsquellen in Betracht zu ziehen. Gängige Vorgehensmodelle, wie z. B. die VDI-Richtlinie 2182, setzen dabei unter anderem auf eine wiederkehrende Analyse der Bedrohungen und auf die Implementierung entsprechender Schutzmaßnahmen. Die Durchführung einer solchen wiederkehrenden Gefährdungsanalyse ist mit einem wiederkehrenden manuellen Aufwand verbunden, weshalb kleine und mittlere Unternehmen die Durchführung dieser Maßnahmen häufig meiden. Ziel des Projektes ist die Unterstützung kleiner und mittlerer Unternehmen bei der Durchführung entsprechender Bedrohungsanalysen zu unterstützen.
Der Ansatz des Projektes beruht auf der automatisierten bzw. teilautomatisierten Erfassung der installierten Automatisierungskomponenten (Assets). Danach kann für bekannte Standardkomponenten durch die Verwendung wissensbasierter Methoden eine Beurteilung der Bedrohung einer Automatisierungsanlage erfolgen. Hierfür wird fachspezifisches Wissen erfasst und verarbeitet wird. Diese Methoden können bei Bedarf in die Engineering-Oberfläche einer Automatisierungsanlage intergiert werden.
Die zunehmenden Anwendungsfälle der vertikalen und horizontalen Vernetzung von Automatisierungssystemen erhöhen gleichzeitig auch die Bedrohungen der IT-Sicherheit der relevanten automatisierten technischen Prozesse. Zukünftige Anlagenstrukturen werden stärker vernetzt und dezentralisiert organisiert sein, oder sogar weltweit mit anderen technischen Systemen über das Internet kommunizieren. Dies erfolgt häufig über standardisierte Kommunikationsprotokolle, im Weiteren Middleware genannt. Daher ist die Bedeutung standardisierter Verfahren und Modelle zur Erleichterung der Sicherheitskonfigurationen der Middleware, die die folgenden Anforderungen erfüllen, von wesentlicher Bedeutung:
- Sichere Kommunikation (sichere Middleware)
- Authentifizierung und Autorisierung der Kommunikationspartner auch bei stark vernetzten Systemen und Ad-hoc-Verbindungen
- Einfache Verwaltung von Sicherheitsmaßnahmen ohne erheblichen Mehraufwand für die Organisation
Die bestehende Referenzarchitektur und die Sicherheitsmerkmale der entsprechenden Middleware werden untersucht, um deren Anwendbarkeit in verschiedenen Stufen der Automatisierungspyramide zu ermitteln. Es werden die Sicherheitsmerkmale für eine durchgängig sichere Kommunikation und deren Flexibilität bei der Integration in eine Public Key Infrastruktur (PKI) untersucht. Die bestehenden Zugangskontrollmechanismen und deren Zukunft im Rahmen von Industrie 4.0 werden bewertet. Die Möglichkeiten zur Integration des mit Attributzertifikaten aktivierten Berechtigungsmechanismus im Rahmen von OPC UA werden in diesem Projekt untersucht und als Teil des Demonstrators implementiert. Die Anwendungsrelevanz der entwickelten Lösungen wird gewährleistet, indem die Projektpartner des projektbegleitenden Ausschusses bei der Erstellung und dem Review von Konzepten frühzeitig beteiligt werden.
Automatisiert bewertbare Programmieraufgaben dienen Studierenden zum Einüben von Programmierfertigkeiten. Die Verfügbarkeit von mehreren verschiedenen Aufgaben, die denselben Stoff abdecken, ist für verschiedene Zwecke hilfreich. Eine Programmieraufgabe lässt sich durch Einführung von Variationspunkten variabel gestalten. Die hierbei entstehende Aufgabenschablone ist Ausgangsbasis der sogenannten Materialisierung, der automatischen Generierung konkreter Aufgaben. Der vorliegende Beitrag stellt ein Datenmodell mit dem Ziel vor, sowohl die Auswahl von Variationspunktwerten als auch die automatische Materialisierung auf verschiedenen Systemen in verschiedenen Programmiersprachen zu unterstützen. Das vorgeschlagene Datenformat ermöglicht Lernmanagementsystemen die Unterstützung variabler Programmieraufgaben bei gleichzeitiger Unkenntnis des eingesetzten Autobewerters.
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äfte können die Abbildungsvorschrift an ihren Lehrkontext anpassen. Der Vorschlag ist unabhä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änzt werden. Letzteres sucht einen Ausgleich im Spannungsfeld zwischen einem für Studierende einfach verständlichen Bewertungsergebnis und den Eigenarten der eigentlich nicht für Bewertungszwecke erfundenen, nichtsdestotrotz regelmäßig und sinnvollerweise für Bewertungszwecke eingesetzten Softwarewerkzeuge.
Wir beschreiben eine Möglichkeit, Variationspunkte und deren Varianten in automatisiert bewerteten Programmieraufgaben zu spezifizieren. Solche Variationspunkte kommen bei individualisierbaren Programmieraufgaben zum Einsatz, bei denen jede Studentin und jeder Student eine eigene Variante einer Programmieraufgabe erhält. Die Varianten werden automatisch gebildet, indem an definierten Variationspunkten immer wieder andere, konkrete Werte eingesetzt werden. Schon bei sehr einfachen Aufgaben bestehen Abhängigkeiten zwischen den einzelnen Variationspunkten, die bei der Wahl der konkreten Werte zu berücksichtigen sind. Zudem kann die Menge der gültigen Werte auch bei einfachen Aufgaben so groß werden, dass die vollständige Auflistung aller Wertkombinationen an Ressourcengrenzen scheitert. Die vorgestellte Spezifikation verwendet eine kompakte und für Aufgabenautoren verständliche Sprache, die eine automatische Auswahl von korrekten, den Abhängigkeiten gehorchenden Wertekombinationen ermöglicht. Die Sprache ist unabhängig von den Erfordernissen eines bestimmten Autobewerters und versetzt Frontend- und Backendsysteme in verschiedenen technischen Ökosystemen in die Lage, ausgewählte Werte einer sehr großen Wertemenge zu generieren, deren Abhängigkeiten zu prüfen, sowie ggf. bestimmte Wertbelegungen in einem benutzerfreundlichen Dialog auszuwählen. Wir unterstützen Variationspunkte mit endlichen Mengen vorzugebender diskreter Werte sowie kontinuierliche Wertebereiche, die durch eine vorzugebende Anzahl von Samples diskretisiert werden. Wir beschäftigen uns insbesondere mit der Frage, wie lange Auflistungen gültiger Wertkombinationen durch die Angabe von Ableitungsvorschriften ersetzt werden können. Ein besonderes Augenmerk legen wir auf eine redundanzfreie Beschreibung der Variantenmenge. Die Notation setzt auf XML und Javascript in der Annahme, dass diese Technologien in allen beteiligten Systemen zur Verfügung stehen können.