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-03-26 09:51]
stefan
— (aktuell)
Zeile 1: Zeile 1:
-====== Ausbildung zum Fachinformatiker Anwendungsentwicklung ====== 
  
-===== 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 ==== 
- 
-=== Betriebssysteme === 
-  * Unterschied Unix/Linux 
-  * Vor-/​Nachteile Linux/​Windows 
-  * 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) 
-    * Eigenschaften von relationalen Datenbanken 
-  * SQL-Abfragen 
-    * CRUD (Create, Read, Update, Delete)  ​ 
-  * Arbeitschritte beim DB-Design 
-    * ER-Modelle erstellen 
-    * Tabellenmodelle erstellen 
-  * ACID-Prinzipien kennen und erläutern (atomicity, consistency,​ isolation, durability) 
-  * Normalformen erläutern 
-    * Normalisierung von Datenbanken bis zur 3. Normalform durchführen 
-  * Begriffe kennen und erläutern 
-    * Redundanz, Primär-/​Fremdschlüssel,​ Datensatz, INSERT 
-    * referentielle Integrität 
-  * gültige Datensätze zu einem gegebenen Schema ermitteln 
-  * Sinn der Benutzerauthentifizierung ggü. der DB 
- 
-== Datenformate == 
-  * XML 
-    * Wohlgeformtheit,​ Validität 
-    * Parser, Serialisierer 
- 
-=== Englisch === 
-  * Texte verstehen und analysieren 
- 
-=== 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 
- 
-=== Hardware === 
-  * Datenraten von verschiedenen Laufwerken (Festplatte,​ CD, DVD) 
-  * Eigenschaften/​Unterscheidung/​Vor-/​Nachteile SAN und NAS 
-  * Unterschied Stack/Heap 
-  * sATA, AGP, IDE, USB, RAID, TFT, USV 
-  * passende Komponenten für einen (Datenbank-/​File-)Server auswählen 
-  * RAID 0, 1, 5 erklären 
-  * PCs für bestimmte Anforderungen aus Komponenten zusammenstellen 
-  * Bluetooth, Firewire, USB, WLAN 
- 
-=== Internet === 
-  * Aufbau von URLs 
-  * Beispiele für Browser/​Webserver/​Web-Programmiersprachen 
-  * wichtige Protokolle und Ports (HTTP, FTP, SMTP, POP3, telnet, NNTP) 
-  * Vor-/​Nachteile wichtiger Dateiformate (PDF, Bildformate) 
-  * Ablauf beim Aufruf einer Website (Kommunikation Client/​Server) 
-  * Schlagworte aus dem Bereich der Sicherheit erläutern (Phishing, Sniffing, Spoofing, Hoax, DoS, DDoS) 
-  * Applet und Servlet unterscheiden 
-  * (serverseitige) Scriptsprachen nennen 
- 
-== Websites == 
-  * Vorteile von Internetseiten als Werbemittel 
-  * grundlegende Kenntnisse von HTML, CSS, PHP 
-  * ergonomische Gestaltung von Websites 
-  * Mindestinhalte des Impressums 
-  * virtuelle Hosts erläutern 
-  * Funktion von .htaccess erläutern 
-  * dynamische Websites (CGI, ASP, AJAX, JSP) 
- 
-=== Marketing === 
-  * Vor-/​Nachteile von Absatzwegen 
-  * 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 kennen 
-  * Beispiele für niedrigen/​hohen Markteinstiegspreis nennen 
- 
-=== Mathematik und Rechnungswesen === 
-  * Ermittlung von Umsatz/​Provision/​Deckungsbeitrag/​Kosten/​Gewinn 
-  * Dateigrößen von Bildern/​Videos berechnen 
-  * mögliche Gründe für Zahlungsverzug 
-  * 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 
-  * Dauer einer Datensicherung berechnen 
-  * Vor-/​Nachteile Kauf/​Leasing/​Miete 
-  * Umrechnungen in Zahlensystemen (Dual, Dezimal, Oktal, Hexadezimal) 
- 
-=== Multimedia === 
-  * Fachbegriffe Audiobearbeitung 
-  * Zeichensätze kennen und Unterschiede aufzeigen 
-    * ASCII kennen und erklären ​ 
- 
-=== Netzwerk und Administration === 
-  * Samba 
-  * Methoden zur Namensauflösung erklären (DNS, hosts) 
-    * DNS-Konfiguration 
-  * DNS, DHCP, WINS, ARP, Subnetting, Topologien 
-  * IPv4, IPv6, QoS 
-  * Firewall 
-  * Protokolle mit Port-Nummern (HTTP, HTTPS, FTP, SMTP, POP3, IMAP, DNS, SMB, Telnet, SSH) 
-  * Vorteile von SSH 
-  * Sicherheitsmaßnahmen 
-  * Unterschied HTTP/HTTPS 
-  * Struktur eines Class-C-Netzes erläutern 
-  * Man-in-the-Middle-Attack beschreiben 
-  * Backup-Verfahren und -Medien nennen und erläutern 
-  * Funktionsweise und Vorteile von VPN beschreiben 
-  * ISDN, ADSL, SDSL, UMTS beschreiben 
-  * FDDI/​Ethernet beschreiben 
-  * Netzwerk konzipieren (Router, Firewall, Clients) 
-  * Netzwerkhardware (Switch, Router, Hub) den ISO-Schichten zuordnen 
-  * Serverarten nennen (z.B. Printserver) 
-  * Bezugsquellen für Hardwarelieferanten nennen 
-  * mögliche Gründe für Datenverluste auf Servern erläutern und Gegenmaßnahmen vorschlagen 
-  * Auswirkungen von Datenverlusten für das Unternehmen erläutern 
-  * Maßnahmen der Mitarbeiter zur Vermeidung von Datenverlusten erläutern 
-  * Aufbau, Vor-/​Nachteile Terminalserver erläutern 
-  * Clustering, Load Balancing, Thin-Clients erläutern 
-  * RDP/ICA unterscheiden 
-  * Verbreitung von Viren erläutern 
-  * Viren/​Würmer/​Trojaner unterscheiden 
-  * Switches/​Hubs unterscheiden 
-  * ISO/​OSI-Schichten nennen 
- 
-=== Projektmanagement === 
-  * übliche Projektphasen 
-  * Aufgaben/​Inhalte/​Verbindlichkeit von Pflichtenheften/​Angeboten 
-  * Aufgaben des Projektleiters 
-  * Netzplan/​Gantt,​ PSP (Projektstrukturplan) erstellen 
- 
-== Prozessanalyse == 
-  * Programmablaufpläne/​Prozessdiagramme/​EPKs erstellen/​korrigieren/​optimieren 
-  * Ablauf eines üblichen Geschäftsprozesses (von Kundenanfrage bis Zahlungseingang) kennen 
-  * Symbole des Petri-Netzes erläutern 
- 
-=== Rechtliches === 
-  * Datenschutz erläutern 
-  * Urheberrecht 
-    * von Patenten abgrenzen 
-    * erläutern 
-  * Datensicherheit erläutern 
-  * Unfreien Versand erläutern 
-  * Fernabsatzvertrag erläutern 
-  * Nachbesserung und Nachlieferung erläutern 
- 
-=== Softwareentwicklung === 
-  * Arten von Software unterscheiden (Individual-/​Branchensoftware) 
-  * Unterschied klassische/​objektorientierte Modellierung 
-  * Prinzipien der OOP 
-    * Begriffe der OOP erläutern: Attribut, Nachricht, Persistenz, Schnittstelle 
-    * Unterschied Klasse/​Objekt 
-    * Unterschied Klasse/​Interface 
-    * Erklärung Klassenbibliothek 
-  * Bottom-Up- und Top-Down-Verfahren erläutern 
-  * Funktion/​Vorteile der Modularisierung von Programmen 
-  * wichtige UML-Diagramme (UseCase-, Klassen-, Sequenz-, Aktivitätsdiagramm) nennen und erläutern 
-    * Einsatzgebiete verschiedener UML-Diagrammtypen 
-    * Use-Case-Diagramm erstellen 
-    * Diagramme für Zustandsautomaten erstellen 
-  * Klassendiagramme 
-    * gegebene Klassen in ein Klassendiagramm eintragen (inkl. Beziehungstypen und Kardinalitäten) 
-    * Klassendiagramm vervollständigen 
-  * Bestandteile von Klassen 
-  * Design Patterns kennen/​erklären 
-  * Methoden zur Dokumentation 
-  * Eigenschaften eines Versionsverwaltungssystems beschreiben 
- 
-== Programmierung == 
-  * Programmierparadigmen (OO, strukturiert,​ prozedural etc.) 
-  * die gängigen Programmiersprachen kennen (PHP, Perl, Java, C, C++, C#, JavaScript, Delphi, Visual Basic) 
-  * Fehler in Programmcode finden (C) 
-  * Benutzereingaben sinnvoll validieren 
-  * Vorteile generischer Container 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 
-  * Algorithmen durchspielen 
-  * Algorithmen als PAP/​Struktogramm/​Pseudocode darstellen 
-    * Mittelwert 
-    * doppelte Einträge in einem Array finden 
-    * Zinsberechnung 
-    * Planen eines regelmäßigen Backups 
-    * Ablauf einer Benutzerauthentifizierung an einer Website 
-    * doppelte Werte aus Array löschen 
-    * Dateibäume rekursiv kopieren 
-  * Unterschied Interpreter/​Compiler 
-  * Unterschied syntaktische/​semantische Fehler 
-  * Unterschiede bei der Programmierung/​Ausführungsgeschwindigkeit in C, Java und JavaScript 
-  * Methode zum Abbuchen von einem Konto in Pseudocode implementieren 
-  * Reguläre Ausdrücke zur Textanalyse erstellen 
- 
-== 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 [GAI, P2]  
-    * Anweisungsüberdeckung/​Zweigüberdeckung 
-  * Maßnahmen zur Qualitätssicherung (Audits, Reviews, Testmethoden) 
- 
-=== Unternehmens-/​Mitarbeiterführung und Organisation === 
-  * Vorteile eines betrieblichen Vorschlagwesens 
-  * Beispiele zur Optimierung der Arbeitsabläufe 
-  * Methoden zur Mitarbeitermotivation 
-  * Linien-/​Matrixorganisation kennen (Vor-/​Nachteile)und Organigramm erstellen 
-  * Standortfaktoren bewerten 
-  * Marktformen bestimmen 
-  * Angebotskalkulation 
-  * (Arbeits-)Verträge 
-  * Betriebsrat 
-  * Kündigungsfristen 
-  * Lohnabrechnung 
-  * Gesellschaftsformen 
-  * Arbeitsvertrag 
-  * Aufbau- und Ablauforganisation 
- 
-== Soft-Skills == 
-  * Präsentieren 
-    * Vorteile des Medieneinsatzes bei Präsentationen 
-    * Aufbau von Präsentationen 
-    * Aufmerksamkeit der Zuhörer gewinnen 
fiae.1269593472.txt.gz · Zuletzt geändert: 2014-04-05 11:42 (Externe Bearbeitung)