Das Software-Praktikum hat formal einen Umfang von 4 SWS (Semesterwochenstunden). Im Semester finden 2 Übungen von je einer Doppelstunde pro Woche statt, in denen das Projektteam am Projekt (überwiegend im Seminarraum) arbeitet. Daneben sind praktische Aufgaben als „Hausaufgaben“ im Pool zu erledigen. Zusätzlich wird an einigen Terminen im Semester der jeweilige Projektfortschritt präsentiert.
In der vorlesungsfreien Zeit findet die Veranstaltung im gleichen Umfang komprimiert in 6 Wochen statt. Die Gruppentreffen sowie das Erarbeiten der praktischen Teile erfolgen täglich.
In den Übungen führen die Teilnehmer und Teilnehmerinnen in Arbeitsgruppen von 7-9 Studierenden, betreut von einem Tutor, Software-Entwicklungsprojekte durch. Es werden zwei Projekte durchgeführt, die unterschiedlichen Aufgabenstellungen dienen.
Zu den eingesetzten software-technologischen Grundlagen gehört die Anwendung eines einfachen sequentiellen Vorgehensmodells mit den Phasen Anforderungsdefinition, Analyse, Entwurf, Implementierung und Test. In allen Phasen werden objektorientierte Methoden eingesetzt. Zur Analyse der Aufgabenstellung und zum Entwurf der Lösung werden grafische Modellierungssprachen (z.B. die Unified Modeling Language, UML) verwendet. Aus dem in der Entwurfsphase erarbeiteten Modell werden Code-Rahmen generiert, die in der Implementierungsphase, bei der Java oder verwandte JVM-Sprachen zum Einsatz kommen, ergänzt werden.
Ausgehend von einer groben Aufgabenstellung führen die Arbeitsgruppen im ersten Projekt mit Unterstützung ihres Betreuers alle Phasen des Software-Entwicklungsprozesses durch. In jeder Phase werden Dokumente erstellt, die von den Veranstaltern des Praktikums kontrolliert werden. Das erste Projekt dient auch dem Zusammenwachsen der Arbeitsgruppen. Projekt 2, das den gleichen Ablauf wie Projekt 1 besitzt, dient dazu, das eingeübte Vorgehen zu vertiefen und zuvor gemachte Fehler zu vermeiden. Die Gruppe sollte jetzt ohne große Unterstützung des Betreuers auskommen.
Während der Projekte wird anderen Gruppen mehrfach der Projektfortschritt präsentiert und zum Abschluss der Projekte finden jeweils Präsentationen der erstellten Produkte statt.
Der genaue Ablauf des Sopras kann dem zu jedem SoPra veröffentlichten Zeitplan entnommen werden.
Da das Arbeiten in der Gruppe und gemeinsames Erarbeiten der Planungsartefakte ein Lernziel der Veranstaltung ist, welches nur funktionieren kann, wenn alle Gruppenmitglieder regelmäßig an den Sitzungen teilnehmen, gilt dort (wie auch in den sonstigen im Zeitplan veröffentlichten Terminen) eine allgemeine Mitarbeits-, und daher auch Anwesenheitspflicht. Natürlich darf es grundsätzlich vorkommen, dass man einzelne Termine (durch Krankheit, Klausuren, Blockseminare, etc.) verpasst. Hier haben wir eine pauschale Regelung, um den Nachweis- und Verwaltungsaufwand zu reduzieren. Es gelten folgende pauschale Regeln, ohne dass wir die Gründe hinterfragen oder irgendetwas nachgewiesen werden muss:
Bei davon abweichenden Fehlzeiten werden wir im Einzelfall prüfen, Gründe (für alle Fehlzeiten!) nachweisen lassen sowie ggf. ein individuelles Fachgespräch führen, um die (trotz Fehlzeiten) ausreichende Leistung zu bewerten.