Modulnummer

404

Letzte Aktualisierung
24. Okt. 2019
Vorgaben
ICT-Modulidentifikation
ICT-LBV ###
Modulbezeichnung

Objektbasiert programmieren nach Vorgabe (Version WPS)

Fachliteratur
Powershell
Sprache C

Modul 403

Inhalt

Prüfung Kompetenz "O"
Prüfung Kompetenz "P"
Prüfung Kompetenz "T"
Kompetenzraster für Kompetenznachweise gem. SOL


Prüfung Kompetenz "O"

(Diese Prüfung steht leider nur Lernenden der TBZ-IT zur Verfügung!)

Prüfung Kompetenz "P"

(Diese Prüfung steht leider nur Lernenden der TBZ-IT zur Verfügung!)

Prüfung Kompetenz "T"

(Diese Prüfung steht leider nur Lernenden der TBZ-IT zur Verfügung!)

Kompetenzraster für Kompetenznachweise gem. SOL

Variante SOL-Untericht (Selbst-Orientiertes-Lernen): Es müssen verschiedene Kompetenzen erreicht und nachgewiesen werden. Als Grundlage für diese Kompetenznachweise dient das folgende Kompetenzraster. Ziel ist es, die im Kompetenzraster aufgeführte Kompetenz für die verschiedenen Handlungsziele ausweisen zu können. Die Komplexität der beschriebenen Kompetenzen erhöht sich in ihrer Vollständigkeit und Komplexität von Spalte 1 (Links)  zur Spalte 3 (Rechts). (Ausnahme: Handlungsziel T - SW Testen, wo nur eine Spalte existiert.) Das Lerntandem hat die beschriebenen Kompetenzen im Verlaufe des Moduls nachzuweisen. Bewertet wird grundsätzlich nur die vom Lerntandem erbrachte Eigenleistung. Fremde Quellen sind zu kennzeichnen und zu kommentieren.

Der Lernfortschritt und die eingebrachten Nachweise sind in einem ePortfolio zu sammeln, zu strukturieren und dem Dozenten zugänglich zu machen. Die verfügbare Zeit ist mit einem geeigneten Werkzeug vorausschauend zu planen. Reflektieren Sie regelmässsig ihre Arbeit und passen sie bei Planabweichungen durch z.B. Unvorhergesehenes ihr Vorgehen sofort an. Die laufende Planung inkl. den erforderlichen Reflexionen halten Sie in einem Lernjournal auf Office365-OneDrive (Ordner M404) fest.

Bewertung: Jedes Niveau eines Handlungsziels wird wie folgt bewertet:

  • Hervorragende, zielübertreffende Lösung = 6
  • Auftrag gut erfüllt = 5
  • Auftrag teilweise und mit Vorbehalt erfüllt = 3
  • Keine Abgabe = 1

Andere Werte sind nicht vorgesehen. Die Bewertung des Handlungsziels «T» hat doppeltes Gewicht! Ihr aktueller Notenstand können Sie auf «ecolm.com» einsehen. Ihre Schlussnote KANN BIVO2014-konform und abhängig von Ihrer Unterrichtsperformance und Qualität des ePortfolio noch um +/- 20% korrigiert werden!

1. Handlungsziel «G»: Powershell Konsole, Cmdlets

Niveau G1 / Hz3.1
Tandembewertung mit Note [1|3|5|6]
Interview oder elektronischer Test
Niveau G2 / Hz4.1
Tandembewertung mit Note [1|3|5|6]
Interview
Niveau G3 / Hz4.1
Tandembewertung mit Note [1|3|5|6]
Dokument im ePortfolio
Handlungskompetenzen
Kennt die Eigenschaften und Eingabehilfen der WPS-Konsole und kann Cmdlets anwenden und die Resultate korrekt interpretieren. Kennt die Anwendung der folgenden Befehlseingaben und kann sie anwenden: Get-Help, Aliasing, Piping.
Handlungskompetenzen
Kann auf folgende Systemkomponenten mit Cmdlets zugreifen (auslesen), Methoden anwenden und Eigenschaften verändern (Method / Property): Prozesse / Service / Ordner und Dateien (abs./rel. Pfade)
Handlungskompetenzen
Im ePortfolio sind mindestens drei weitere Cmdlets dokumentiert und deren sinnvolle Anwendung in einem Programm demonstriert.
  • Wie kann ich die WPS-Konsole anpassen? Wo finde ich alle Einstellungen dazu?
  • Was sind Cmdlets? Wie werden Cmdlets ausgeführt? Was unterscheidet Cmdlets von CMD-Tools?
  • Wie formatiert WPS seine Standardausgabe? (Unterschied zu Piping?)
  • Wie lassen sich die verschiedenen Parameter von Get-Help anwenden?
  • Wie lässt sich das Help-System updaten?
  • Wie werden Anwendungsbeispiele (examples) eines gesuchten Cmdlets angezeigt?
  • Welche Aliase sind standardmässig aktiviert? Nutzen?
  • Wie erstelle ich ein eigenes Alias?
  • Wie funktioniert das Piping? Welche Elemente werden weitergereicht?
  • O1 ist bereits nachgewiesen!
  • Die 4 Objektarten (Process, Service, Ordner und Dateien) können angezeigt werden.
  • Anzeigen von sinnvollen Eigenschaften dieser vier Objektarten.
  • Verändern je einer möglichen Eigenschaft von Dateien und Ordner.
  • Anwenden der wichtigsten Methoden dieser vier Objektarten. (Anhand von Beispielen)
  • Drei weitere Cmdlets auswählen, die sinnvoll und ausführlich dokumentiert werden können. (keine Cmdlets aus G1 und G2!)
  • Zu jedem Cmdlet Zweck, Funktionsweise, Parameter und verwandte Cmdlets aufzeigen. (Umfang pro Cmdlet ca. eine A4-Seite)
  • Die praktische Anwendung der drei Cmdlets ist je in einem Programm demonstriert.

2. Handlungsziel «O»: Eigenschaften und Methoden von Objekten, Textbasierte Benutzerschnittstelle (TUI), Abstraktion

Niveau O1 / Hz3.1+4.1+4.3
Tandembewertung mit Note [1|3|5|6]
Interview oder elektronischer Test
Niveau O2 / Hz2.1
Tandembewertung mit Note [1|3|5|6]
Präsentation von einem WPS-Skript
Niveau O3 / Hz2.1
Tandembewertung mit Note [1|3|5|6]
Präsentation von zwei weiteren WPS-Skripten
Handlungskompetenzen
Der Verwendungszweck von Objekten, ihren Eigenschaften und Methoden können korrekt erklärt werden. (OOP versus Prozedural). Kennt die korrekte Notation, um die Eigenschaften von Objekten auszulesen oder zu verändern, bzw. um die Methoden auszuführen. Objekte können in Variablen abgespeichert und verwendet werden.
Handlungskompetenzen
Eine einfache, textbasierte Benutzerschnittstelle (TUI) kann erstellt werden, z.B. Menüsteuerung. Der Benutzer kann im Programm über die Benutzerschnittstelle verschiedene Daten (Text, Datum/Zeit, Zahlen) eingeben und damit Berechnungen (String- , Zeit-/Datumsmanipulation, Mathefunktionen) ausführen lassen.
Handlungskompetenzen
Im ePortfolio sind mindestens zwei TUI-Implementationen dokumentiert und deren sinnvolle Anwendung demonstriert. Mindestens eine Abstraktion (Funktion) wurde erstellt und in einer sinnvollen Aufgabenstellung implementiert.
  • Welcher Unterschied besteht zwischen objektorientiertem Programmieren (OOP) und prozeduralem Programmieren (M403)?
  • Was versteht man beim OOP unter einem Objekt?
  • Wozu sind Methoden eines Objektes da?
  • Wozu sind Eigenschaften eines Objektes da?
  • Wie werden Eigenschaften eines Objektes ausgelesen oder verändert (falls möglich)?
  • Wie führt man Methoden eines Objektes aus?
  • Wie speichert man ein Objekt in eine Variable? Welchen Datentyp hat die Variable dann?
  • Wie wird auf ein abgespeichertes Objekt (und dessen Eigenschaften und Methoden) zugegriffen?
  • Wie kann der Benutzer mittels textbasierter Benutzerschnittstelle (TUI) einfach geführt und zu verschiedenen Wahlmöglichkeiten angeleitet werden?
  • Wie ist der programmtechnische Aufbau und Ablauf eines TUI?
  • Was geschieht bei Fehleingaben (falsche Wahl)?
  • Worauf muss ich beim Programmmieren achten, wenn ich verschiedene Datenarten (Text, Zeit/Datum, Zahl, ...) einlese und mit entsprechenden Methoden (String-,Zeit-/Datumsmanipulationen Methoden aus der Mathebibliothek) bearbeite?
  • Was geschieht mit der vorgesehenen Berechnung (=Methodenaufrufe), wenn ich falsche Eingabewerte eingebe?
  • Sind drei eigene und für Sie neue Aufgabenstellungen vorhanden und sind sie Niveau-3-gerecht? (Klare Benutzerführung, Fehlermeldung bei Falschwahl, anschliessende Umsetzung der Auswahl)
  • Hat es eine Niveau-Steigerung oder unterschiedliche Schwerpunkte bei den zwei Aufgabenstellung?
  • Mindestens zwei von drei Aufgabenstellungen sind TUIs und es sind alle drei im ePortfolio dokumentiert.
  • Wurde bei allen drei Aufgabenstellungen eine Abstraktion (Funktion, eine separate Klasse) in den Anwendungen erstellt und implementiert?
  • Die drei Programme/Anwendungen laufen im «happy path» fehlerfrei.

3. Handlungsziel «P»: Ablaufstruktur objektbasiert implementieren

Niveau P1 / Hz4.2
Tandembewertung mit Note [1|3|5|6]
Präsentation von einem WPS-Skript
Niveau P2 / Hz2.2+4.2
Tandembewertung mit Note [1|3|5|6]
Präsentation von einem weiteren WPS-Skript
Niveau P3 / Hz5.1
Tandembewertung mit Note [1|3|5|6]
Drei weitere WPS-Skripte im ePortfolio
Handlungskompetenzen
Die realisierten Programme setzen Methoden von Standardobjekten ein / Formatierte Anzeige von Daten (Datum, Währung, ..) / Berechnungen mit Bibliotheksfunktionen (z.B. siehe Mathematik-Bibliothek) / Iteration über Objekte (z.B. Foreach) (SYS BET: Formatierte Ausgabe von Objektsammlungen via CmdLets, z.B. format-list)
Handlungskompetenzen
Die realisierten Programme verfügen über eine interaktive Ein-/Ausgabe und einen strukturierten Aufbau. Ablaufstruktur ist mit geeignetem Diagramm dargestellt. Benutzereingaben werden auf ihre Gültigkeit überprüft und Falscheingaben korrekt behandelt. Benutzte Objekte werden korrekt initialisiert, gespeichert und weiterverwendet.
Handlungskompetenzen
Im ePortfolio sind mindestens drei neue, eigene Aufgabenstellung1 implementiert. Der Code ist gemäss Guidelines formatiert und weist erklärende Inline-Kommentare zu den wichtigsten Programmelementen, Header und Codeblöcke auf.
  • Welche Standardobjekte werden von der Programmiersprache zur Verfügung gestellt (z.B. String als Objekt)? Überblick verschafft?
  • Wie ist die korrekte Verwendung der Standardmethoden (z.B. String-Manipulation)?
  • Wie werden verschiedene Daten(-typen) korrekt formatiert und angezeigt? (Z.B. Wochentag eines Datums)
  • Welche (Standard-)Methoden stellt die Mathe-Bibliothek zur Verfügung und wie werden die wichtigsten verwendet (Mindestens drei)?
  • Welche Funktionen stellt die Mathe-Bibliothek zur Verfügung und wie werden die wichtigsten verwendet?
  • Was ist eine Iteration? Welche Kontrollstrukturen gibt es zu Iterationen?
  • Wie wird über eine Objektsammlung iteriert?
  • Sind einzelne sinnvolle Aufgabenstellungen formuliert, um folgende Programmiertechniken zu demonstrieren?
  • Ist der strukturierte Aufbau mit einem Struktogramm dokumentiert?
  • Werden die geforderten Benutzereingaben validiert?
  • Gibt es im Falle von Falscheingaben Fehlermeldungen und kann man wiederholt eine Eingabe machen ohne dass das Programm abbricht? (= robuste Eingabe)
  • Alle verwendeten Objekte vorab deklariert und initialisiert? Ist eine Iteration implementiert?
  • Die Implementation besteht mindestens aus einer Startklasse und einer Hauptklasse.
  • Welche Implementierungs- und Formatierungsvorgaben gibt es und wer formuliert solche? (Guidelines)
  • Sind drei neue, eigene Aufgabenstellungen implementiert und sind sie mit den andern Kompetenzfeldern G3, O3 und T1 kombiniert?
  • Ist die Aufgabenstellung Niveau-3-gerecht und hat es eine Niveau-Steigerung oder unterschiedliche Schwerpunkte? (Eingabe von verschiedenen Daten / Objekten, Umsetzung einer sinnvollen Logik mit verschachtelten Strukturen und Objektmanipulation, Ausgabe von verarbeiteten Daten und Objekten)
  • Ist der Programmcode korrekt eingerückt (d.h. die Ablaufstruktur wird sichtbar)?
  • Ist das Programm (und Funktionen) mit einem sinnvollen Kommentar versehen? (Header, Version, Autor, Funktionalität, ...)
  • Sind Codeabsätze mit einem Kommentartitel versehen?
  • Erklärt der Kommentar das WAS und WARUM?

4. Handlungsziel «T»: SW Testen

Niveau T1 / Hz6.1+6.2
Tandembewertung mit Note [1|3|5|6] (Doppelte Gewichtung)
Dokumentation von drei Produkten im ePortfolio
Handlungskompetenzen
Anwendung und Einsatz von Whitebox- bzw. Blackbox-Tests sind bekannt. Das Testprotokoll ist mittels Testgruppen gegliedert und die Testfälle mit abdeckenden Testdaten versehen. Positiv-/Negativtestfälle, Aequivalenzklassen) Die Testspezifikation wird mittels eines Beschriebs (und des Protokolls) definiert. Dazu ist im ePortfolio für mindestens drei eigene Aufgabenstellungen folgendes dokumentiert: Jeweils ein systematischer Funktions-/Systemtest spezifiziert und erfolgreich ausgeführt.
  • Was ist der Unterschied zwischen statischen und dynamischen Testverfahren?
  • Was versteht man unter Whitebox- und Blackbox-Tests? Unterschiede?
  • Welche Bestandteile weist eine Testspezifikation / Testdefinition / Testverfahren auf?
  • Was beinhaltet der Testbeschrieb und was ist der Zweck dieses Beschriebs?
  • Was verstehen Sie unter Testabdeckung und wie wird eine solche sinnvoll umgesetzt?
  • Wozu bildet man Testgruppen und Aequivalenzklassen in einem Testprotokoll?
  • Welche Angaben / Ergebnisse sind nötig, um einen Testabschluss korrekt auszuführen (Sign off)?
  • Ist die Aufgabenstellung mit den andern Kompetenzfeldern G3, O3 und I3 kombiniert?
  • Wird die Umsetzung der drei Aufgabenstellungen mittels der Testspezifikation auf dessen Qualität geprüft? (Abdeckung)
  • Beinhaltet die Testspezifikation eine klare Beschreibung des Testverfahrens?
  • Sind verschiedene Testgruppen vorhanden? Wie haben sie die Testgruppen gegliedert?
  • Sind gültige und ungültige Testdaten/Testwerte sowie Grenzwerte in der Testspezifikation vorhanden?
  • Wurde das Protokoll von einer Drittperson ausgeführt?
  • Wurde das Testergebnis klar dokumentiert?
  • Ist das Testergebnis erfolgreich?