Checking date: 23/05/2022

Course: 2023/2024

Bachelor in Mechanical Engineering (Plan: 446 - Estudio: 221)

Coordinating teacher: MONTERO MONTES, ALVARO

Department assigned to the subject: Computer Science and Engineering Department

Type: Basic Core
ECTS Credits: 6.0 ECTS


Branch of knowledge: Engineering and Architecture

By the end of this subject, students will be able to have: 1. Knowledge and understanding of the programming foundations and computer systems underlying their branch of engineering. 2. Awareness of the wider multidisciplinary context of engineering. 3. The ability to apply their knowledge and understanding to identify, formulate and solve engineering problems using computer methods. 4. The ability to combine theory and practice to solve engineering problems using computer methods.
Skills and learning outcomes
Description of contents: programme
DESCRIPTION OF CONTENTS: The purpose of the course is to give students an overview on programming techniques. As programming language, it will be used a imperative programming language. Precisely, Python is the language used during the course. PROGRAMME: 1. Programming foundations Description: This chapter introduces the essential components of computer programming and programming languages. Detailed contents: - Basic architecture of computers - Computer programming - Programming paradigms - Types of programming languages 2. Design of programs Description: This chapter focuses on the internal design of programs, paying special attention to the concept of algorithm. Detailed contents: - Computer algorithms - Analysis of algorithms - Data structures 3. Coding Description: Acquiring knowledge on coding by using an imperative programming language. Detailed contents: - Program data - Operators - Advanced data structures - Program statements - Subprograms 4. Testing and debugging Description: Learning principles and techniques about testing, debugging and deploying computer programs. Detailed contents: - Compilation-execution cycle - Testing techniques - Debugging techniques
Learning activities and methodology
- Theoretical lectures: 1,5 ECTS Lectures oriented to present the theoretical concepts on programming. - Practical lectures: 1,5 ECTS Classes in computer labs oriented to learn the use of an IDE and put into practice the syntax. - Programming exercises: 2,0 ECTS Problem-based learning. Programming different pieces of code with the purpose of understanding those conceptual, technical, and methodological principles that underlie structured programming. - Individual study: 1,0 ECTS Self-studying to prepare for partials and final exams
Assessment System
  • % end-of-term-examination 30
  • % of continuous assessment (assigments, laboratory, practicals...) 70
Calendar of Continuous assessment
Basic Bibliography
  • Stephenson, Ben. The Python Workbook. Springer. 2014
Additional Bibliography
  • George W. Gorsline.. Computer Organization: Hardware Software.. PRENTICE HALL INTERNATIONAL EDITIONS..
  • Stephen D.Burd.. System Architecture. Hardware and Software in Business Information Systems.. BOYD AND FRASER PUBLISHINGCOMPANY..

The course syllabus may change due academic events or other reasons.