Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
job:fiae [2014-12-16 09:54] stefan |
job:fiae [2015-11-21 12:05] stefan |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Ausbildung zum Fachinformatiker Anwendungsentwicklung ====== | ====== Ausbildung zum Fachinformatiker Anwendungsentwicklung ====== | ||
+ | |||
+ | Hallo auf meiner Wiki-Seite rund um die Ausbildung zum Fachinformatiker für Anwendungsentwicklung. Ich bin gerade dabei, diese Inhalte auf die neue Website zu migrieren: | ||
+ | |||
+ | [Fachinformatiker Anwendungsentwicklung | Hinweise und Tipps zur Ausbildung und IHK-Abschlussprüfung](http://fachinformatiker-anwendungsentwicklung.net/ "Fachinformatiker Anwendungsentwicklung | Hinweise und Tipps zur Ausbildung und IHK-Abschlussprüfung") | ||
+ | |||
+ | Einige Inhalte könnt ihr euch auch in meinem Podcast anhören: [Anwendungsentwickler-Podcast](http://anwendungsentwicklerpodcast.de/ "Anwendungsentwickler-Podcast"). | ||
+ | |||
+ | <HTML><a href="http://anwendungsentwicklerpodcast.de/" title="Anwendungsentwickler-Podcast anhören"><img src="http://public.macke.it/Abbildungen/AnwendungsentwicklerPodcastAnhoeren.jpg" alt="Anwendungsentwickler-Podcast anhören" /></a><br/></HTML> | ||
+ | |||
===== Projektantrag ===== | ===== Projektantrag ===== | ||
==== Hinweise zur Prüfung von Projektanträgen ==== | ==== Hinweise zur Prüfung von Projektanträgen ==== | ||
- | * Projektbegründung | + | * [Meine Checkliste zur Prüfung von Projektanträgen](http://fachinformatiker-anwendungsentwicklung.net/2015/01/10/meine-checkliste-zur-pruefung-von-projektantraegen/) |
- | * was ist der wirtschaftliche Nutzen? | + | |
- | * wird eine Kalkulation/Amortisationsrechnung durchgeführt? | + | |
- | * Projektplanung | + | |
- | * logischer Aufbau der zeitlichen Projektplanung | + | |
- | * sinnvolles Verhältnis von Entwurf zu Implementierung | + | |
- | * Dokumentation in Zeitplanung? | + | |
- | * Implementierung | + | |
- | * welche Form hat das Programm (Webanwendung, Client mit GUI)? | + | |
- | * welche Sprache/DB wird verwendet? | + | |
- | * wie wird getestet? | + | |
===== Projektdokumentation ===== | ===== Projektdokumentation ===== | ||
- | ==== Vorlage ==== | + | Hier habe ich meine erwarteten Inhalte der Projektdokumentation zusammengefasst: [[http://fachinformatiker-anwendungsentwicklung.net/2015/01/17/inhalte-der-projektdokumentation/|Inhalte der Projektdokumentation]] |
- | Unter http://f.macke.it/LaTeXVorlageFIAE kann man sich meine LaTeX-Vorlage für die Dokumentation zur betrieblichen Projektarbeit mit einer Vorstrukturierung und vielen Beispielinhalten herunterladen. | + | |
- | ==== Anmerkungen ==== | ||
- | * //kursive// Punkte sind optional bzw. nur bei Bedarf zu erstellen | ||
- | * die Reihenfolge der Punkte ist nicht fix, es können auch mehrere Punkte zusammengefasst werden | ||
- | * eine "sehr gute" Dokumentation... | ||
- | * erfüllt alle unten angegebenen Punkte perfekt | ||
- | * geht aber auch noch darüber hinaus, enthält also ein besonders umfangreiches Projekt mit viel Eigenleistung und außergewöhnlichem Inhalt | ||
- | * ist fehlerfrei hinsichtlich Rechtschreibung/Grammatik/Layout/Verzeichnissen/Verweisen/Literaturangaben etc. | ||
* Beispiele für Projektdokumentationen | * Beispiele für Projektdokumentationen | ||
* [[http://www.pruefungsausschuss.de/ProjektDokus.shtml]] | * [[http://www.pruefungsausschuss.de/ProjektDokus.shtml]] | ||
- | * [[http://www.it-themenportal.de/suicidal/dl_engine/index.php?subcat=7]] | ||
* Bewertungsbögen zur Dokumentation | * Bewertungsbögen zur Dokumentation | ||
* {{:fiaebewertungdokuihkkoeln.pdf|Bewertungsbogen der IHK Köln}} | * {{:fiaebewertungdokuihkkoeln.pdf|Bewertungsbogen der IHK Köln}} | ||
Zeile 37: | Zeile 27: | ||
* {{:ka_merkblattprojektarbeit.pdf|Merkblatt für die Projektarbeit der IHK Oldenburg}} ([[http://ihk-oldenburg.de/download/ka_merkblattprojektarbeit.pdf|online]]) | * {{:ka_merkblattprojektarbeit.pdf|Merkblatt für die Projektarbeit der IHK Oldenburg}} ([[http://ihk-oldenburg.de/download/ka_merkblattprojektarbeit.pdf|online]]) | ||
- | ==== Inhalte ==== | + | ==== Vorlage ==== |
- | * //Formblatt der entsprechenden IHK// | + | Unter http://f.macke.it/LaTeXVorlageFIAE kann man sich meine LaTeX-Vorlage für die Dokumentation zur betrieblichen Projektarbeit mit einer Vorstrukturierung und vielen Beispielinhalten herunterladen. |
- | * Deckblatt mit Informationen zum Projekt | + | |
- | * Titel des Projekts | + | |
- | * Name, Kontaktdaten, Geburtsdatum, Ausbildungsberuf des Auszubildenden | + | |
- | * Name, Kontaktdaten des Ausbildungsbetriebs | + | |
- | * Verzeichnisse (Inhalt, Abbildungen, Tabellen, Abkürzungen, Quellen (!), Anhang, //Listings//) | + | |
- | * Einleitung | + | |
- | * Projektumfeld: Ausbildungsbetrieb, Auftraggeber/Kunde etc. | + | |
- | * Projektziel: Was soll erreicht werden? Worum geht es eigentlich? | + | |
- | * Projektbegründung: Warum ist das Projekt sinnvoll? Was ist die Motivation hinter dem Projekt? | + | |
- | * Projektschnittstellen: Mit welchen anderen Systemen interagiert die Anwendung? Wer sind die Benutzer der Anwendung? | + | |
- | * //Projektabgrenzung//: Was ist explizit nicht Teil des Projekts (insb. bei Teilprojekten) | + | |
- | * Projektplanung | + | |
- | * Projektphasen mit detaillierter Zeitplanung: Beschreibung/Begründung des gewählten Vorgehensmodells | + | |
- | * Ressourcenplanung: Was wird an Ressourcen benötigt (z.B. Hardware, IDE, Betriebssystem)? Gibt es Einschränkungen? | + | |
- | * Kostenplanung/-kalkulation: Was kostet das Projekt? Mögliche Kosten: Entwicklung, Einführung/Schulung, Wartung | + | |
- | * //Make-or-buy-Entscheidung// | + | |
- | * Amortisationsrechnung: Ab wann rentiert sich das Projekt? Mögliche Einsparungen: Lizenzen, Arbeitszeitersparnis, Usability, Korrektheit. Break-Even-Punkt grafisch verdeutlichen (Graphen mit Schnittpunkten) | + | |
- | * nicht-monetärer Nutzen/Nutzwertanalyse: z.B. Vorher-/Nachher-Vergleich anhand eines Wirtschaftlichkeitskoeffizienten | + | |
- | * wichtig: immer den Maßstab für die Gewichtung (warum sind die Kriterien unterschiedlich wichtig?) und die Bewertung (z.B. Punkte von 1 bis 5: was bedeutet das?) angeben | + | |
- | * //Pflichtenheft// erstellen | + | |
- | * Beschreibung des Programms, Ziel der Entwicklung | + | |
- | * Funktionen des Programms: Muss/Soll/Wunsch, Benutzerrollen | + | |
- | * Umgebung: Zielplattform (Programmiersprache, DB, Client, Server, Software, Hardware), Benutzer/Zielgruppen | + | |
- | * Datenstruktur: z.B. ERM, Tabellenmodell, textuelle Beschreibung der Entitäten/Attribute | + | |
- | * Programmlogik: z.B. Flusspläne, UML-Diagramme | + | |
- | * Benutzeroberfläche: Gestaltung, Menüführung | + | |
- | * Qualitätsmerkmale: z.B. Anforderungen hinsichtlich Performance, Usability, Effizienz etc. (ISO 9126) | + | |
- | * Tests: Testszenarien, Benutzer-/Entwicklertests | + | |
- | * Projektdurchführung: Was wurde genau während des Projekts durch den Auszubildenden gemacht? Wie ist er vorgegangen? Hat er z.B. bestimmte Vorgehensmodelle verwendet? | + | |
- | * Ist-Analyse: Wie ist die bisherige Situation (z.B. bestehende Programme, Wünsche der Mitarbeiter)? Was gilt es zu erstellen/verbessern? Ggfs. Erstellen eines Lastenhefts. | + | |
- | * Design/Entwurf | + | |
- | * Funktionen des Programms: z.B. mit Use-Case-/Aktivitätsdiagramm, EPK | + | |
- | * Datenbank (ERM, Tabellenmodell) bzw. wenn keine DB verwendet Darstellung der eingesetzten Datenstrukturen (z.B. XML, CSV o.ä.) | + | |
- | * Geschäftslogik: z.B. Komponenten-/Klassen-/Sequenz-/Datenflussdiagramm, Architekturplanung, EPK | + | |
- | * Benutzerschnittstelle: z.B. GUI, Webinterface, Entwurf/Gestaltung der Oberflächen/Masken, Corporate Identity, Einbindung in andere Anwendungen | + | |
- | * Implementierung/Realisierung: z.B. DB anlegen, Programmierung (interessante Funktionen, Quelltextbeispiele), Screenshots der Oberfläche | + | |
- | * Test/Qualitätssicherung: z.B. Test-Reports, Unit-Tests, Code-Reviews | + | |
- | * Dokumentation: Projektdokumentation, Entwickler- (z.B. JavaDoc) und Benutzerdokumentation ("Handbuch") | + | |
- | * Einführung: z.B. Installation, Benutzerschulung | + | |
- | * Retrospektive: Wie ist das Projekt rückblickend zu bewerten? | + | |
- | * //Begründung von Änderungen zum Projektantrag// | + | |
- | * Soll-/Ist-Vergleich: Wurde das Ziel erreicht? Wurden die Kosten/Zeiten eingehalten? | + | |
- | * Ausblick: Erweiterungsmöglichkeiten, Anschlussprojekte, Akzeptanz der Benutzer | + | |
- | * Fazit | + | |
- | * Erklärung des Auszubildenden | + | |
- | * //Anhänge// | + | |
- | * Lasten-/Pflichtenheft | + | |
- | * Datenbankentwurf | + | |
- | * UML-Diagramme, EPKs, Flusspläne, PAPs | + | |
- | * Entwürfe/Screenshots der Oberflächen | + | |
- | * Dokumentation (Entwickler/Benutzer) | + | |
- | * Glossar | + | |
- | * Quelltexte | + | |
==== Bewertung ==== | ==== Bewertung ==== | ||
- | Die folgenden Kriterien sind meine persönliche Auswahl. Lediglich die Oberpunkte sind eine Vorgabe der IHK. | + | [[http://fachinformatiker-anwendungsentwicklung.net/kriterien-fuer-die-bewertung-der-projektdokumentation/|Kriterien für die Bewertung der Projektdokumentation]] |
- | + | ||
- | * Formale und sprachliche Gestaltung (15%) | + | |
- | * Wurde der mögliche Umfang für den Inhalt (15 Seiten) eingehalten und ausgeschöpft? | + | |
- | * Sind die Seitenzahlen/Kopf-/Fußzeilen sinnvoll formatiert (z.B. Seitenzahlen für Verzeichnisse römisch groß, für Inhalt arabisch, für Anhang römisch klein)? | + | |
- | * Sind qualitative Quellenangaben vorhanden? | + | |
- | * Sind wenige Rechtschreib-/Grammatik-/Zeichensetzungsfehler vorhanden? | + | |
- | * Ist der Text im Blocksatz gesetzt und füllt alle Seiten aus (keine größeren Freiräume im Text, z.B. freie halbe Seiten unter einer Abbildung)? | + | |
- | * Sind alle wichtigen inhaltlichen Elemente vorhanden (Einleitung, Fazit usw.)? | + | |
- | * Haben alle Anhänge/Abbildungen/Tabellen/Quellenangabe einen entsprechenden Verweis/Erläuterung im Text? Sind alle Elemente, auf die verwiesen wird, tatsächlich vorhanden? | + | |
- | * Beschreibung des Auftrags - Verständlichkeit, Nachvollziehbarkeit, Kundenbezug (20%) | + | |
- | * Ist das Projektziel klar und deutlich erkennbar? | + | |
- | * Wurden die Schnittstellen des Programms erläutert (Benutzer, andere Systeme)? | + | |
- | * Wurde eine detaillierte Projektplanung für die 70h und die verwendeten Ressourcen durchgeführt? | + | |
- | * Wurde eine Ist-/Schwachstellenanalyse durchgeführt? | + | |
- | * Wurden die Anforderungen an die Software methodisch aufgenommen? Ist ein Fachkonzept/Lastenheft vorhanden und methodisch aufgebaut? Gibt es Use-Cases? | + | |
- | * Wurde eine Wirtschaftlichkeitsanalyse mit Amortisationsrechnung durchgeführt? Ist die Kalkulation fachlich korrekt (Inhalte, Berechnung)? | + | |
- | * Wurde der nicht-monetäre Nutzen mit einer Nutzwertanalyse verdeutlicht? | + | |
- | * Konkretisierung des Auftrags - Technische und kaufmännische Nachvollziehbarkeit (50%) | + | |
- | * Weist das Projekt eine angemessene fachliche/technische Tiefe für einen Anwendungsentwickler auf? | + | |
- | * Wurden die Anforderungen an die Software methodisch spezifiziert/verfeinert? Ist ein Fein-/Sollkonzept/Pflichtenheft vorhanden und methodisch aufgebaut? Gibt es Aktivitätsdiagramme? | + | |
- | * Ist ein methodisches Vorgehen erkennbar? Welcher Entwicklungsprozess wurde eingesetzt? | + | |
- | * Wurden komplexe Arbeitsabläufe mit sinnvollen Methoden erläutert (z.B. Flusspläne, EPKs, Aktivitätsdiagramm)? | + | |
- | * Wurden alle getroffenen Entscheidungen sinnvoll begründet? | + | |
- | * Ist die Auswahl der Programmiersprache/Datenbank plausibel dargelegt? | + | |
- | * Wurden alle eingesetzten Ressourcen beschrieben? | + | |
- | * Wurde die detaillierte Projektplanung auf ihre Einhaltung hin untersucht und wurden Abweichungen plausibel begründet (Retrospektive)? | + | |
- | * Wurde eine Datenbank erstellt? Ist sie sinnvoll dokumentiert (ERM)? Ist sie normalisiert? | + | |
- | * Wurde die Architektur der Software begründet und sinnvoll dokumentiert? Wurde ein Komponenten-/Klassendiagramm erstellt? | + | |
- | * Wurde die Implementierung interessanter Funktionen näher erläutert? | + | |
- | * Wie und wann wurde getestet? Wurden Tests automatisiert? Wie wurden die Testfälle ausgewählt? Wurden die Tests und die Ergebnisse dokumentiert? | + | |
- | * Wurde das Produkt abgenommen? Von wem? Welche Kriterien waren dabei entscheidend? | + | |
- | * War das Projekt ein Erfolg? Warum (nicht)? Gibt es mögliche Erweiterungen (Ausblick)? | + | |
- | * Angemessene Betriebs- und Kundendokumentation (15%) | + | |
- | * Wurde eine Benutzerdokumentation erstellt? | + | |
- | * Wurde eine API-/Entwicklerdokumentation erstellt? Wie? | + | |
- | * Gibt es sinnvolle/interessante kommentierte Auszüge aus dem Quelltext? | + | |
- | * Sind Screenshots der fertigen Anwendung vorhanden und erläutert? | + | |
===== Projektpräsentation ===== | ===== Projektpräsentation ===== | ||
- | ==== Foliendesign ==== | + | [[http://fachinformatiker-anwendungsentwicklung.net/inhalte-der-projektpraesentation/|Inhalte der Projektpräsentation]] |
- | * die meisten Prüfungsausschüsse werden wohl den "klassischen" Aufbau der Folien erwarten (vgl. [[http://forum.fachinformatiker.de/abschlussprojekte/134050-abschlusspraesentation-im-stil-presentation-zen.html]]), also | + | |
- | * Kopf-/Fußzeile mit Datum, Titel etc. | + | |
- | * ständig sichtbares Inhaltsverzeichnis (als "Fortschrittsbalken") | + | |
- | * Stichpunkte als Bullet Points auf den Folien | + | |
- | * nicht zuviel Text | + | |
- | * da die Präsentation recht kurz ist, sollte man sich auf das Wesentliche/Interessante des Projekts konzentrieren | + | |
- | * Folien sollten der Corporate Identity des Ausbildungsbetriebs folgen | + | |
- | * alle verwendeten Grafiken/Inhalte müssen deutlich erkennbar/lesbar sein | + | |
- | * sehr interessant ist das fertige Produkt (Live-Demo, Screencast) | + | |
- | + | ||
- | ==== Inhalte ==== | + | |
- | * Titelfolie mit Projektbezeichnung, Daten des Auszubildenden und des Ausbildungsbetriebs | + | |
- | * Inhaltsverzeichnis/Agenda | + | |
- | * kurze Beschreibung der Ausgangssituation (Ausbildungsbetrieb, Problemstellung, Ist-Analyse) | + | |
- | * Projektziel (Soll-Konzept, Qualitätskriterien) | + | |
- | * Projektbegründung: Wirtschaftlichkeitsbetrachtung (Amortisationsrechnung, auch grafisch), Nutzwertanalyse | + | |
- | * Überblick über die Anwendung (Architektur, Einbindung in andere Systeme) | + | |
- | * Implementierung (z.B. ERM, UML, Quelltexte, Screenshots) | + | |
- | * Grafiken zur Erklärung bestimmter Sachverhalte | + | |
- | * ERM | + | |
- | * Use-Case-Diagramm | + | |
- | * Architektur der Anwendung | + | |
- | * aufgetretene Probleme und Lösungen dafür -> Lessons Learned | + | |
- | * Fazit, Ausblick | + | |
- | * Schlussfolie | + | |
- | + | ||
- | ==== Bewertung ==== | + | |
- | * Fachkenntnisse (20%) | + | |
- | * Rhetorik (10%) | + | |
- | * Medieneinsatz (10%) | + | |
- | * Begrüßung und Einstieg in die Präsentation (10%) | + | |
- | * Ergebnis des Fachgesprächs (50%) | + | |
==== Häufige Fragen im Fachgespräch ==== | ==== Häufige Fragen im Fachgespräch ==== | ||
Zeile 202: | Zeile 70: | ||
=== Themen der letzten Prüfungen === | === Themen der letzten Prüfungen === | ||
- | * Winter 2014 | ||
- | * GH1 | ||
- | - Pflichten-/Lastenheft, Personaleinsatzplan/Gantt-Diagramm vervollständigen, Use-Case-Diagramm erstellen | ||
- | - relationales Datenmodell erstellen (Fragebogenverwaltung) | ||
- | - Algorithmus zur Berechnung der prozentualen Mietbelastung von Einkommensgruppen erstellen (2-dimensionales Array) | ||
- | - Algorithmus zum Sortieren eines 2-dimensionalen Arrays (Bubble-Sort) erstellen | ||
- | - SQL-Abfragen auf bestehendes Tabellenmodell | ||
- | * GH2 | ||
- | - Anbgebotsvergleich/Nutzwertanalyse erstellen, Fragen zu Vertragsstörungen | ||
- | - SSDs, Englisch übersetzen, RAID, Speicherplatz berechnen | ||
- | - VLANs: statisch/dynamisch, tagged/untagged, Planskizze vervollständigen, VPNs | ||
- | - SMARTe Ziele, Netzplan vervollständigen | ||
- | - Tabellenmodell erweitern, SQL-Abfragen erstellen | ||
- | * Sommer 2014 | ||
- | * GH1 | ||
- | - Netzplan vervollständigen und Begriffe erläutern, Cloud Computing | ||
- | - EPK in Aktivitätsdiagramm umwandeln | ||
- | - Algorithmus zur Ausgabe einer Rechnung erstellen | ||
- | - Algorithmus zur Codierung eines QR-Codes erstellen | ||
- | - SQL-Abfragen erstellen | ||
- | * GH2 | ||
- | - Unternehmensfusion, Finanzierungsvergleich, Innenfinanzierung | ||
- | - Servervirtualisierung (Hypervisor, Hosted), Stromkosten berechnen, IPv6, ping | ||
- | - Subnetting, DHCP, DNS, VPN, IPSec, symmetische vs. asymmetrische Verschlüsselung | ||
- | - Organisationsformen anhand Organigramm erläutern, Anwendungssysteme (ERP, CRM usw.) erläutern | ||
- | - SQL-Abfragen erstellen | ||
- | * Sommer 2013 | ||
- | * GH1 | ||
- | - Projektmanagement-Begriffe erklären, Datenschutz, CASE-Tools | ||
- | - UML-Sequenzdiagramm zu einer Online-Bestellung erstellen, Klassendiagramm erläutern | ||
- | - relationales Tabellenmodell in dritter Normalform zu einem Angebot erstellen | ||
- | - Algorithmus zur Prüfzifferberechnung und Quersummenbildung erstellen | ||
- | - SQL-Abfragen auf vorgegebener Tabellenstruktur | ||
- | * GH2 | ||
- | - Aufbauorganisation erläutern, EPK erstellen | ||
- | - Amortisationsrechnung, Marketingaktionen | ||
- | - Hardware vergleichen, WLAN-Konfiguration, strukturierte Verkabelung | ||
- | - VLANs, Subnetting, VPN, englischen Text verstehen | ||
- | - relationales Tabellenmodell vervollständigen, Datentypen für Spalten ermitteln, SQL-Abfragen | ||
- | * Winter 2012 | ||
- | * GH1 | ||
- | - Softwareentwicklungsmodelle erläutern, Netzplan erläutern | ||
- | - HTML vervollständigen und erläutern | ||
- | - Algorithmus zur Erstellung eines Reports aus einer einfachen Tabellen erstellen | ||
- | - ER-Modell zu Produkten erstellen, Schlüssel identifizieren | ||
- | - SQL-Abfragen auf vorgegebener Tabellenstruktur | ||
- | * GH2 | ||
- | - Lasten-/Pflichtenheft erläutern, Kalkulationsrechnung, Rechnungswesen | ||
- | - WLAN-Kameras, Hardwareauswahl, englischen Text verstehen, Datenmenge für Videos berechnen | ||
- | - Power over Ethernet, Algorithmus zur Suche in einer Datenbank | ||
- | - Geschäftsbrief zum Verzug erstellen | ||
- | - BYOD, Persönlichkeitsrechte bei Fotos, Kostenvergleichsrechnung | ||
- | * Sommer 2012 | ||
- | * GH1 | ||
- | - Use-Case-Diagramm, Algorithmus in Pseudocode/PAP/Struktogramm | ||
- | - Zustandsdiagramm, Beziehungstypen zwischen Klassen | ||
- | - relationales Tabellenmodell in dritter Normalform | ||
- | - Algorithmus zur XML-Verarbeitung in Pseudocode/PAP/Struktogramm | ||
- | - SQL auf bestehenden Tabellen | ||
- | * GH2 | ||
- | - Cloud Computing, SaaS, SLA | ||
- | - Public/Private/Hybrid Clouds, SAN/NAS, Sicherheit in der Cloud | ||
- | - IPSec, VPN, Firewall, IPv6-Adressen kürzen/erzeugen | ||
- | - Kostenvergleich zweier Investitionen, Online-Marketingmaßnahmen | ||
- | - Algorithmus in Struktogramm, Datentypen, Use-Case-Diagramm | ||
- | * Winter 2011 | ||
- | * GH1 | ||
- | - Algorithmen in Pseudocode/PAP/Struktogramm | ||
- | - Aktivitätsdiagramm | ||
- | - ERM | ||
- | - Algorithmus in Pseudocode/PAP/Struktogramm | ||
- | - SQL auf bestehenden Tabellen, Trigger/Replikation erläutern | ||
- | * GH2 | ||
- | - Projektphasen, Aufgaben Projektleiter, Projektorganisation, Netzplan | ||
- | - Vor-/Nachteile von Virtualisierung, Lieferverzug erläutern, Fehler in Lieferschein/Rechnung finden, Gewährleistung/Mangel erläutern | ||
- | - USV, NAS, RAID | ||
- | - RFID, Paritäten ermitteln, Werks-/Dienstvertrag, SLA | ||
- | - Übersetzung Englisch/Deutsch, TCO, Kostenvergleich zweier Angebote | ||
- | * Sommer 2011 | ||
- | * GH2 | ||
- | - Projektphasen, ABC-Kundenanalyse, Nutzwertanalyse, Softwarequalitätskriterien | ||
- | - Aktivitätsdiagramm | ||
- | - Algorithmus in Pseudocode/PAP/Struktogramm | ||
- | - relationales Tabellenmodell in dritter Normalform | ||
- | - SQL auf bestehenden Tabellen | ||
- | * GH2 | ||
- | - Geschäftsmodelle, Zielgruppenanalyse, Organisationsstruktur | ||
- | - Kommunikationspolitik | ||
- | - Kostenrechnung | ||
- | - Verkabelung, DHCP, private IP-Adressbereiche, Übersetzung Englisch/Deutsch | ||
- | - Algorithmus in Pseudocode/PAP/Struktogramm | ||
- | * Winter 2010 | ||
- | * GH1 | ||
- | - Datenschutz, Corporate Design, Barrierefreiheit, symmetrische/asymmetrische Verschlüsselung | ||
- | - Algorithmus in Pseudocode/PAP/Struktogramm | ||
- | - Zustandsdiagramm | ||
- | - relationales Tabellenmodell in dritter Normalform | ||
- | - SQL auf bestehenden Tabellen | ||
- | * GH2 | ||
- | - Web-Begriffe erläutern, Unicode, CSS, Domainwahl, Datenschutz | ||
- | - Beschaffungskanäle, Ausschreibung, AGB, Angebotsvergleich, Lizenzen | ||
- | - Servertypen, Hardware | ||
- | - Subnetting, Übersetzung Englisch/Deutsch, Berechnung notwendiger RAM, Vorteile von Thin Clients | ||
- | - IT-Security-Policy, VPN, USV, Übersetzung Englisch/Deutsch | ||
- | - SQL auf bestehenden Tabellen | ||
- | * Sommer 2010 | ||
- | * GH1 | ||
- | - Kickoff-Sitzung, Vorteile internes Projekt, Projektdokumentation, Testverfahren | ||
- | - Use-Case-Diagramm, Sequenzdiagramm | ||
- | - relationales Tabellenmodell in dritter Normalform | ||
- | - SQL auf bestehenden Tabellen | ||
- | - Algorithmus in Pseudocode/PAP/Struktogramm | ||
- | * GH2 | ||
- | - relationales Tabellenmodell in dritter Normalform | ||
- | - VLANs, OSI-Modell, Übersetzung Englisch/Deutsch | ||
- | - VPN, Tunnel, IPSec, RAID | ||
- | - Verzeichnissynchronisation, Leistungsaufnahme berechnen, Datensicherung | ||
- | - Authentifizierung, Verschlüsselung, ASCII-Verschlüsselung | ||
- | - Onlinebeschaffung, Rahmenvertrag, Kostenberechnung | ||
- | |||
- | === Aktuelles (2012) === | ||
- | * Windows 8 | ||
- | * 3D-Drucker | ||
- | * HTML5 + CSS3 | ||
- | * Tablets und mobile Geräte | ||
- | * LTE | ||
- | * NoSQL | ||
- | * UEFI | ||
- | |||
- | === Der Betrieb und sein Umfeld === | ||
- | * Vorteile eines betrieblichen Vorschlagwesens | ||
- | * Beispiele zur Optimierung der Arbeitsabläufe | ||
- | * Methoden zur Mitarbeitermotivation | ||
- | * Standortfaktoren bewerten | ||
- | * Marktformen bestimmen | ||
- | * Angebotskalkulation | ||
- | * (Arbeits-)Verträge | ||
- | * Stellenbeschreibung | ||
- | * Lohnabrechnung | ||
- | * Gesellschaftsformen | ||
- | * Aufbau- und Ablauforganisation | ||
- | * Linien-/Matrixorganisation kennen (Vor-/Nachteile)und Organigramm erstellen | ||
- | * Umweltschutz | ||
- | * Green IT | ||
- | * Workflow | ||
- | * Zentralisierung/Dezentralisierung | ||
- | * Unfallverhütung | ||
- | |||
- | == Ergonomie == | ||
- | * Vorgaben bzgl. Arbeitsplatzergonomie kennen | ||
- | * ergonomische Anforderungen an Bildschirme, Drucker, Stühle, Tische | ||
- | * Warum reicht die Einhaltung der Ergonomie nicht aus, um körperliche Beschwerden auszuschließen? Was kann man zusätzlich tun? | ||
- | * Nutzen ergonomischer Arbeitsplätze für das Unternehmen | ||
- | * Ergonomierichtlinien beim Gestalten von Oberflächen für Software | ||
- | |||
- | == Marketing == | ||
- | * Vor-/Nachteile von Absatzwegen, Distributionspolitik | ||
- | * Fachbegriffe kennen | ||
- | * Marktvolumen, Absatz, Marktanalyse etc. | ||
- | * B2B, B2C, B2G | ||
- | * Umfrage, Beobachtung, Experiment, Testmarkt, Marktprognose, Panelerhebung | ||
- | * Marktdurchdringung, Marktentwicklung, Markterschließung, Produktinnovation, Produktentwicklung, Diversifikation | ||
- | * Optimierung des Kundenservice | ||
- | * mögliche Quellen zur Marktforschung | ||
- | * Ziele von Werbung | ||
- | * Phasen des Produktlebenszyklus | ||
- | * Beispiele für niedrigen/hohen Markteinstiegspreis nennen | ||
- | * Outsourcing (organisatorisch) vs. Offshoring (geografisch) | ||
- | |||
- | == Rechtliches == | ||
- | * Datenschutz vs. Datensicherheit | ||
- | * Urheberrecht | ||
- | * von Patenten abgrenzen | ||
- | * Open Source | ||
- | * Unfreier Versand | ||
- | * Fernabsatzverträge | ||
- | * Nachbesserung und Nachlieferung | ||
- | * Gewährleistung vs. Garantie | ||
- | * Mutterschutz, JAschG | ||
- | * Betriebsrat | ||
- | * Rechte und Pflichten | ||
- | * rechtliche Voraussetzungen | ||
- | * Kündigung | ||
- | * gesetzliche/vertragliche Fristen | ||
- | * notwendige Unterlagen | ||
- | * Werks- vs. Dienstvertrag | ||
- | * Inhalte von SLAs | ||
- | * Arbeitsschutz | ||
- | * Pflichten des Arbeitgebers bei Arbeitsunfällen | ||
- | * Arbeitsvertrag | ||
- | * Inhalte, Rechte/Pflichten | ||
- | * kollektives Arbeitsrecht | ||
- | * Inhalte der Personalakte | ||
- | * Rechtsformen von Unternehmen (AG, GmbH, KG usw.) | ||
- | * Voraussetzungen, Haftung, Eigenkapital, Firma etc. | ||
- | * verschiedene Versicherungen (z.B. Haftpflicht, Gebäudeversicherung usw.) | ||
- | |||
- | == Soft-Skills == | ||
- | * Präsentieren | ||
- | * Vorteile des Medieneinsatzes bei Präsentationen | ||
- | * Aufbau von Präsentationen | ||
- | * Aufmerksamkeit der Zuhörer gewinnen | ||
- | * Ideenfindung/Kreativitätstechniken | ||
- | * Brainstorming, Mindmap | ||
- | |||
- | === Betriebssysteme === | ||
- | * Unterschied Unix/Linux | ||
- | * Dateisysteme (FAT, NTFS, ext) | ||
- | * Vor-/Nachteile Linux/Windows | ||
- | * Samba/SMB | ||
- | * Linux | ||
- | * wichtige Befehle kennen (ls, chmod, chown, ps, grep, mount) | ||
- | * Dateirechtesystem erklären (ugw + rwx) | ||
- | * gängige Linux-Distributionen nennen (Debian, Suse, Red Hat, Ubuntu etc.) | ||
- | * Wie wird die Hardware angesteuert? | ||
- | * Mounten von Laufwerken | ||
- | * Windows 7 | ||
- | * Android, iOS, Windows Phone | ||
- | |||
- | === Datenbanken === | ||
- | * unterschiedliche Architekturen (Client/Server, Dateibasiert) | ||
- | * unterschiedliche Ansätze (relational, Netzwerk, hierarchisch, objektorientiert) | ||
- | * Eigenschaften von relationalen Datenbanken | ||
- | * ORM | ||
- | * Begriffe kennen und erläutern | ||
- | * Redundanz, Primär-/Fremdschlüssel, Datensatz, INSERT | ||
- | * referentielle Integrität | ||
- | * Maßnahmen bei Löschoperationen (Constraints): CASCADE, DENY/RESTRICT, SET NULL | ||
- | * Replikation erläutern | ||
- | * Trigger erklären | ||
- | * SQL-Abfragen | ||
- | * CRUD (Create, Read, Update, Delete) | ||
- | * verschiedene Joins (INNER, OUTER LEFT/RIGHT) | ||
- | * Arbeitschritte beim DB-Design | ||
- | * ER-Modelle erstellen | ||
- | * Tabellenmodelle erstellen | ||
- | * ACID-Prinzipien für Transaktionen kennen und erläutern (atomicity, consistency, isolation, durability) | ||
- | * Normalformen erläutern ("the key, the whole key, and nothing but the key") | ||
- | * Normalisierung von Datenbanken bis zur 3. Normalform durchführen | ||
- | * Modellierung von Beziehungen (1:1, 1:n, m:n) | ||
- | * mögliche Beispiele: Benutzer/Login (1:1), Benutzer/Bestellung (1:n), Benutzer/Benutzergruppe (m:n) | ||
- | * mögliche Aufgaben | ||
- | * vorhandenes Tabellenmodell normalisieren | ||
- | * gültige Datensätze zu einem gegebenen Schema ermitteln können | ||
- | |||
- | === Englisch === | ||
- | * Texte verstehen, übersetzen und analysieren | ||
- | |||
- | === Hardware === | ||
- | * Prozessor/CPU, Kühlung | ||
- | * von-Neumann-Architektur | ||
- | * ALU | ||
- | * RAM-Arten und Unterschiede | ||
- | * Eigenschaften/Unterscheidung/Vor-/Nachteile SAN und NAS | ||
- | * Unterschied Stack/Heap | ||
- | * Abkürzungen und Bedeutung kennen: sATA, AGP, PCI, ISA, IDE, SCSI, SAS, USB, RAID, TFT, TCO, CRT, USV, SSD | ||
- | * RAID 0, 1, 5, 10 usw., JBOD erklären | ||
- | * Bluetooth, Firewire, USB | ||
- | * WLAN | ||
- | * Hotspot, Ad-Hoc, Repeater | ||
- | * Sicherheit (WPA, WEP, MAC-Kontrolle) | ||
- | * BIOS, CMOS, Ablauf eines Systemstarts, Sinn von BIOS-Updates | ||
- | * UEFI | ||
- | * IDE: Master/Slave, Jumper | ||
- | * Firmware, Flash-Speicher | ||
- | * Arten von Druckern und Scannern | ||
- | * Thin Clients/Fat Clients | ||
- | * Bezugsquellen für Hardwarelieferanten | ||
- | * Server-/Desktop-/Anwendungsvirtualisierung | ||
- | * mögliche Arten der Virtualisierung | ||
- | * Hardwareunterstützung | ||
- | * Vor-/Nachteile der einzelnen Verfahren | ||
- | * mögliche Aufgaben | ||
- | * passende Komponenten für einen (Datenbank-/File-)Server oder Workstation (z.B. CAD, Office) auswählen | ||
- | * PCs für bestimmte Anforderungen aus Komponenten zusammenstellen | ||
- | * Green IT | ||
- | * Smartphones | ||
- | * Cloud Computing (Auswirkungen auf Softwareentwicklung, Hardware, Geschäftsmodelle) | ||
- | * Platform/Infrastructure/Software as a Service | ||
- | * USB 3.0 | ||
- | * USV | ||
- | * Typen von USVen (z.B. VFI) | ||
- | * benötigte Scheinleistung für vorgegebene Hardware ermitteln | ||
- | * Netzstörungen, vor denen USVen schützen | ||
- | * Hot Swapping, Hot Spare erläutern | ||
- | * Arbeitsweise von RFID erläutern | ||
- | * Vor-/Nachteile von SSDs | ||
- | |||
- | === Internet === | ||
- | * Aufbau von URLs/URIs | ||
- | * Beispiele für Browser/Webserver/Web-Programmiersprachen/(serverseitige) Scriptsprachen | ||
- | * wichtige Protokolle und Ports (HTTP, FTP, SMTP, POP3, IMAP, telnet, NNTP, SMB) | ||
- | * Vor-/Nachteile wichtiger Dateiformate (PDF, Bildformate) | ||
- | * Ablauf beim Aufruf einer Website (Kommunikation Client/Server) und Verarbeitung bei PHP | ||
- | * Sicherheit | ||
- | * Hacker, Cracker, Script-Kiddies | ||
- | * Phishing, Sniffing, Spoofing, Man-in-the-Middle | ||
- | * SQL-Injection, XSS, CSRF, Session Hijacking, DoS, DDoS | ||
- | * Viren, Würmer, Trojaner, Hoax, Spyware, Dialer | ||
- | * Verbreitung von Viren/Würmer/Trojaner erläutern | ||
- | |||
- | == Websites == | ||
- | * Vorteile von Internetseiten als Werbemittel | ||
- | * grundlegende Kenntnisse von HTML, CSS, PHP | ||
- | * ergonomische Gestaltung von Websites | ||
- | * CMS | ||
- | * Mindestinhalte des Impressums | ||
- | * virtuelle Hosts erläutern | ||
- | * Möglichkeiten zur Unterscheidung von Websites auf einem Host: IP, Hostname, Port | ||
- | * Funktion von .htaccess erläutern | ||
- | * dynamische Websites (CGI, ASP, JSP) | ||
- | * Applet und Servlet unterscheiden | ||
- | * Web 2.0 | ||
- | * AJAX | ||
- | * Vor-/Nachteile | ||
- | * Funktionsweise | ||
- | * Social Networks, Wikis, Blogs, Twitter | ||
- | * REST | ||
- | * RIA | ||
- | * JavaScript | ||
- | * jQuery und andere Frameworks | ||
- | * HTML5, CSS3 | ||
- | * Audio-/Videoeinbettung/-unterstützung | ||
- | * Anforderungen durch Mobilgeräte | ||
- | |||
- | === Mathematik und Rechnungswesen === | ||
- | * Ermittlung von Umsatz/Provision/Deckungsbeitrag/Kosten/Gewinn | ||
- | * Zahlungsverzug | ||
- | * Definition, Gründe, Konsequenzen | ||
- | * Rechtsgrundlage/Definition für Zahlungsverzug | ||
- | * Möglichkeiten zum Umgang mit Liquiditätsengpässen | ||
- | * Gemeinkosten auf Kostenstellen verteilen | ||
- | * Kosten für eine Produkteinführung berechnen | ||
- | * Break-Even-Point ermitteln | ||
- | * Gewinn ermitteln | ||
- | * Vor-/Nachteile Kauf/Leasing/Miete | ||
- | * Umrechnungen in Zahlensystemen (Dual, Dezimal, Oktal, Hexadezimal) | ||
- | * Profit-Center-Organisation | ||
- | * Handelskalkulation | ||
- | * Betriebsabrechnungsbogen | ||
- | * Fehler in Lieferschein/Rechnung finden | ||
- | * gesetzliche Gewährleistungsfrist ermitteln | ||
- | * Umgang mit Mängeln | ||
- | * TCO erläutern | ||
- | |||
- | === Multimedia === | ||
- | * Datenraten von verschiedenen Laufwerken (Festplatte, CD, DVD) | ||
- | * Audiobearbeitung | ||
- | * Sampling(-rate, -tiefe) | ||
- | * Bildbearbeitung | ||
- | * Auflösung | ||
- | * JPEG, TIF, MPEG | ||
- | * OCR | ||
- | * Unterschied Raster-/Vektorgrafik | ||
- | * Zeichensätze kennen und Unterschiede aufzeigen | ||
- | * ASCII kennen und erklären | ||
- | * Kryptographie | ||
- | * symmetrisch/asymmetrisch | ||
- | * PKI, BSI | ||
- | * Was ist eine Prüfsumme/Hash? | ||
- | * ausgewählte Verschlüsselungsverfahren kennen | ||
- | * digitale Signatur | ||
- | * Kompression | ||
- | * verlustbehaftet vs. verlustfrei | ||
- | * ZIP | ||
- | * Huffman-Code | ||
- | * Längs-/Querparität berechnen | ||
- | * XML | ||
- | * Wohlgeformtheit, Validität | ||
- | * Parser, Serialisierer | ||
- | * SAX, DOM | ||
- | * vs. HTML, CSV etc. | ||
- | * DTD, Schema, RelaxNG, Schematron | ||
- | * XSLT, XSL-FO | ||
- | * mögliche Aufgaben | ||
- | * Dateigrößen von Bildern/Videos berechnen | ||
- | * 3D-/HD-TV, HDMI, BlueRay | ||
- | |||
- | === Netzwerk und Administration === | ||
- | * Methoden zur Namensauflösung erklären (DNS, hosts) | ||
- | * DNS-Konfiguration | ||
- | * DNS, DHCP, WINS, ARP, Subnetting, Topologien | ||
- | * Ablauf beim DHCP-Lease (Discover -> Offer -> Request -> Acknowledge) | ||
- | * ping (ICMP) | ||
- | * MAC vs. IP | ||
- | * IPv4, IPv6, A/B/C-Klassennetze | ||
- | * öffentliche/private IP-Adressen | ||
- | * Protokolle mit Port-Nummern (HTTP, HTTPS, FTP, SMTP, POP3, IMAP, DNS, SMB, Telnet, SSH) | ||
- | * Routing | ||
- | * Firewall | ||
- | * Packet Inspection, Port-Forwarding | ||
- | * Proxy-Server (Squid) | ||
- | * dedicated, circuit level | ||
- | * Sicherheitsmaßnahmen | ||
- | * Vorteile von SSH | ||
- | * Unterschied HTTP/HTTPS | ||
- | * Struktur eines Class-C-Netzes erläutern | ||
- | * Funktionsweise und Vorteile von VPN beschreiben | ||
- | * Protokolle/Ports, Verschlüsselungsverfahren | ||
- | * ISDN, ADSL, SDSL, UMTS | ||
- | * Datenraten, Technik | ||
- | * FDDI (Lichtwelle)/Ethernet beschreiben | ||
- | * Netzwerkhardware (Hub, Bridge, Switch, Router) mit Zuordnung zu ISO-Schichten | ||
- | * Switches/Hubs unterscheiden | ||
- | * Serverarten nennen (z.B. Print-/Fileserver) | ||
- | * Aufbau, Vor-/Nachteile Terminalserver erläutern | ||
- | * Clustering, Load Balancing | ||
- | * Round Robin | ||
- | * RDP/ICA unterscheiden | ||
- | * ISO/OSI-Modell (7 Schichten) im Vergleich zum TCP/IP-Modell (4 Schichten) | ||
- | * Backup | ||
- | * Medien nennen und erläutern | ||
- | * inkrementell/differentiell/voll | ||
- | * Generationenprinzip, Großvater/Vater/Sohn | ||
- | * hot/cold | ||
- | * Wie erkennt die Software, welche Daten zu sichern sind? | ||
- | * schützenswerte Daten | ||
- | * mögliche Gründe für Datenverluste auf Servern erläutern und Gegenmaßnahmen vorschlagen | ||
- | * Folgen von Datenverlust, Auswirkungen von Datenverlusten für das Unternehmen erläutern | ||
- | * Maßnahmen der Mitarbeiter zur Vermeidung von Datenverlusten erläutern | ||
- | * Client/Server vs. P2P | ||
- | * File Sharing | ||
- | * primäre/sekundäre/tertiäre Verkabelung | ||
- | * Kabeltypen | ||
- | * Simplex, Halb-/Vollduplex | ||
- | * 10/100/1000Base-T | ||
- | * CAT5e/6/7 etc. | ||
- | * CSMA/CD, Token | ||
- | * VLAN | ||
- | * statisch/dynamisch, tagged/untagged | ||
- | * VoIP, QoS, SIP | ||
- | * Authentifizierung vs. Autorisierung | ||
- | * Warum sollten sich Benutzer ggü. Systemen authentifizieren? | ||
- | * mögliche Aufgaben | ||
- | * Dauer einer Datensicherung berechnen | ||
- | * Netzwerk konzipieren (Router, Firewall, Clients) | ||
- | |||
- | === Projektmanagement === | ||
- | * Definition Projekt | ||
- | * übliche Projektphasen (Idee, Zieldefinition, Auftrag, Planung, Durchführung, Kontrolle etc.) | ||
- | * Beispiele für Aufgaben in den jeweiligen Phasen | ||
- | * Aufgaben/Inhalte/Verbindlichkeit von Lasten-/Pflichtenheften und Angeboten | ||
- | * Lastenheft: was/wofür? | ||
- | * Pflichtenheft: wie/womit? | ||
- | * Aufgaben des Projektleiters | ||
- | * Netzplan, Gantt-Diagramm, PSP (Projektstrukturplan) erstellen/vervollständigen | ||
- | * kritischen Pfad ermitteln | ||
- | * Formen der Projektorganisation mit Vor-/Nachteilen | ||
- | |||
- | == Prozessanalyse == | ||
- | * Prozessdiagramme/EPKs erstellen/korrigieren/optimieren | ||
- | * Ablauf eines üblichen Geschäftsprozesses (von Kundenanfrage bis Zahlungseingang) kennen | ||
- | * Symbole des Petri-Netzes erläutern | ||
- | === Softwareentwicklung === | + | Die Liste ist umgezogen: [Themen der schriftlichen IHK-Prüfungen](http://fiae.link/Pruefungsthemen "Themen der schriftlichen IHK-Prüfungen") |
- | * Arten von Software unterscheiden (Individual-/Branchensoftware) | + | |
- | * Unterschied prozedurale/objektorientierte Entwicklung/Modellierung | + | |
- | * Prinzipien der OOP | + | |
- | * Begriffe der OOP erläutern: Attribut, Nachricht/Methodenaufruf, Persistenz, Schnittstelle/API/Interface, Polymorphie, Vererbung | + | |
- | * Bestandteile von Klassen | + | |
- | * Unterschied Klasse/Objekt | + | |
- | * Unterschied Klasse/Interface | + | |
- | * Erklärung Klassenbibliothek | + | |
- | * Klassenbeziehungen: Assoziation, Aggregation, Komposition | + | |
- | * Software-Architektur | + | |
- | * Layers/Schichten/3-Tier, MVC, MVVM, SOA, Microservices, REST, Pipes and Filters, Monolith | + | |
- | * Zustandslosigkeit, lose Kopplung | + | |
- | * Bottom-Up- und Top-Down-Verfahren bei der Modellierung erläutern | + | |
- | * Funktion/Vorteile der Modularisierung von Programmen | + | |
- | * wichtige UML-Diagramme (UseCase-, Klassen-, Sequenz-, Aktivitätsdiagramm, Zustandsautomaten, Komponentendiagramm, Verteilungsdiagramm) kennen und Einsatzgebiete erläutern | + | |
- | * Design Patterns kennen/erklären | + | |
- | * Singleton, Observer, Factory, Adapter, Iterator, Strategy, Decorator, Template Method, Registry, MVC | + | |
- | * Methoden zur Dokumentation | + | |
- | * Eigenschaften eines Versionsverwaltungssystems beschreiben | + | |
- | * SVN, CVS, TFS mit Source Safe, Git | + | |
- | * VCS vs. DVCS | + | |
- | * Continuous Integration/Deployment | + | |
- | * Entwicklungsprozesse | + | |
- | * Wasserfall, V-Modell (XT), Spiralmodell, Scrum, Extreme Programming, Kanban | + | |
- | * mögliche Aufgaben | + | |
- | * gegebene Klassen in ein Klassendiagramm eintragen (inkl. Beziehungstypen und Kardinalitäten) | + | |
- | * Klassendiagramm vervollständigen | + | |
- | * Use-Case-Diagramm erstellen | + | |
- | * Anforderungen durch Mobilgeräte | + | |
- | * Offline-Fähigkeit, Deployment auf mehrere Plattformen, verschiedene Programmiersprachen, native Apps vs. HTML5/JavaScript, geringe Bandbreiten, kleine Auflösungen | + | |
- | * Richtlinien bei der Gestaltung von Programmoberflächen | + | |
- | * Aufgabenangemessenheit, Selbstbeschreibungsfähigkeit, Lernförderlichkeit, Steuerbarkeit, Erwartungskonformität, Individualisierbarkeit, Fehlertoleranz (siehe [[http://de.wikipedia.org/wiki/EN_ISO_9241#EN_ISO_9241-110_Grunds.C3.A4tze_der_Dialoggestaltung|EN ISO 9241-110 Grundsätze der Dialoggestaltung]]) | + | |
- | == Programmierung == | + | === Mögliche Themen der Abschlussprüfung === |
- | * Programmierparadigmen (OO, strukturiert, prozedural, funktional) | + | |
- | * Eigenschaften funktionaler Programmierung: Higher Order Functions, Immutability, Tail Call Optimization, Pattern Matching | + | |
- | * deklarativ vs. imperativ | + | |
- | * Unterschied Interpreter/Compiler | + | |
- | * 3GL/4GL | + | |
- | * die gängigen Programmiersprachen kennen (PHP, Perl, Java, C, C++, C#, JavaScript, Delphi, Visual Basic, VBA, Ruby, Python, Cobol, F#, Lisp, Prolog, Assembler) | + | |
- | * Unterschiede bei der Programmierung/Ausführungsgeschwindigkeit in C, Java und JavaScript | + | |
- | * Rekursion | + | |
- | * Unterschied syntaktische/semantische Fehler | + | |
- | * Benutzereingaben sinnvoll validieren | + | |
- | * Generische Klassen | + | |
- | * Vorteile generischer Container (Templates in C++) gegenüber Arrays | + | |
- | * Unterschied statische/nicht-statische Methoden | + | |
- | * Kontrollstrukturen | + | |
- | * allgemeine Programmstrukturen identifizieren/erläutern (Schleifen etc.) | + | |
- | * grundlegende Kontrollstrukturen in allen Diagrammformen (PAP (Programmablaufplan), Nassi-Schneiderman/Struktogramm) darstellen können | + | |
- | * Merkmale/Unterschiede von Kontrollstrukturen (Schleifen, Fallunterscheidungen) | + | |
- | * Zustandsübergänge eines Zustandsautomaten abbilden | + | |
- | * Datenstrukturen | + | |
- | * Queue, Bäume, Stack, Heap | + | |
- | * Algorithmen als PAP/Struktogramm/Pseudocode darstellen | + | |
- | * Reguläre Ausdrücke zur Textanalyse erstellen | + | |
- | * mögliche Aufgaben | + | |
- | * Fehler in Programmcode finden (C) | + | |
- | * Algorithmen implementieren/durchspielen | + | |
- | * Mittelwert | + | |
- | * doppelte Einträge in einem Array finden/löschen | + | |
- | * Dateibäume rekursiv kopieren | + | |
- | * (Zinses-)Zinsberechnung | + | |
- | * Planen eines regelmäßigen Backups | + | |
- | * Ablauf einer Benutzerauthentifizierung an einer Website | + | |
- | * Abbuchen von einem Konto | + | |
- | == Software-Qualität == | + | Die Liste ist umgezogen: [Mögliche Themen der Abschlussprüfung](http://fachinformatiker-anwendungsentwicklung.net/moegliche-themen-der-abschlusspruefung/ "Mögliche Themen der Abschlussprüfung") |
- | * Definition Software-Qualität? | + | |
- | * Software-Qualitätsmerkmale nach DIN/ISO nennen und erläutern | + | |
- | * Methoden für Software-Tests | + | |
- | * Bottom-Up und Top-Down | + | |
- | * statisches/dynamisches Testen | + | |
- | * Abnahme-, Last-, Funktions-, Regressionstest | + | |
- | * Black-/Whiteboxtest, Anweisungsüberdeckung/Zweigüberdeckung | + | |
- | * Komponenten-, Integrations-, Systemtest | + | |
- | * Maßnahmen zur Qualitätssicherung (Audits, Reviews, Testmethoden) | + | |
===== Literatur ===== | ===== Literatur ===== |