Academic management

University of Oviedo

Uniovi.es | Home | Search | Site Map

| |

Bachelor´s Degree in Mining & Energy Resources Engineering
GIMINA01-1-005
Computer Science Fundamentals
General description and schedule Teaching Guide

Coordinator/s:

Daniel Fernandez Alvarez
fernandezalvdanieluniovi.es

Faculty:

Daniel Fernandez Alvarez
fernandezalvdanieluniovi.es
(English Group)
Rubén Luque Lodeiro
luquerubenuniovi.es
Fernando Cano Espinosa
fcanouniovi.es
Carlos Fernández Medina
fernandezmedcarlosuniovi.es
Xiomarah María Guzmán Guzmán
guzmanxiomarahuniovi.es

Contextualization:

The subject "Fundamentos de Informática" belongs to the "Basic Training" module and to the subject "Computer Science". For this reason, this subject includes part of the basic knowledge competencies that the student has to develop in relation to computing, specifically, it covers those that refer to basic knowledge about the use and programming of computers, operating systems, databases and computer programs with applications in engineering. It also includes the following transversal skills such as the ability to abstract, problem-solving skill and creativity.

 

After the framing of the subject, both in computer science itself and in the other disciplines of the degree, introductions will be carried out to the fields that make up the titles of its four main topics of the program: software and hardware components, operating systems, programming and databases, with a greater incidence in programming that will be specified in a versatile general-purpose programming language for any branch of engineering. The subject has a marked practical nature for the student to learn by interacting with the computer, a tool that will be essential both throughout their undergraduate studies and in professional life.

Requirements:

As it is a subject of basic competencies, it does not require any prior specific knowledge that has not been developed in the student's previous training stages; However, it is considered that the student is minimally familiar as a common user with the computer, and all the added knowledge and skills that he possesses will result in greater benefit and less effort in the subject.

Competences and learning results:

The competences that will be developed in this subject, understood within the framework of an introductory and brief subject, are:

  • Specific competency:

CB01- Basic knowledge about the use and programming of computers, operating systems, databases and computer programs with applications in engineering. Note1: In the Degree in Computer Engineering in Information Technology numbered as FB4.1 to FB4.5. Note2: In the Degree in Engineering in Telecommunications Technologies and Services, the general competencies are numbered as CR2, CR3, CR7

  • They will also work on the basic and general skills indicated in the verification report for this subject (CB3 and CG3, 4 and 15). Note1: In the Degree in Computer Engineering in Information Technology, these competencies are numbered as GTR1, 3 and 4. Note2: In the Degree in Engineering in Telecommunications Technologies and Services, these competencies are numbered as CB2, CG3, CG4, CG5 and CG9.

These competences are specified in the following learning outcomes:

  • Regarding basic knowledge about the use of computers.
     
    • RI11- Locating computing within engineering disciplines.
       
    • RI12- Knowledge of the fundamentals of the binary system to understand the representation of information in computers.
       
    • RI13- Identifying the hardware components that make up a computer system, as well as their interconnection in networks, and understand their basic operation.
       
    • RI14- Distinguishing the main peripherals used in a computer system and specifically in the field of engineering.
       
    • RI15- Classifying the different types of software used in a computer system.
       
    • RI16- Identifying and classify different types of computer systems and their fields of application.
  • Regarding basic knowledge about operating systems.
    • RI21- Knowledge of the main functions performed by an operating system.
       
    • RI22- Analyzing what services the operating system provides to programs and end users.
       
    • RI23- Identifying the main operating systems used in professional engineering environments and use the main services at the user level.
       
  • Regarding basic knowledge about databases.
     
    • RI31- Knowledge of the main functions performed by a database management system.
       
    • RI32- Performing Data Models for Simple Problems.
       
    • RI33- Use of basic expressions to retrieve and modify information stored in a database.
       
    • RI34- Identifying which database management systems are used in professional engineering environments.
       
  • Regarding basic knowledge about application programs.
     
    • RI41- Identifying the main application programs that are used in professional environments typical of Industrial Technology Engineering.
       
  • Regarding basic knowledge about computer programming.
     
    • RI51- Understanding the concept of algorithm and the process of abstraction of a problem in programming
       
    • RI52- Identifying the process of developing a program and its location within the general process of Software Engineering
       
    • RI53- Recognizing elementary data structures provided by a structured programming language
       
    • RI54- Manage the elementary control structures of a structured programming language
       
    • RI55- Abstract operations
       
    • RI20- Designing small applications to solve elementary problems in collaborative work environments

Contents:

The breakdown into topics and sections of the subjects covered by the subject is as follows:

  1.  INT - Introduction

General vision of computer science, in the context of the other disciplines of engineering

Structure and operation of a computer

Representation of information on a computer

  1.  BD - Introduction to databases

Database concept

Fundamentals of the relational data model

Making inquiries and modifications

Database Management Systems in professional engineering environments

  1.  PRO - Introduction to programming

Abstraction of problems for their programming: fundamental concepts

Variables, expressions, assignment.

Use of input / output by console

Management of basic flow control structures: sequential, alternative and repetitive

Definition and use of subprograms and functions. Scope of variables

Input / Output to files

Basic data types and structures

Processes for developing a program. From high level to processor execution.

Compiled languages ​​and interpreted languages.

  1.  HSW - Hardware and software components of a computer system

Structure and functioning of a computer: Von Neumann architecture and machine language

Peripheral devices

Interconnection of systems: types, mechanisms and applications

Types of software: base software and application software

Types of computer systems and their fields of application

  1. OS - Introduction to operating systems

Concept and functions performed by an operating system

Interface and services offered to the programs

Interface and services offered to users

Operating systems used in professional engineering environments.

Generic description of the laboratory practices corresponding to each theoretical topic:

1. Topic 1: Introduction to the tools in the laboratory (1h). The spreadsheet as a tool (3h)

2. Design, implementation and exploitation of a database (6h)

3. Programming (18h)

There are no practices for topics 4 and 5, because there are not enough hours of practical classes.

Methodology and work plan:

The student's face-to-face activities will consist of attending lectures, laboratory practices and group tutorials. In the lectures, the teacher will alternate the presentation of the theoretical contents of the subject with the realization of examples and exercises on them, encouraging as much as possible the participation of the students in solving problems, collaborating with their classmates in small groups. On the contrary, the laboratory practices will be individual, to ensure the acquisition of basic practical skills by each student.

The group tutorials will be dedicated to the sharing by the students of the doubts and difficulties that have arisen during the learning process. Academic tutoring will take place at the time established for this purpose by each professor, and can be contacted through the professor's email.

The lecture activities will consist of the study of the theoretical matter, the realization of the exercises and problems that the professor proposes or publishes through the Virtual Campus.

The course requires a total of 150 hours between the student's face-to-face and non-face work.

The estimated breakdown of the work by subject is as follows (every two hours of theory and practice classes correspond to one week)

 

 

 

 

IN-CLASS WORK

OUT OF CLASS WORK

SUBJECT

Horas totales

Lectures

Laboratory

Group tutoring

Evaluation sessions

Total

Group Work

Independent Work

Total

INT

10

2

4

 

 

6

 

4

4

HSW

17

3

 

 

 

3

 

14

14

OS

17

3

 

 

 

3

       

 

14

14

DB

28

5

6

 

 

11

 

17

17

Py

74

15

18

 

 

33

 

41

41

-

4

 

 

2

2

4

 

 

 

Total

150

28

28

2

2

60

20

70

90

 

 

 

The summary by work modalities is shown below:

MODALITY

Horas

%

Totales

In-class

Lectures

28

18.7

60

Laboratory

28

18.7

Group Tutoring

2

1.3

Evaluation Sessions

2

1.3

Out of class

Group Work

20

13.3

90

Independent Work

70

46

 

Total

150

 

 150

Assessment of students learning:

1. Ordinary call.

The evaluation in this call will consist of three parts: Theory, Practices and Group Work.

The Theory mark (Tm), with a weight of 40% of the final mark, will be evaluated through one or more exams. (type of Evaluation SE1 of the Verified Report)

The practices of Spreadsheets and Databases (SSDBm), with a weight of 15% of the final mark, will be evaluated by carrying out exercises on the computer (type of Evaluation SE2 of the Verified Report).

Programming practices (Pym), with a weight of 30% of the final mark, will be evaluated by taking a laboratory exam on the computer (type of Evaluation SE3 of the Verified Report).

The submission of a Group Work (GWm) will be mandatory, which will have a weight of 15% of the final mark (type of Evaluation SE2 of the Verified Report).

The final mark will be calculated using the following formula:

Final Mark = 0.4 Tm + 0.15 SSDBm + 0.3 Pym + 0.15 GWm

To pass the ordinary call, it will be necessary to obtain a minimum mark of 4 in each exam or exercise and the final mark must be at least 5 out of 10.

The evaluable activities not carried out by the student will be counted in the computation of the corresponding mark with a zero. However, if the total weight of these activities represents more than 50% of the final mark, the final mark will be "not presented".

 

2. Extraordinary call.

Previous marks keep saved (Tm, SSDBm, Pym, GWm) during the whole academic course.

To approve in this call, it will not be necessary to submit the group work. The rest of the marks will be obtained in a similar way to the ordinary call.

If the group work has been delivered, the same formula of the ordinary call will be used to calculate the final mark. If the group work is not delivered, the formula for calculating the final mark will be:

Final Mark = 0.4 Tm + 0.3 SSDBm + 0.3 Pym

To pass the extraordinary call, it will be necessary to obtain a minimum mark of 4 in each exam or exercise and the final mark must be at least 5 out of 10.

3. Differentiated evaluation.

Students with a differentiated evaluation granted will be evaluated following the same criteria as in extraordinary calls.

Resources, bibliography and documentation:

In English:

[1] J. G. Brookshear, Computer Science: An Overview, 11th ed. Addison Wesley, 2011.

[2] Computer Confluence Introductory 7 edition. George Beekman. Prentice Hall, 2005

[3] Good Will Foundation, “Online Computer courses.” GoodWill Community Foundation, 2012. [4]

A. Martelli, Python in a Nutshell, Second Edition, Second. O’Reilly Media, 2006.

[5] J. Zelle, Python Programming: An Introduction to Computer Science 2nd Edition, Second.

Franklin, Beedle & Associates Inc., 2010.

[6] J. R. Briggs, Python for kids. A playful introduction to programming. Available on the web.

In Spanish:

[a] George Beekman, Introducción a la Informática. 6ª Edición, Pearson - Prentice Hall, 2004

[b] A. Prieto and B. Prieto, Conceptos de Informática, Serie Schaum, McGraw Hill, 2005

[c] A. Prieto, A. Lloris and J.C. Torres, Introducción a la Informática. 4ª Edición, McGraw Hill,

2006

[d] A. Silbershatz, H.F. Korth, and S. Sudarshan, Fundamentos de Bases de Datos (5ª edición),

McGraw Hill, 2006

[e] D. Allent, Aprenda a pensar como un programador con Python. Acceso web.

[f] A. Marzal and I. García, Introducción a la programación con Python

Software resources

Basic software for carrying out laboratory practices: Windows operating system, office automation package (spreadsheet, word processor, database management system, ...) and development environment for the language used in programming practices .