Klausur Flashcards

1
Q

Nennen Sie Reihenfolge des Spiralmodells

A
  1. Kundenanforderungen (funktionale / nicht funktionale) von Platooning
  2. Priorisierung (1-10) oder KO
  3. Clustering z.B. Kommunikation, Platooning, Fahrzeug, Reporting
  4. User Stories analysieren -> Dadurch finden wir neue Anforderungen (Spiralmodells)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist das Spiralmodell des Requirements Engineering?

A

Das Requirements Engineering umfasst drei Hauptaktivitäten. Dabei handelt es sich um die Ermittlung von Anforderungen durch Interaktion mit den Beteiligten (Elicitation and Analysis), die Umwandlung dieser Anforderungen in eine Standardform (Specification) und die Überprüfung, ob die Anforderungen tatsächlich das vom Kunden gewünschte System definieren (Validation). In der Praxis ist die Anforderungserhebung jedoch ein iterativer Prozess, bei dem die Aktivitäten ineinander übergehen.

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

Was ist Agiles Projektmanagement?

A

Agiles Projektmanagement bezeichnet Verfahren, bei denen das Projektteam hohe Toleranzen in Bezug auf Qualität, Umfang, Zeit und Kosten hat und ein sehr hohes Maß an Kundenbeteiligung bei der Erstellung des Projekts erforderlich ist. Methoden: Kanban, Scrum.

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

Eclipse + Scene Builder:
Was ist ein Framework?

A

In der SE ist ein Framework ein Entwicklungsrahmen, der dem Anwendungsprogrammierer zur Verfügung steht, um die grundlegende Architektur der Software zu bestimmen.

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

Was ist DevOps? Zeichnen und erklären können

A

DevOps ist ein Ansatz, der die Prozesse zwischen Softwareentwicklung und operationalen IT-Teams automatisiert und optimiert, damit Software schneller und zuverlässiger erstellt, getestet und freigegeben werden kann.
In einem DevOps-Modell arbeiten Entwicklungs- und Betriebsteams über den gesamten Lebenszyklus von Softwareanwendungen hinweg zusammen - von der Entwicklung und den Tests bis hin zur Bereitstellung und zum Betrieb.

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

Unterschied erklären zwischen Softwareengineer und -entwickler

A

Ein Entwickler weiß, wie man programmiert, und verfügt über die technischen Fähigkeiten, die für die Entwicklung sinnvoller Produkte erforderlich sind. Die Entwickler sind für den gesamten Entwicklungsprozess verantwortlich. Sie arbeiten mit dem Kunden zusammen, um einen theoretischen Entwurf zu erstellen. Dann lassen sie von Programmierern den Code erstellen, der für die ordnungsgemäße Ausführung der Software erforderlich ist.
Ein Software-Ingenieur folgt einem systematischen Prozess, bei dem er die Anforderungen versteht, mit den Stakeholders zusammenarbeitet und eine Lösung entwickelt, die deren Anforderungen erfüllt. Ein Entwickler neigt dazu, allein zu arbeiten. Ein Software-Ingenieur ist Teil eines größeren Teams.

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

Etische Kodex von SEW. Warum vergleichen SEW mit Ärzten?

A
  1. Informatiker sollten ihr Handeln am öffentlichen Interesse ausrichten.
  2. Interessen der Kunden und des Arbeitgebers wahren + Berücksichtigung öffentliches Interesse.
  3. Produkte auf höchstmöglichen Standard aufbauen und halten.
  4. Informatiker sollen persönliche Integrität und unabhängigkeit als Basis ihrer profesionellen Urteilsfähigkeit anstreben.
  5. Management/ Leitung –> Unterstützung von moralischen Handeln in der SW- Entwicklung.
  6. Schütz des Eigentum anderer einschließlich Uhrheberrechte und Patente
  7. Fair mit Kollegen umgehen und sich unterstützen
  8. Informatiker/ SW-Engineer sollen stetig ihre eigenen Kentnisse und Fähigkeiten ihres Berufes erneuern.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Warum ist Softwareengineering so wichtig?

A

Software-Engineering ist wichtig, weil spezifische Software in fast jeder Branche, in jedem Unternehmen und für jede Funktion benötigt wird. Sie wird mit der Zeit immer wichtiger - wenn in Ihrem Anwendungsportfolio etwas kaputt geht, muss es so schnell wie möglich effizient und effektiv behoben werden.

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

Was sind die unterschiedliche Anwendungsarten?

A
  1. Eigenständige (stand-alone) Anwendungen
  2. Interaktive transaktionsbasierte Anwendungen
  3. Eingebettete Steuerungssysteme
  4. Stapelverarbeitende (batch processing) Systeme
  5. Unterhaltungssysteme
  6. Systeme für die Modellierung und Simulation
  7. Systeme zur Datenerfassung und -analyse
  8. Systeme von Systemen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Rollen in SE: Wer sind die Player?

A
  • Product Owner: eine Rolle in einem Scrum-Team, die für das Ergebnis des Projekts verantwortlich ist.
  • Scrum Master: leitet das Scrum-Team und sorgt dafür, dass es die Scrum-Prinzipien befolgt.
  • Sprint Planning: Die Sprintplanung ist ein Ereignis in Scrum, mit dem der Sprint eingeleitet wird. Der Zweck ist es, zu definieren, was in dem Sprint geliefert werden kann und wie diese Arbeit erreicht werden soll.
  • Daily Scrum: tägliche, schnelle Meetings für Updates, Ansprache von Hindernissen und Vermittlung von Prioritäten für den Tag.
  • Sprint Review: ein Meeting am Ende eines Sprints, um die Entwicklungsergebnisse zu präsentieren und zukünftige Anpassungen festzulegen.
  • Retrospektive Meeting: Das Team reflektiert, was in der Iteration passiert ist, und legt Maßnahmen zur Verbesserung für die Zukunft fest.
  • Product Backlog: enthält eine Liste von Dingen, die für die Fertigstellung des gesamten Projekts getan werden müssen.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Warum machen wir die Sprint Review?

A

Checking, dass alle Anforderungen erfüllt sind. Alles läuft wie geplant? Dafür brauchen wir Sprint Reviews.

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

Welche Architektursichten es gibt?

A
  • Modulsicht: evtl. Menüstruktur
  • Hardwaresicht: (LWKs, Bordcomputer, Kameras, Distance Controller) (Smartphone von Fahrer, Tablet von Tourenplaner, PC von Spedition GF)
  • Prozesssicht: 1. einloggen; 2. Rolle auswählen; 3. Personendaten pflegen; ..
  • Objektsicht: Klasse, Atributte, Konstruktor, Methoden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

welche Architekturmuster es gib (ein paar nennen):

A

Pipes and Filters
Client-Server-Modell
Peer-to-Peer

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

Warum ist SW-Architektur wichtig?

A

Die Softwarearchitektur ermöglicht es Unternehmen, bereits vor Beginn der Implementierung fundierte Aussagen über die Qualitätsmerkmale und Risiken des Systems, wie Laufzeiten, Robustheit oder Änderbarkeit, zu treffen.

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

Was ist den Unterschied zwischen funktionale und nicht funktionale Kundenanforderungen?

A

Funktionale Anforderungen legen fest, was ein Produkt leisten muss, welche Merkmale und Funktionen es hat. Nichtfunktionale Anforderungen beschreiben die allgemeinen Eigenschaften eines Systems. Sie werden auch als Qualitätsmerkmale bezeichnet.

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

Nennen Sie 5 funktionale und nicht funktionale Anforderungen in der Plattoning App

A

Funktionale:
- Startpunkt und Zeit angeben
- Kopplung der LKW bestätigen
- Verbindung der Netz über Funknetz
- Suche von Partner (Matchmaking)
- Integrierte Routenplanung

Nicht funktionale:
- Rechtliche Rahmenparameter sollen eingehalten werden
- Die Sicherheit des Fahrers muss gewährleitet sein
- Die App soll zuverlässig laufen
- Gute Bedienbarkeit des Userinterfaces
- Verfügbar auf jeder Smartphone

17
Q

Was ist den Unterschied zwischen Safety Software und Security Software?

A

Security SW schützt vor Cyberangriffen: Bei der Codesecurity geht es darum, unerwünschte oder illegale Aktivitäten in Ihrer Software zu verhindern.

Safety SW sorgt für Zuverlässigkeit: Codesafety ist ein weit gefasster Begriff, der angibt, ob eine Software zuverlässig und sicher in der Anwendung ist.

-> Security hilft, Safety zu erreichen: Security ist ein Mittel, um Safety zu erreichen.

18
Q

Low Coding Program Eclipse und Scene Builder. Was ist und Vorteile

A

Die Low-Code-Plattform ermöglicht die Entwicklung mit visuellen Anwendungsdesign-Tools und anderen grafischen Modellierungstechniken statt mit klassischen textbasierten Programmiersprachen. Dies kann die Entwicklungs- und Bereitstellungszeit für Software erheblich verkürzen. Aufgrund dieser potenziellen Vorteile können Low-Code-Plattformen die Kosten für die Projektplanung, die Schulung der Mitarbeiter und die eigentliche Entwicklung erheblich senken.

19
Q

Was sind Eigenständige (stand-alone) Anwendungen?

A

Dies sind Anwendungssysteme, die auf einem PC oder Apps, die auf einem mobilen Gerät laufen. Sie besitzen alle nötigen Funktionalitäten und müssen nicht mit einem Netzwerk verbunden sein. Beispiele solcher Anwendungen sind Office-Anwendungen auf einem PC, CAD-Programme, Software zur Fotobearbeitung, Reise-Apps, Produktivitäts-Apps usw.

20
Q

Was sind interaktive transaktionsbasierte Anwendungen:

A

Diese Anwendungen werden auf einem entfernten Computer ausgeführt. Die Benutzer können entweder von ihren eigenen PCs, Telefonen oder Tablets aus darauf zugreifen. Hierzu gehören sicherlich Webanwendungen wie E-Commerce-Anwendungen, bei denen man mit einem entfernten System verbunden ist, um Waren und Dienstleistungen zu kaufen. Diese Anwendungsklasse enthält auch Geschäftssysteme, wobei der Zugang zu diesen Systemen über einen Webbrowser oder über spezielle Client-Pro- gramm- und Cloud-basierte Dienste wie E-Mail und Foto-Sharing erfolgt. Interaktive Anwendungen benötigen häufig einen großen Datenspeicher, auf den bei je- der Transaktion zugegriffen wird und der dabei jeweils aktualisiert wird.

21
Q

Was sind eingebettete Steuerungssysteme?

A

Dies sind Softwaresteuerungssysteme, die Hardwaregeräte steuern und verwalten. Zahlenmäßig gibt es wahrscheinlich mehr ein- gebettete Systeme als irgendeine andere Art von System. Beispiele für eingebettete Systeme sind die Software in einem Mobiltelefon, Software zur Steuerung des Antiblockiersystems im Auto und Mikrowellensoftware zum Steuern des Kochvorgangs.

22
Q

Was sind stapelverarbeitende (batch processing) Systeme?

A

Dies sind Geschäftssysteme, die zur Verarbeitung großen Datenmengen entworfen wurden. Sie bearbeiten viele in- dividuelle Eingaben, um die dazugehörigen Ausgaben zu erzeugen. Beispiele für Stapelverarbeitungssysteme sind Systeme zur Abrechnung von regelmäßigen Zahlungen wie Telefonabrechnungssysteme und Lohnauszahlungssysteme.

23
Q

Was sind Unterhaltungssysteme?

A

Dies sind Systeme, für die private Nutzung, die zur Unterhaltung ihrer Nutzer dienen. Die meisten dieser Systeme sind Spiele, die eventuell auf speziellen Spielekonsolen ausgeführt werden können. Die Qualität der angebotenen Benutzerinteraktion ist das wichtigste Unterscheidungsmerkmal von Unterhaltungssystemen.

24
Q

Was sind Systeme für die Modellierung und Simulation?

A

Dies sind Systeme, die von Wissenschaftlern und Ingenieuren entwickelt wurden, um physikalische Vorgänge oder Situationen zu modellieren, in denen viele separate, interagierende Objekte auftreten. Diese Modelle sind oft rechenintensiv und benötigen zur Ausführung parallele Systeme mit hoher Performanz.

25
Q

Was sind Systeme zur Datenerfassung und -analyse?

A

Datenerfassungssysteme sind Systeme, die Daten aus ihrer Umgebung sammeln und diese Daten an andere Systeme zur Verarbeitung senden. Die Software muss eventuell mit Sensoren interagieren und wird oft in einer lebensfeindlichen Umgebung oder unter extremen Bedingungen installiert wie beispielsweise innerhalb eines Motors oder an einem unzugänglichen Ort. „Big Data”-Analyse kann Cloud-basierte Systeme einbeziehen, die statistische Analyse ausführen und nach Verbindungen in den gesammelten Daten suchen.

26
Q

Was sind Systeme von Systemen?

A

Dies sind Systeme, die in Unternehmen und anderen großen Organisationen verwendet werden und aus vielen anderen Softwaresystemen bestehen. Einige davon können allgemeine Softwareprodukte wie ein ERP-System sein. Andere Systeme in dem Verbund sind evtl. speziell für diese Umgebung geschrieben worden.