Lehrveranstaltungskonzept
Abgrenzung
Diese Lehrveranstaltung darf weder als Einführungskurs in die Programmierung bzw. in Java noch als fortgeschrittener Java-Kurs missverstanden werden. Am Rande werden zwar einige Sprachkonzepte erläutert, aber
- ohne gute Vorkenntnisse werden diese Erläuterungen nicht verständlich und Programmieraufgaben kaum lösbar sein;
- wesentliche Teile von Java wie die umfangreichen Klassenbibliotheken werden kaum behandelt.
Aufbau und Charakteristik
Wöchentliche Vorträge (die auch live übertragen und deren Aufzeichnungen über TUWEL zugänglich gemacht werden, soferne die entsprechende technische Ausstattung funktioniert) geben zusammen mit dazugehörenden Online-Fragestunden einen Takt vor, in dem der Stoff (auch aus dem Skriptum) zu erarbeiten ist. Ebenso (fast) wöchentliche Programmieraufgaben, die in Kleingruppen zu lösen sind, sollen
- das Verständnis des Stoffs vertiefen;
- praktische Programmierfähigkeiten fördern;
- die Fähigkeit herausbilden, theoretisches Wissen und Meta-Wissen in die praktische Programmierung einfließen zu lassen (unter anderem wichtig zum Auffinden guter Datenabstraktionen);
- den Umgang mit unvollständigen Spezifikationen üben (wichtig zur Beherrschung von Untertypbeziehungen und Zusicherungen);
- helfen, eine eigenständige, teamfähige und erfolgversprechende Herangehensweise zu entwickeln.
Zur Erreichung der letzten drei Punkte wird großer Wert auf das selbständige Finden von Lösungswegen und individuelle Lösungen gelegt; der eigene Weg zur Lösung ist wichtiger als die Lösung selbst. Statt vorgezeichneter Lösungswege und Musterlösungen gibt es nur grobe Zielvorgaben.
Viele Studierende sind es nicht gewohnt, auf unvollständigen Spezifikationen aufzubauen und sich auf eigene Lösungswege zu verlassen. Entsprechend oft werden Programmieraufgaben als unklar und schwierig empfunden.
Für die ersten drei Programmieraufgaben (Einstiegsphase) können Tutor_innen bei Bedarf Unterstützung geben, gezielt spezifische Schwächen beseitigen und Einstiegshürden mildern. Jedoch werden auch Tutor_innen auf individuelle Lösungswege bestehen.
Übungsteil
Gruppen
Übungen werden in Gruppen zu je drei Personen durchgeführt. Durch die Gruppenarbeit sollen Diskussionen der Übungsaufgaben gefördert und die Fähigkeit zur Teamarbeit ausgebaut werden.
Übungsaufgaben
Übungsaufgaben werden fast wöchentlich ausgegeben (genaue Termine siehe unten). Die Aufgaben sind innerhalb der vorgegebenen Frist (meist ein bis zwei Wochen) zu lösen. Bei Bedarf kann die Frist um eine weitere Woche erstreckt werden, was jedoch zu einer schlechteren Beurteilung führt. Von dieser Möglichkeit soll nur in Notfällen Gebrauch gemacht werden.
Abgabe der Lösungen
Jede Gruppe hat ein git-Repository auf dem Übungsrechner g0.complang.tuwien.ac.at, auf dem die Lösungen im der Aufgabe entsprechenden Verzeichnis abzulegen sind. Von dort werden sie jeweils um 14:00 Uhr (strikte Deadline) am Tag der Abgabe automatisch abgesammelt. Pro Gruppe und Aufgabe kann es nur eine einzige gemeinsame Lösung geben.
Fristerstreckung
Wenn die Einhaltung des Abgabetermins nicht möglich ist, wird nach Eintreffen einer Mail sinngemäß folgenden Inhalts bis 17:00 Uhr am Tag der Abgabe bei den Lehrveranstaltungsleitern eine Fristerstreckung gewährt: Gruppe ... bittet um Erstreckung der Abgabefrist für Aufgabe ... um eine Woche und akzeptiert eine Reduktion der Punkteanzahl für diese Aufgabe um ein Drittel.
Einstiegsphase
Die ersten drei Aufgaben bilden zusammen die Einstiegsphase. Sie soll
- Studierenden mit geringeren Vorkenntnissen ermöglichen, den Anschluss zu finden,
- Erfahrungen sammeln lassen, die bei den weiteren Aufgaben hilfreich sind,
- einen Freiraum schaffen, in dem bis zu einem vorgegebenen Maß ohne Auswirkungen auf die Beurteilung experimentiert werden kann,
- den Gruppenzusammenhalt fördern und frühzeitig gruppeninterne Konflikte aufdecken.
Die erste Aufgabe wird Gelegenheit geben, die Zusammenarbeit innerhalb der Gruppe sowie mit der Tutorin oder dem Tutor zu organisieren und die Werkzeuge kennenzulernen. Die zweite Aufgabe wird umfangreich sein und dazu zwingen, eine Auswahl der zu lösenden Teilaufgaben zu treffen. Die dritte Aufgabe soll helfen, individuelle Herangehensweisen, verwendete Programmierstile und Probleme selbst zu erkennen. Die weiteren Aufgaben, die nicht mehr zur Einstiegsphase gehören, sind jeweils einem inhaltlichen Teilbereich der Programmierparadigmen gewidmet.
Arbeiten von zu Hause aus
Studierende können sich von jedem beliebigen Terminal aus unter ihrem Account auf dem Übungsrechner g0.complang.tuwien.ac.at einloggen.
Die Übung kann auch zur Gänze auf einem anderen Rechner durchgeführt werden. Dazu ist ein Rechner mit einem Java-Interpreter (java) und -Compiler (javac) mit den dazugehörigen Standardbibliotheken nötig. Die Verwendung einer Entwicklungsumgebung wie IntelliJ IDEA wird empfohlen. Für Zugriffe auf das Repository ist git nötig. Die üblichen Entwicklungsumgebungen ermöglichen einen einfachen Umgang mit git, sobald sie mit den nötigen Verbindungsdaten und Verzeichnisstrukturen eingerichtet sind. Verbindungsdaten erhalten Studierende kurz nach Ende der Anmeldefrist per eMail.
Tutor_innen
Jede Gruppe wird durch eine Tutorin oder einen Tutor betreut. Sie oder er gibt intensive Unterstützung in der Eingangsphase, danach nur mehr in stark eingeschränktem Umfang. Die Betreuung erfolgt in der Regel per eMail.
ECTS Breakdown
(6 ECTS entsprechen 150 Arbeitsstunden)
- 100 h - Lösen der 9 Programmieraufgaben (einschließlich selbständiger Erarbeitung praktischer Fertigkeiten)
- 21 h - Vorlesungen
- 27 h - Erarbeiten des theoretischen Stoffs, Fragestunden und Prüfungsvorbereitung
- 2 h - Teilnahme an zwei Tests und anteilsmäßig am dritten Test
Teilleistungen und Wiederholbarkeit
Beurteilungsrelevante Teilleistungen bestehen im Lösen von neun Aufgaben und der Absolvierung von drei Tests. Eine positive Beurteilung der Lehrveranstaltung ist stets auch dann möglich, wenn eine dieser Teilleistungen nicht erbracht wurde. Daher ist eine Wiederholbarkeit von Teilleistungen nicht nötig.
Hinweise zur Anmeldung
Anmeldung zur Lehrveranstaltung und Übungsgruppe
Bitte melden Sie sich in TISS sowohl zur Lehrveranstaltung als auch zu einer Gruppe (= Übungsgruppe) an. Die Gruppen haben Namen der Form ppXn, wobei n eine fortlaufende Nummer ist und X die oder den betreuende_n Tutor_in kennzeichnet. Die empfohlene Vorgehensweise besteht darin, sich zuerst mit anderen Studierenden zu verabreden und sich dann zusammen (bzw. kurz hintereinander) in eine Gruppe einzutragen. Gruppen bestehen stets aus drei Personen. Es ist darauf zu achten, dass nach dem Anmeldevorgang alle Mitglieder der verabredeten Übungsgruppe in derselben TISS-Gruppe einen Platz bekommen haben, also niemand nur auf der Warteliste steht. Andernfalls wird empfohlen, sich gleich wieder ab- und in einer anderen Gruppe anzumelden. Unvollständige Gruppen werden wiederholt aufgelöst, damit Platz für vollständige Gruppen geschaffen wird. Es ist daher nicht sinnvoll, sich alleine oder zu zweit in eine Gruppe anzumelden.
Studierende, die zur Lehrvaranstaltung angemeldet sind, aber noch nicht in einer Übungsgruppe sind, werden zu Gruppenfindungstreffen eingeladen, siehe unten. Personen, die am Ende der Anmeldefrist zur Lehrveranstaltung angemeldet, aber noch immer in keiner Übungsgruppe sind, werden willkürlich in reguläre Übungsgruppen (mit je zwei oder drei Mitgliedern) verschoben.
Es wird empfohlen, sich frühzeitig zur Lehrveranstaltung anzumelden. Durch die Anmeldung bekommen Sie Zugang zu TUWEL, wo alle Hilfsmittel für das Lernen (z.B. Skriptum, Diskussionsforum, Vorlesungsvideos, Zugangscodes) zu finden sein werden.
Eine Teilnahme an der Lehrveranstaltung ist nicht möglich, wenn TISS die Anmeldung aus formalen Gründen verweigert.
Virtuelle Gruppenfindungstreffen
Während der Anmeldefrist werden über Videokonferenzen mehrere von Tutor_innen moderierte virtuelle Treffen stattfinden, die dazu dienen, geeignete Mitglieder für Übungsgruppen zu finden. Zu diesen Treffen werden nur Studierende eingeladen, die in TISS zur Lehrveranstaltung angemeldet sind, aber nicht zu einer Übungsgruppe. Details dazu werden in TUWEL zu finden sein.
Anmeldungen zu den Tests
Für die Teilnahme an einem Test ist jeweils eine gesonderte Anmeldung in TISS nötig.
Terminübersicht
Allgemeine Termine
- Anmeldung zur Lehrveranstaltung ... 16.9. - 11.10. (10 Uhr) in TISS
- Anmeldung zu Übungsgruppe ... 16.9. - 11.10. (10 Uhr) in TISS
- spätestmögliche Abmeldung ... 28.10. (10 Uhr) in TISS (LVA und Übungsgruppe)
- Vorlesungen ... montags 15 - 17 Uhr c.t. im INF HS (Videos in TUWEL)
- Fragestunden ... donnerstags 15 - 16 Uhr online
- neue Aufgaben ... montags (Termine siehe unten) in TUWEL
- Lösungsabgaben ... 14:00 Uhr pünktlich (Termine siehe unten) über Git
- Anmeldung Test 1 ... 4.11. - 21.11. (10:00 Uhr) in TISS
- Test 1 ... 25.11. (zur üblichen Vorlesungszeit)
- Anmeldung Test 2 ... 7.1. - 23.1. (10:00 Uhr) in TISS
- Test 2 ... 27.1. (zur üblichen Vorlesungszeit)
- Anmeldung Test 3 ... 3.2. - 24.2. (10:00 Uhr) in TISS
- Test 3 ... 26.2.
Übungsaufgaben
jeweils Ausgabetermin und Abgabetermin:
- Aufgabe: 14.10. - 21.10.
- Aufgabe: 21.10. - 04.11.
- Aufgabe: 04.11. - 11.11. (Nachbesserungen bis 02.12.)
- Aufgabe: 11.11. - 25.11.
- Aufgabe: 18.11. - 02.12.
- Aufgabe: 25.11. - 09.12.
- Aufgabe: 02.12. - 16.12.
- Aufgabe: 09.12. - 13.01.
- Aufgabe: 16.12. - 20.01.
Gesamtbeurteilung
Eine positive Beurteilung der Lehrveranstaltung setzt voraus, dass sowohl im Übungsteil als auch im Vorlesungsteil mindestens 50% der erreichbaren Leistungen erbracht werden.
Bei positiver Beurteilung der Lehrveranstaltung ergibt sich die Note aus dem Durchschnitt der prozentuell im Übungsteil und Vorlesungsteil (diese beiden Teile gleich gewichtet) erbrachten Leistungen:
- : 87.5% bis 100% (sehr gut)
- : 75% bis unter 87.5% (gut)
- : 62.5% bis unter 75% (befriedigend)
- : 50% bis unter 62.5% (genügend)
Beurteilung des Übungsteils
Lösungen der Aufgabenstellungen werden werden nach einem Punkteschema beurteilt. Die Einstiegsphase (= die ersten drei Aufgaben zusammen) wird mit bis zu 100 Punkten beurteilt, abhängig von der Rechtzeitigkeit, Vollständigkeit und Korrektheit der Lösungen insbesondere in Bezug auf Aufforderungen zur Beseitigung konkreter Mängel in zuvor abgegebenen Lösungen. Tutor_innen schlagen eine entsprechende Beurteilung der Einstiegsphase vor. Lösungen der weiteren sechs Aufgaben werden nach ihrer Qualität (entsprechend der in den Aufgabenstellungen genannten Qualitätskriterien) durch die Lehrveranstaltungsleiter beurteilt. Bis zu 100 Punkte gibt es für jede der sechs Aufgaben, im Falle einer Fristerstreckung jedoch nur 2/3 der andernfalls erreichten Punkte. Die Beurteilung des Übungsteils ergibt sich aus der Summe der Punkte für die Einstiegsphase und jede weitere Aufgabe. Insgesamt sind im Übungsteil 700 Punkte erreichbar, das entspricht 100%. Für einen positiv beurteilten Übungsteil müssen mindestens 50%, also 350 Punkte erreicht werden.
Beurteilung des Vorlesungsteils
Es werden drei schriftliche Tests mit einer Arbeitszeit von je 45 Minuten angeboten. Der erste Test (etwa in der Mitte des Semesters) konzentriert sich auf den Stoff, der bis dahin in den Vorlesungen behandelt wurde. Der zweite Test (gegen Semesterende) konzentriert sich auf den restlichen Stoff. Der dritte Test umfasst das gesamte Stoffgebiet. Jeder Test wird anhand der Korrektheit der Antworten mit bis zu 100 Punkten beurteilt. Die Beurteilung des Vorlesungsteils hängt jedoch nur von zwei Tests ab, jenen zwei Tests, bei denen die/der Studierende die meisten Punkte erreicht hat. Auf die Teilnahme an einem der drei Tests kann daher verzichtet werden (Nichtteilnahme entspricht einer Beurteilung mit 0 Punkten). Insgesamt sind für den Vorlesungsteil 200 Punkte erreichbar, das entspricht 100%. Für einen positiv beurteilten Vorlesungsteil müssen mindestens 50%, also 100 Punkte erreicht werden.