185.A79 Program Construction This course is in all assigned curricula part of the STEOP.
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2016S, VU, 6.0h, 8.8EC
TUWEL

Properties

  • Semester hours: 6.0
  • Credits: 8.8
  • Type: VU Lecture and Exercise

Aim of course

Technical and Methodological Knowledge

  • Comprehension of systematic, constructive methods for writing, testing, debugging, simulating and modifying programs
  • Comprehension of the most important concepts of a current and suitable programming language
  • Comprehension of simple algorithms and fundamental data structures
  • Knowledge of the most usual sources of errors in programming

Cognitive and Practical Skills

  • Use of fundamental concepts, methods and tools for writing, testing debugging, simulating and modifying programs
  • Use of abstract and systematic ways of thinking in programming
  • Documenting and communicating program characteristics

Social Competencies, Innovation and Creativity

  • Taking pleasure in solving programming exercises
  • Intellectual curiosity in programming topics

Subject of course

 

  • Fundamental procedural programming concepts (including recursion and input/output)
  • Fundamental design principles, problem solving strategies, algorithms and data structures (including abstract data types)
  • Fundamental development methods (concerning program comprehension, correctness, debugging, documentation and programming style) and programming tools (including appropriate programming environments)

Additional information

Vorbesprechung: 3. März, 13:00 - 15:00, Audi.Max.

Das gesamte Modul Programmkonstruktion wird durch die gleichnamige, hier beschriebene Lehrveranstaltung (abgekürzt PK) abgedeckt. PK bildet die erste Stufe der Programmierausbildung für alle Bachelorstudien der Informatik und Wirtschaftsinformatik an der TU Wien. Es wird dringend dazu geraten, PK im ersten Semester eines solchen Studiums zu absolvieren.

In ehemaligen Studienplänen waren statt PK die Lehrveranstaltungen Grundlagen der Programmkonstruktion (GPK) sowie Programmierpraxis (PP) vorgesehen. Studierende, die schon eine dieser beiden Lehrveranstaltungen absolviert haben (oder aufgrund eines sehr alten Studienplans nicht benöten) können nach wie vor die jeweils andere Lehrveranstaltung besuchen. Studierende, auf die diese Voraussetzungen nicht zutreffen, können statt GPK und PP nur mehr PK besuchen.

Ablauf

  • Die wöchentlich vier Vorlesungseinheiten im Audi.Max. haben jeweils einen Schwerpunkt in der Theorie oder in Anwendungsbeispielen:

    Montag, 15:00-16:00 Uhr, Theorie 
    Montag, 16:00-17:00 Uhr, Anwendung 
    Donnerstag, 13:00-14:00 Uhr, Theorie 
    Donnerstag, 14:00-15:00 Uhr, Anwendung
      
  • Die Vorlesungen sind nicht alternativ, sondern bauen aufeinander auf und müssen daher alle besucht werden. Die erste Vorlesung am 3. März 2015 bietet viel organisatorische Information (= Vorbesprechung). Beachten Sie die Vorlesungsunterlagen.
  • Die Aufgaben auf Aufgabenblättern sind zu lösen und die Lösungen bis zur vorgegebenen Zeit in der Übungsumgebung abzulegen.
  • Studierende nehmen wiederholt an zweistündigen geleiteten Übungen in Gruppen zu ca. 25 Personen teil. Die Anmeldung zu einer dieser Gruppen ist erst nach der Anmedung zur LV möglich (Die Anmeldungfrist für die Gruppenanmeldung wird separat angekündigt). Diese Übungen mit Anwesenheitspflicht bilden einen wesentlichen Bestandteil der Beurteilung. Ausgewählte Teilnehmer(innen) präsentieren ihre Lösungen der Aufgabenblätter und beantworten Fragen. Einen Schwerpunkt bilden Programmieraufgaben, die vor Ort alleine am Computer zu lösen sind. Alle Übungen finden im Frogger-Raum des InfLab zu unterschiedlichen Zeiten statt, abhängig von den Anmeldungen zu Gruppen.
  • Drei reguläre Tests bilden den Schwerpunkt der Beurteilung. Sie finden am 20. April, 18.Mai und 29. Juni in mehreren Labors und zu mehreren Terminen an Computern (mit ähnlicher Software wie bei den Übungen) statt. Der Test im April dauert 45 Minuten, die beiden Tests im Juni je 90 Minuten.
  • Am 9. März findet ein Einstufungstest statt. Er dauert 45 Minuten. Die Teilnahme daran ist freiwillig, wird aber allen Studierenden empfohlen, die schon Programmierkenntnisse haben. Studierende, die beim Einstufungstest mindestens 70% der Punkte erreichen, absolvieren die geleiteten Übungen in speziellen Übungsgruppen für Fortgeschrittene. Außerdem sind die Ergebnisse des Einstufungstests für den ersten regulären Test anrechenbar, wenn mindestens 50% der Punkte erreicht werden.
  • Am Mitte Juli findet ein Nachtragstest statt. Die Teilnahme ist nur möglich, wenn genau einer der beiden regulären Tests im Juni negativ oder gar nicht beurteilt wurde. Die Beurteilung des Nachtragstest ersetzt jene dieses regulären Tests. Inhaltlich deckt der Nachtragstest das gesamte Stoffgebiet ab, wobei Schwerpunkte auf ursprünglich negativ oder nicht beurteilten Teilen liegen.
  • Eine wesentliche Komponente ist das freie Üben, also das Lösen von Aufgaben nach eigenem Gutdünken zu Übungszwecken. Zur Unterstützung stehen im InfLab zu gewissen Zeiten (werden angekündigt) Tutor(inn)en bereit, die bei Fragen und Problemen weiterhelfen Programmier-Cafe. Zusätzlich wird jede(r) Teilnehmer(in) durch eine(n) Tutor(in) als persönliche(n) Ansprechpartner(in) vorwiegend per Mail betreut.

Teilnahmevoraussetzungen

Für die Teilnahme an  den Komponenten der Lehrveranstaltung gelten folgende Voraussetzungen:

  • Die Teilnahme an regulären Tests setzt voraus, dass entweder
    • beim Einstufungstest mindestens 70% der Punkte erreicht wurden
    • oder zu mindestens 50% der Aufgaben auf den ersten beiden Aufgabenblättern substanzielle Lösungen abgegeben wurden.
  • Die Teilnahme an allen Komponenten der Lehrveranstaltung nach dem ersten regulären Test setzt voraus, dass ein Antritt zum Einstufungstest oder ersten regulären Test erfolgt ist.
  • Die Teilnahme am Nachtragstest setzt voraus, dass der erste reguläre Test (oder Ersatzweise der Einstufungstest) sowie genau einer der beiden weiteren regulären Tests positiv beurteilt wurden.
  • Für jede Teilnahme an einem Test ist (nach Aufforderung per Mail) eine Terminreservierung nötig. Aus organisatorischen Gründen ist die Terminreservierung für den (und die Teilnahme am) Einstufungstest nur möglich, wenn die TISS-Anmeldung zuvor bis spätestens 7. März erfolgt ist.
  • Für die Teilnahme an den geleiteten Übungen sind (jeweils nach Aufforderung) zwei Anmeldungen zu Übungsgruppen nötig,
    • zu Semesterbeginn eine für die ersten vier Übungen (gilt nicht für Übungsgruppen für Fortgeschrittene)
    • und nach dem ersten regulären Test eine für die weiteren Übungen.

Über genaue Modalitäten zu Terminreservierungen sowie Anmeldungen zu Übungsgruppen werden Sie zu gegebener Zeit per Mail informiert.

Übungsgruppen

Normale Übungsgruppen werden von Übungsgruppen für Fortgeschrittene unterschieden. Studierende, die beim Einstufungstest mindestens 70% der Punkte erreicht haben, kommen in eine Gruppe für Fortgeschrittene. Alle anderen Studierenden (nicht am Einstufungstest teilgenommen oder weniger Punkte erreicht) kommen in eine normale Übungsgruppe. Diese beiden Arten von Übungsgruppen unterscheiden sich folgendermaßen voneinander:

  • Normale Übungsgruppen haben insgesamt 9 (beinahe) wöchentliche Übungstermine. Es sind insgesamt 8 Aufgabenblätter zu lösen, vor jedem Übungstermin außer dem ersten eines. Der erste Übungstermin ist in der dritten Märzwoche.
  • Übungsgruppen für Fortgeschrittene haben insgesamt 5 (beinahe) wöchentliche Übungstermine. Es sind auch 5 Aufgabenblätter zu lösen, vor jedem Übungstermin eines. Der erste Übungstermin ist erst nach dem ersten regulären Test.
  • Übungsaufgaben für Fortgeschrittene können sich von denen normaler Übungsgruppen unterscheiden. In der Regel sind sie komplexer um dieselben Lernziele in kürzerer Zeit zu erreichen.

Genauere Information zu den einzelnen Gruppen werden noch bekanntgegeben.

Übungsumgebung

Zu Beginn der geleiteten Übungen erhalten Teilnehmer(innen) Zugangsdaten zu einem Account auf dem Übungsrechner. Dort ist die zum Lösen der Aufgaben nötige Software installiert, und dort werden die Lösungen abgelegt. Auch die Betreuer haben Zugang zu den Daten in der Übungsumgebung. In der ersten geleiteten Übung erfolgt eine kurze Einweisung in die Verwendung der Übungsumgebung. Während der geleiteten Übungen bleibt man in der Regel stets in diese Übungsumgebung eingeloggt. Aufgabenblätter können ebenfalls in dieser Übungsumgebung gelöst werden. Wer die Aufgabenblätter auf einem anderen Rechner löst, muss die Lösungen vor den Abgabeterminen in die Übungsumgebung kopieren.

Kommunikation

Ein wichtiger Teil der Kommunikation erfolgt per Mail. Mail an Studierende wird an Adressen der Form eXXXXXXX@student.tuwien.ac.at verschickt, wobei XXXXXXX die Matrikelnummer ist. Teilnehmer(innen) werden gebeten, Mail an diese Adressen regelmäßig zu lesen, da manche Mails eine kurzfristige Aktion erfordern.

Durch die erste Anmeldung zu einer Übungsgruppe erhält jede(r) Teilnehmer(in) die Kontaktadresse einer Tutorin oder eines Tutors, der oder die für die persönliche Betreuung zuständig ist. Dies(e) Tutor(in) dient als wichtigste Anlaufstelle bei Problemen und zur Klärung offener Fragen aller Art.

Fragen können auch an die Adresse pk@complang.tuwien.ac.at gerichtet werden.

Eine gute Gelegenheit für direkte Besprechungen mit Tutor(inn)en bieten die Anwesenheitszeiten von Tutor(inn)en im InfLab (wird angekündigt).

Vor und nach Vorlesungen und Übungen sowie in Pausen können Teilnehmer(innen) die Lehrenden gerne direkt ansprechen und Fragen stellen. Daneben bietet die meisten Lehrenden eine wöchentliche Sprechstunde an, zu der Sie auch ohne Voranmeldung kommen können. Für genaue Termine klicken Sie bitte auf den Namen des jeweiligen Vortragenden.

ECTS-Breakdown:

  • 3.0 ECTS (75 Stunden) für Teilnahme an Vorlesungen inklusive Vor- und Nachbereitung und Lösen der dabei gestellten Aufgaben

  • 3.6 ECTS (90 Stunden) für Lösen der Übungsaufgaben und Teilnahme an geleiteten Übungen

  • 2.2 ECTS (55 Stunden) für Testvorbereitung und Testteilnahme

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Thu13:00 - 15:0003.03.2016 - 23.06.2016GM 1 Audi. Max.- ARCH-INF Lecture
Mon15:00 - 17:0007.03.2016 - 27.06.2016GM 1 Audi. Max.- ARCH-INF Lecture
Wed09:00 - 19:0009.03.2016InfLab Q*bert Einstufungstest
Wed09:00 - 19:0009.03.2016InfLab Frogger Einstufungstest
Wed09:00 - 19:0009.03.2016InfLab Pong Einstufungstest
Wed09:00 - 19:0009.03.2016Informatiklabor Pac-Man Einstufungstest
Wed09:00 - 19:0020.04.2016Informatiklabor Pac-Man Test 1
Wed09:00 - 19:0020.04.2016InfLab Q*bert Test 1
Wed09:00 - 19:0020.04.2016InfLab Frogger Test 1
Wed09:00 - 19:0020.04.2016InfLab Pong Test 1
Wed09:00 - 19:0018.05.2016InfLab Frogger Test 2
Wed09:00 - 19:0018.05.2016Informatiklabor Pac-Man Test 2
Wed09:00 - 19:0018.05.2016InfLab Pong Test 2
Wed09:00 - 19:0018.05.2016InfLab Q*bert Test 2
Wed09:00 - 19:0029.06.2016InfLab Frogger Test 3
Wed09:00 - 19:0029.06.2016InfLab Pong Test 3
Wed09:00 - 19:0029.06.2016InfLab Q*bert Test 3
Wed09:00 - 19:0029.06.2016Informatiklabor Pac-Man Test 3
Program Construction - Single appointments
DayDateTimeLocationDescription
Thu03.03.201613:00 - 15:00GM 1 Audi. Max.- ARCH-INF Lecture
Mon07.03.201615:00 - 17:00GM 1 Audi. Max.- ARCH-INF Lecture
Wed09.03.201609:00 - 19:00InfLab Q*bert Einstufungstest
Wed09.03.201609:00 - 19:00InfLab Frogger Einstufungstest
Wed09.03.201609:00 - 19:00InfLab Pong Einstufungstest
Wed09.03.201609:00 - 19:00Informatiklabor Pac-Man Einstufungstest
Thu10.03.201613:00 - 15:00GM 1 Audi. Max.- ARCH-INF Lecture
Mon14.03.201615:00 - 17:00GM 1 Audi. Max.- ARCH-INF Lecture
Thu17.03.201613:00 - 15:00GM 1 Audi. Max.- ARCH-INF Lecture
Mon04.04.201615:00 - 17:00GM 1 Audi. Max.- ARCH-INF Lecture
Thu07.04.201613:00 - 15:00GM 1 Audi. Max.- ARCH-INF Lecture
Mon11.04.201615:00 - 17:00GM 1 Audi. Max.- ARCH-INF Lecture
Thu14.04.201613:00 - 15:00GM 1 Audi. Max.- ARCH-INF Lecture
Mon18.04.201615:00 - 17:00GM 1 Audi. Max.- ARCH-INF Lecture
Wed20.04.201609:00 - 19:00Informatiklabor Pac-Man Test 1
Wed20.04.201609:00 - 19:00InfLab Q*bert Test 1
Wed20.04.201609:00 - 19:00InfLab Frogger Test 1
Wed20.04.201609:00 - 19:00InfLab Pong Test 1
Thu21.04.201613:00 - 15:00GM 1 Audi. Max.- ARCH-INF Lecture
Mon25.04.201615:00 - 17:00GM 1 Audi. Max.- ARCH-INF Lecture

Examination modalities

  • Die Gesamtbeurteilung setzt sich zu je einem Viertel zusammen aus den Beurteilungen
    • des ersten regulären Tests (oder ersatzweise des Einstufungstests wenn der erste reguläre Test nicht oder negativ beurteilt wurde),
    • des zweiten regulären Tests (oder ersatzweise des Nachtragstests wenn der zweite reguläre Test nicht oder negativ beurteilt wurde),
    • des dritten regulären Tests (oder ersatzweise des Nachtragstests wenn der dritte reguläre Test nicht oder negativ beurteilt wurde),
    • der geleiteten Übungen
  • Eine positive Gesamtbeurteilung setzt eine positive Beurteilung jeder dieser vier Komponenten voraus. Wurde eine Komponente negativ oder (mangels Teilnahme) nicht beurteilt, ist die Gesamtbeurteilung negativ.
  • Jede dieser Komponenten wird mit maximal 100 Prozentpunkten beurteilt. Die Beurteilung einer Komponente ist positiv, wenn für diese Komponente mindestens 50 Prozentpunkte erreicht wurden. Ist die Gesamtbeurteilung positiv, ergibt sich die Note aus der Summe der erreichten Prozentpunkte: sehr gut ab 350 Punkten, gut ab 300 Punkten, befriedigend ab 250 Punkten, genügend darunter.
  • Ein Zeugnis wird ausgestellt, sobald an einer Übungseinheit oder einem Test teilgenommen wurde.
  • Die Übungsbeurteilung setzt sich zusammen aus den Beurteilungen bei jedem Übungstermin hinsichtlich
    • Qualität der Lösungen von Aufgaben vor Ort,
    • Anwesenheit und Mitarbeit

    DIE ANMELDUNG ZU DEN ÜBUNGSGRUPPEN ERFOLGT ÜBER TUWEL !

Group dates

GroupDayTimeDateLocationDescription
do11aThu11:00 - 13:0017.03.2016 - 23.06.2016InfLab Frogger 185.A79 Program Construction do11a
do11bThu11:00 - 13:0017.03.2016 - 23.06.2016InfLab Q*bert 185.A79 Program Construction do11b
do11bThu11:00 - 13:0017.03.2016 - 23.06.2016InfLab Pong 185.A79 Program Construction do11b
do15aThu15:00 - 17:0017.03.2016 - 23.06.2016InfLab Frogger 185.A79 Program Construction do16a
do15bThu15:00 - 17:0017.03.2016 - 23.06.2016InfLab Q*bert 185.A79 Program Construction do15b
do15bThu15:00 - 17:0017.03.2016 - 23.06.2016InfLab Pong 185.A79 Program Construction do15b
do17aThu17:00 - 19:0017.03.2016 - 23.06.2016InfLab Frogger 185.A79 Program Construction do18a
do17bThu17:00 - 19:0017.03.2016 - 23.06.2016InfLab Q*bert 185.A79 Program Construction do17b
do17bThu17:00 - 19:0017.03.2016 - 23.06.2016InfLab Pong 185.A79 Program Construction do17b
fr14aFri14:00 - 16:0018.03.2016 - 24.06.2016InfLab Frogger 185.A79 Program Construction fr14a
fr14bFri14:00 - 16:0018.03.2016 - 24.06.2016InfLab Q*bert 185.A79 Program Construction fr14b
fr14bFri14:00 - 16:0018.03.2016 - 24.06.2016InfLab Pong 185.A79 Program Construction fr14b
fr16aFri16:00 - 18:0018.03.2016 - 24.06.2016InfLab Frogger 185.A79 Program Construction fr16a
fr16bFri16:00 - 18:0018.03.2016 - 24.06.2016InfLab Q*bert 185.A79 Program Construction fr16b
fr16bFri16:00 - 18:0018.03.2016 - 24.06.2016InfLab Pong 185.A79 Program Construction fr16b
fr18aFri18:00 - 20:0018.03.2016 - 24.06.2016InfLab Frogger 185.A79 Program Construction fr18a
fr18bFri18:00 - 20:0018.03.2016 - 24.06.2016InfLab Pong 185.A79 Program Construction fr18b
fr18bFri18:00 - 20:0018.03.2016 - 24.06.2016InfLab Q*bert 185.A79 Program Construction fr18b
mi09aWed09:00 - 11:0016.03.2016 - 22.06.2016InfLab Frogger 185.A79 Program Construction mi09a
mi09bWed09:00 - 11:0016.03.2016 - 22.06.2016InfLab Q*bert 185.A79 Program Construction mi09b
mi09bWed09:00 - 11:0016.03.2016 - 22.06.2016InfLab Pong 185.A79 Program Construction mi09b
mi11aWed11:00 - 13:0016.03.2016 - 22.06.2016InfLab Frogger 185.A79 Program Construction mi11a
mi11bWed11:00 - 13:0016.03.2016 - 22.06.2016InfLab Q*bert 185.A79 Program Construction mi11b
mi11bWed11:00 - 13:0016.03.2016 - 22.06.2016InfLab Pong 185.A79 Program Construction mi11b
mi13aWed13:00 - 15:0016.03.2016 - 22.06.2016InfLab Frogger 185.A79 Program Construction mi13a
mi13bWed13:00 - 15:0016.03.2016 - 22.06.2016InfLab Q*bert 185.A79 Program Construction mi13b
mi13bWed13:00 - 15:0016.03.2016 - 22.06.2016InfLab Pong 185.A79 Program Construction mi13b
mi15aWed15:00 - 17:0016.03.2016 - 22.06.2016InfLab Frogger 185.A79 Program Construction mi15a
mi15bWed15:00 - 17:0016.03.2016 - 22.06.2016InfLab Q*bert 185.A79 Program Construction mi15b
mi15bWed15:00 - 17:0016.03.2016 - 22.06.2016InfLab Pong 185.A79 Program Construction mi15b
mi17aWed17:00 - 19:0016.03.2016 - 22.06.2016InfLab Frogger 185.A79 Program Construction mi17a
mi17bWed17:00 - 19:0016.03.2016 - 22.06.2016InfLab Q*bert 185.A79 Program Construction mi17b
mi17bWed17:00 - 19:0016.03.2016 - 22.06.2016InfLab Pong 185.A79 Program Construction mi17b
mo10aMon10:00 - 12:0014.03.2016 - 20.06.2016InfLab Frogger 185.A79 Program Construction mo11a
mo10bMon10:00 - 12:0014.03.2016 - 20.06.2016InfLab Pong 185.A79 Program Construction mo10b
mo10bMon10:00 - 12:0014.03.2016 - 20.06.2016InfLab Q*bert 185.A79 Program Construction mo10b
mo17aMon17:00 - 19:0014.03.2016 - 20.06.2016InfLab Frogger 185.A79 Program Construction mo17a
mo17bMon17:00 - 19:0014.03.2016 - 20.06.2016InfLab Q*bert 185.A79 Program Construction mo17b
mo17bMon17:00 - 19:0014.03.2016 - 20.06.2016InfLab Pong 185.A79 Program Construction mo17b

Course registration

Begin End Deregistration end
22.02.2016 00:00 06.03.2016 00:00 06.03.2016 00:00

Registration modalities

Hier können Sie sich zur LV "Programmkonstruktion" anmelden. Die Anmeldung zu den Übungsgruppen erfolgt später über TUWEL (wird angekündigt).

Group Registration

GroupRegistration FromTo
do11a10.03.2016 10:00
do11b10.03.2016 10:00
do15a10.03.2016 10:00
do15b10.03.2016 10:00
do17a10.03.2016 10:00
do17b10.03.2016 10:00
fr14a10.03.2016 10:00
fr14b10.03.2016 10:00
fr16a10.03.2016 10:00
fr16b10.03.2016 10:00
fr18a10.03.2016 10:00
fr18b10.03.2016 10:00
mi09a10.03.2016 10:00
mi09b10.03.2016 10:00
mi11a10.03.2016 10:00
mi11b10.03.2016 10:00
mi13a10.03.2016 10:00
mi13b10.03.2016 10:00
mi15a10.03.2016 10:00
mi15b10.03.2016 10:00
mi17a10.03.2016 10:00
mi17b10.03.2016 10:00
mo10a10.03.2016 10:00
mo10b10.03.2016 10:00
mo17a10.03.2016 10:00
mo17b10.03.2016 10:00

Curricula

Study CodeObligationSemesterPrecon.Info
033 526 Business Informatics Not specifiedSTEG
Course requires the completion of the introductory interview STEG
true
Course belongs to the introductory and orientation phase ("Studieneingangs- und Orientierungsphase")
033 532 Media Informatics and Visual Computing Mandatory1. SemesterSTEG
Course requires the completion of the introductory interview STEG
true
Course belongs to the introductory and orientation phase ("Studieneingangs- und Orientierungsphase")
033 533 Medical Informatics Mandatory1. SemesterSTEG
Course requires the completion of the introductory interview STEG
true
Course belongs to the introductory and orientation phase ("Studieneingangs- und Orientierungsphase")
033 534 Software & Information Engineering Mandatory1. SemesterSTEG
Course requires the completion of the introductory interview STEG
true
Course belongs to the introductory and orientation phase ("Studieneingangs- und Orientierungsphase")
033 535 Computer Engineering Mandatory1. SemesterSTEG
Course requires the completion of the introductory interview STEG
true
Course belongs to the introductory and orientation phase ("Studieneingangs- und Orientierungsphase")

Literature

Please download and read the script, in the ideal case already before the course starts. The two available variants are identical except of the format.

Previous knowledge

Die Lehrveranstaltung ist für Studienanfänger(innen) vorgesehen. Daher werden keine besonderen Vorkenntnisse vorausgesetzt. Der Aufbau ist so, dass Personen ohne vorherige Programmiererfahrung bei intensiver Mitarbeit die Ziele erreichen können, aber auch Personen mit Programmiererfahrung neue Sichtweisen kennenlernen.

Miscellaneous

  • Attendance Required!

Language

German