Lernfeld 5 Flashcards

1
Q

Arten der Softwareanpassung

A
  • Customizing : das Anpassen von Standardsoftware an die individuellen Wünsche des Kunden. Dabei wird der Quellcode nicht verändert. Konfiguration oder Parametrisierung
  • Erweiterungsprogrammierung: wird zur Anpassung einer Standardsoftware genutzt, wenn die Möglichkeiten vom Customizing nicht ausreichen. Dabei wird die Software um individuell entwickelte Programmteile erweitert
  • Neuentwicklung: Reichen die Möglichkeiten von Customizing und Erweiterungsprogrammierung nicht aus, wird die Software komplett neu als Individualsoftware entwickelt.
  • Datenmigration: Bei der Datenmigration wird ein vorhandenes System zur Verwaltung von Daten durch ein neues ersetzt. Dabei müssen die Daten vom Altsystem auf das neue System übertragen werden.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Projektphasen in Softwareentwicklung

A
  • Projektstart: Bedarf und Nutzen des geplanten Projektes werden entschieden
  • Projektplannung: . Inhalt, Zeit, Budget, benötigte Ressourcen, Qualität, Kommunikation, Risiko, Stakeholder, Teilprojekte
  • Projektdurchführung: realisieren
  • Projektkontrolle: erfolgt parallel zur Durchführungsphase und stellt gleichzeitig auch eine eigene Phase dar. Dabei steuert und überwacht der Projektleiter alle relevanten Projektaktivitäten.
  • Projektabschluss: allen nötigen Unterlagen, z.B. der Kundendokumentation, dem Kunden übergeben. Wenn dieser die Software abgenommen hat, wird das Projekt beendet.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Gleitkommazahlen nach IEEE 754/IEC 60559

A

Die Darstellung der Gleitkommazahlen ist in der IEEE 754-2008 für 32, 64 und 128 Bit definiert. Die binäre Form einer Gleitkommazahl entspricht: Vorzeichen (V) + Exponent (E) + Mantisse (M) und ist als Standard festgelegt. Die Genauigkeit der Gleitkommazahl hängtdavon ab, wie viele Bit die Mantisse umfasst.

32-Bit Gleitkommazahl: 1 Bit Vorzeichen – 8 Bit Exponent – 23 Bit Mantisse

64-Bit Gleitkommazahl: 1 Bit Vorzeichen – 11 Bit Exponent – 52 Bit Mantisse

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Kenngrößen der digitalen Abbildung von Audiodaten

A

Die Sampling-Rate gibt die Anzahl der Messungen pro Sekunde an

Die Sampling-Tiefe gibt an, wie viele Bit pro gespeichertem Ton verwendet werden.

Die Anzahl der Tonkanäle bestimmt, ob Raumklänge gespeichert werden oder nicht. Je höher die Anzahl der Kanäle ist, umso realistischer wird das Hörerlebnis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Unterscheidung der Datenquellen in Primärdaten und Sekundärdaten

A
  • Primärdaten sind Daten, die vom Unternehmen eigenständig erhoben werden. Meistens sind diese Daten noch nicht vorhanden und müssen erst gesammelt werden. sehr zeit- und kostenintensiv. Dafür sind die Daten dann in aller Regel auch sehr aktuell und genau auf die Problemstellung bezogen.
    Quellen: * Mündliche oder schriftliche Befragung * Interview * Fragebogen * Computergestützte Befragung * Beobachtung
  • Sekundärdaten wurden bereits früher für ähnliche oder andere Zwecke erhoben. Sie haben den Vorteil, schnell verfügbar zu sein und sind oft kostengünstiger und von einer Qualität, die eine eigene Analyse nicht erreichen kann. Häufig sind diese Daten jedoch nicht aktuell oder für das Problem nur bedingt geeignet. Auch die Zuverlässigkeit der Daten ist nicht immer einfach zu beurteilen.
    Quellen: * Unternehmensinterne Datenquellen * Datenbanken * Vertriebserfolgsanalyse
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Bit
Byte
Halb-Byte oder Nibbel
Word
Double Word

A

Kleinste Einheit ; kann nur zwei Zustände annehmen

Bit-Folge aus 8Bit ; neben dem Bit die gebräuchlichste Dateneinheit

Bit-Folge aus 4Bit oder ein halbes Byte

Entspricht auf den meisten Systemen einer Länge von 2Byte oder 16Bit

Entspricht auf den meisten Systemen einer Länge von 4Byte oder 32Bit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Phasen des Softwareentwicklungsprozesses nach IEEE-Standard 12207

A

Anforderungsanalyse und Erstellung einer Spezifikation: Ist-Zustände erfasst, Lastenheft, Pflichtenheft
-> Design (Entwurf): die Software mithilfe von Modellen entworfen
-> Umsetzung (Implementierung): die eigentliche Programmierung der Software in der gewählten Programmiersprache
-> Testen: , z.B. Modul-, Integrations-, System- und Akzeptanztests, durchgeführt.
-> Dokumentation: alle notwendigen Dokumente erstellt bzw. geordnet.
-> Auslieferung: die Software dem Auftraggeber bzw. Anwender zur Verfügung gestellt und gegebenenfalls installiert und konfiguriert.
-> Wartung und Support: Fehler zu beheben, die Effizienz zu verbessern oder Anpassungen an neue Anforderungen vorzunehmen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wasserfallmodell

A

Wasserfallmodell ist ein lineares Vorgehensmodell. Es ist in verschiedene Phasen unterteilt, welche nacheinander abgearbeitet werden.

Vorteile * Anforderungen sind präzise definiert. * Phasen sind klar voneinander abgegrenzt. * Relativ einfache Planung und Kontrolle möglich. * Anfallende Kosten und benötigte Zeiten lassen sich relativ einfach kalkulieren. * Entwicklung wird ausführlich dokumentiert.

Nachteile * Komplexe Softwareprojekte lassen sich nur schwer in klar abgegrenzte Phasen unterteilen. * Geringer Spielraum für Anpassungen aufgrund veränderter Anforderungen. * Der Auftraggeber ist nicht in den Entwicklungsprozess eingebunden. * Fehler werden teilweise erst am Ende des Entwicklungsprozesses erkannt.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Das Spiralmodell

A

ist im Gegensatz zum Wasserfallmodell ein iterativer Prozess, d. h. ein Prozess, in dem sich bestimmte Phasen stets wiederholen. Damit sollen die Projektrisiken minimiert werden.

Vorteile * Es besitzt eine hohe Flexibilität hinsichtlich geänderter Anforderungen. * Eine unabhängige Planung und Budgetierung der einzelnen Zyklen sind möglich. * Es wird eine flexible, rein risikoorientierte und dennoch kontrollierte Reaktion auf den momentanen Projektstand ermöglicht. * Eine integrierte Qualitätssicherung ist gewährleistet.

Nachteile * Auch dieses Modell ist durch die linearen Zyklen schlecht zu parallelisieren. * Die Risikobewertung ist schwierig durchzuführen. * Es besteht ein hoher Managementaufwand.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Das V-Modell

A

strukturiert den Softwareentwicklungsprozess ähnlich wie das Wasserfallmodell in einer sequenziellen Abfolge von Phasen. Ein wesentlicher Unterschied besteht in der Zusammengehörigkeit von Entwicklungsphasen und Tests.

Vorteile: * Verbesserung der Kommunikation zwischen den Beteiligten * Minimierung der Projektrisiken * Gewährleistung von Qualität * Eindämmung der Gesamtkosten für das gesamte Projekt * Verbesserung der Informationssicherheit * Für große und sehr große Projekte geeignet

Nachteile: * Komplexität und Umfang des Modells * Parallelisierung von Aufgaben ist schwierig * Änderungswünsche lassen sich nicht leicht integrieren * Abgrenzung verschiedener Projektphasen funktioniert schlecht * Überbetonung der Dokumentenerstellung * Für kleine Projekte ungeeignet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Scrum

A

Die Grundannahme bei diesem Modell ist, dass die Entwicklung einer Softwarenicht von Anfang bis Ende präzise durchgeplant werden kann. Deshalb erfolgt die Produktentwicklung iterativ (= wiederholend) in Feedback-Schleifen von wenigen Wochen, den sog. Sprints.

Vorteile * Wenige Regeln und leicht verständlich * Kurze Kommunikationswege * Hohe Flexibilität * Hohe Effektivität durch Selbstorganisation * Hohe Transparenz durch regelmäßige Meetings und Backlogs * Kontinuierlicher Verbesserungsprozess * Geringer Administrations- und Dokumentationsaufwand

Nachteile * Kein Gesamtüberblick über die komplette Projektstrecke * Hoher Kommunikations- und Abstimmungsaufwand * Wenige konkrete Handlungsempfehlungen * Erschwerte Koordination mehrerer Entwicklungsteams bei Großprojekten * Potenzielle Unvereinbarkeit mit bestehenden Unternehmensstrukturen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

DevOps Ansatz und Vor- und Nachteile

A

Es werden die agilen Methoden der Entwicklung mit den stabilen Methoden des Betriebs von Software vereint.

Vorteile * Schnelleres Time-to-Market * Hohe Liefertreue * Kurze Kommunikationswege * Transparentes Arbeiten * Kürzere Problemlösungszeiten * Erwartungen des Auftraggebers können präzise erfüllt werden * Verbesserter Support

Nachteile * Potenzielle Unvereinbarkeit mit bestehenden Unternehmensstrukturen * Mitarbeiter müssen teilweise massiv umdenken und sich an neue Methoden und Tools gewöhnen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Nichtfunktionale Qualitätsanforderungen

A

Benutzbarkeit
Effizienz
Zuverlässigkeit
Änderbarkeit
Übertragbarkeit

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Vorteile von Funktionen in Programmieren

A

Übersichtlichkeit: Komplexe Programme werden in kleine Teilprogramme zerlegt, damit die Komplexität heruntergebrochen wird. So ist der Kontrollfluss leichter zu erkennen.

Vermeidung von Redundanzen (Wiederholungen) im Quellcode: WiederkehrendeProgrammteile sollen nicht immer wieder neu programmiert, sondern an einer Stelle angeboten werden. Änderungen an der Funktionalität oder die Suche nach Fehlern lassen sich leichter durchführen.

Hohe Wiederverwendbarkeit von Quellcode: Programmteile, die einmal geschrieben wurden, können auch in andere Programme eingebunden werden. So spart man Entwicklungsaufwand.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Stand-alone-Datenbank vs File-Share-Datenbank vs Cline-Server-Datenbank

A

Bei einer Stand-Alone-Datenbank befinden sich sowohl die Datenbank als auch das Datenbankprogramm auf einer Workstation.

Bei der File-Share-Datenbank befindet sich die Datenbank auf dem Server, das Datenbankprogramm läuft auf jedem einzelnen Client.

Bei einer Client-Server-Datenbank befinden sich Datenbank und Datenbankmanagementsystem auf dem Server, während auf den Clients nur ein Programm als Zugriffsoberfläche ausgeführt wird.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Datenredundanz
Datenkonsistenz
Normalisierung Begriffe

A

Datenredundanz besteht, wenn dieselbe Information mehrfach in einer Datenbank vorhanden ist.

Als Datenkonsistenz wird die Korrektheit der Daten bezeichnet. Daten sind konsistent, wenn sie widerspruchsfrei sind.

Normalisierung ist ein Verfahren zur Verringerung von Datenredundanz in relationalen Datenmodellen, verbunden mit den Zielen Anomalien zu vermeiden und die Datenkonsistenz zu erhöhen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Änderungsanomalie
Einfügeanomalie
Löschanomalie

A

Ändert etwa ein Mitarbeiter seinen Namen, muss diese Änderung an allen Stellen vorgenommen werden.

Soll beispielsweise ein Mitarbeiter erfasst werden, muss ihm auch eine Abteilung zugewiesen werden.

Eine Löschanomalie tritt auf, wenn beim Löschen bestimmter Daten ungewollt andere Daten gelöscht werden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Data Definition Language (DDL)
Data Manipulation Language (DML)
Data Control Language (DCL)
Transaction Control Language (TCL)

A

umfasst alle Anweisungen, die verwendet werden, um Datenstrukturen und verwandte Elemente zubeschreiben, zu ändern oder zu entfernen. Zum Beispiel können damit Tabellen erzeugt oder vorhandene Tabellenstrukturen verändert werden. Zu den SQL- Befehlen der DDL gehören u. a. CREATE TABLE oder DROP TABLE.

alle Anweisungen an das Datenbanksystem, die dazu dienen, grundlegende Operationen an Datensätzen auszuführen, z.B. das Auswählen von Datensätzen aus einer Tabelle: UPDATE oder INSERT INTO.

Befehle, um an Nutzer der Datenbank Berechtigungen zu vergeben oder ihnen Berechtigungen zu entziehen. Typische Befehle der DCL sind u. a. GRANT und REVOKE.

stellen die Datenintegrität sicher, indem logisch zusammenhängende Anweisungen entweder komplett oder gar nicht ausgeführt werden. Zu den SQL-Befehlen der TCL gehören u. a. COMMIT oder ROLLBACK.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Testprozess von Software

A

Testplannung - Testentwurf - Testvorbereitung - Testdurchführung - Testauswertung - Testabschluss

20
Q

Statische Testverfahren:
Inspektion
Review
Walkthrough
Audit
Statische Code-Analyse

A

Inspektion: Stark formalisiertes Verfahren, bei dem der Programmcode nach genau festgelegter Vorgehensweise durch ein Gutachterteam untersucht wird

Review: Ist im Vergleich zur Inspektion weniger formal und durch weniger Aufwand gekennzeichnet.

Walkthrough: Unstrukturierte Vorgehensweise ; der Entwickler präsentiert sein Programm und ein oder mehrere Gutachter stellen spontan Fragen.

Audit: Strukturiertere Vorgehensweise als bei Walkthrough ; der Entwickler präsentiert sein Programm und der oder die Gutachter stellen Fragen nach einem vorher festgelegten Prüfkatalog.

Statische Code-Analyse: Hier werden mehr die nicht funktionalen Aspekte des Programms beachtet.

21
Q

Dynamische Testverfahren
Blackbox Test
Whitebox Test

A

Beim Black-Box-Testing bewertet der Tester die Funktionalität der Software, ohne detaillierte Kenntnisse über ihre internen Arbeitsweisen oder Code-Struktur zu haben.

Beim White-Box-Testing bewertet der Tester die interne Struktur und den Code der Software, um ihre Korrektheit, Effizienz und Einhaltung von Codierungsstandards zu bewerten.

22
Q

Dynamischen Testverfahren Vor- und Nachteile.

A

Vorteile
* Programm wird tatsächlich ausgeführt ; so können u. a. auch Laufzeitfehler gefunden werden * Zusammenspiel von einzelnen Systemteilen kann gut getestet werden * Testen nicht funktionaler Qualitätsanforderungen wie das Zeitverhalten oder der Ressourcenverbrauch möglich

Nachteile * Lauffähige Testumgebung ist Voraussetzung ; muss manchmal erst aufwendig geschaffen werden * Testen nur jener Programmteile, welche auch ausgeführt werden * Nur das Fehlverhalten als solches wird aufgedeckt ; der Grund dafür muss später genau spezifiziert werden, z.B. durch Debugging

23
Q

Statische Testverfahren Vor- und Nachteile

A

Vorteile
* Frühe Fehlererkennung * Fehlerzustände werden direkt aufgedeckt * Verringert die Anzahl aufwendiger und teurer dynamischer Testtechniken * Prüft auch auf Programmierkonventionen, Standards, Design * Prüfung erfasst auch nicht funktionale Qualitätskriterien wie die Wartbarkeit * Wissensaustausch zwischen Teammitgliedern

Nachteile
Nachteile * Weniger geeignet für Integrations- und Systemtests * Fehler, welche nur bei der Programmausführung entstehen, z.B. Laufzeitfehler, werden nicht gefunden

24
Q

Testarten:
Funktionalität

A

Funktionstests beziehen sich darauf, ob die Software die in der Anforderungsspezifikation gestellten funktionalen Anforderungen erfüllt.
Testbereiche
* Richtigkeit: Fähigkeit, vereinbarte Ergebnisse oder Wirkungen zu liefern
* Angemessenheit: Eignung der Funktionen für die festgelegten Aufgaben
* Interoperabilität: Fähigkeit, mit den vorgegebenen Systemen zusammenzuwirken
* Ordnungsmäßigkeit: Erfüllung anwendungsspezifischer Normen, Vereinbarungen und gesetzlicher Bestimmungen

25
Q

Testarten:
Zuverlässigkeit

A

Zuverlässigkeitstests prüfen, ob das Testobjekt ein bestimmtes Leistungsniveau unter bestimmten Bedingungen über einen bestimmten Zeitraum aufrechterhalten kann.
Testbereiche
* Reife: Häufigkeit des Versagens durch Fehlerzustände
* Fehlertoleranz: Fähigkeit, ein spezifiziertes Leistungsniveau bei Softwarefehlern oder Nichteinhaltung der spezifizierten Schnittstellen zu bewahren
* Wiederherstellbarkeit: Fähigkeit, bei einem Versagen das Leistungsniveau wiederherzustellen und die direkt betroffenen Daten wiederzugewinnen

26
Q

Testarten:
Benutzbarkeit

A

Benutzbarkeitstests (Usability-Tests) prüfen typischerweise, wie gut und wie einfach ein System für die Benutzer zu bedienen ist.
Testbereiche
* Verständlichkeit: Aufwand für den Benutzer, das Konzept und die Anwendung zu verstehen
* Erlernbarkeit: Aufwand für den Benutzer, die Anwendung zu erlernen (z.B. Bedienung, Ein- und Ausgabe)
* Bedienbarkeit: Aufwand für den Benutzer, die Anwendung zu bedienen

27
Q

testgetriebenen Entwicklung (Test Driven Development – TDD)

A

Schreiben eines Tests : Zuerst wird ein Test geschrieben, welcher natürlich meistens fehlschlägt. Es ist ein Grundprinzip der TDD, die einzelnen Tests noch vor der eigentlichen Programmierung der Komponenten zu schreiben (Test First).

Implementierung des Programmcodes: Danach wird genauso viel an Programmcode geschrieben, dass der Test erfolgreich durchlaufen wird. Dabei wird erst einmal die einfachste Lösung implementiert, durch die der Test erfüllt werden kann.

Refaktorisierung der Lösung: Zum Schluss wird der Programmcode nochmals überarbeitet und aufgeräumt, um eventuelle Redundanzen zu vermeiden und die Struktur zu verbessern.

28
Q

Testgetriebene Softwareentwicklung Vorteile und Nachteile

A

Vorteile
* Software auf qualitativ hochwertigem Niveau * Software weniger wartungsintensiv und fehleranfällig * Fehleranalyse und eventuelle Wartungsarbeiten sind einfacher und schneller durchzuführen * Sowohl Code als auch Systemarchitektur sind sauber strukturiert und klar verständlich * Effektive Vermeidung von Redundanzen und nicht benötigten Codebestandteile

Nachteile
* Setzt nur auf der Ebene der Komponenten und Units an ; Integrations- und Systemtest nicht berücksichtigt * Viele kleine Einzeltests, welche eventuell im Entwicklungsprozess der Software ihren Sinn verlieren, aber trotzdem nicht entfernt werden * Kein ganzheitlicher Blick, da immer nur kleine Teilausschnitte betrachtet werden * Entwicklung einer guten Systemarchitektur schwierig

29
Q

Was macht Compiler?

A

ein Computerprogramm, das Quellcode in eine ausführbare Form übersetzt, die von einem Computer verstanden und ausgeführt werden kann.

Vor- und Nachteil: schneller bei der Programmausführung, plattformabhängig

30
Q

Was macht Interpreter?

A

ein Computerprogramm, das Quellcode zeilenweise ausführt, während es ihn liest. Im Gegensatz zum Compiler, der den gesamten Quellcode in eine ausführbare Form übersetzt, interpretiert ein Interpreter den Code während der Laufzeit.

Vor- und Nachteil: plattformunabhängig, langsamer bei der Programmausführung

31
Q

Was macht Linker?

A

ein Computerprogramm, das einzelne Programmmodule zu einem ausführbaren Programm zusammenstellt (verbindet).

32
Q

Was ist Kanban Vorgehensmodell

A

Es basiert auf visuellen Workflows, die es Teams ermöglichen, ihre Arbeit zu organisieren, den Arbeitsfortschritt zu verfolgen und Engpässe zu identifizieren.

33
Q

Was ist Extreme Programming

A

Extreme Programming (XP) ist eine Agile-Softwareentwicklungsmethode, die darauf abzielt, hochwertige Softwareprodukte auf effiziente und flexible Weise zu entwickeln. XP legt den Schwerpunkt auf die Zusammenarbeit in kleinen Teams, kontinuierliche Verbesserung und schnelle Reaktion auf Änderungen in den Anforderungen oder im Umfeld des Projekts.

34
Q

Was ist jit compiler und beispiel?

A

steht für “Just-In-Time Compiler” und ist eine Art von Compiler, der Quellcode in Maschinencode übersetzt, während das Programm während seiner Ausführung läuft, im Gegensatz zu einem herkömmlichen Compiler, der den gesamten Code vor der Ausführung übersetzt.
Verbesserung der Leistung und Effizienz führen
Beispiel: V8 JavaScript-Engine

35
Q

Was ist ein Anforderungsspezifikation und Kriterien bei der Erstellung

A

umfasst das Ermitteln, Analysieren, Spezifizieren und Validieren
aller Eigenschaften und Rahmenbedingungen eines Softwaresystems.

Kriterien: Korrektheit, Eindeutigkeit, Prüfbarkeit, Nachverfolgbarkeit

36
Q

Nicht funktionale Qualitätsanforderungen und Beispiele

A

Benutzbarkeit: Benutzerfreundlichkeit der Software definiert. Dabei wird auch berücksichtigt, wie gut der Umgang mit der Software zu erlernen ist.

Zuverlässigkeit: welche Fehlertoleranz die Software haben muss oder wie bei einem Softwareversagen die Daten und alten Zustände wiederhergestellt werden können.

Effizienz: Hier werden die Anforderungen an das Zeit- und Verbrauchsverhalten der Software definiert.

Änderbarkeit: Hier werden die Anforderungen beschrieben, wie gut und schnell die Software in der Zukunft
an neue Anforderungen angepasst werden kann.

Übertragbarkeit: Hier werden Anforderungen beschrieben, wie schnell und mit wie viel Aufwand die
Software auf neue Umgebungen übertragen werden kann.

37
Q

Lastenheft Inhalte

A

Ausgangssituation
Rahmenbedingungen
Funktionale Anforderungen
Nichtfunktionale Anforderungen
Schnittstelle
Lieferumfang
Abnahmekriterien

38
Q

Unterschiede zwischen Stand-alone-, File-Share- und Client-Serverdatenbank

A

Bei einer Stand-Alone-Datenbank befinden sich sowohl die Datenbank als auch das Datenbankprogramm auf einer Workstation. in einem kleinen Unternehmen eingesetzt werden, um Kundeninformationen zu speichern und zu verwalten.

Bei der File-Share-Datenbank befindet sich die Datenbank auf dem Server, das Datenbankprogramm läuft auf jedem einzelnen Client. in kleineren Unternehmen oder in Arbeitsgruppen verwendet, in denen mehrere Benutzer auf gemeinsame Daten zugreifen müssen, jedoch keine komplexe Serverinfrastruktur erforderlich ist.

Bei einer Client-Server-Datenbank befinden sich die Datenbank und das Datenbankmanagementsystem auf dem Server, während auf den Clients nur ein Programm als Zugriffsoberfläche ausgeführt wird. in einem Online-Shopsystem verwendet werden, um Produktinformationen, Bestellungen und Kundeninformationen zu speichern.

39
Q

NoSQL Datenbank

A

NoSQL-Datenbanken wurden entwickelt, um sehr große Datenmengen, wie sie z. B. im Big-Data Bereich
anfallen, effizient zu speichern und zu verarbeiten. Sie sind meistens auf eine Aufgabe spezialisiert und
werden vor allen dort eingesetzt, wo relationale Datenbanken an ihre Grenzen stoßen.

40
Q

Erläutern Sie den Unterschied zwischen Alpha- und Betatest anhand eines Beispiels

A

Der Alpha-Test ist die erste Phase des Softwaretests und wird normalerweise von internen Entwicklern oder einem begrenzten Nutzerkreis durchgeführt.
Beispiel: Ein Softwareunternehmen entwickelt ein neues Betriebssystem. Sie führen einen Alpha-Test durch, bei dem interne Entwickler das Betriebssystem auf verschiedenen Geräten testen, um Fehler zu finden und zu beheben, bevor es für einen Betatest an externe Benutzer weitergegeben wird.

Beta-Test: auf externe Benutzer ausgerichtet ist, die nicht direkt mit der Entwicklung der Software verbunden sind.
Beispiel: Nachdem das Betriebssystem aus der Alpha-Testphase hervorgegangen ist und eine gewisse Stabilität erreicht hat, führt das Unternehmen einen Betatest durch, bei dem eine ausgewählte Gruppe von Nutzern das Betriebssystem auf ihren Geräten testet und Feedback zur Benutzererfahrung liefert.

41
Q

Nennen 4 Testdokumenten

A

Testkonzept, Testfallspezifikation, Testprotokoll, Testabschlussbericht

42
Q

Anforderungen an eine Softwaredokumentation und begründen Sie warum diese wichtig sind.

A
  • Die Informationen sind zielgruppengerecht aufbereitet: Dies gewährleistet, dass die Leser die Informationen leicht verstehen und anwenden können, was zu effizienterem Einsatz der Software führt.
  • Die Informationen werden schnell und einfach gefunden: Dies spart Zeit und reduziert Frustration, da Benutzer nicht lange suchen müssen
  • Das Dokument ist schnell zu lesen: Ein zu langes oder unübersichtliches Dokument kann Benutzer überfordern und sie davon abhalten, die benötigten Informationen zu finden oder zu verstehen.
43
Q

Vorteil und Nachteil des Erstellens der Benutzerdokumentation durch den Entwickler

A

Vorteil: Entwickler kennt sich mit dem Programm aus und kann es somit Details besser beschreiben.

Nachteil: Entwickler können zu viele technische Details beschreiben und erwähnen, welche dem Anwender
nicht eigentlich weiterhelfen.

44
Q

Aufgaben von Datenbankmanagementsystem

A
  • organisiert Daten effizient in Tabellen, Zeilen und Spalten und speichert sie auf Datenträgern wie Festplatten oder SSDs.
  • ermöglicht den Benutzern, auf die gespeicherten Daten zuzugreifen und sie zu verwalten
  • implementiert Mechanismen zur Sicherstellung der Integrität und Konsistenz der Daten
  • bietet Sicherheitsmechanismen wie Authentifizierung und Autorisierung, um sicherzustellen, dass nur autorisierte Benutzer auf bestimmte Daten zugreifen können.
45
Q

UML-Diagrammarten Klassifizierung

A

Verhaltensdiagramme:
+ Anwendungsfalldiagramm
+ Aktivitätsdiagramm
+ Sequenzdiagramm

Strukturdiagramme:
+ Klassendiagramm
+ Objektdiagramm
+ Komponentendiagramm