Welche Aussage zur Weiterentwicklung ist richtig?
Welches ist eine Phase im RUP?
In der Phase "Betrieb" …
Folgende Situation ist gegeben: In einem Softwareentwicklungsprojekt hat der Softwarearchitekt eine Version der Architekturbeschreibung erstellt.
Welche Aussage zum weiteren Vorgehen ist korrekt?
Ein Fließband wird durch zwei Schalter gesteuert. Aktuell läuft das Fließband. Welche der folgenden Aussagen ist falsch?
Bei der Spezifikation von technischen Schnittstellen …
Welche Aussage zu Anforderungen ist korrekt?
Programmiersprachen:
Wer trifft in der Regel die Entscheidung, in welcher Programmiersprache ein konkretes Softwaresystem umgesetzt wird?
Softwarearchitekt
Nennen Sie vier Faktoren, die bei der Festlegung der Sprache berücksichtigt werden müssen.
Wie gut sind Tutorials, HowTos und Experten zu dieser Sprache verfügbar?
Ist die Unterstützung der Sprache für zukünftige Systemplattformen gesichert?
Gibt es bereits ausgereifte Frameworks und Bibliotheken für typische Probleme?
Ist sichergestellt, dass das Wissen zu einer Technologie über den gesamten geplanten Lebenszyklus des Systems verfügbar ist?
Welche Merkmale definieren eine „reife Programmiersprache“?
Je reifer eine Programmiersprache ist, umso mehr Bibliotheken, Know-how und Support ist dazu verfügbar.
Erläutern Sie, unter welchen Umständen das Herauslösen eines Systems zu einer kritischen Aktivität wird.
Wenn das System auf einer veralteten Technologie basiert und keine vollständige Dokumentation existiert. Dann wird das Herauslösen zu einer kritischen Angelegenheit, da technische Abhängigkeiten ggf. nicht vollständig erschlossen werden können und andere Systeme in der Systemlandschaft durch die Abschaltung in Mitleidenschaft gezogen werden können. Aufgrund der fehlenden Dokumentation muss der Programmcode analysiert werden, allerdings droht hierbei, dass die Wissensträger der alten Technologie bereits das Unternehmen verlassen haben.
Ein Bestandssystem soll aus der Systemlandschaft herausgelöst werden und durch ein neues System ersetzt werden. Das alte Bestandssystem speichert Daten über Kunden und deren Verträge.
Beschreiben Sie ausführlich, was bei der Aktivität „Abschaltung“ alles für dieses System zu beachten ist und welche Herausforderungen hiermit verbunden sind.Musterlösung:
In dem abzuschaltenden System werden Daten nicht nur verarbeitet, sondern auch gespeichert. Diese müssen im Rahmen der Abschaltung migriert werden. Das bedeutet, die im Altsystem vorliegenden Daten müssen für die weitere Verwendung in ein anderes System übertragen werden.
Die Herausforderung bei der Migration von Daten ist zum einen die Abbildung des alten Datenschemas auf das neue Datenschema und zum anderen die Menge der zu migrierenden Daten. Weiterhin muss die für das abzuschaltende System benötigte Infrastruktur dahingehend analysiert werden, ob laufzeitgebundene Lizenzen und Nutzungsrechte erworben wurden. Entsprechende Verträge müssen gekündigt beziehungsweise dürfen nicht automatisch verlängert werden. Dabei müssen auch Wartungsverträge mit externen Dienstleistern berücksichtigt werden.
Welche der folgenden Aussagen ist falsch?
Die Möglichkeit zur Wiederverwendbarkeit …
Welche Softwareeigenschaft beschreibt, inwieweit sich ein System mit geringem Aufwand mit anderen Systemen zusammenschließen lässt?
Die Grundidee der evolutionären Entwicklung ist …
Den Ausgangspunkt für alle wesentlichen Aktivitäten im Software-Engineering …
Der Systemkontext …
Bei der Spezifizierung der Benutzeroberfläche: Der durch den Nutzer eingegebene Überweisungsbetrag darf nicht negativ oder gleich null sein. Um was für einen Aspekt handelt es sich hierbei?
Für das Entwicklungsprojekt: Nach der Fertigstellung der Architekturbeschreibung erfolgt eine Überprüfung der Einhaltung der geforderten Modellierungssprache und korrekten Verwendung der Notationselemente. Die Vorgabe ist …
Beschreiben Sie das Wasserfallmodell.
Das Wasserfallmodell ist ein Prozessparadigma, das die schrittweise, jeweils vollständige Bearbeitung einzelner Phasen in einer festgelegten Reihenfolge vorschreibt.
Nennen Sie zwei zentrale Merkmale des Wasserfallmodells.
Strikte Trennung der Phasen und große Bedeutung der vollständigen Dokumentation.
Was passiert, wenn in einer Phase des Wasserfallmodells ein Fehler identifiziert wird?
Der Prozess geht um eine Phase zurück, um den Fehler zu beheben.
Typische Rollen im Software Engineering:
Beschreiben Sie die Rollen "Architekt" und "Systemtechniker". Nennen Sie hierzu das Ziel dieser Rolle und ordnen Sie die Rolle einer Klasse von Rollen zu.
Architekt ist eine konstruktive Rolle. Ziel des Architekten (auch: Designer) ist die erfolgreiche technische Umsetzung der fachlichen Anforderungen in ein Softwaresystem. Systemtechniker ist eine betreibende Rolle. Ziel des Systemtechnikers ist das Bereitstellen und Gewährleisten von technischen Ressourcen zum Betrieb eines Softwaresystems.
Beschreiben Sie, wie die Rollen sich gegenseitig beeinflussen. (Architekt & Systemtechniker)
Die Architektur des Systems muss zur Betriebsinfrastruktur passen, die der Systemtechniker zur Verfügung stellt.
Stellen Sie kurz den übergreifenden Einfluss der Rolle Qualitätsmanager auf diese beiden Rollen dar.
Beide Rollen folgen den Vorgaben des Qualitätsmanagements. Somit hat das Qualitätsmanagement nachweislich sowohl Einfluss auf die konstruktiven Rollen/Phasen als auch auf die betreibenden Rollen/Phasen → übergreifenden Einfluss.
Erläutern Sie, wie der Prozess, der zu einer Architekturbeschreibung führt, die Erkenntnisgetriebenheit im Software Engineering berücksichtigt.
In der Kernaktivität „Entwerfen einer Architektur“ erstellt der Architekt in der Regel eine erste Version der Architekturbeschreibung. Anschließend müssen die getroffenen Entscheidungen gegen die Anforderungen geprüft und bewertet werden. Gegebenenfalls muss die IT-Architektur überarbeitet werden. Fällt das Ergebnis der Bewertung positiv aus, wird die IT-Architektur so lange weiter verfeinert und detailliert, bis eine ausreichende Lösung gefunden ist. Anschließend werden die getroffenen Entscheidungen in Form einer Architekturbeschreibung dokumentiert. Wie im Requirements Engineering erfolgt hier abhängig vom aktuellen Kenntnisstand eine entsprechend detaillierte Darstellung. Das heißt, je detaillierter die Entscheidungen zur Architektur werden, umso technischer und präziser müssen die Ergebnisse dokumentiert werden. Vergleichbar mit den Kernaktivitäten des Requirement Engineerings finden die Aktivitäten zur Architekturbeschreibung iterativ (in mehreren Zyklen) statt. Jede zusätzliche Anforderung, die im Verlauf der Softwareentwicklung erkannt wird und als erforderlich eingestuft wird, muss durch den Softwarearchitekten bewertet und in die bestehende Architekturbeschreibung eingebracht werden.
Ein Lebensmittelhersteller wünscht die Einführung eines ERP-Systems.
Welche konkreten Funktionen das System umfassen soll, wie die Benutzeroberfläche gestaltet werden soll oder welche Systeme integriert werden müssen, lässt sich aktuell noch nicht genau spezifizieren.
Erläutern Sie, was dies für den Erstellungsprozess bedeutet. Gehen Sie hierbei auf die Position des Software Engineers ein.
Ein Merkmal des Software Engineerings ist es, dass Anforderungen an das zu erstellende System erst im Verlauf des Softwareprozesses erkannt werden. Allerdings bilden die Anforderungen an das System den Ausgangspunkt für alle weiteren Aktivitäten innerhalb eines Softwareprojekts. In der Regel werden relevante Anforderungen von Anwendern und Kunden erst erkannt, nachdem sie eine erste Version des Systems gesehen haben.
Ein Software Engineer steht nun vor folgendem Dilemma: Fängt man an, ein System zu entwickeln, zu dem die Anforderungen nicht klar sind, geht man ein hohes Risiko ein, dass die erstellte Anwendung nicht die gewünschten Funktionen umsetzt. Ein Anwender kann jedoch zu Beginn oft nicht genau sagen, welche Funktionen er genau benötigt. Denn er erkennt wichtige und relevante Funktionen oft erst dann, wenn er eine erste Version des Systems ausprobieren kann.
Die rollenbasierte Herangehensweise:
Erklären Sie, welche Regeln bei der Aufteilung eines fünf Mann starken Teams in Rollen beachtet werden müssen.
Eine Rolle ist gekennzeichnet durch ihren Namen, spezifische Aufgaben und spezifische Zielsetzungen. Eine am Projekt beteiligte Person nimmt mindestens eine bestimmte Rolle ein. Je nach Größe des Projektes werden Rollen mehrfach vergeben. Das heißt, eine Person kann mehrere Rollen wahrnehmen und eine Rolle kann durch mehrere Personen wahrgenommen werden. Sowohl die Möglichkeit der Expertenbildung und Spezialisierung ist ebenso zu beachten wie der Einsatz vorhandener Spezialisten und Experten.
Erläutern Sie ausführlich am Beispiel der Architekturgestaltung die vielfältigen Beziehungen und Abhängigkeiten zwischen den Rollen im Software Engineering.
Der Architekt gestaltet die Architektur auf Basis der Ergebnisse des Requirements Engineers und des Spezifizierers unter Berücksichtigung zusätzlicher Vorgaben durch die Rollen, die für Implementierung, Betrieb und Weiterentwicklung verantwortlich sind. Der Architekt muss darüber hinaus Vorgaben durch das Projekt- und Qualitätsmanagement einhalten, von denen er auch geprüft wird.
Nennen und beschreiben Sie drei Typen von Rollen und nennen Sie zusätzlich je ein Beispiel.
Rollen mit übergreifendem Einfluss sind in allen Kernaktivitäten des Software Engineerings aktiv.
(Beispiel: Projektmanager)
Konstruktive Rollen sind aktiv an der Entwicklung beteiligt.
(Beispiel: Architekt)
Betreibende Rollen sind im Anschluss an die Entwicklung für Integration und Betrieb zuständig.
(Beispiel: Integrator)
Beschreiben Sie eine konkrete Rolle näher. Nennen Sie hierzu das Ziel und mindestens drei Aufgaben.
Ziel des Projektmanagers ist die erfolgreiche Durchführung des Projekts. Die Aufgaben des Projektmanagers umfassen insbesondere:
Planung, Organisation und Kostenschätzung des Projekts
Steuerung und Koordination der Projektaktivitäten und Personen
Kontrolle und Verfolgung der erzielten Ergebnisse
Die Produktivumgebung …
Ein Kommunikationsnetz besteht aus …
Welche der folgenden Aussagen ist richtig?
Folgende Situation ist gegeben: Der Architekt zielt darauf ab, ein „technisch solides“ System zu bauen, während der Entwickler möglichst schnell die von ihm geforderten Funktionen implementieren möchte.
Welche Aussage zu dieser Situation ist richtig?
Starke Technologiezentriertheit in einem Softwareprojekt …
Welche der folgenden Aussagen zu Referenzmodellen für Kommunikationsnetze ist richtig?
Zuletzt geändertvor 4 Tagen