Einen Rundumschlag über all meine Erfahrungen aus der Sommerprüfung
2017 gibt es in der einhundertneunten Episode des
Anwendungsentwickler-Podcasts. TL;DR Aus der Sommerprüfung 2017
nehme ich für dich mit: Als Fachinformatiker:in
Anwendungsentwicklung musst du den Code und die Technologien deines
Abschlussprojekts im Fachgespräch erklären können. Für die
Bewertung zählen außerdem ein nachvollziehbar begründetes Projekt
und dein methodisches Vorgehen, das du in der Dokumentation
verständlich beschreibst. In der Präsentation helfen passende
Bilder und ein eingeübter Screencast dabei, die Inhalte zu
vermitteln. Bereite dich auch auf Datenmodelle und SQL vor und
beschäftige dich mit den Fragen zu Sicherheit und Datenschutz, die
dein Projekt aufwirft. Kapitelmarken [00:00:00] Hinweis zur
Projektdokumentation [00:00:18] Rückblick auf die Sommerprüfung
2017 [00:01:29] Funktionale Konzepte und den eigenen Code verstehen
[00:04:45] Asynchroner Code und seine Besonderheiten [00:06:38]
REST und die Hintergründe der Schnittstelle [00:08:03] Ein
SAP-Projekt mit sehr guter Bewertung [00:09:21] Ein Backend-Dienst
als Abschlussprojekt [00:10:24] Zeiterfassung und die Gründe für
eigene Software [00:11:56] SOLID und das Liskov Substitution
Principle [00:14:28] Förmliche Anrede im Prüfungsausschuss
[00:15:17] Amortisation und plausible Kostenkurven [00:17:13]
Passende Diagrammtypen wählen [00:18:39] Schriftliche Prüfung:
Datenmodelle und SQL [00:20:34] Exceptions im Projektcode behandeln
[00:22:19] Helle Hintergründe für Code-Screenshots [00:23:10]
Lastenheft und Pflichtenheft verstehen [00:23:43] Das Layout der
Dokumentation prüfen [00:25:29] Projektverlauf und Unterlagen
verständlich beschreiben [00:27:29] Sinnvolle Auszüge im Anhang
[00:30:11] Vorlagen an das eigene Projekt anpassen [00:31:12]
Ausgangslage und Projektproblem vermitteln [00:32:37] Fachliche
Inhalte und passende Bilder in der Präsentation [00:36:45]
Screencasts für die Anwendung vorführen [00:37:53] Fachgespräch:
Mobile Apps und mögliche Alternativen [00:39:34] Dependency
Injection und Testbarkeit [00:40:26] IT-Sicherheit und Datenschutz
im Fachgespräch [00:41:22] Weiterführende Materialien und Vorlagen
Inhalt Meine allgemeinen Eindrücke Funktionale Programmierung wird
eingesetzt, aber nicht verstanden (Grundlagen der FP fehlen).
Asynchrone Programmierung wird immer wichtiger (async und await in
C#, Promises in JavaScript). REST, REST, REST! SAP kann auch cool
sein (mit Java und MVC im Frontend). Man kann auch ohne
Webanwendung eine 1 bekommen. Meine Highlights Ein Prüfling konnte
die SOLID-Prinzipien erklären. Den Ausschuss zu duzen geht gar
nicht. Lustige "Kurve" zur Visualisierung der Amortisation.
Diagramme müssen passend zur darzustellenden Information gewählt
werden (z.B. Kreis statt Balken). Schriftliche Prüfung
Datenbankmodellierung ist manchmal abenteuerlich. SQL sollte jeder
Prüfling kennen. Ist aber leider nicht so. Projektdokumentationen
Exception Handling heißt in vielen Unternehmen wohl Logging auf die
Konsole. Code auf schwarzem Hintergrund in der Dokumentation geht
gar nicht. Der Unterschied zwischen Lasten- und Pflichtenheft ist
nicht allen Prüflingen klar. Eine vernünftige Formatierung der
Dokumentation ist anscheinend nicht so wichtig (Zeilenumbruch nach
jedem Verweis, offensichtlich kein zweites Mal gelesen). "Auszug
aus" nimmt Überhand (Hightlight: Lastenheft aus drei Sätzen).
Stumpfes Abarbeiten meiner Vorlagen für die Projektdokumentation
wird leider immer häufiger. Eine dumme Liste aus Verweisen im Text
der Dokumentation reicht nicht aus. Viele Prüflinge schaffen es
nicht, ein Verständnis des zu lösenden Problems zu schaffen (z.B.
Screenshots der bisherigen Anwendung zeigen). Projektpräsentationen
Keine reine Bildershow veranstalten, sondern Inhalt transportieren!
Videos der Endergebnisse kamen sehr gut an. Häufige Fragen Was sind
die Alternativen zu hybriden Apps? Was ist Dependency Injection?
Alles rund um die IT-Sicherheit Datenschutz, Datensicherheit,
Datensicherung Literaturempfehlungen Da ich hier so ziemlich alle
erdenklichen Themen angerissen habe, kann ich mal wieder nur das
IT-Handbuch für Fachinformatiker* von Sascha Kersken empfehlen.
*(direkt beim Rheinwerk-Verlag bestellen*) Links Permalink zu
dieser Podcast-Episode RSS-Feed des Podcasts Zusammenfassung
Erfahrungen aus der Sommerprüfung 2017 Für deine Prüfung als
Fachinformatiker:in Anwendungsentwicklung habe ich Erfahrungen aus
der Sommerprüfung 2017 zusammengestellt. Sie betreffen das
Abschlussprojekt ebenso wie die schriftlichen Aufgaben und das
Fachgespräch. Den eigenen Code verstehen In den Abschlussprojekten
begegneten mir zunehmend funktionale Konzepte, etwa
Lambda-Ausdrücke sowie Streams in Java. Auch LINQ-Abfragen in C#
tauchten auf. In der damaligen schriftlichen Prüfung war
funktionale Programmierung noch kein Thema. Schau dir vor deiner
Prüfung jeden Bestandteil deines Beispielcodes an. Du musst
erklären können, wie er funktioniert und weshalb du ihn einsetzt.
Das gilt auch für generische Klassen oder Funktionen, die dein
Framework vorgibt. Bei JavaScript-Promises solltest du verstehen,
dass sie für das zukünftige Ergebnis einer asynchronen Operation
stehen. Sobald das Ergebnis vorliegt, kann eine Funktion damit
aufgerufen werden. Asynchronen Code erklären Mit asynchronem Code
kann deine Anwendung während eines längeren Vorgangs bedienbar
bleiben, etwa wenn sie eine große Datei herunterlädt. Der
Hauptthread bleibt dabei frei. Als Beispiele kamen Promises in
JavaScript und async beziehungsweise await in .NET vor; in Java
gibt es dafür unter anderem CompletableFuture. Durch Callbacks und
zeitlich versetzte Ergebnisse wird der Ablauf schwerer
vorhersehbar. async und await erleichtern es, solchen Code zu
schreiben und zu lesen. Wenn du diese Techniken einsetzt, gehört
ihr Verhalten zur Vorbereitung auf dein Fachgespräch. REST
verstehen In vielen Projekten kommunizierten
Single-Page-Applications oder hybride mobile Anwendungen über eine
REST-Schnittstelle mit dem Backend. REST steht für Representational
State Transfer und bezeichnet ein Architekturkonzept, zu dem Roy
Fielding seine Dissertation geschrieben hat. Beschäftige dich mit
den Hintergründen, damit du deine Schnittstelle fachlich erläutern
kannst. Ein passendes Projektthema wählen Ein SAP-Projekt wurde mit
einer Eins bewertet. Es verband eine moderne Weboberfläche mit
einem SAP-System im Hintergrund und zeigte das MVC-Pattern sowie
objektorientierten Code. Auch die Arbeit mit einer Datenbank war
enthalten. Bei einem SAP-Abschlussprojekt muss die eigene Leistung
beim Programmieren erkennbar sein. Bei einem Dienst, der im Backend
Aufgaben erledigte, erhielten Dokumentation und Präsentation
ebenfalls eine Eins. Das Projekt kam ohne grafische Oberfläche und
ohne Datenbank aus. Für ein solches Thema musst du dein
methodisches Vorgehen genauso nachvollziehbar zeigen, etwa mit
geeigneten Diagrammen. Zeiterfassungen kamen mehrfach als
Projektthema vor. Bei einer eigenen Software für diesen Zweck muss
nachvollziehbar sein, weshalb du sie entwickelst und welches
Standardprodukt als Alternative infrage kommt. Prüfer:innen achten
dabei auf die Gründe für dein Projekt. Für die Bewertung kommt es
darauf an, wie du dein Projekt begründest und methodisch umsetzt.
In der Dokumentation muss sich dieser Weg nachvollziehen lassen.
Fachwissen im Gespräch anwenden Ein:e Prüfungsteilnehmer:in konnte
das Liskov Substitution Principle aus den SOLID-Prinzipien erklären
und mit Polymorphie verbinden. Das Fachgespräch wurde mit einer
Eins bewertet. Das Prinzip besagt, dass eine Unterklasse überall
dort eingesetzt werden kann, wo ihre Basisklasse erwartet wird.
Dabei muss sie das erwartete Verhalten erfüllen. Problematisch ist
beispielsweise eine überschriebene Methode, die eine unerwartete
Exception wirft, weil die Unterklasse die Methode nicht umsetzen
kann. Wenn du SOLID oder Clean Code in deiner Dokumentation
erwähnst, bereite dich auf Fragen zu den fachlichen Hintergründen
vor. Dazu gehört auch, Zusammenhänge mit anderen Themen der
Objektorientierung erklären zu können. Für die förmliche
Prüfungssituation empfehle ich dir, die Mitglieder des
Prüfungsausschusses zu siezen. Das gilt auch bei einer Lehrkraft,
die du persönlich kennst. Kosten und Diagramme nachvollziehbar
darstellen Amortisation berechnen Mit einer Amortisationsrechnung
zeigst du, wann sich die Projektkosten durch Einsparungen oder
Gewinne ausgeglichen haben. Bei den beschriebenen üblichen
Kostenmodellen ergeben sich Geraden, deren Schnittpunkt diesen
Zeitpunkt zeigt. In einer Präsentation hatte die Software durch
wenige eingetragene Werte eine geschwungene Kurve gelegt. Die
Prüfungsteilnehmerin konnte deren mathematische Bedeutung nicht
erklären. Prüfe deshalb, ob die gezeichnete Kurve zu deinen Zahlen
und zum zugrunde liegenden Kostenmodell passt. Einen geeigneten
Diagrammtyp wählen Balken- oder Säulendiagramme eignen sich, um
Größenverhältnisse darzustellen. Ein Kreisdiagramm zeigt
prozentuale Anteile an einem Ganzen mit insgesamt 100 Prozent. Für
einen Ablauf oder eine Entwicklung über die Zeit brauchst du einen
passenden anderen Diagrammtyp. Lass dein:e Ausbilder:in auf deine
Diagramme schauen, wenn du Hilfe bei der Auswahl brauchst.
Datenmodelle und SQL üben Beim Korrigieren der schriftlichen
Prüfung fielen mir Lücken bei grundlegenden Aufgaben zu Datenbanken
auf. Datenmodelle und SQL waren bereits seit Jahren wiederkehrende
Prüfungsthemen. Übe, ein ER-Modell mit korrekter Syntax zu
zeichnen, und schreibe selbst SQL-Anweisungen. Mit alten Prüfungen
kannst du erkennen, welche Aufgaben regelmäßig vorkommen. Das
Beiblatt zur SQL-Syntax gehört zu den Hilfsmitteln; die Aufgaben
musst du selbst lösen können. Die Projektdokumentation sorgfältig
schreiben Fehler im Code behandeln Wenn du eine Exception abfängst,
muss dein Programm angemessen darauf reagieren. Es kann den Fehler
behandeln und mit einem sauberen Zustand w
Kommentare (0)
Melde dich an, um einen Kommentar zu schreiben.