Übungsaufgabe „Klassengröße“ zu Blackbox-Testfallerstellung
Kleine Übungsaufgaben zur Erstellung von Testfällen nach Blackboxsystematik für eine Methode, die die Anzahl der einzurichtenden Klassen berechnen soll.
Kleine Übungsaufgaben zur Erstellung von Testfällen nach Blackboxsystematik für eine Methode, die die Anzahl der einzurichtenden Klassen berechnen soll.
Übungsaufgaben zur Erstellung von Testfällen nach Blackboxsystematik für eine Methode, die die IHK-Abschlussnote berechnet. Es werden systematisch Äquivalenzklassen und Grenzwerte bestimmt und der Algorithmus mit Pseudocode beschrieben.
Zu einer gegebenen Funktion (Versandkostenrechner) soll ein Kontrollflussgraph erstellt werden, die McCabe-Zahl berechnet werden (beides optional), die Überdeckungsmetriken für einen bestehenden Test berechnet werden, weitere Tests aus Whitebox-Sicht ergänzt werden und alles mit einem Code-Coverage-Tool implementiert werden.
Wenn Linux-Clients in Windows-Netzwerke integriert werden sollen, muss die Authentifizierung und das Freigabemanagement von Linux aus angesprochen werden. Dieser Artikel ist mehr ein Erfahrungsbericht als eine Schritt für Schritt Anleitung, wie ein Linux-Client (Debian-basisiert) in ein Active-Directory eingebunden werden kann: Anpassung der SSSD-Konfigurationsdateien zur Authentifizierung, Anpassung der PAM-Konfigurationsdatein zum Einbinden der Windows-Freigaben und Home-Verzeichnisse.
Leitfragen und Übungsaufgaben zu CleanCode: Der Artikel enthält eine Reihe von Leitfragen zum Verständnis der Prinzipien (SLA, SRP, SoC, Source Code Conventions) und Praktiken (Issue Tracking, Integrationstest, Lesen, Reviews), die im orangenen Grad des Clean-Code-Developers zusammengefasst sind.
Leitfragen und Übungsaufgaben zu CleanCode: Der Artikel enthält eine Reihe von Leitfragen zum Verständnis der Prinzipien (DRY, KISS, BoPO, FCol, IOSP) und Praktiken (Boy Scout, Root Cause, VCS, Refactoring, Reflection), die im roten Grad des Clean-Code-Developers zusammengefasst sind. Am Ende findet sich eine praktische Übungsaufgabe, bei der CleanCode-Prinzipien angewendet werden sollen.
Aufgaben zu den Grundlagen von ReST: Zunächst ein paar allgemeine Leitfragen zu Begriffen und Konzepten, dann zwei Fallbeispiele (API einer smarten Heizung und eines Industrieroboters), anhand derer das Grundlagenverständnis für ReST-Schnittstellen abgeprüft werden kann.
Liegen die Anforderungen des Kunden für ein Microcontroller-Projekt vor, so müssen diese nach dem Wasserfall-Modell als nächstes analysiert, mit Realisierungsoptionen versehen und als Pflichtenheft dokumentiert werden.
Wird ein Microcontroller-Projekt nach dem Wasserfall-Modell entwickelt, dann müssen zunächst die Anforderungen aus Auftraggebersicht definiert und in einem Lastenheft dokumentiert werden. Welche Aspekte sollten hierbei erfasst werden?
Was ist wirklich wichtig? Gute Informatiker*innen denken über Systemgrenzen hinaus – und sorgen sich entsprechend um eine nachhaltige Lebensweise. Der berufliche Alltag fängt mit unserem Weg ins Büro an: Wer ohne Auto ins Büro fährt, kann bis zu einer Tonne CO2 pro Jahr einsparen. Wäre es nicht an der Zeit, das nicht nur zu wissen, sondern endlich damit anzufangen?
Für die Zustandsübergänge (Transitionen) unseres CommanLineInterface-Programms müssen noch Effekte (Aktionen) erstellt werden. Dabei müssen wir eine ganze Menge umbauen, um für Typsicherheit zu sorgen.
Im nächsten Teil geht es um die objektorientierte Realisierung der Transitionen zwischen Zuständen und Menüstruktur für das Command-Line-Interfaces (State-Pattern in Java).
Für das Command-Line-Interfaces per State-Pattern müssen als zweiten Schritt die Zustandsklassen als Singleton-Instanzen per ENUM umgesetzt werden (Teil 2 der Artikelserie).
Am Beispiel eines Programms mit Kommandozeilenmenü wird das State-Pattern beispielhaft in Java implementiert – im ersten Teil geht es zunächst um den Aufbau des Patterns selbst und die Grundstruktur.
Die meisten Auszubildenden nutzen in ihren Abschlussarbeiten das „Wasserfallmodell“ basierend auf einer Grafik, die Winston W. Royce als Beschreibung einer unbefriedigenden Ausgangslage herangezogen hat. Dass er daraufhin fünf wesentliche Schritte formuliert hat, die diesem Modell hinzugefügt werden müssen, um Risiken zu minimieren, ist über die Zeit scheinbar wieder verloren gegangen. Wir versuchen uns diesen fünf Schritten über das Originaldokument und Leitfragen zu nähern.
Es soll ein Webcrawler programmiert werden, der den eigenen Internetauftritt nach dort veröffentlichten E-Mail-Adressen durchsucht. Für die betroffenen Besitzer der E-Mail-Konten sollen so Awareness-Trainings gegen Social-Engineering-Angriffe angeboten werden.
Gute Software braucht gute Dokumentation – ohne unnötigen Aufwand. Eine erste Anlaufstelle ist häufig die `Readme.md`-Datei in git-Repositorys. Aber: für wen schreibe ich die eigentlich? Was sollte, was muss da rein? Wie formatiere ich die Readme-Datei mit Markdown?
Mobilitätsdatenbank erstellen: Übungsaufgabe/Gruppenklassenarbeit, um in Kleingruppen in kürzester Zeit eine Datenbank anhand der Anforderungsbeschreibung zu Modellieren (ERD, RM, SQL-DDL)
Server-Datenbank erstellen: Übungsaufgabe/Gruppenklassenarbeit um in Kleingruppen in kürzester Zeit eine Datenbank anhand der Anforderungsbeschreibung zu Modellieren (ERD, RM, SQL-DDL)
Reguläre Ausdrücke gelten als nicht wartbar. Zu kryptisch ist ihr Aufbau. Trotzdem kann man mit etwas Übung einen Blick dafür entwickeln, warum Zeichenketten durch Muster gefunden werden oder nicht gefunden werden. Hier sind ein paar Übungsaufgaben, um den Blick zu schärfen!
Die Mustererkennung Regulärer Ausdrücke (RegEx) ermöglicht Automatisierungen an Stellen, wo Handarbeit mühsam und langwierig ist. Telefonnummern in unterschiedlichen Formaten gespeichert? In einer CSV-Datei alle Spalten in verkehrter Reihenfolge? Wo stecken im Fließtext Geldbeträge mit Nachkommastellen? Derlei Aufgaben lassen sich mit RegEx lösen – besser man kennt sie!
Delete-Statements löschen selektierte Datensätzen. Sie gehören zur DML-Sprachfamilie, lassen also die Datenstruktur (z.B. auch Indexnummern) unangetastet.
Insert-Statements sind zuständig dafür, neue Datensätze in die Tabellen einzufügen. Als Datenquelle können Literale oder SELECT-Statements dienen
Die Informationen, ob es sich bei einem Attribut um ein Schlüsselattribut handelt, ob es eingabepflichtig oder einzigartig ist: all das wird über Constraints festgelegt. Es gibt unterschiedliche Möglichkeiten, Constraints festzulegen. Einige werden hier kurz vorgestellt
Alle Datenbankmanagemensysteme verfügen über ein ähnliches Set an Datentypen. Aber leider heißen sie oft anders und haben einen geringfügig anderen Funktionsumfang. Ich habe hier versucht für die wichtigsten DBMS Namen der Standardtypen zusammenzustellen.
SQL besteht aus mehreren Teilsprachen, die sich mit der Datenbankstruktur (DDL), dem Datenbankinhalt (DML) und den Berechtigungen (DCL) beschäftigen. In diesem Artikel soll es zunächst um die Grundlagen der Strutur gehen, die in der Data Definition Language (SQL-DDL) beschrieben wird.
Grundlagenaufgaben zur Data Definition und Data Manipulation Language am Beispiel der entworfenen Let’s Meet Datenbank. Da deren Daten als SQL-Importskript vorliegen können die Aufgaben auch unmittelbar im DBMS ausprobiert werden.
Natürlich lernt man git am besten, in dem man es täglich nutzt. Wer aber die git-Integration in der IDE nutzt hat vielleicht keinen Bezug mehr zu den eigentlichen Konsolen-Befehlen des Versionscontrollsystems. Hier daher ein paar Fragen zu git, wie ich sie auch gerne in Klassenarbeiten stelle…
Ein vereinfachtes Pacman-Spiel soll objektorientiert erweitert werden. Übungsaufgaben zum Thema Objektorientierte Programmierung, Objektbeziehungen, UML-Klassendiagramm, Implementierung in Python.