Benutzer-Werkzeuge

Webseiten-Werkzeuge


fiae

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
fiae [2010-04-08 16:32]
stefan
fiae [2010-05-20 15:08]
stefan gelöscht
Zeile 1: Zeile 1:
-====== Ausbildung zum Fachinformatiker Anwendungsentwicklung ====== +moved to [[job:fiae]]
- +
-===== Projektantrag ===== +
- +
-==== Hinweise zur Prüfung von Projektanträgen ==== +
-  * Projektplanung ​  +
-    * logischer Aufbau der zeitlichen Projektplanung +
-    * sinnvolles Verhältnis von Entwurf zu Implementierung +
-    * wie wird getestet? +
-  * Implementierung +
-    * welche Form hat das Programm (Webanwendung,​ Client mit GUI)? +
-    * welche Sprache/DB wird verwendet?​ +
-  * Projektbegründung +
-    * was ist der wirtschaftliche Nutzen? ​     +
- +
-===== Projektdokumentation ===== +
- +
-==== 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 +
-  * Beispiele für Projektdokumentationen +
-    * [[http://​www.pruefungsausschuss.de/​ProjektDokus.shtml]] +
-    * [[http://​www.it-themenportal.de/​suicidal/​dl_engine/​index.php?​subcat=7]] +
-  * Bewertungsbögen zur Dokumentation +
-    * {{:​fiaebewertungdokuihkkoeln.pdf|Bewertungsbogen der IHK Köln}} +
- +
-==== Inhalte ==== +
-  * //Formblatt der entsprechenden IHK// +
-  * 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 +
-    * nicht-monetärer Nutzen/​Nutwertanalyse:​ z.B. Vorher-/​Nachher-Vergleich anhand eines Wirtschaftlichkeitskoeffizienten +
-    * //​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 +
-      * 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 +
-  * 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 +
- +
-===== Projektpräsentation ===== +
- +
-==== Foliendesign ==== +
-  * 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 +
-    * Stichpunkte als Bullet Points auf den Folien +
-    * Grafiken zur Erklärung bestimmter Sachverhalte +
-  * Folien sollten der Corporate Identity des Ausbildungsbetriebs folgen +
-  * da die Präsentation recht kurz ist, sollte man sich auf das Wesentliche/​Interessante des Projekts konzentrieren +
- +
-==== 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),​ Nutzwertanalyse +
-  * Überblick über die Anwendung (Architektur,​ Einbindung in andere Systeme) +
-  * Implementierung (z.B. ERM, UML, Screenshots) +
-  * Fazit, Ausblick +
-  * Schlussfolie +
- +
-===== Mögliche Themenbereiche Abschlussprüfung ===== +
- +
-==== Anmerkungen ==== +
-  * am Besten bereitet man sich mit alten Prüfungen vor, um ein "​Gefühl"​ für die Fragen zu bekommen +
-  * grundsätzlich können die Inhalte der Ausbildungsrahmenpläne (vgl. [[http://​blog.stefan-macke.com/​2007/​07/​09/​ausbildungsplan-fachinformatiker-anwendungsentwicklung-als-excel-datei/​|Blog]]) drankommen +
-  * Die folgende Liste ist nicht vollständig und dient nur einer ersten Übersicht. Sie wurde auf Basis von alten Prüfungen, Lehrbüchern und Stoffsammlungen aus dem Internet zusammengestellt. +
-  * Quellen +
-    * [[http://​forum.fachinformatiker.de/​ihk-pruefung-allgemein/​123171-ap-fiae-fisi-materialsammlung-zu-ga2.html]] +
-    * [[http://​forum.fachinformatiker.de/​attachments/​ausbildung-im-it-bereich/​2900-abschlusspruefung-lernen-moegliche-themen-theoretischen-abschlusspruefung.png]] +
- +
-==== Themen ==== +
- +
-=== Aktuelles (2010) === +
-  * Cloud Computing (Auswirkungen auf Softwareentwicklung,​ Hardware, Geschäftsmodelle) +
-  * Funktionale Programmierung +
-  * REST +
-  * Green IT +
-  * Virtualisierung +
-  * Web 2.0 +
-    * RIA +
-    * Desktop -> Browser +
-  * Mobile Applikation +
-  * USB 3.0 +
-  * Windows 7 +
-  * 3D-/HD-TV, HDMI, BlueRay +
- +
-=== 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 +
- +
-== 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 +
-  * Kündigungsfristen +
- +
-== 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 +
- +
-=== 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 +
-  * 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 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 +
-  * sATA, AGP, PCI, ISA, IDE, SCSI, SAS, USB, RAID, TFT, TCO, CRT, USV +
-  * RAID 0, 1, 5 erklären +
-  * Bluetooth, Firewire, USB +
-  * WLAN +
-    * Hotspot, Ad-Hoc, Repeater +
-    * Sicherheit (WPA, WEP, MAC-Kontrolle) +
-  * BIOS, CMOS, Ablauf eines Systemstarts,​ Sinn von BIOS-Updates +
-  * IDE: Master/​Slave,​ Jumper +
-  * Firmware, Flash-Speicher +
-  * Arten von Druckern und Scannern +
-  * Thin Clients/Fat Clients +
-  * Bezugsquellen für Hardwarelieferanten +
-  * Virtuelle Maschinen +
-  * 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 +
- +
-=== 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 +
- +
-=== 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 +
- +
-=== 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 +
-  * 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 +
- +
-=== 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 +
-  * 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.) +
-  * Aufgaben/​Inhalte/​Verbindlichkeit von Lasten-/​Pflichtenheften und Angeboten +
-    * Lastenheft: was/​wofür?​ +
-    * Pflichtenheft:​ wie/​womit?​ +
-  * Aufgaben des Projektleiters +
-  * Netzplan, Gantt-Diagramm,​ PSP (Projektstrukturplan) erstellen +
- +
-== Prozessanalyse == +
-  * Prozessdiagramme/​EPKs erstellen/​korrigieren/​optimieren +
-  * Ablauf eines üblichen Geschäftsprozesses (von Kundenanfrage bis Zahlungseingang) kennen +
-  * Symbole des Petri-Netzes erläutern +
- +
-=== Softwareentwicklung === +
-  * 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 +
-    * MVC, 3-Tier +
-  * 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) kennen und Einsatzgebiete erläutern +
-  * Design Patterns kennen/​erklären +
-    * Singleton, Observer, Factory, Adapter, MVC, Iterator, Strategy, Decorator, Template Method, Registry +
-  * Methoden zur Dokumentation +
-  * Eigenschaften eines Versionsverwaltungssystems beschreiben +
-    * SVN, CVS, TFS mit Source Safe, Git +
-  * Entwicklungsprozesse +
-    * Wasserfall, V-Modell (XT), Spiralmodell,​ agile Prozesse +
-  * mögliche Aufgaben +
-    * gegebene Klassen in ein Klassendiagramm eintragen (inkl. Beziehungstypen und Kardinalitäten) +
-    * Klassendiagramm vervollständigen +
-    * Use-Case-Diagramm erstellen +
- +
-== Programmierung == +
-  * Programmierparadigmen (OO, strukturiert,​ prozedural, funktional, deklarative etc.) +
-  * 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 +
-  * 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 == +
-  * 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)+