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.

2015W, 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

  • Ability to work together in pairs
  • 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

Preliminary talk: October 5 from 1 p.m. to 3 p.m., Audi.Max.

The whole module Program Construction is covered by the course of the same name described here. We abbreviate it by PK (for German Programm-Konstruktion). PK provides the first level of programming education in all bachelor studies in informatics and business informatics at the Vienna University of Technology. It is recommended to take this course in the first semester.

In previous curricula the module Program Construction was covered by the courses Foundations of Program Construction (GPK) and Programming Practice (PP). Students who already passed one of these courses (or do not need one of them because of a very old corriculum) can still take the other course. However, students not satisfying this precondition have to take PK instead of GPK and PP.

Activities

  • Each of the 4 weekly lecture units in the Audi.Max. has a focus on theory or examples of practical use: Monday 13:00-14:00 theory and 14:00-15:00 practical use, Thursday 14:00-15:00 theory and 15:00-16:00 practical use. Each participant is supposed to attend all lectures. The first lecture on October 5 (13:00-15:00) gives much organizational information. Please take notice of the lecture documents (only in German).
  • Exercises on exercise sheets shall be solved, the solutions shall be stored in the exercise environment and validated by "checking".
  • There are almost weekly tutorials, each with about 25 students for about 2 hours. Attendence is required, and the performance in the tutorials contributes to the assessment. Selected students present solutions of exercises on the exercise sheets and answer questions. An emphasis is on ad-hoc programming exercises that have to be solved alone during the tutorial on a computer. Time and location of the tutorials are determined when registering for them.
  • 3 regular tests build the most important contribution to assessment. They  happen on November 4, December 9 and January 27 in several labs on computers (using similar software as in the tutorials). The test on November 4 will take 45 minutes, the others 90 minutes each.
  • On October 7 there will be an classification test on computers. It will take 45 minutes. Participation is optional, but it is recommended to all students with programming experience. Students who solve at least 70% of the tasks participate in special tutorials for advanced students (instead of the usual tutorials). The classification test can be used as replacement of the first regular test if at least 50% of the tasks are solved.
  • On February 17 there will be a supplementary test. Participation is possible only if exactly two of the regular tests showed a positive result (the other a negative one). In this case the result of the supplementary test replaces that of the negative test. The supplementary test covers all topics discussed in the lecture.
  • In January a final programming task has to be solved in teams of two persons each. Results have to be presented in an oral exam by the end of January or in February.
  • It is important to practice programming. To get individual support, tutors will be happy to help in the "programming coffee" that will take place every week in the InfLab (Monday 10-11 a.m. and Wednesday 5-6 p.m.). Furthermore, a tutor will be assigned to each student as a contact person.

Prerequisites of attending

To attend the components of the course the following preconditions must be satisfied:

  • Participation in a regular test requires that
    • at least 70% of the tasks were solved in the classification test
    • or for at least 50% of the exercises on the first two exercise sheets there are substantial solutions (where substantial does not necessarily mean correct).
  • Participation in all components of the course after the first regular test requires successful participation in the classification test or (not necessarily successful) participation in the first regular test.
  • Participation in the supplementary test requires two regular tests to be positive and one to be negative. Thereby the classification test counts as replacement of an omited first regular test.
  • Earch participation in a test or oral exam requires a registration (after request by mail).
  • A registration is necessary for each participation in a test and oral exam (upon request by mail). Participation in the classification test requires a registration in TISS until October 6 at 9:59 am (for organizational reasons).
  • Participation in tutorials requires registrations (upon request),
    • one at the begin of the semester valid for the first four usual tutorials (not for advanced students according to the classification test),
    • and one after the first regular test for the remaining tutorials.

Mails will inform about exact modalities of registration for tests and tutorials.

Tutorials

We differentiate between advanced tutorials and usual tutorials. Advanced tutorials are attended by students who solve at least 70% of the tasks in the classification test, usual tutorials by all other participants in the course. These to kinds of tutorials differ as follows:

  • There are 9 almost weekly usual tutorials, and 8 exercise sheets have to be solved in preparation for these tutorials (one for each tutorials except the first one). The first usual tutorial is in the week starting October 12.
  • There are 5 almost weekly advanced tutorials and 5 exercise sheets, one in preparation for each tutorial. Advanced tutorials begin only after the first regular test.
  • Most exercises in advanced tutorials are more difficult to solve than those in usual tutorials in order to achieve the same objectives in a shorter amount of time.

More information on each tutorial will be given at the begin of the semester.

Exercise environment

Each participant gets access to a computer where all software needed to solve the exercises can be found. Programs written to solve the exercises must be stored there. Advisors can access these programs. There will be a short introduction into the use of the exercise environment in the first tutorial.  Students are usually logged in into the exercise environment during tutorials. Exercise sheets can also be solved in the exercise environment. If exercise sheets are solved on another computer, the written programs have to be copied into the exerciste environment before the begin of tutorials.

Communication

An important part of the communication is by mail. Mail to students goes to mail addresses of the form  eXXXXXXX@student.tuwien.ac.at, where XXXXXXX is the registration number. Pleaseread such mail carefully and timely because some mails may require quick reactions.

Upon registration for a tutorial, each participant gets the contact address of the tutor responsibe for individual support. Please contact this tutor whenever you need help.

There is a hotline for the course: pk@complang.tuwien.ac.at

ECTS-Breakdown:

  • 3.0 ECTS (75 hours) for the participation in lectures including preparation and solving the exercises given in the lectures.

  • 3.0 ECTS (75 hours) for solving exercise sheets and participating in tutorials.

  • 1.8 ECTS (45 hours) for preparation for tests and participation in tests.
  • 1.0 ECTS (25 hours) for sovling the final programming task and the oral exam.

Lecturers

Institute

Course dates

DayTimeDateLocationDescription
Mon13:00 - 15:0005.10.2015 - 19.10.2015GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Mon13:00 - 15:0005.10.2015 - 25.01.2016GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu14:00 - 16:0008.10.2015 - 22.10.2015GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Thu14:00 - 16:0008.10.2015 - 21.01.2016GM 1 Audi. Max.- ARCH-INF Vorlesung
Program Construction - Single appointments
DayDateTimeLocationDescription
Mon05.10.201513:00 - 15:00GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Mon05.10.201513:00 - 15:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu08.10.201514:00 - 16:00GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Thu08.10.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Mon12.10.201513:00 - 15:00GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Mon12.10.201513:00 - 15:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu15.10.201514:00 - 16:00GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Thu15.10.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Mon19.10.201513:00 - 15:00GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Mon19.10.201513:00 - 15:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu22.10.201514:00 - 16:00GM 5 Praktikum HS- TCH Vorlesung - Übertragung aus Audimax
Thu22.10.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu29.10.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu05.11.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Mon09.11.201513:00 - 15:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu12.11.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Mon16.11.201513:00 - 15:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu19.11.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Mon23.11.201513:00 - 15:00GM 1 Audi. Max.- ARCH-INF Vorlesung
Thu26.11.201514:00 - 16:00GM 1 Audi. Max.- ARCH-INF Vorlesung

Examination modalities

  • The course assessment results to equal parts from assessments of the following five components:
    • the first regular test (or alternatively the classification test without participation at the first regular test or the supplementary test if the first regular test was negative),
    • the second regular test (or alternatively the supplementary test if the second regular test was not positive),
    • the third regular test (or alternatively the supplementary test if the third regular test was not positive),
    • the tutorials,
    • the final programming task (according to the oral exam).
  • For a positive course assessment it is necessary that the assessment of each of these five components is positive. Otherwise the course assessment is negative.
  • Each of these components is rated with a maximum of 100 percent points. The assessment of a component is positive if at least 50 percent points have been achieved. If the course assessment is positive, the grade is computed from the sum of percent points: "sehr gut" with at least 438 points, "gut" with at least 375 points, "befriedigend" with at least 313 points, "genügend" with less points.
  • A certificate will be issued when participating on at least one test.
  • The assessment of the tutorials is composed to equal parts from
    • the quality of the solutions of ad-hoc programming tasks as assessed by the leader of the tutorial (9 parts for usual tutorials, 5 parts for advanced tutorials),
    • the portion of marked exercises on each exercise sheet multiplied by a factor between 0 and 1 as determined by the leader of the tutorial based on the quality of answers to questions and the presentation of the solutions of marked exercises (further 8 parts for usual tutorials, 5 parts for advanced tutorials).
    • On absence from a tutorial the worst possible assessment is assumed.

Course registration

Begin End Deregistration end
21.09.2015 08:00 11.10.2015 23:59 11.10.2015 23:59

Application is currently locked manually.

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

The course addresses first-year students. Hence, no specific previous knowledge is required. Students without previous programming experience are supposed to be able to achieve the specified objectives (assuming appropriate participation). Students with programming experience are supposed to gain insight into new aspects.

Language

German