Programmierkurs (Softwaretechnik)
Umfang: 4P
Stand: WS 2008/2009
Durchführung:
Markus Knauß
Zielsetzung
Der Programmierkurs vermittelt die softwaretechnischen Aspekte der
Programmierung. Ziel ist, den Teilnehmern gutes Programmieren zu vermitteln.
Gutes Programmieren ist, den Programmcode sorgfältig zu erstellen,
lesbar zu strukturieren, verständlich zu dokumentieren und zu prüfen.
Schwerpunkte der Lehrveranstaltung sind:
- Programmierprinzipien
- Programmierrichtlinien
- Programmdokumentation
- Programmieren im Team
- typische Programmierfehler
- Testverfahren
- Programmverstehen
- Programmierwerkzeuge
Inhalt
Aktuelles
-
18.12.2008
Die Folien, in denen das Experiment beschrieben ist, das Verena Wuchenauer
im Plenum vorgestellt hat, können Sie hier herunterladen oder im
Block mit den Plenumsfolien. Bitte melden Sie sich direkt bei Frau Wuchenauer,
wenn Sie an dem Experiment teilnehmen wollen. Sie gibt Ihnen weitere
Informationen.
Folien [PDF]
-
20.11.2008
Die Teamverzeichnisse sind jetzt eingerichtet und können wie in der
Vorlesung beschrieben genutzt werden.
-
5.11.2008
Am Fr. 7.11. findet kein
Stützkurs für Studienanfänger statt.
-
15.10.2008
Am 21.11. wird die Übungsgruppe D statt in Raum 0.363 in
Raum 0.447 stattfinden.
-
11.9.2008
Für alle Programmieranfänger und alle Interessierten bietet die
Fachschaft Informatik einen Ada Vorkurs an. Ich empfehle Ihnen, an diesem Kurs
teilzunehmen. Weitere Informationen finden Sie unter:
-
ständig
Für alle Softwaretechniker gibt es eine Mailingliste. Eine Mitgliedschaft
in dieser Liste wird dringend empfohlen, da aktuelle Mitteilungen über
diese verschickt werden. Eine Anmeldung ist im WWW unter
http://swt.uni-stuttgart.de/cgi-bin/mailman/listinfo/softies möglich.
Organisation
Der Programmierkurs besteht aus den drei Teilen: Plenum,
Übungsgruppe und Team.
Im Plenum werden
Kenntnisse vermittelt, die für die Lösung der
Aufgabenblätter notwendig sind.
Aufgabenblätter bestehen
aus einem Diskussionsteil und einem Programmierteil.
Lösungen zu Aufgaben des Diskussionsteils werden von einzelnen
Studenten in der Übungsgruppe vorgetragen.
Die Bearbeitung der Aufgaben des Programmierteils erfolgt im Team.
Dieses besteht aus drei Studenten. Die erarbeitete Lösung muss dem jeweiligen
Tutor der Übungsgruppe zugesendet werden, damit dieser eine
Bewertung durchführen kann. Die Bewertung des Programmierteils
erfolgt für das Team, das die Lösung erstellt hat.
Bedingungen für den Schein des Programmierkurs (SWT)
Bei erfolgreicher Teilnahme am Programmierkurs (SWT) erhalten Sie einen
Schein. Der Schein ist Voraussetzung für das Vordiplom. Eine
erfolgreiche Teilnahme bedeutet, dass Sie die folgenden Bedingungen
erfüllt haben.
- Der Programmierteil von jedem Aufgabenblatt muss bearbeitet werden.
Ein Aufgabenblatt gilt von einem Team als bearbeitet, wenn mindestens
10% der erreichbaren Punkte des Programmierteils, ohne Beachtung
der Punkte freiwilliger Zusatzaufgaben, erreicht wurden.
- Insgesamt muss jedes Team 2/3 der erreichbaren Gesamtpunkte aller
Übungsblätter des Programmierteils, ohne Beachtung der Punkte
freiwilliger Zusatzaufgaben, erreichen.
- Für den Tutor muss erkennbar sein, dass alle drei
Teammitglieder an der Aufgabenlösung beteiligt waren.
- Jeder Student muss mindestens 50% der Aufgaben des Diskussionsteils
votieren.
- Jeder Student muss mindestens 1 Aufgabe des Diskussionsteils in
der Übungsgruppe vortragen.
Aufgabenbearbeitung
Übungsaufgaben werden im Plenum vorbereitet und sind nach der
Plenumsveranstaltung im WWW verfügbar
(Übungsseite). Ein Aufgabenblatt besteht aus
einem Diskussions- und einem Programmierteil.
Lösungen des Diskussionsteils werden als individuelle Leistung bewertet.
Bearbeitete Aufgaben können in der Übungsgruppe votiert und
vorgetragen werden. Eine schriftliche Abgabe der Lösungen wird nicht
verlangt.
Die Bearbeitung der Aufgaben des Programmierteils erfolgt im Team und wird
als Teamarbeit gewertet. Das bedeutet, dass jedes Teammitglied die gleiche
Punktzahl erhält. Die erarbeitete Lösung muss dem Tutor für die
Bewertung zugesandt werden (siehe Abgabemodalitäten).
Die Ergebnisse der Bewertung durch den Tutor werden in der nächsten
Übungsgruppe dem Team mitgeteilt.
Abgabemodalitäten
Abgabetermin für die Lösungen des Programmierteils ist jeweils
Freitag 13:00h vor der Woche mit Plenums- und Übungsterminen. Verspätete
Abgaben werden nicht akzeptiert! Die genauen Termine sind wie folgt:
| Blatt |
Ausgabe |
Abgabe |
Besprechung |
| 1 |
23.10.2008 |
31.10.2008, 13:00h |
3.11.-7.11.2008 |
| 2 |
6.11.2008 |
14.11.2008, 13:00h |
17.11.-21.11.2008 |
| 3 |
20.11.2008 |
28.11.2008, 13:00h |
1.12.-5.12.2008 |
| 4 |
4.12.2008 |
12.12.2008, 13:00h |
15.-19.12.2008 |
| 5 |
18.12.2008 |
9.1.2009, 13:00h |
12.-16.1.2009 |
| 6 |
15.1.2009 |
23.1.2009, 13:00h |
26.1.-30.1.2009 |
| 7 |
29.1.2009 |
6.2.2009, 13:00h |
9.-13.2.2009 |
Die Abgabe der Lösungen des Programmierteils erfolgen elektronisch
über das
eClaus-System
. Einzelheiten zur Abgabe werden im Plenum bekannt gegeben.
Bewertung
Lösungen der Aufgaben des Programmierteils werden durch Punkte
bewertet. Die jeweils maximal erreichbare Punktzahl einer Aufgabe
ist in der Aufgabenstellung genannt. Die Bewertung einer Lösung
und somit die Verteilung der Punkte einer Aufgabe ist wie folgt:
- 50% der Punkte werden für die Korrektheit vergeben,
- 25% der Punkte werden für die Kommentierung des Programms vergeben und
- 25% der Punkte erhält man für die Einhaltung des Styleguides.
Der Programmierteil wird als Teamleistung bewertet. Jedes Teammitglied erhält
die gleiche Punktzahl.
Wird von mehreren Teams die gleiche Lösung abgegeben (Kopie), dann wird
die erreichte Punktzahl der Lösung durch die Anzahl der Kopien geteilt.
Geben zum Beispiel drei Teams die gleiche Lösung ab, dann erhält
jedes Team 1/3 (ein Drittel) der erreichten Punktzahl.
Lösungen des Programmierteils werden nur bewertet, wenn diese
pünktlich in eClaus abgegeben wurden. Probleme bei der Abgabe, zum Beispiel
bei Nichtverfügbarkeit von eClaus, teilen Sie bitte umgehend ihrem
Tutor mit.
Lösungen zu Aufgaben des Diskussionsteils können votiert werden.
Die Votierung erfolgt schriftlich auf einer vom Tutor ausgegeben Votierliste.
Wenn Sie eine Aufgabe votieren, dann müssen Sie die Lösung der
Aufgabe in der Übungsgruppe vortragen können, um nachzuweisen,
dass Sie die Aufgabe tatsächlich bearbeitet haben. Können Sie die
Lösung der Aufgabe nicht vortragen, wird Ihre Votierung der Aufgabe
vom Tutor gestrichen.
Übungsgruppen
| Gruppe |
Termin |
Raum |
Tutor |
| A |
Mo. 17:30-19:00 |
0.453 |
Stefan Grohe |
| B |
Di. 17:30-19:00 |
0.118 |
Patrick Diehl |
| C |
Mi. 11:30-13:00 |
0.124 |
Wolfgang Fellger |
| D |
Fr. 14:00-15:30 |
0.363 |
Johannes Wettinger |
| E |
Fr. 14:00-15:30 |
0.457 |
Julian Trischler |
Termine
Plenum
Das Plenum findet Donnerstags von 8:00h-9:30h im Raum
V38.01 statt. Termine und Inhalte der Veranstaltung sind wie
folgt:
Übungen
| Termin |
Inhalte |
| 3.-7.11.2008 |
Besprechung Aufgabenblatt 1 |
| 17.-21.11.2008 |
Besprechung Aufgabenblatt 2 |
| 1.-5.12.2008 |
Besprechung Aufgabenblatt 3 |
| 15.-19.12.2008 |
Besprechung Aufgabenblatt 4 |
| 12.-16.1.2009 |
Besprechung Aufgabenblatt 5 |
| 26.-30.1.2009 |
Besprechung Aufgabenblatt 6 |
| 9.-13.2.2009 |
Besprechung Aufgabenblatt 7 |
Downloads und Links
Übungsblätter
Alle Übungsblätter und zugehörige Materialen finden Sie auf der
Webseite für die Übungen.
Dokumentation
Werkzeuge
Editoren und IDEs
Literatur
Die gelisteten Bücher sind in der
Fakultätsbibliothek
und teilweise auch in der
Universitätsbibliothek
verfügbar.
-
John Barnes (2006): Programming in Ada 2005. Addison-Wesley Longman, Amsterdam.
Das Standardwerk für die Ada-Programmierung. Die ältere Ausgabe, in der Ada 95 behandelt
wird, genügt für den Programmierkurs.
-
Steve McConnell (2004): Code Complete - A Practical Handbook of Software Construction.
Microsoft Press Corp., 2. Aufl.
McConnell behandelt alle Aspekte, die zu beachten sind, wenn man guten Programmcode
schreiben möchte.
|