AP 2 Vorbereitungsblatt

Fachinformatiker/-in Anwendungsentwicklung · Lernübersicht, Lernkarten, Mini-Tests und prüfungsnahe Beispielaufgaben

1. Prüfungsstruktur

Projektarbeit
Planen und Umsetzen eines Softwareprojekts
50 %
Softwareprodukt
Planung und Konzeption
10 %
Algorithmen
Entwicklung und Umsetzung
10 %
WiSo
Wirtschafts- und Sozialkunde
10 %
Merksatz: Die AP2 prüft nicht nur Fachwissen. Du musst betriebliche Situationen analysieren, Entscheidungen begründen und Lösungen nachvollziehbar darstellen.

2. Planen eines Softwareproduktes

Prüfungszeit: 90 Minuten

AnforderungenUMLDatenbankenArchitekturRESTTestsWirtschaftlichkeit

Anforderungsanalyse

  • Ist-/Soll-Zustand
  • funktionale und nicht funktionale Anforderungen
  • Muss-, Soll- und Kann-Anforderungen
  • User Stories und Akzeptanzkriterien
  • Lasten- und Pflichtenheft

Modellierung

  • Use-Case-, Klassen-, Aktivitäts- und Sequenzdiagramme
  • Multiplizitäten und Beziehungen
  • Entitäten, Attribute, Schlüssel
  • Normalformen 1 bis 3

Architektur und Schnittstellen

  • MVC und Schichtenarchitektur
  • Client-Server
  • REST und HTTP-Methoden
  • JSON/XML
  • Statuscodes und Fehlerbehandlung

Qualität und Wirtschaftlichkeit

  • Testarten und Testfälle
  • Grenzwertanalyse
  • Nutzwertanalyse
  • Amortisation
  • Aufwand und Kosten
Prüfungstipp

Begründe Entscheidungen immer mit Bezug zur Situation. Statt „MVC ist gut“ besser: „MVC trennt Darstellung, Logik und Datenzugriff. Dadurch lassen sich Änderungen an der Oberfläche vornehmen, ohne die Geschäftslogik vollständig anzupassen.“

3. Entwicklung und Umsetzung von Algorithmen

Prüfungszeit: 90 Minuten

ThemaDas solltest du können
KontrollstrukturenVerzweigungen und Schleifen lesen, ergänzen und korrigieren
DatenstrukturenArray, Liste, Set, Map, Stack und Queue passend auswählen
OOPKlassen, Objekte, Kapselung, Vererbung, Interfaces und Polymorphie
AlgorithmenSuch- und Sortierverfahren nachvollziehen und bewerten
FehleranalyseSyntax-, Laufzeit- und Logikfehler unterscheiden
QualitätClean Code, Refactoring, Tests und Versionsverwaltung
SicherheitSQL-Injection, XSS, Authentifizierung, Autorisierung, Hashing
summe = 0
für jede zahl in zahlen:
    wenn zahl > 0:
        summe = summe + zahl

Ausgabe(summe)
Arbeitsmethode: Bei Ablaufaufgaben eine Variablentabelle anlegen. So erkennst du Schleifenfehler und falsche Abbruchbedingungen schneller.

4. Betriebliche Projektarbeit

Projektantrag

Ausgangslage, Ziel, Abgrenzung, eigener Anteil, Zeitplanung und geplante Ergebnisse.

Dokumentation

Entscheidungen, Alternativen, Planung, Umsetzung, Tests, Kosten und Soll-Ist-Vergleich.

Präsentation & Fachgespräch

Projekt verständlich darstellen und technische sowie wirtschaftliche Entscheidungen verteidigen.

Empfohlene Dokumentationsstruktur

  1. Projektumfeld und Ausgangssituation
  2. Zielsetzung und Abgrenzung
  3. Anforderungsanalyse
  4. Projektplanung
  5. Wirtschaftlichkeitsbetrachtung
  6. Lösungsalternativen
  7. Entwurf und Architektur
  8. Implementierung
  9. Tests und Qualitätssicherung
  10. Einführung und Abnahme
  11. Soll-Ist-Vergleich
  12. Fazit
Typische Fragen im Fachgespräch
  • Warum wurde diese Architektur gewählt?
  • Welche Alternativen wurden geprüft?
  • Wie wurde die Sicherheit berücksichtigt?
  • Wie wurden Testfälle ausgewählt?
  • Welche Planabweichungen gab es?
  • Was würden Sie beim nächsten Mal anders machen?

5. Wirtschafts- und Sozialkunde

Arbeitswelt

  • Ausbildungsvertrag
  • Arbeitsvertrag
  • Kündigung
  • Urlaub und Arbeitszeit
  • Tarifvertrag
  • Betriebsrat und JAV

Wirtschaft

  • Angebot und Nachfrage
  • Inflation und Konjunktur
  • Unternehmensformen
  • Produktivität und Wirtschaftlichkeit
  • Sozialversicherungen
  • Brutto und Netto

6. Lernkarten

Karte anklicken, um die Antwort umzudrehen.

Was ist der Unterschied zwischen funktionalen und nicht funktionalen Anforderungen?
Funktionale Anforderungen beschreiben, was das System tun soll. Nicht funktionale Anforderungen legen Qualitätsmerkmale und Rahmenbedingungen fest, etwa Sicherheit, Leistung oder Bedienbarkeit.
Wozu dient die 3. Normalform?
Sie beseitigt transitive Abhängigkeiten. Nicht-Schlüsselattribute dürfen nur vom Primärschlüssel und nicht von anderen Nicht-Schlüsselattributen abhängen.
Wann verwendet man HTTP POST?
Typischerweise zum Anlegen einer neuen Ressource oder zum Auslösen einer Verarbeitung, bei der der Server die Zieladresse bestimmt.
Was bedeutet O(n²)?
Die Laufzeit wächst ungefähr quadratisch mit der Eingabegröße, zum Beispiel bei zwei vollständig verschachtelten Schleifen.
Authentifizierung oder Autorisierung?
Authentifizierung prüft, wer jemand ist. Autorisierung prüft, welche Aktionen diese Person ausführen darf.
Was gehört in einen guten Testfall?
Testfall-ID, Ziel, Vorbedingungen, Eingaben, Schritte, erwartetes Ergebnis, tatsächliches Ergebnis und Status.

7. Prüfungsnahe Beispielaufgaben

Aufgabe 1: Anforderungen erkennen 6 Punkte

Ein Unternehmen möchte eine Webanwendung, mit der Mitarbeitende Urlaubsanträge stellen können. Die Anwendung soll auch auf Smartphones funktionieren. Nur Vorgesetzte dürfen Anträge genehmigen. Eine Seite soll innerhalb von zwei Sekunden geladen werden.

Auftrag: Nenne zwei funktionale und zwei nicht funktionale Anforderungen.

Musterlösung anzeigen

Funktional: Mitarbeitende können Urlaubsanträge erstellen; Vorgesetzte können Anträge genehmigen oder ablehnen. Nicht funktional: responsive Bedienung auf Smartphones; Ladezeit maximal zwei Sekunden.

Aufgabe 2: SQL 8 Punkte

Gegeben sind die Tabellen kunde(kunden_id, name) und bestellung(bestell_id, kunden_id, betrag).

Auftrag: Formuliere eine SQL-Abfrage, die zu jedem Kunden den Namen und die Summe seiner Bestellungen ausgibt. Kunden ohne Bestellungen sollen ebenfalls erscheinen.

Musterlösung anzeigen
SELECT k.name,
       COALESCE(SUM(b.betrag), 0) AS gesamtbetrag
FROM kunde k
LEFT JOIN bestellung b
  ON k.kunden_id = b.kunden_id
GROUP BY k.kunden_id, k.name;
Aufgabe 3: Algorithmus nachvollziehen 6 Punkte
werte = [3, 8, 2, 7]
ergebnis = 0

für i von 0 bis 3:
    wenn werte[i] > 4:
        ergebnis = ergebnis + werte[i]

Welchen Wert besitzt ergebnis am Ende? Begründe kurz.

Musterlösung anzeigen

Das Ergebnis ist 15, weil nur die Werte 8 und 7 größer als 4 sind und addiert werden.

Aufgabe 4: Testfälle 8 Punkte

Ein Feld erlaubt Werte von 10 bis einschließlich 100.

Auftrag: Nenne sechs sinnvolle Testwerte nach der Grenzwertanalyse und erläutere, welche davon gültig sind.

Musterlösung anzeigen

9 ungültig, 10 gültig, 11 gültig, 99 gültig, 100 gültig, 101 ungültig.

Aufgabe 5: IT-Sicherheit 8 Punkte

Eine Anwendung erstellt SQL-Befehle durch direkte Verkettung von Benutzereingaben.

Auftrag: Benenne das Risiko und beschreibe zwei geeignete Gegenmaßnahmen.

Musterlösung anzeigen

Risiko: SQL-Injection. Gegenmaßnahmen: parametrisierte Abfragen/Prepared Statements und serverseitige Eingabevalidierung. Zusätzlich sollte der Datenbankbenutzer nur minimale Rechte besitzen.

Aufgabe 6: Wirtschaftlichkeit 6 Punkte

Die Entwicklung einer Anwendung kostet 24.000 €. Durch sie werden jährlich 8.000 € eingespart.

Auftrag: Berechne die Amortisationsdauer.

Musterlösung anzeigen

24.000 € ÷ 8.000 € pro Jahr = 3 Jahre.

Mini-Selbsttest

1. Welche Datenstruktur verhindert doppelte Werte?



2. Welcher HTTP-Statuscode bedeutet „nicht gefunden“?



3. Was ist ein Regressionstest?



8. Persönliche Lerncheckliste

Markiere alle Themen, die du sicher unter Zeitdruck bearbeiten kannst.

0 % abgeschlossen