Degree | Type | Year | Semester |
---|---|---|---|
2503758 Data Engineering | FB | 1 | 1 |
Given that this is an introductory course, it is assumed that students do not have any prior knowledge of the subject.
However, it is advisable to
This subject has a general and introductory character to programming. The study of the methodological aspects of programming and the learning of a high level language will be deepened. Therefore, the general objectives proposed for the subject are the following:
Unit 1: Introduction to the computer
History. Functional structure of the computer. Programs / instructions. Conceptual levels of the computer.
Unit 2: Problem solving: introduction to algorithmics and programming.
Introduction to problem solving. Algorithm concept Phases in the development of algorithms. Programming as an engineering discipline. Software life cycle. Basic elements of an algorithm. Tools for the representation of algorithms. Programming languages. Classification. Language translators: Compilers and interpreters.
Unit 3: Basic concepts and control structures
Definition of variables and constants. Type of fundamental data. Sequential structure. Selection or conditional structures. Iterative or repetitive structures.
Unit 4: Data structures
Unidimensional arrays: strings, tuples and lists. Search and traverse.
Unit 5: Subprograms
The concept of subprogram as an abstraction of operations. Location, nesting, scope and visibility. Definition of functions and procedures. Calls to functions and procedures. Modular design descending.
Unit 6: Files
Basic Definitions. Input / output of data in files. Types of access to files.
Unit 7: Prevention and detection of errors
Types of errors. Exceptions and asserts. Preventive programming. Debugging programs.
Unit 8: Introduction to object-oriented programming
Classes and objects. Attributes and methods. Encapsulation. Definition of classes.
Unit 9: Complex data structures
Lists: iterators, generators, functional paradigm, and list comprehensions. Sets. Dictionaries.
The management of the teaching of the subject will be done through the documentary manager Caronte (http://caronte.uab.cat/),which will serve to see the materials, manage the groups of practices, make the corresponding deliveries, see the marks, and communicate with the teaching staff, etc. In order to use it, it is necessary to do the following steps:
The teaching of the subject takes place in two sessions of two hours each in a computer classroom. In these sessions, the following teaching activities can be differentiated:
MD1 Exhibition of contents in class: Presentation of the theoretical contents to work in the class. Some of these contents must have been prepared before the class from reading texts, viewing videos, searching for information, etc. The contents presented will be directly related to the problems proposed in other teaching activities, so that they will be the basis on which other activities of the course will be developed.
MD2 Participative lectures: Joint resolution of the set of problems proposed to students. All topics will be accompanied by a list of problems that the student must solve. In this sense, and as the student progresses in the depth of their knowledge, these problems will be little by little more complex, allowing in this way to clearly appreciate the advantages of using the methodological tools taught during the course. All the problems developed in class and others that can be proposed can be found on the Caronte platform, and will be self-evaluable. These activities should allow the student to deepen understanding and personalize knowledge. The fact that they are self-evaluable allows us to adjust the pace of consolidation and reflect on our own learning.
MD3 Tutoring sessions: Hours freely available for questions about aspects in which students need additional help from the faculty.
MD4 Programming short projects: Realization of short practical projects to deepen the applied aspects of the theory. These projects will be resolved in small groups, where each member must do a part of the work and put it in common with the rest of the group to have the final solution.
MD5 Evaluation activities: See evaluation section of this teaching guide.
Transversal competences
Competences T06 and T08 will be worked on and evaluated throughout the course in the following activities:
Competence |
MD1 |
MD2 |
MD4 |
T06 - Make a critical evaluation of work carried out |
Personal work of preparation of materials Evaluation: Theoretical Exam (Tp and Tf) |
Evaluation: Problem Solving (P) |
Evaluation: Practical projects (PLg and PLi) |
T8 - Plan and manage the available time and resources |
|
|
The guide of the project will give indications of how to do the planning. Evaluation: Group practical projects (PLg) |
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 | Hours | ECTS | Learning Outcomes |
---|---|---|---|
Type: Directed | |||
Laboratory classes | 11 | 0.44 | 2, 1, 5, 3, 4, 6, 7 |
Problems classes | 26 | 1.04 | 2, 1, 5, 3, 4, 7 |
Theory classes | 10 | 0.4 | 2, 1, 5, 3, 4, 7 |
Type: Supervised | |||
Programming projects | 30 | 1.2 | 2, 1, 5, 3, 4, 6, 7 |
Type: Autonomous | |||
Classes preparation and personal work | 20 | 0.8 | 2, 1, 3, 4, 6, 7 |
Solving self-assessment problems | 48 | 1.92 | 2, 1, 5, 3, 4, 7 |
Scheduled evaluation process and activities
The subject is evaluated through continuous evaluation. Throughout the course the evaluation activities will be carried out:
Activity |
Date |
Recovery |
Percentage |
Minimum grade |
Partial Theory Exam (Tp) Individual |
Check Planning |
Check Planning |
15% |
No |
Final Theory Exam (Tf) Individual |
Check Planning |
Check Planning |
35% |
Tf >= 5 |
Delivery of Problems (P) Individual |
Each Week |
No |
20% |
No |
Laboratory Practice (PLg) |
Check Planning |
Check Planning |
20% |
PLg >= 5 |
Laboratory Practice (PLi) Individual |
Check Planning |
Check Planning |
10% |
PLi >= 5 |
To be able to approve the subject, through continuous assessment, the result of the weighted sum of the evaluation activities must be greater than or equal to 5, and a minimum grade of 5 must be obtained in activities 2 (Tf), 4 (PLg) and 5 (PLi).
Programming of evaluation activities
The dates for evaluation and submission of works will be published in the documentary manager Charon and may be subject to programming changes for reasons of adaptation to possible incidents. Always be informed by the document manager about these changes as it is understood that this is the usual platform for exchange of information between teachers and students.
Recovery procedure
The student may apply for recovery whenever he has submitted to a set of activities that represent at least two thirds of the total grade of the subject.
The theoretical exams (Tp and Tf) will be able to be recovered in a single exam of recovery in the dates fixed by the coordination of the Degree. The exam of recovery will have a percentage of 50% on the final grade. The mark of the exam of recovery, in case of being realized, will substitute to the marks of the partial examinations (Tp) and final (Tf) realized during the course.
In accordance with the coordination of the Degree and the direction of the School of Engineering, the Individual Problem Resolution (P) activity can not be recovered.
Grade review procedure
Students will have the right to review the theoretical exams (Tp and Tf). The place, date and time of revision will be provided on the day the marks are published. If the student does not appear in this review, this activity will not be reviewed later. Only in justified cases may a review be made after the date set and always up to a maximum of 7 calendar days.
There will not be review of the marks of the practical projects (PLg and PLi) because the evaluation is done in front of the students.
Qualifications
Non-Evaluable (NA): Any student who delivers a practice or a scheduled assessment will have a grade. It will only be considered not evaluable in the case of not delivering any evaluable activity.
Final Mark: Is obtained with the weighted sum according to the criteria set in the section on evaluation activities. If in any activity the minimum grade is not reached, the grade will come out of the following formula:
Minimum (weighted sum of grades, 4.5)
Honors (MH): To award a grade of honor is the decision of the faculty responsible for the subject. The regulations of the UAB indicate that MH can only be granted to students who have obtained a final grade equal to or greater than 9.00. You can grant up to 5% of MH of the total number of students enrolled. If the number of students with a mark greater than or equal to 9 is more than 5% of the total enrollment, students were prioritized according to the following rules (in order):
Irregularities on the part of the student, copy and plagiarism
Without prejudice to other disciplinary measures that they deem appropriate, will be scored with a zero the irregularities committed by the student that may lead to a variation of the rating of an evaluation act. Therefore, copying, plagiarism, cheating, letting copy, etc. in any of the evaluation activities will involve suspending with a zero. The evaluation activities qualified in this way and by this procedure will not be recoverable. If it is necessary to pass any of these evaluation activities to pass the subject, this subject will be suspended directly, without the opportunity to recover it in the same course. In this case, the numerical grade of the file will be the lower value between 3.0 and the weighted average of the marks.
Evaluation of repeating students
The repeating students who have passed the subject "Advances Programming" the previous course, will be able to pass the subject presenting some exercises of synthesis of the course. The final grade in this case will be equal to 5. Students who want to take this way must inform the faculty of the subject the first week of class.
The rest of the repeating students must take the complete course. No marks from previous courses will be maintained.
Title | Weighting | Hours | ECTS | Learning Outcomes |
---|---|---|---|---|
1. Partial theory exam | 15% | 2 | 0.08 | 2, 1, 5, 3, 4, 7 |
2. Final theory exam | 35% | 2 | 0.08 | 2, 1, 5, 3, 4, 7 |
3. Delivery of problems | 20% | 0 | 0 | 2, 1, 3, 4 |
4. Programming projects (group assessment) | 20% | 0.5 | 0.02 | 2, 1, 3, 4, 6 |
5. Programming projects (individual assessment) | 10% | 0.5 | 0.02 | 2, 1, 5, 3, 4 |
J. Guttag. Introduction to Computation and Programming Using Python: With Application to Understanding Data. Second Edition. MIT Press. ISBN-10: 9780262529624
S. Chazallet Python 3. Los fundamentos del lenguaje. Eni, ISBN-10: 2409006140
E. Matthes. Python Crash Course: A Hands-On, Project-Based Introduction to Programming. No Starch Press ISBN-10: 1593276036
M. Myers. A Smarter Way to Learn Python: Learn it faster. Remember it longer. Createspace Independent Pub ISBN-10: 1974431479
A. Prieto, A. Lloris, J.C. Torres. Introducción a la Informática. Mc Graw-Hill ISBN-10: 8448146247
A. Prieto, B. Prieto. Conceptos de Informática. Mc Graw-Hill, Schaum ISBN-10: 8448198573
L. Joyanes Aguilar. Fundamentos de Programación: Algoritmos, Estructuras de Datos y Objetos. Mc. Graw-Hill. ISBN-10:8448161114
We will use the latest version of Anaconda which includes Python 3.x and Spyder (https://www.anaconda.com/products/individual).