Fachinformatiker für Anwendungsentwicklung Prüfungsvorbereitung (Software)

[ycd_countdown id=6197]

Softwareentwicklungsmodelle

[Wikipedia: Softwaretechnik]

Kategorien: Sequenzielle Vorgehensweise, Agile Vorgehensweise, Entwicklungsmethode, Entwicklungsphilosophie
Modelle: Extreme Programmierung, Wasserfallmodell, V-Modell, Prototyping, Rational Unified Process, Scrum, Spiralmodell, Agile Unified Process, Testgetriebene Entwicklung, Kanban, Modellgetriebene Softwareentwicklung, Reifegradmodell.
Häufig verwendet: Netzplan, Gantt-Diagramm, Scrum vs. Kanban

Scrum: Scrum Master, Product Owner, Scrum Team, Stakeholder, User-Story, Scrum-Board, Product-Backlog, Sprint-Backlog, Produktinkrement.

Testen von Software

Testgetriebene Softwareentwicklung, Black-Box-Test, White-Box-Test
Begriffe: Code-Inspektion, CASE-Tool, Modultest, Prototyping, Anweisungsüberdeckung, Zweigüberdeckung, Pfadüberdeckungstest, Meilensteine, Validierung vs. Verifizierung.

Auch am Beispiel praktisch zeigen.

Software-Schnittstellen

Begriffe: API, Softwarearchitektur, Protokoll, Objektorientierung, Verteilte-Systeme, SMTP, Zustandslosigkeit, W3C-Standard, HTTP, XML, JSON, CSV, JPG, PNG, GIF, DTD, XHTML, REST, SOAP, CORBA, Datenformate, Auszeichnungssprache.

Compiler: Quellcode, Bibliothek, Objektcode, Linker, Ausführbares Programm.

Industrie 4.0, IoT

MQTT usw.

Sortieralgorithmen

Bubblesort, Quicksort, Mergesort…

OOP Objektorientierte Softwareentwicklung

OOA, OOD, OOP. [MezData: Objektorientierter Entwurfsprozess] [MezData: Vorgehensmodell für Schulen]

UML-Diagramme davon Use-Case-Diagramm, Klassendiagramm, Objektdiagramm, Sequenzdiagramm?, Aktivitätsdiagramm?, Paketdiagramm?, Zeitverlaufsdiagramm?, Zustandsdiagramm.

Polymorphie

Mindmap Polymorphie

MVC (Model View Controller)

Drei Schichten Architektur [Model View Controller]

Design Patterns

Entwurfsmuster (Design Patterns): Singleton, Decorator, Fabrikmethode

Observer (Beobachter)

[Wikipedia: Beobachter (Entwurfsmuster)] [Observer in Java] [Observer in C#]

Kryptographie, Verschlüsselung, Block-Chain

Symmetrische Verschlüsselung, Asymmetrische Verschlüsselung, Blockchain

Ki, Künstliche Intelligenz

Neuronale Netze Prinzip

Schnipsel / ToDo

ArrayList, split, Datei I/O, CSV, XML, JSON, REST-API, IoT-Beispiel

Datei I/O

Klassendiagramme erweitern, umsetzen

Webservice & Co

📖 Webservice „stellt eine Schnittstelle für die Maschine-zu-Maschine- oder Anwendungs-Kommunikation über Rechnernetze wie das Internet zur Verfügung.[1] Dabei werden Daten ausgetauscht und auf entfernten Computern (Servern) Funktionen aufgerufen.“

RPC 📖 Remote Procedure Call „ist eine Technik zur Realisierung von Interprozesskommunikation. Sie ermöglicht den Aufruf von Funktionen in anderen Adressräumen.“

REST-API 📖 Representational State Transfer „ist ein Paradigma für die Softwarearchitektur von verteilten Systemen, insbesondere für Webservices. REST ist eine Abstraktion der Struktur und des Verhaltens des World Wide Web.“ HTTP ist REST-Konform..

HTTP 📖 Hypertext Transfer Protocol „Das Hypertext Transfer Protocol (HTTP; englisch für Hypertext-Übertragungsprotokoll) ist ein 1991 eingeführtes zustandsloses Protokoll zur Übertragung von Daten auf der Anwendungsschicht über ein Rechnernetz.“

WebSocket 📖 WebSocket „Das WebSocket-Protokoll ist ein auf TCP basierendes Netzwerkprotokoll, das entworfen wurde, um eine bidirektionale Verbindung zwischen einem Webbrowser und einem WebSocket-Server bzw. einem Webserver, der auch WebSockets unterstützt, herzustellen.“ Dauerhafte Verbindung.

SOAP 📖 SOAP „(ursprünglich für Simple Object Access Protocol) ist ein Netzwerkprotokoll, mit dessen Hilfe Daten zwischen Systemen ausgetauscht und Remote Procedure Calls durchgeführt werden können. SOAP ist ein industrieller Standard des World Wide Web Consortiums (W3C).“

MQTT 📖 Message Queueing Telemetry Transport „(ursprünglich Message Queueing Telemetry Transport) ist ein offenes Netzwerkprotokoll für Machine-to-Machine-Kommunikation (M2M), das die Übertragung von Telemetriedaten in Form von Nachrichten zwischen Geräten ermöglicht, trotz hoher Verzögerungen oder beschränkter Netzwerke.“

GraphQL 📖 GraphQL „ist eine Open-Source-Datenabfrage- und Manipulationssprache und ein Laufzeitsystem zum Beantworten von Abfragen mit vorhandenen Daten.“

🤖 Welche Unterschiede bestehen zwischen REST-API und SOAP

REST und SOAP unterscheiden sich vor allem darin, dass REST ein Architekturstil ist und SOAP ein striktes Protokoll. REST ist meist einfacher, leichtergewichtig und nutzt oft JSON über HTTP, während SOAP stärker formalisiert ist und typischerweise XML verwendet.

Wichtige Unterschiede

  • Art des Konzepts: REST ist ein Architekturstil, SOAP ein Protokoll.
  • Datenformat: REST unterstützt mehrere Formate wie JSON, XML und Klartext; SOAP verwendet im Kern XML.
  • Zustand: REST ist zustandslos, SOAP wird oft als stärker zustandsbehaftet bzw. stärker strukturiert beschrieben.
  • Performance: REST ist meist schlanker und schneller, weil weniger Overhead entsteht; SOAP-Nachrichten sind größer und schwerer zu verarbeiten.
  • Flexibilität: REST ist flexibler und passt gut zu modernen Web- und Mobile-APIs; SOAP ist strenger und standardisierter.
  • Sicherheit/Standards: SOAP bringt häufig mehr eingebaute Unternehmens-Standards mit, etwa für komplexere Sicherheits- und Transaktionsszenarien; bei REST werden solche Dinge meist über HTTP, TLS und zusätzliche Mechanismen gelöst.
Wann was sinnvoll ist

REST eignet sich meist gut für öffentliche APIs, Webanwendungen und mobile Clients, weil es einfach und effizient ist. SOAP ist oft sinnvoll in klassischen Enterprise-Umgebungen, wenn strenge Verträge, formale Standards oder bestehende SOAP-Infrastrukturen wichtig sind.

Ein einfaches Bild

Man kann es so sehen: REST ist eher wie ein schlanker, flexibler Lieferdienst, der Pakete in verschiedenen Größen akzeptiert. SOAP ist eher wie ein streng standardisiertes Versandverfahren mit festem Formular und klaren Regeln.

Übersicht Prüfungen nach neuem Bildungsplan

PrüfungBereichProjektnameSAE-ThemenKommentar
22 SoFIA-1PIAV-DriveApp1. XML, CSV, Designpattern, UML-Diagramm, Interface, Struktogramm umsetzen
2. Datenbank, SQL, REST-Service
Designpattern, Interface und REST-Service waren überraschend
22 SoFIA-2EFlinke Pedale GbR1. HTML-Layoutgestaltung, Seite responisve mit CSS-Grid Layout gestalten
2. Preisberechnung aus Geo-Koordinaten
3. Datenbank, 3.NF, SQL
1. Lustig ohne Hilfsmittel.
2. Viel Mathekenntnis erforderlich. Völlig absurde Aufgabe für SuS ohne Abi. Hat niemand ansatzweise hin gekriegt!
22 SoFIS-1KTriStar GmbH3. Datenbank SQL-AbfragenGut machbar?
22 SoFIS-2AConelectricity GmbH2. Datenbankerstellung, ER-ModellOK?
22 WiFIA-1PAutomatisierte
Angebotserstellung
1. XML, CSV, JSON, Klassendiagramm ergänzen1. Klassendiagramm: Rollennamen stehen nicht an der richtigen Stelle. Inhalt OK, aber “Beiwerk” zu umfangreich-> Zeit zu knapp.
22 WiFIA-2ECarLos
Gebrauchtwagen
1. HTML-Formular, CSS, SQL-Injektion, CMS Vorteile
3. Datenbank SQL-Abfragen
1. HTML-Vorgabe fehlerhaft, viele Wiederholungen der gleichen Eingabefelder -> viel Schreibaufwand ohne neue Erkenntnis.
22 WiFIS-1KDigitales
Gesundheitsprojekt
3. Wasserfall, SCRUM, Klassendiagramm erweitern3. Klassendiagramme erweitern war überraschend bei FIS.
22 WiFIS-2ASüßwarenhersteller3. NoSQL, Python-QuelltextBeides hat uns für FIS überrascht.
23 SoFIA-1PTrainYourBrain AG1. UML-Klassendiagramm erweitern, Design Pattern
2. Datenbank
Ok 🍀
23 SoFIA-2EFa. SmartHome1. HTML, Seiteninhalt aktualisieren, CSS
2. Quellcode zu Struktogramm, Whitebox-Test, Struktogramm ergänzen
3. I2C-Bus, Slave-Adresse bestimmen, WPA3 Verschlüsselung
I2C war überraschend!
23 SoFIS-1KGemeinschaftsschule
23 SoFIS-2AFlipSec GmbH2. Zeiterfassungsdatenbank
23 WiFIA-1P
Lösung
IT4LIFE1. UML-Klassendiagramm erweitern, Klasse implementieren
2. Datenbanken
1. SuS kamen mit Aufgabenstellung nicht gut klar, Vorgabe-Klassendiagramm nicht hübsch.
23 WiFIA-2E
Lösung
Kindertagesstätte1. HTML-Formular erstellen
2. Struktogramm erstellen, Polymorphie erklären, Quellcode zu Klassen erstellen
Viel Schreibarbeit, bin mit Aufgabenstellung fachlich nicht glücklich, unpräzise.
23 WiFIS-1KAgrarendergie Müller e.K.2. Datenbank
23 WiFIS-2ATS Lebkuchen KG4. MQTT, CSV auswerten und in DB eintragen, PAP oder Struktogramm erstellenListArray oder Schlange als Zwischenspeicher notwendig, hat kein SoS hingekriegt.
24 SoFIA-1P
Lösung
Skiclub Brettelhausen1. Datenbankmodell ergänzen.
2. SQL Abfragen
3. HTML-Formular mit CSS
4. Wirtschaftlichkeitsberechnung
24 SoFIA-2E
Lösung
Flowers2You1. Klassen implementieren
2. Methoden implementieren
3. Datenexport XML->JSON
4. Datenbankmodell entwickeln
Lösung in Java in der Prüfungszeit zu produzieren ist praktisch nicht möglich. Ich habe auch meine Zweifel ob es mit Python schaffbar ist.
24 SoFIS-1KElectronics & Drives GmbH1. Betriebliche Grundlagen und Prozesse
2. Netzwerk konfigurieren
3. Datenbank anpassen
4. ODB2, GPS, IoT
24 SoFIS-2AMotorenwerke Biersch GmbH1. Projektmanagement
2. Netzwerkanalyse
3. Passwortüberprüfung
24 WiFIA-1P
Lösung
Kapazitätsmessung von Akkus1. Klassendiagramm
2. Datenbank
3. Projektmanagement und Kostenrechnung
Aufgabe 1.3 ist mit 1.2 bereits gelöst?
24 WiFIA-2E
Lösung
Kapazitätsmessung von Akkus1. HTML-Formular
2. Methoden implementieren
3. Datenübertragung und Auswertung
Serielle Schnittstelle
Ohmsches Gesetz
24 WiFIS-1KNetzwerk einer Markthalle1. Switches und WLAN
2. MQTT
3. Datenbank
4. Projektmanagement
24 WiFIS-2AXperts4u1. Switches konfigurieren
2. DMZ einrichten
3. Online Formular erstellen
4. Projektmanagement
25 SoFIA-1P
Lösung
Buchungssystem für Carsharing-Anbieter1. Klassendiagramm, Implementieren
2. Datenbank
3. Verschlüsselungsverfahren
25 SoFIA-2E
Lösungsideen
Bestellsystem für die Mensa einer Schule1. Web Design
2. Datenbank
2.2.2 Struktogramm
3. Kostenrechnung
Struktogrammaufgabe war sehr verwirrend.
25 WiFIA-1P
Lösungsversuch
Arztpraxis neu ausstatten1. Entwurfsmuster
2. Datenbank
3. Netzwerkinfrastruktur und Datensicherheit
25 WiFIA-2EArztpraxis neu ausstatten1. Web-Frontend
2. IoT MQTT
3. Angebotsvergleich
25 WiFIS-1KTEMOTec GmbH1. Netzwerk planen
2. Virtualisierungsplattform
3. Operational Technology planen
4. Datenbank erstellen
5. Projektplanung
25 WiFIS-2AKlammer OHG1. Netzwerk planen
2. Fehleranalyse
3. IT-Sicherheit planen
4. Switch über REST-API abfragen
5. Kostenkalkulationen