Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/03095.jsonl.gz/917

226A Klassenbasiert (ohne Vererbung) implementieren
- Modul
- Klassenbasiert (ohne Vererbung) implementieren
- Kompetenz
- Anforderungen in ein Klassendesign ohne Vererbung umsetzen und mit einer objektorientierten Programmiersprache implementieren, dokumentieren und testen.
- Handlungsziele
-
1 Ein SW-Design mit Klassen nachvollziehen und mit eigenen fachlichen und technischen Klassen ergänzen. Handlungsnotwendige Kenntnisse: 1 Kennt Abstraktionsmittel wie Beziehungen, Klassen, Attribute und Methoden, mit denen die reale Welt im Design abgebildet wird. 2 Versteht die Klasse als abstrakten Datentyp (ADT). 3 Kennt die Beziehungstypen wie Assoziation, Aggregation, Komposition zwischen Klassen. 4 Kennt die Bedeutung von Fachklassen und Klassen, die für die Implementation der Anwendung nötig sind und das klassenbasierte Design vervollständigen (technische Klassen). 5 Versteht das Zusammenspiel mehrerer Klassen in einer Anwendung und wendet das Prinzip der Delegation an. 2 Die Notation dynamischer und statischer Strukturen einer Anwendung mittels Unified Modeling Language (UML) nachvollziehen. Handlungsnotwendige Kenntnisse: 1 Kennt Diagrammnotationen zur Darstellung von Klassen und Objekten. 2 Kennt Diagrammnotationen zur Darstellung des Meldungsaustausches zwischen Objekten. 3 Klassenbasiertes Design implementieren. Handlungsnotwendige Kenntnisse: 1 Kennt eine objektorientierte Sprache, welche für die Umsetzung des klassenbasierten Designs geeignet ist. 2 Kann das Prinzip des Information Hiding und der Kapselung beim Entwurf von Klassen anwenden. 3 Versteht den Unterschied zwischen dem Programm zur Kompilationszeit (Klassen) und zur Laufzeit (sich referenzierende Objekte). 4 Für funktionale Einheiten einer Anwendung Testfälle implementieren, um die Anwendung automatisch zu prüfen. Handlungsnotwendige Kenntnisse: 1 Kennt Vorgehen um für Einheiten Testfälle mittels geeigneter Grenzwerte oder Pfadprüfungen zu finden und festzulegen. 2 Kennt die zur Verfügung gestellten Mittel einer Testinfrastruktur um die Testfälle zu implementieren. 3 Kennt Mittel, die Abdeckung der Tests zu messen. 5 Klassen der Anwendung systematisch, unter Verwendung der hierfür vorgesehenen Infrastruktur, dokumentieren. Handlungsnotwendige Kenntnisse: 1 Kennt die Möglichkeiten der Dokumentationsinfrastruktur und weiss wie die Programmeinheiten gemäss Vorgaben zu dokumentieren sind. 2 Kennt den Nutzen von Api-Dokumentationen und weiss wie diese erzeugt werden.
- Kompetenzfeld
- Application Engineering
- Objekt
- Applikation mit 3-5 fachlichen Klassen (z.B. Karteikasten, Bibliothek, Adressverwaltung usw.).
- Niveau
- 2
- Voraussetzung
- Grundfertigkeiten im Umgang mit Programmierstrukturen.
- Anzahl Lektionen
- 40
- Anerkennung
- Eidg. Fähigkeitszeugnis
|Titel||LBV Modul 226A-1 - 1 Elemente - Lerndokumentation / Protokoll / Portfolio|
|Institution||TBZ Technische Berufsschule Zürich|
|Übersicht||Zentral ist das Durcharbeiten von Aufgabenstellungen und Projektarbeiten bezogen auf einen Kompetenzraster. In diesem wird festgehalten, welche Lernprodukte zur Erlangung der entsprechenden Kompetenzen führen. In einem Portfolio wird die Kompetenzentwicklung dokumentiert ebenso ist der Lern- und Entwicklungsprozess festgehalten. Die Lehrperson begleitet dabei den Lernenden durch mehrere Lerngespräche.|
|Ergänzung||In einem ersten Lerngespräch weisst die Lehrperson auf noch vorhandene fachliche Lücken hin und empfiehlt Unterstützungsmassnahmen damit die nötigen Voraussetzungen gegeben sind.|
|Teil||1|
|Gewichtung||100%|
|Richtzeit (Empfehlung)||40|
|Element-Beschreibung||Der einzelne Lernende hat die erlangten Kompetenzen im Verlaufe des Modules nachzuweisen. Folgende Formen sind für den Nachweis einer Kompetenz denkbar: In einem Fachgespäch zeigt der Lernende, dass er über die Kompetenz verfügt. Der Lernende zeigt die Kompetenz in Form eines Produktes. Der Lernende hält seine Erkenntnisse in einem Bericht fest.

Der persönliche Lernfortschritt und die erbrachten Nachweise sind in einem Portfolio zu sammeln, zugänglich zu machen und in einem Kompetenzjournal festzuhalten.
|Hilfsmittel||Unterlagen, Tutorien, Bücher, Internet|
|Bewertung||Durch den Kompetenzraster sind die zu bewertenden Kompetenzen festgelegt, darin ist die momentane Lernperformanze ersichtlicht|
|Praxisbezug||Bildungsplan Applikationsentwicklung

A1.4/B1.2/B1.5/B2.2/B4.6/B1.5
Ablaufdatum: Kein Ablaufdatum
|Titel||LBV Modul 226A-2 - 2 Elemente - Präsentation von Arbeitsergebnissen, Schriftliche Einzelprüfung / Schriftlicher Test|
|Institution||gibb Gewerblich-Industrielle Berufsschule Bern|
|Übersicht||Zweiteilige Leistungsbeurteilung mit Kompetenzraster und schriftlichem Test|
|Ergänzung|
|Teil||1|
|Gewichtung||50%|
|Richtzeit (Empfehlung)||10|
|Element-Beschreibung||Das Kompetenzraster enthält zu jedem Handlungsziel eine Reihe von konkreten Kompetenzen. Die Lernenden sammeln laufend Belege für die Erreichung der Kompetenzen und lassen diese durch die Lehrperson abnehmen. Die Abnahme erfolgt in Form eines kurzen Fachgesprächs mit der/dem Lernenden. Dabei soll die/der Lernende insbesondere den Weg, welcher zur Erlangung der Kompetenz zurückgelegt wurde, aufzeigen. Belege sind alle von den Lernenden erstellten Artefakte. Die Lehrperson sammelt die Belege in geeigneter Form.|
|Hilfsmittel||Im Rahmen des Fachgesprächs verwenden die Lernenden die von ihnen gesammelten Belege.|
|Bewertung||Die Kompetenzen im Kompetenzraster sind in Grundkompetenzen und in erweiterte Kompetenzen aufgeteilt. Zur Erlangung der Note 4.0 müssen alle Grundkompetenzen erreicht werden. Jede zusätzliche Kompetenz aus der Menge der erweiterten Kompetenzen führt zu einer um eine Viertelnote besseren Bewertung. Pro fehlende Grundkompetenz wird eine Viertelnote von der Note 4.0 abgezogen. Fehlende Grundkompetenzen können mit erweiterten Kompetenzen kompensiert werden.|
|Praxisbezug||Die Kompetenzen sind direkt aus den Handlungszielen abgeleitet und beziehen sich somit auf Handlungen in der Praxis.|
|Teil||2|
|Gewichtung||50%|
|Richtzeit (Empfehlung)||2|
|Element-Beschreibung||Die Prüfung umfasst 4 bis 6 Aufgaben. Als Basis dient ein Codebeispiel mit ca. 4 bis 5 Klassen und 1 bis zwei Seiten Code. Das Codebeispiel muss nicht eine vollständige Anwendung umfassen. Es ist aber in sich abgeschlossen, d.h. es kann fehlerfrei kompiliert werden. Es werden analytische Fragen (Zeichnen von Diagrammen zum Codebeispiel), Entwurfsfragen (z.B. Bestimmen von Testwerten) und Programmierfragen (z.B. Programmieren einer Methode auf Grund von Anforderungen) gestellt. Der zu programmierende Code ist auf 10 bis 20 Zeilen beschränkt. Zusätzlich behandelt eine der Aufgaben Grundlagenwissen (Wissensfragen).|
|Hilfsmittel||Eine von den Lernenden selbst erstellt Zusammenfassung im Umfang von zwei A4-Seiten (1Blatt).

Je nach Gegebenheiten des Lernortes entweder das offiziell im Unterricht verwendete Nachschlagewerk (z.B. Java-Buch) oder im Unterricht verwendete Unterlagen.
|Bewertung||Jede Aufgabe wird mit einer vorgegebenen Anzahl Punkte bewertet.

Der Bewertungsmassstab ist linear: Note = 5 / maximale Punktzahl * erreichte Punktzahl + 1
|Praxisbezug||Der Praxisbezug wird durch das Codebeispiel hergestellt.

Die analytischen und Entwurfsfragen entsprechen Fragestellugen, welche so in der Praxis auch vorkommen.
Die Programmierfragen setzen das in der Praxis unerlässliche Beherrschen der Programmiersprache voraus.
Ablaufdatum: Kein Ablaufdatum
|Titel||LBV Modul 226A-3 – 2 Elemente – Schriftliche Einzelprüfung, Praktische Umsetzungsarbeit|
|Institution||CPLN Centre professionnel du Littoral neuchâtelois|
|Übersicht||Überprüfung der Handlungsziele des gesamten Moduls.|
|Ergänzung||Die schriftlichen Einzelprüfungen erlauben, die Handlungsziele 1 bis 5 gemäss Lehrplan zu überprüfen.|
|Teil||1|
|Gewichtung||35%|
|Richtzeit (Empfehlung)||1|
|Element-Beschreibung||Schriftliche Einzelprüfung in Form von offenen Fragen zu bedeutenden Elementen des Moduls, namentlich der Handlungsziele 1 und 4 (Erstellen von UML-Diagrammen und Testverfahren aufgrund eines spezifischen Bedürfnisses; Überprüfung der Implementierung von Grundelementen der objektorientierten Programmierung).|
|Hilfsmittel||Keine|
|Bewertung||Lineare Notenberechnung (erreichte Punktzahl/max. Punktzahl * 5) + 1|
|Praxisbezug||Geprüfte Elemente anhand von konkreten praktischen Beispielen.|
|Teil||2|
|Gewichtung||65%|
|Richtzeit (Empfehlung)||2|
|Element-Beschreibung||Praktische Umsetzungsarbeit anhand von bedeutenden Elementen des Moduls, namentlich der Handlungsziele 2, 3 und 5 (Implementierung oder Veränderung von Klassen mit Hilfe einer Programmiersprache auf der Basis von UML-Diagrammen; Überprüfung der Implementierung von Grundelementen der objektorientierten Programmierung).|
|Hilfsmittel||Persönliche Notizen

Die Übungen des Moduls (je nach Kontext der Übungen)
Kursunterlagen und Bücher (je nach Kontext der Übungen)
Kein Internet
|Bewertung||Lineare Notenberechnung (erreichte Punktzahl/max. Punktzahl * 5) + 1|
|Praxisbezug||Geprüfte Elemente anhand von konkreten praktischen Beispielen.|
Ablaufdatum: Kein Ablaufdatum
|Titel||LBV Modul 226A-4 – 1 Element – Praktische Umsetzungsarbeit|
|Institution||CPNV Centre professionel du Nord vaudois|
|Übersicht||Die Lernenden erhalten ein UML-Modell, sie schreiben ein Programm zur Implementierung dieses Modells.|
|Ergänzung|
|Teil||1|
|Gewichtung||100%|
|Richtzeit (Empfehlung)||4|
|Element-Beschreibung||Die Lernenden erhalten ein UML-Modell, das ein Klassendiagramm und zwei Sequenzdiagramme enthält. Sie schreiben ein Programm zur Implementierung dieses Modells.

Der Code muss kommentiert werden unter Einhaltung der Syntax eines Werkzeugs zur automatischen Erzeugung von Dokumentationen. Die Lernenden verwenden dieses Werkzeug, um eine Dokumentation im HTML-Format zu erstellen.
|Hilfsmittel||Hilfsmittel Integrierte Entwicklungsumgebung

Persönliche Notizen
Während des Trimesters gemachte Übungen
|Bewertung||Einhaltung der Kodierungsrichtlinien

Konformes Programmverhalten
Fehlerbehandlung
Vollständige Dokumentation
|Praxisbezug||UML verstehen und umsetzen können

Systematisches Testen eingegebener Daten
Dokumentierung des Codes im Hinblick auf eine künftige Wiederbenutzung durch Dritte
Ablaufdatum: Kein Ablaufdatum
|Titel||LBV Modul 226A-5 - 3 Elemente - Schriftliche Einzelprüfung / Schriftlicher Test, Schriftliche Einzelprüfung / Schriftlicher Test, Praktische Umsetzungsarbeit|
|Institution||BZZ Bildungszentrum Zürichsee|
|Übersicht||Diese LBV behandelt den Teil der OOP, der sich um Objekte und deren Zusammenspiel (z.B. Delegation) kümmert. Es wird das Verständnis der Begriffe Objekt, Klasse, Beziehung, Instanz, Referenz, Klassen- und Sequenzdiagramm usw. überprüft. (Das Thema Vererbung wird in dieser LBV nicht behandelt.) Das Wissen wird durch 2 schriftliche Test geprüft. In einer praktischen Arbeit wird gegen Ende des Moduls die Umsetzung in einer OO-Sprache überprüft.|
|Ergänzung|
|Teil||1|
|Gewichtung||25%|
|Richtzeit (Empfehlung)||1|
|Element-Beschreibung||Zu den Themen

Klasse und Objekt, Klassendiagramm, Implementierung, Instanz, Konstruktor und Referenz, Objekterzeugung
werden 4 bis 6 Fragen der Stufen K1 bis K3 gestellt.
Mögliche Fragestellungen sind:
- Umsetzung von Code in Klassendiagramm und umgekehrt (formal korrekte Darstellung der Diagramme nach UML-Notation mit Attributen und Methoden )
- Skizzieren von Objektdiagramm anhand von Code (inkl. Wertzuweisung, Objektnamen)
- Skizze der Speicherbelegung bei Objekt-Instanziierung
- Codeteile ergänzen (z.B. kaskadierte Konstruktoren) oder interpretieren (z.B. Aufruf von bestimmten Methoden)
|Hilfsmittel||Schreibzeug|
|Bewertung||Je nach Komplexität der konkreten Frage wird eine angemessene Punktzahl festgelegt.

Die Note wird gemäss der Formel [erreichte Punktzahl / max. Punktzahl] * 5 + 1 festgelegt.
|Praxisbezug||OO-Code bedingt oft, dass ein Entwurf in Form von Klassen- und/oder Sequenzdiagramm vorliegen. Das Übersetzen von Diagramm in Code und vice versa stellt eine essentielle Fähigkeit dar.

Ebenso ist der Umgang mit Referenzvariable und Instanzierung eine grundlegende Fähigkeit. Dazu muss der theoretische Hintergrund bekannt sein.
|Teil||2|
|Gewichtung||25%|
|Richtzeit (Empfehlung)||1|
|Element-Beschreibung||Zu den Themen

Klasse, Attribut und Parameter, Methode, API, Kommunikation der Objekte, Sequenzdiagramm, Referenzen übergeben, Beziehungen, Beziehungsarten, UML-Diagramme
werden 4 bis 6 Fragen der Stufen K1 bis K3 gestellt.
Mögliche Fragestellungen sind:
- Anhand einer einfachen Beschreibung drei bis fünf Klassen entwerfen und die Beziehung festlegen (Art, Kardinalität)
- Unterschied von Attribut und Parameter (in der Nutzung im Code) aufzeigen
- sinnvolle Anwendung von statischen Methoden und Variablen aufzeigen
- Skizzieren eines Sequenzdiagramms aus bestehendem Code
- Umgang mit API (z.B. nach Methoden suchen)
- Erklären wie ein- und zweiseitige Beziehungen umgesetzt werden (Referenzübergabe in Konstruktor oder durch Methode)
- Beispiele von Assoziation, Komposition, Aggregation aufzeigen
- Darstellen von Beziehungen im Klassendiagramm
|Hilfsmittel||Schreibzeug|
|Bewertung||Je nach Komplexität der konkreten Frage wird eine angemessene Punktzahl festgelegt.

Die Note wird gemäss der Formel [erreichte Punktzahl / max. Punktzahl] * 5 + 1 festgelegt.
|Praxisbezug||OOP basiert darauf, dass viele (kleine) Komponenten durch geeignete Zusammenarbeit ein grosses Ganzes ergeben. Das Verständnis für Referenzen und Beziehungen sowie die Nutzung von entsprechenden Methoden bildet hier die Basis. Die Suche von passenden Methoden erfolgt dabei über eine Beschreibung (API) der Schnittstelle der Klassen.

Für die fachlich korrekte Umsetzung bedarf es eines Entwurfs in Form von UML-Diagrammen. Die Interpretation und Umsetzung in entsprechenden Code gehört zu den essentiellen Fähigkeiten.
|Teil||3|
|Gewichtung||50%|
|Richtzeit (Empfehlung)||2|
|Element-Beschreibung||In 4 klar abgegrenzten Fragestellungen wird die Umsetzung in einer OO-Sprache überprüft.

Die Fragestellungen sind so zu wählen, dass der Schwierigkeitsgrad von leicht bis schwer abgedeckt wird.
Mögliche Fragestellungen sind:
- Aus bestehendem Code ein Klassendiagramm skizzieren
- An Hand eines Klassendiagramms den Code erstellen
- An Hand einer textuellen Beschreibung eine Klasse implementieren, wobei zuerst das Klassendiagramm zu skizzieren ist (auf eine Klasse begrenzen)
- An Hand eines Sequenzdiagramms den Code erstellen
- Aus bestehendem Code einen Teil als Sequenzdiagramm aufskizzieren
|Hilfsmittel||Computer mit Entwicklungsumgebung (z.B. Eclipse)

Auszug aus der API mit den benötigten Klassen
Merkblätter und eigene Übungen
|Bewertung||Je nach Komplexität der konkreten Frage wird eine angemessene Punktzahl festgelegt.

Die Note wird gemäss der Formel [erreichte Punktzahl / max. Punktzahl] * 5 + 1 festgelegt.
|Praxisbezug||Für die fachlich korrekte Umsetzung bedarf es eines Entwurfs in Form von UML-Diagrammen. Die Interpretation und Umsetzung in entsprechenden Code gehört zu den essentiellen Fähigkeiten.|
Ablaufdatum: Kein Ablaufdatum