Degree | Type | Year |
---|---|---|
2502441 Computer Engineering | FB | 1 |
You can view this information at the end of this document.
There are no prerequisites. However, students should be familiar with the most basic programming structures. Thus, it is recommended for students to have taken the course “Fonaments d'Informàtica”.
This subject is part of the Computer Science subject and it should be regarded as the logical continuation of the programming part of the Fundamentals of Computer Science subject. The basic objective is to deepen in the basic notions of imperative programming introduced in Fundamentals of Computer Science and to introduce the principles of object-oriented programming.
In this way, the objectives for this course are the following:
Topic 0: Review of the basic programming structure
Topic 1: Introduction to object-oriented programming
• Introduction to the concept of class. Methods and attributes. Private and public part
• Persistence and serialization of objects. Reading and writing files.
Topic 2: Dynamic data structures
• The concept of pointer. Operations with pointers.
• Dynamic objects.
• Representation and implementation of dynamic data structures: lists, stacks and queues.
• Use of dynamic data structures. STL library
Title | Hours | ECTS | Learning Outcomes |
---|---|---|---|
Type: Directed | |||
Lectures | 50 | 2 | 10, 3, 7, 9, 8, 1, 6 |
Type: Supervised | |||
Follow-up of the implementation of the programming project | 1 | 0.04 | 8, 1, 5, 4 |
Type: Autonomous | |||
Implementing a programming project | 48 | 1.92 | 2, 7, 9, 8, 5, 4 |
Individual study | 11 | 0.44 | 3, 6 |
Solving problems | 36 | 1.44 | 7, 9, 8, 5 |
The teaching methodology of the course is based on the principle that "programming is the only way to learn to program" and, therefore, will be mainly focused on the practical work of the student. Lectures will introduce the theoretical contents of the subject, from a very practical perspective using examples and exercises and programming problems that must be solved in class directly with the computer. On the other hand, a programming project will have to be developed mainly autonomously throughout the course (with follow-up and control by the teacher in specific sessions). It will involve applying almost all concepts and programming tools introduced in lectures to solving a complex real problem. In addition, a set of exercises will have to be solved individually throughout the course (some of them will be evaluated and discussed in lectures). They should serve to understand, integrate and apply the concepts developed in lectures. In all the activities of the course (lectures, problems and project) the C++ programming language will be used.
In lectures, the course will not distinguish between theory, problem and practical lectures. Lectures will be organized in four hours per week in groups of around 40 students. In the lectures, the concepts of the syllabus of the subject will be discussed. In some cases, explanatory videos may be made available to the student to watch before the class session. Lectures will have a very practical approach with examples and exercises that will be presented to students to facilitate understanding and learning of the concepts. These exercises will be carried out anddiscussed during the session and will be used to introduce the contents of the subject and see its practical application. It is recommended that the student bring his own laptop to class if he has one, to be able to do the exercises proposed during the class.
The student must complete the lectures with autonomous personal work to do the exercises that are proposed and that should serve to understandthe contents of the course. It must be borne in mind that the syllabus of the subject has a logical continuity throughout the course, so that to follow correctly a class it is necessary to understand what was explained in the previous sessions. Some of these exercises must be submitted individually as part of the evaluation of the course.
In addition, students must develop in groups of 2 people a programming project that will be developed autonomously throughout the course apart from the lectures. The programming project will allow addressing a programming problem of a certain complexity that integrates most of the concepts explained during the course. During the course, some lectures sessions will be devoted to the control, monitoring and evaluation of the work carried out by the student in the programming project.
The management of the course will be done through the platform Caronte (http://caronte.uab.cat/), which will be used to view the materials, manage the groups of the project, submitting exercises, publish evaluation marks, communicate with teachers, etc.
Transversal Competences
• T01.01 Develop critical thinking and reasoning. This competence will be developed during the lectures, from the presentation and discussion of examples and practical cases. It will be taken into account in the evaluation of students problem submission.
• T02.03 Manage time and available resources. Work in an organized way. This competence will be developed mainly thorugh the programming project. The student aims to develop the project autonomously and must be able to organize the time and resources to achieve this goal. It will be evaluated in the follow-up sessions of the project.
• T02.05 Make their own decisions. This competence will be developed during the programming project in which the student must choose and take the best options to complete the project. It will be evaluated in the follow-up sessions of the project.
Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.
Title | Weighting | Hours | ECTS | Learning Outcomes |
---|---|---|---|---|
Individual evaluation | 40% | 4 | 0.16 | 3, 6 |
Problem submission | 30% | 0 | 0 | 10, 7, 9, 8, 1, 5 |
Programming project | 30% | 0 | 0 | 10, 2, 7, 9, 8, 5, 4 |
Subject assesement will take into account three types of assesement activities: resolution of problems, individual assesement and programming project. The final grade of the subject is obtained by combining the grade of these 3 activities as follows:
Final Grade = (0.3 * Continuous assesement) + (0.3 * Project) + (0.4 * Individual assesement)
Individual assesement = (0.5*Partial Test 1) + (0.5 * Partial Test 2)
Unique assessment
Students who wish to take part in the single assessment must submit, on the date indicated by the single assessment, the exercises indicated at the beginning of the course and the programming project and must take an individual assessment test that will include the contents of the entire course. This individual assessment test will consist of two parts that will correspond to the two partials that will be taken throughout the course and a minimum of 4.5 must be achieved in each of the two parts in order to pass the subject.
The final mark in the case of a single assessment will be calculated as follows:
Final Grade = (0.2 * Delivery problems) + (0.3 * Project) + (0.5 * Individual Assessment)
The minimum marks for each part to pass the subject are the same as for the continuous assessment.
The same recovery system will be applied as for the continuous assessment
Not assesed: A student will be considered not assesed (NA) if he does not submit at least 50% of the deliveries of exercises and does notdo any of the evaluation tests: partial test 1, partial test 2, final test, final delivery of the project.
Suspended: If the final grade is equal to or greater than 5 but the student does not reach the minimum required in any of the assesement activities, the final grade will be suspended and , the grade in the Transcript of Records (ToR) will be 4.5.
Pass the course with honours: In order to pass the course with honours, the final grade must be a 9.0 or higher. Because the number of students with this distinction cannot exceed 5% of the number of students enrolled in the course, this distinction will be awarded to whoever has the highest final grade.
Compensations: For the students who are following the course for the second time or more, the project of the previous year can be compensated if these conditions aremet:
When compensated, the grade of the project will be 5, independently of the grade obtained in the previous year.
Review of assesement: For each assesement activity, a place, date and time of review will be indicated allowing students to review the activity with the lecturer. In this context, students may discuss the activity grade awarded by the lecturers responsible for the subject. If students do not take part in this review, no further opportunity will be made available.
Important note: copies and plagiarism
Notwithstanding other disciplinary measures deemed appropriate, and in accordance with the academic regulations in force, assessment activities will receive a zero whenever a student commits academic irregularities that may alter such assessment. Assessment activities graded in this way and by this procedure will not be re-assessable. If passing the assessment activity or activities in question is required to pass the subject, the awarding of a zero for disciplinary measures will also entail a direct fail for the subject, with no opportunity to re-assess this in the same academic year. Irregularities contemplated in this procedure include, among others:
In these cases, the grade in the Transcript of Records (ToR) will be the lowest value between 3.0 and the weighted average grade (and therefore re-assessment will not be possible).In the assesment of problems and the project, tools to detect code plagiarism will be used.
Note on the planning of the assesment activities: Continuous-assessment dates will be published on Caronte and on the presentation slides. Specific programming may change when necessary. Any such modification will always be communicated to students through Caronte, which is the usual communication platform between lecturers and students.
Any Intgrated Development Environment in C++
Name | Group | Language | Semester | Turn |
---|---|---|---|---|
(PAUL) Classroom practices | 411 | Catalan | second semester | morning-mixed |
(PAUL) Classroom practices | 412 | Catalan | second semester | morning-mixed |
(PAUL) Classroom practices | 431 | Catalan | second semester | morning-mixed |
(PAUL) Classroom practices | 432 | Catalan | second semester | morning-mixed |
(PAUL) Classroom practices | 451 | Catalan | second semester | afternoon |
(PAUL) Classroom practices | 452 | Catalan/Spanish | second semester | afternoon |
(PAUL) Classroom practices | 471 | Catalan | second semester | afternoon |
(PAUL) Classroom practices | 472 | Catalan | second semester | afternoon |