Auf welcher Grundannahme basiert die klassische / sequenzielle Softwareentwicklung? Zu welchen Problemen kann dies führen und wie wird damit bei der kontinuierlichen Softwareentwicklung umgegangen?
Der sequentielle Entwicklungsprozess basiert auf stabilen Anforderungen. Anforderungen ändern sich allerdings oft, was bei sequentiellen Vorgehensmodellen in der Regel dazu führt, dass das Endprodukt nicht mehr den Anforderungen entspricht.
Beim kontinuirlichen Modell wird iterativ gearbeitet, der Funktionsumfang steigt mit jeder Iteration, gesteuert durch den Soll-Ist-Vergleich
-> auf Anforderungsänderungen kann besser reagiert werden.
Was sind die Aufgaben eines Sourcecode Management Systems (SCM)? Beschreiben Sie den Arbeitsablauf, wie bei verteilten SCM Systemen mit Konflikten umgegangen wird!
parallele Projektentwicklung auf mehreren Zweigen
transparente Änderungen
nachvollziehbare Entwicklungsgeschichte
Zugriff auf ältere Versionen
Arbeitsablauf Git (verteilt)
Kopie des Haupt-Repository (klonen)
Lokale Änderungen
Lokale Commits
Merge
Push
Pull Request
Was sind typische Herausforderungen bei global verteilten Entwicklungsteams?
Welche Art von Kommunikation kommt hier hauptsächlich zum Einsatz? Nennen Sie hierfür vier verschiedene Beispiele
Grosse geographische distanzen -> Kein Face-2-Face, Austauschen von Handzeichnungen erschwert
Verschiedene Arbeitszeiten
Verschiedene Zeitzonen
=> asynchrone Kommunikation:
Email
Wiki, CMS
Mailingliste/Forum
Issue-Tracker
Wie unterscheiden sich kommerzielle Software von eingebetteten Systemen? Nutzen Sie hierfür die nachfolgende Tabelle für Ihren Vergleich. Nennen Sie zusätzlich jeweils zwei Beispiele für die jeweiligen Arten!
Was versteht man unter "Process Tailoring"? Warum ist dieses oftmals notwendig?
Standardisierte Software Prozesse sind in der Praxis direkt eher schwer einsetzbar, da eine Vielzahl an Projektattributen berücksichtigt werden müssen.
Beispiele: Projektgröße, Projekttyp und Anwendungsdomäne.
Anpassbarkeit eines generischen Entwicklungsprozesses an spezifische Projektgegebenheiten durch Prozesstailoring.
Ersetzen einzelner Prozess-Schritte (oder Vorgehensbausteine) durch passende alternative Lösungen.
Wiederverwendung von Best-Practices (Methoden / Tools).
Individuelle Anpassung des Projektplans.
Beschreiben Sie die drei unterschiedlichen Teststufen. Geben Sie jeweils ein konkretes Beispiel für einen Test der jeweiligen Stufe an
Drei Teststufen: Unit, Integration, System
Unit Tests sind meistens Black-Box-Tests
Modul oder Systemtests sind meist White-Box-Tests
Welche der folgenden Aussagen beschreibt am besten das Ziel von Testing?
Was ist das Hauptmerkmal der Komponentenorientierten Softwareentwicklung (Component Oriented SE)?
Last changeda year ago