Fachinformatiker für Anwendungsentwicklung Prüfungsvorbereitung (Software)
[ycd_countdown id=6197]
Softwareentwicklungsmodelle
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
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
- Mezdata: [Passwort-Projekt: Formatiertes Ausgeben und Datei-IO]
- CSV-Datei umarbeiten: [2021-Wi-GA-A1]
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üfung | Bereich | Projektname | SAE-Themen | Kommentar |
|---|---|---|---|---|
| 22 So | FIA-1P | IAV-DriveApp | 1. XML, CSV, Designpattern, UML-Diagramm, Interface, Struktogramm umsetzen 2. Datenbank, SQL, REST-Service | Designpattern, Interface und REST-Service waren überraschend |
| 22 So | FIA-2E | Flinke Pedale GbR | 1. 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 So | FIS-1K | TriStar GmbH | 3. Datenbank SQL-Abfragen | Gut machbar? |
| 22 So | FIS-2A | Conelectricity GmbH | 2. Datenbankerstellung, ER-Modell | OK? |
| 22 Wi | FIA-1P | Automatisierte Angebotserstellung | 1. XML, CSV, JSON, Klassendiagramm ergänzen | 1. Klassendiagramm: Rollennamen stehen nicht an der richtigen Stelle. Inhalt OK, aber “Beiwerk” zu umfangreich-> Zeit zu knapp. |
| 22 Wi | FIA-2E | CarLos 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 Wi | FIS-1K | Digitales Gesundheitsprojekt | 3. Wasserfall, SCRUM, Klassendiagramm erweitern | 3. Klassendiagramme erweitern war überraschend bei FIS. |
| 22 Wi | FIS-2A | Süßwarenhersteller | 3. NoSQL, Python-Quelltext | Beides hat uns für FIS überrascht. |
| 23 So | FIA-1P | TrainYourBrain AG | 1. UML-Klassendiagramm erweitern, Design Pattern 2. Datenbank | Ok 🍀 |
| 23 So | FIA-2E | Fa. SmartHome | 1. 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 So | FIS-1K | Gemeinschaftsschule | ||
| 23 So | FIS-2A | FlipSec GmbH | 2. Zeiterfassungsdatenbank | |
| 23 Wi | FIA-1P Lösung | IT4LIFE | 1. UML-Klassendiagramm erweitern, Klasse implementieren 2. Datenbanken | 1. SuS kamen mit Aufgabenstellung nicht gut klar, Vorgabe-Klassendiagramm nicht hübsch. |
| 23 Wi | FIA-2E Lösung | Kindertagesstätte | 1. 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 Wi | FIS-1K | Agrarendergie Müller e.K. | 2. Datenbank | |
| 23 Wi | FIS-2A | TS Lebkuchen KG | 4. MQTT, CSV auswerten und in DB eintragen, PAP oder Struktogramm erstellen | ListArray oder Schlange als Zwischenspeicher notwendig, hat kein SoS hingekriegt. |
| 24 So | FIA-1P Lösung | Skiclub Brettelhausen | 1. Datenbankmodell ergänzen. 2. SQL Abfragen 3. HTML-Formular mit CSS 4. Wirtschaftlichkeitsberechnung | |
| 24 So | FIA-2E Lösung | Flowers2You | 1. 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 So | FIS-1K | Electronics & Drives GmbH | 1. Betriebliche Grundlagen und Prozesse 2. Netzwerk konfigurieren 3. Datenbank anpassen 4. ODB2, GPS, IoT | |
| 24 So | FIS-2A | Motorenwerke Biersch GmbH | 1. Projektmanagement 2. Netzwerkanalyse 3. Passwortüberprüfung | |
| 24 Wi | FIA-1P Lösung | Kapazitätsmessung von Akkus | 1. Klassendiagramm 2. Datenbank 3. Projektmanagement und Kostenrechnung | Aufgabe 1.3 ist mit 1.2 bereits gelöst? |
| 24 Wi | FIA-2E Lösung | Kapazitätsmessung von Akkus | 1. HTML-Formular 2. Methoden implementieren 3. Datenübertragung und Auswertung | Serielle Schnittstelle Ohmsches Gesetz |
| 24 Wi | FIS-1K | Netzwerk einer Markthalle | 1. Switches und WLAN 2. MQTT 3. Datenbank 4. Projektmanagement | |
| 24 Wi | FIS-2A | Xperts4u | 1. Switches konfigurieren 2. DMZ einrichten 3. Online Formular erstellen 4. Projektmanagement | |
| 25 So | FIA-1P Lösung | Buchungssystem für Carsharing-Anbieter | 1. Klassendiagramm, Implementieren 2. Datenbank 3. Verschlüsselungsverfahren | |
| 25 So | FIA-2E Lösungsideen | Bestellsystem für die Mensa einer Schule | 1. Web Design 2. Datenbank 2.2.2 Struktogramm 3. Kostenrechnung | Struktogrammaufgabe war sehr verwirrend. |
| 25 Wi | FIA-1P Lösungsversuch | Arztpraxis neu ausstatten | 1. Entwurfsmuster 2. Datenbank 3. Netzwerkinfrastruktur und Datensicherheit | |
| 25 Wi | FIA-2E | Arztpraxis neu ausstatten | 1. Web-Frontend 2. IoT MQTT 3. Angebotsvergleich | |
| 25 Wi | FIS-1K | TEMOTec GmbH | 1. Netzwerk planen 2. Virtualisierungsplattform 3. Operational Technology planen 4. Datenbank erstellen 5. Projektplanung | |
| 25 Wi | FIS-2A | Klammer OHG | 1. Netzwerk planen 2. Fehleranalyse 3. IT-Sicherheit planen 4. Switch über REST-API abfragen 5. Kostenkalkulationen |
