48
ASE (Fach) / Beuche (Lektion)
Teil 1
Diese Lektion wurde von cshell erstellt.
Diese Lektion ist leider nicht zum lernen freigegeben.
Anzeige
- Nenne 3 Programmierparadigmen - Imperative Prog. - Funktionale Prog. - Objektorientierte Prog.
- Imperative Prog. - 3 Prog. Sprachen - Java - C - Basic
- Funktionale Programmierung - 3 Sprachen - Java - C++ - JavaScript
- Objektorientierte Programmiersprache - 3 Sprachen - Java - C++ - PHP
- Was zeichnet die funktionale Programmiersprache aus (1 nennen)? (1) - Unterstützung von Lambda Ausdrücken
- Berechnungsformeln McCabe (2) - Binärverzweigungen +1 - Kanten - Knoten + 2* Endpunkte
- Was sagt McCabe aus? (1) Hoher Wert, hohe Komplexität
- Nenne drei Auswahlkriterien Programmiersprache (3) - Bekanntheit des Sprache im Team - Wiederverwenbarkeit der Sprache - Integrationsaufwand
- Teilaspekte des Configuratoinsmanagement nennen (4) - Versionsmanagement - Change Management - Buildmanagement - Release Management
- Versionsmanagement - was ist dein Reposetory? (1) - Die Datenbank, die Versoinierung hält
- Anzeige
- Was ist ein CVCS? + 2 Beispiele - Zentrales Verionierungssystem - Daten liegen auf einem zentralen Server - BSP: SVN, CVS
- Was ist ein DVCS? + 2 Beispiele - Dezentrales Versionierungssystem - Daten liegen auf mehreren Repos verteilt - git, Bazaar
- DVCS vs CVCS Zwei Vor- und Nachteile für DVCS nennen. (4) - Vorteile -- Flexible Zusammenarbeit -- höhere Ausfallsicherheit - Nachteile -- Komplexe bedienung -- Mehr lokale Daten bei dem Entwickler
- Warum ist vollständige Pfadabdeckung (C2a) nicht möglich? (1) - Es müssten alle Schleifen mit allen möglichen Kombinationen durchlaufen werden - Zu hoher Testaufwand
- Was ist der unterschied zwichen 2 Wege Digg Merge und 3 Wege Diff Merge? (1) - Es wird ein gemeinsamer Vorgänger der zu vergleichenden Datei genutzt
- Was sind Voraussetzungen für Changemanagement? - Änderungen müssen dokumentiert und begründet sein
- Basisiprozess für das Changemanagement (4) - Änderungsindentifizierung - Änderungs Vorschläge - Anpassungen der Software - Neues System/neue Version
- Ablauf von Continuous Integration (4) - Daten aus dem VMS auschecken - überführen in das Build und Testsystem übertragen - Änderungen in das Autom. Build- und Testsystem einspielen - Applikation im Build-Server bauen
- Nenne 3 Arten der Problembehandlung bei der Softwareevolution. (3) - Einfach machen, Auswrikungen werden ignoriert - Produktvariationen anbieten - Schrittweise Migration
- Was ist DevOps? (2) - Die Verknüpfung der Software-Entwickung und der Software-Nutzung - Erheblicher Geschwindigkeitszuwachs in der Entwicklung durch gute Vernetzung
- Nenne 4 Gründe für Änderungen in der Software - Neue oder geänderte Funktionalitäten in der Software - Fehler müssen behoben werden - Performanceverbesserungen - Anpassungder Hardwareumgebung
- Nenne zwei nachteile, die sich durch Veräderung von Software ergeben können. - Migrationsaufwand - Verlust von Funktionen - Risiko einer Auszeit
- Was ist die teuerste Phase des Softwarelebenszykluses? (1) Die Wartung
- Produktlebenszyklus 5 Schritte nennen. - Konzeption - Entwicklung - Produktivgang - Pflege und Unterstützung - Absetzen/Entsorgen
- Bedingungen für Buildmanagement? (3) - Voll automatisiert - reproduzierbar - unabhängig von lokalen Konfigurationen
- Welche Komponenten beinhaltet das autom. Buildsystem? (3) - Buildsystem/-server - Testsystem - Validierung des Builds
- Zwei Architekturarten von autom. Buildsystemen (2) - Monolithischer Ansatz - Unabhängige Microservices
- Was ist eine Maven POM-Datei? (3) - Beschreibt alle - Funktionen - Einstellungen - Metadaten
- Was bedeutet Convention over Configuration? (1) - Es müssen nur Dinge spezifiziert werden, die von der Konvention abweichen
- POM - Befehle (4) - Dependency - Abhängigkeiten laden - javadoc - Doku wird erzeugt - build - compilieren - Testfälle ausführen
- Anzeige
- Maven Repository (2) - hier sind die Pakete hinterlegt um Abhöngigkeiten aufzulösen - lokal oder global
- Was macht "mvn clean install" ? (2) - startet maven - installiert angegebenes paket
- Was ist grob der maven lifecycle? (6) - initialisierung - compilierung - testen - packen - installen - ausrollen
- Was sind die beiden Komponenten bei mvn clean:clean install? (1) Phase : goal
- Was sind zwei Vor- und zwei nachteile bei der Nutzung von maven? Vorteile: - Reproduzierbare und plattformunabhängige Builds - Leichte Automatisierung Nachteile: - höhere Komplexität - Abhängigkeit von Onlineressourcen
- Kohäson und Kopplung Was ist das Ziel? (2+2) - Starke Kohäsion (Modularisierung) - Schwache Kopplung (Kommu. über Schnittstellen)
- Nenne 5 Testarten in korrekter Reihenfolge (pyramide) (5) - Modultest (einzelner Module) - Integrationstest (Mehrer Modue) - Systemtest (In Gesamtsystem) - Abnahmetest (druch Kunden) - Feldtest
- Blackbox- vs Whiteboxtest? (3) Whitebox: - Setzt Kenntnis über Software voraus - Hohe automatisierung Blackbox: - Es wird nur das Außenverhalten getestet
- Wozu Integrationstest? (2) - Aufdecken von Seiteneffekten - Probleme mit Schnittstellen
- Wozu Systemtest? (2) - Test des gesamten Systems - Meist als Blackboxtest
- Test vs Debugg (2+2) Situation + Ziel Test: - Ausgangssituation: Ob ein Fehler existiert ist nciht bekannt - Ziel: Feststellen ob ein Fehler existerit Debugg: - Ausgangssituation: Es ist bekannt, dass ein Fehler existiert - Ziel Fehler lokalisieren
- Warum ist ein vollständige Testabdeckung nciht möglich? (2) - Es kann nur eine endliche Anzahl Testfälle ausgeführt werden - Zu hohe Kosten ggü. Nutzen
- Vollständige Pfadüberdeckung - Mögliche Kompromisse aufführen (2) - C2b: Schleifen werden nur ein Mal durchlaufen - C2c: Schleifen werden midnestens k-mal durchlaufen
- Was ist Softwareökonomie? (1) - Grundlage der Verbesserung der Wertschöpfugn durch Investition in Software
- Drei Arten mit Software Geld zu verdienen. - Software an andere Verkaufen - Linzenzierung der eigenen Software an andere - Weiterverkauf von Software
- Drei Eigenschaften einer Lizenz. -Berechtigt zur Nutzung -Beschränkt die Haftung bei Schäden -überträgt nicht den Eigentum des Produkts
- Drei Lizenzmodelle. - Pro Nutzer - Pro PC - Für eine Nutzungsdauer
- Nenne drei Faktoren für die Impact-Analyse. (3) - Anzahl der betroffnen Nutzer - Kosten der Änderung - Benefit der Änderung