Lernfeld 8 Flashcards

1
Q

Vorteile und Nachteile von Agile Vorgehensmodelle

A

Vorteile: schnelle, flexible Projekte; besser den Bedürfnisse der Kunden entsprechen

Nachteile: zeitaufwendig für Meetings; wird sehr viel getestet, was zu höhe Kosten führen; Projektkosten sind schwer zu kalkulieren

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

Vorteile und Nachteile von Kanban Vorgehensmodelle

A

Vorteile
* Gibt schnell und zuverlässig eine Übersicht über den Projektfortschritt und akute Probleme
* Einzelne Arbeitsschritte werden schneller bearbeitet * Reduziert den Managementaufwand
* Lässt sich auch sehr gut außerhalb der Softwareentwicklung für andere Bereiche, wie Wartung oder Systemadministration einsetzen
* Kann sehr gut mit anderen Managementmethoden kombiniert werden
* Lässt sich sehr schnell und problemlos einführen
* Erhöht die Motivation der Mitarbeiter

Nachteile
* Softwareentwickler müssen über breite fachliche Fähigkeiten verfügen, für den Fall, dass ein Teammitglied ausfällt oder überlastet ist
* Zu lösendes Problem muss sich in einzelne voneinander abgrenzbare Einzelaufgaben einteilen lassen
* Gutes Zeitmanagement lässt sich schlechter realisieren als in anderen Vorgehensmodellen
* Für größere Projekt eher ungeeignet

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

Vor- und Nachteile von Extreme Programming

A
  • Problemorientierte Entwicklung * Komplexe Softwareprojekte werden beherrschbar * Kürzere Entwicklungszeiten * Einsparung von Zeit und Kosten * Aktive Einbindung des Kunden * Relativ einfache Einzelschritte * Zeitnahe Integration von Kundenwünschen * Ermöglicht eine hohe Qualität der Software * Gewährleistet eine gute Wart- und Erweiterbarkeit der Software
  • Für sehr kleine Softwareprojekte eher ungeeignet * Sehr hohe Anforderungen an die Fachlichkeit und die Qualität der Entwickler * Kunden haben meist nicht ausreichend Zeit, um sich in der geforderten Form einzubringen * Programmierer werden dazu verleitet, Aufgaben sehr schnell fertigzustellen, was teilweise in dem Auslassen des Testens endet * Kunden müssen Vertrauen in die Kompetenz und Kontinuität der Entwickler haben
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wann SOAP und wann REST angewendet werden sollte

A

SOAP-Webservices bieten integrierte Sicherheit und Transaktions-Compliance, was vielen Unternehmensanforderungen entspricht, sind aber aufwendiger zu erstellen. SOAP ist in den Augen vieler Entwickler komplex und schwer zu handhaben. REST-API sind ideal für moderne Anwendungen geeignet, z.B. IoT oder mobile Anwendungen. REST kann allein mit den vier HTTP- „Operationen“ GET, POST, PUT und DELETE fast alle Aufgaben ausführen und muss zum Bereitstellen der Antwort kein XML verwenden. Damit ist REST zukunftsorientierter und viele öffentliche Schnittstelle verfolgen diesen Ansatz. Da SOAP aber älter ist als REST, nutzen heutzutage noch viele Altsysteme SOAP.

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

Data Warehouse vs Data Lake

A

ein Data Warehouse (Datenlager) eine zentrale Datenbank ist, bei der Daten aus mehreren, Datenquellen zusammenführt werden. Diese werden dann so aufbereitet, verarbeitet und gespeichert, dass eine komfortable Datenanalyse erfolgen kann. Dazu werden diese i. d. R. in ein strukturiertes und striktes Datenmodell eingeordnet. Ein Data Warehouse ist besonders auf die Analyse großer Datenmengen optimiert.

Während in einem Data Warehouse überwiegend strukturierte Daten verarbeitet und ausgewertet werden, fallen im Big-Data- Umfeld eine Vielzahl an unstrukturierten Daten an.
Data Lake bietet eine hohe Speicherkapazität, um große Datenmengen zu speichern, ist sehr flexibel und kann Daten aus sehr vielfältigen Quellen verarbeiten und auswerten. Dafür wurden moderne und fortgeschrittene Analyseverfahren entwickelt.

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

Überladen von Methoden (objektorientierte Programmierung)

A

bedeutet, dass es mehrere Methoden mit demselben Methodennamen in einer Klasse geben darf. Die Methoden müssen aber trotzdem zu unterscheiden sein. Dies kann auf zwei Arten geschehen: 1. Der Datentyp mindestens eines Übergabeparameters ist anders als in den übrigen gleichnamigen Methoden. 2. Die Anzahl der Übergabeparameter ist unterschiedlich.

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

Überschreiben von Methoden (objektorientierte Programmierung)

A

Das Überschreiben von Methoden bedeutet, dass eine Methode einer Basisklasse in der abgeleiteten Klasse neu implementiert (überschrieben) wird.

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

Sechs Sicherheitsprinzip bei der Softwareentwicklung

A

Minimalprinzip: Die Benutzer der Software sollten nur die Berechtigungen bekommen, welche sie für die Erledigung ihrer Aufgaben wirklich benötigen

Separierung von Berechtigungen: Bestimmte Benutzer bekommen nur den Zugriff auf bestimmte Funktionen in der Software

Vollständige Zugriffsüberwachung: Jeder Zugriff auf die Software sollte überprüft werden, um unberechtigten Zugriff zu verhindern.

Mehrere Sicherheitsebenen : Hierbei wird die Software in mehrere Sicherheitsebenen aufgeteilt. Dadurch wird die Gefahr von Single Point of Failure (SPoF) hinsichtlich der Sicherheit verringert.

Sicherer Ausfall: Wenn eine Software ausfällt, sollte sie trotzdem einen sicheren Zustand in den Bereichen der Vertraulichkeit und Integrität aufweisen.

Benutzerfreundliche Sicherheit: Die Sicherheitsmechanismen sollten immer benutzerfreundlich gestaltet sein, um das Benutzererlebnis nicht zu beeinträchtigen. Im anderen Fall ist die Gefahr groß, dass die Benutzer die Sicherheitsmaßnahmen einfach deaktivieren

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

SQL-Injections

A

SQL-Injections entstehen, wenn Benutzereingaben zur Erstellung von SQL-Anweisungen ohne ausreichende Überprüfung verwendet werden. Durch Manipulation der Eingabesyntax führt ein Angreifer unerwünschte Befehle aus und erhält dadurch beispielsweise unbefugten Zugriff auf Daten.

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

Relationale Datenbank vs No-SQL Datenbank

A

Relational Datenbank:
Datentyp und -struktur sind festgelegt. Um neue Attribute hinzuzufügen, muss teilweise die gesamte Datenbank angepasst werden.
Vertikale Skalierung ; ein einzelner Server muss die Leistung des kompletten Datenbanksystems tragen
Bei SQL-Datenbanken werden alle ACID- Regeln wie Atomicity, Consistency, Isolation, Durability umgesetzt.
MySQL, PostgreSQL, Oracle, MS-SQL

No-SQL:
Flexibel ; strukturierte, semistrukturierte und unstrukturierte Daten können zusammen abgespeichert werden, eine vorherige Konvertierung ist nicht notwendig.
Horizontale Skalierung ; durch Hinzufügen von neuen Datenbankservern kann das Datenbanksystem fast beliebig skaliert werden.
Die ACID-Regeln werden meistens nicht unterstützt. Stattdessen wird das BASE- Modell verwendet
MongoDB, Apache HBase, Amazon D ynamoDB,

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

Vorteile und Nachteile von No-SQL Datenbank

A

hochleistungsfähigen, skalierbaren Datenmodellen, die große Datenmengen mit hoher Geschwindigkeit verarbeiten können. Dabei sind diese Datenmodelle sehr flexibel, und dank der Speicherung der Daten auf verteilten Hardware- Clustern sind diese Datenbanklösungen weniger anfällig für Störungen und deutlich preiswerter.

Da die NoSQL-Datenbanken anstatt dem ACID-Modell (Atomicity, Consistency, Isolation und Durability) dem BASE-Modell (Basic Availability, Soft State, Eventual Consistency) folgen, sind eine unmittelbare Konsistenz und Zuverlässigkeit der Daten nicht gegeben. Außerdem fehlen Mechanismen zur Überprüfung der Datenintegrität.
NoSQL-Datenbanken sind auf bestimmte Anwendungsgebiete spezialisiert. Hier funktionieren sie sehr gut. Für andere Anwendungsgebiete bieten sie allerdings eine schlechte Performance.

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

Nachteile einer zu starken Normalisierung

A

die Leistung (z.B. das Antwortverhalten) der Datenbank negativ beeinflussen

Aufgrund der vielen künstlichen Schlüssel und der erforderlichen zusätzlichen Verknüpfungen wird das System komplexer, was zu größerer Fehleranfälligkeit führen kann.

Zusätzliche Schlüssel erfordern zusätzlichen Speicherplatz, stellen also auch eine Art von Redundanz dar.

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

Inhalte, welche im Abnahmeprotokoll enthalten sein sollten

A
  • Ort, Datum, Uhrzeit der Abnahme
  • Teilnehmer und ihre Funktion im Projekt und bei der Prüfung
  • Art der Prüfungen
  • Ergebnisse der Prüfungen
  • Nicht geprüfte Abnahmekriterien
  • Beurteilung, ob der Vertrag erfüllt ist
How well did you know this?
1
Not at all
2
3
4
5
Perfectly