240 credits - Higher Polytechnic School
The main aim of this programme is to train qualified professionals in the entire range of computing. Graduates from the programme will come out with knowledge on how to design and handle hardware, and how to design and develop computer networks. They will also be able to design and develop software applications of any kind, both local and for the www, all in an effective manner and at with top quality levels. Students will also be able to undertake management and supervisory tasks on projects, and effectively manage and distribute human and IT resources at any organisation. Furthermore, students will also attain knowledge on the most applied aspects to IT, such as games and data representation (sound and video). All of this will be in line with the regulatory framework, quality levels, and legal and ethical concerns they need to demonstrate in their work as graduates in computer sciences.
This programme offers four pathways each made up of eight subjects. In order to attain the Degree in Computer Sciences, students must take all of the subjects on one of the pathways. They may specialise and obtain, depending on their chosen pathway, one of the following majors: Computer Engineering, Computation, Information Technologies, or Information Systems.
Requirements to be awarded a degree
- In order to be awarded the degree in Computer Sciences, students must prove that they have a B2 level of English. Otherwise, the student must take (and pass) either the optional subject 20395 English for Engineering or three subjects taught in English within the degree programme. If these requirements are not met, the degree will not be awarded until credit is given for these subjects.
- In order to be awarded the degree in Computer Sciences, students must take (and pass) the 8 subjects in their specialization. If they do not, they will not be awarded the degree until credit is given for these subjects.
Graphic representation of the courses in the study programme
Links to graphics of the study programme's specializations:
Credit Summary
Core Training | Mandatory | Elective Subjects | External Practicum | Final Degree Project | Total |
---|---|---|---|---|---|
60 | 90 | 72 | - | 18 | 240 |
Subject list by year and semester
Subjects
First Year
First Semester
Discrete Mathematics*
Mathematics II - Calculus*
Programming - Computer Studies I*
Business*
Digital Systems
Second Semester
Mathematics III - Statistics*
Methods of Linear Algebra*
Computer Structure I*
Programming II*
Physics*
Second Year
First Semester
Theory of Computation*
Algorithmics
Data Communication and Networks
Operating Systems
Computer Structure II
Second Semester
Evaluation of the Behaviour of Information Systems
Databases I
Data Structures
Operating Systems II
Software Engineering
Third Year
First Semester
Artificial Intelligence
Concurrent Programming
Project Management
Specific Electives
Second Semester
Artificial Intelligence
Programming Languages
Specific Electives
Electives
Fourth Year
First Semester
Internet Distributed Applications and User Interfaces
Specific Electives
* Core Training
Second Semester
Final Degree Project
Electives
Skills
Cross-cutting Skills
- The ability to analyse and synthesise, organise, plan and take decisions.
- The ability for critical analysis and to propose and apply new solutions.
- The ability for independent learning.
- The ability to search out resources and manage information in the field of computing.
- The ability to work in multi-disciplinary and multilingual teams.
- Leadership, initiative, entrepreneurial spirit and effectiveness in a demanding environment, based on creativity, quality and adapting to new situations.
- The ability to communicate computing concepts orally and in writing in different fields of activity.
- The ability to understand, speak and write in English to an intermediate level.
- The ability to develop interpersonal skills, with a commitment to the values of social, ethical, environmental and fundamental rights, especially in terms of equality and ability.
Core Module Skills
- The ability to solve mathematic problems that may arise in engineering.
- The aptitude for applying knowledge on: linear algebra, differential and integral calculus; numerical methods; numerical analysis; statistics and optimisation.
- The ability to understand and master core concepts of discrete mathematics, logic, algorithms and computational complexity, and their application for solving engineering problems.
- Core knowledge in the use and programming of computers, operating systems, databases and computer programs with engineering applications.
- Comprehension of the structure, organisation, functioning and interconnectivity of computer systems, the fundaments of their programming and their applications for solving engineering problems.
- Comprehension and mastery of core concepts relating to fields, waves and electromagnetism, the theory of electrical circuits, electronic circuits, the principle of semiconductor and logic family physics, electronic and photonic devices, and their application for solving engineering problems.
- Sufficient knowledge of business, and the institutional and legal framework of corporations.
- Business organisation and management.
Common Module Skills: IT Branch
- The ability to design, develop, select and evaluate computer applications and systems, ensuring reliability, security and quality in line with ethical principles and current legislation and regulations.
- The ability to plan, design, roll out and supervise IT projects, services and systems in all areas, leading their commissioning and continuous improvement, and assessing their economic and social impact.
- The ability to understand the importance of negotiation, the habits of effective working, leadership and communication skills in all software development environments.
- The ability to produce the technical specifications for an IT installation that complies with current standards and regulations.
- Knowledge, administration and maintenance of IT systems, services and applications.
- Knowledge and application of basic algorithmic procedures in information technology to design solutions for problems, and analysing the suitability and complexity of proposed algorithms
- Knowledge, design and efficient use of the most suitable data types and structures for solving a problem.
- The ability to analyse, design, build and maintain applications robustly, safely and efficiently, selecting the most suitable paradigm and programming languages.
- The ability to discover, understand and assess computer structure and architecture, as well as the basic components therein.
- Knowledge of the features, functionalities and structure of operating systems, and designing and implementing applications based on their services.
- Knowledge and application of the features, functionalities and structure of distributed systems, computer networks and internet, and designing and implementing applications based on them.
- Knowledge and application of the features, functionalities and structure of databases enabling appropriate use, and the design, analysis and implementation of applications based on them.
- Knowledge and application of the necessary tools to store, process and access information systems, included web-based services.
- Knowledge and application of the main fundaments and core techniques for parallel, concurrent, distributed and real time programming.
- Knowledge and application of the main fundaments and core techniques for intelligent systems and their practical application.
- Knowledge and application of the principles, methodologies and life cycles in software engineering.
- The ability to design and assess user-computer interfaces that guarantee accessibility and usability of computer systems, services and applications.
- Knowledge of national, European and international legislation and regulations for computing.
Specific Technology Module Skills: Software Engineering
- The ability to develop, maintain and assess software services and systems that meet all user requirements and run reliably and efficiently, are affordable to develop and maintain, and comply with quality standards, by applying the theories, principles, methods and practices of software engineering.
- The ability to assess client needs and specify the software requirements to meet these needs, reconciling conflicting objectives by finding acceptable compromises within the limitations due to cost, time, the existence of already developed systems and the organisations themselves.
- The ability to provide solutions to integration problems based on available strategies, standards and technologies.
- The ability to identify and analyse problems, and design, develop, implement, verify and document software solutions based on sufficient knowledge of current theories, models and techniques.
- The ability to identify, assess and manage the potential associated risks that may arise.
- The ability to design appropriate solutions in one or more application domains by using software engineering methods that include ethical, social, legal and economic aspects.
Specific Technology Module Skills: Computer Engineering
- The ability to design and build digital systems, including computers, microprocessor-based systems and communication systems.
- The ability to develop specific processors and embedded systems, as well as developing and optimising the software on these systems.
- The ability to analyse and assess computer architectures, including parallel and distributed platforms, as well as developing and optimising the software for these.
- The ability to design and implement system and communication software.
- The ability to analyse, assess and select the most suitable hardware and software platforms to support embedded and real time applications.
- The ability to understand, apply and manage IT system guarantees and security.
- The ability to analyse, assess, select and configure hardware platforms to develop and run computer applications and services.
- The ability to design, roll out, administer and manager computer networks.
Specific Technology Module Skills: Computation
- The ability to acquire in-depth knowledge on the fundamental principles and models of computation and know how to apply them to interpret, select, assess, model and create new concepts, theories, uses and technological developments linked to IT.
- The ability to take on the theoretical fundaments of programming languages and the associated lexical, syntactic and semantic processing techniques, and know how to apply them to create, design and process languages.
- The ability to assess the computational complexity of a problem, discover algorithmic strategies that could lead to their solution, and recommend, develop and implement the one that ensures improved performance in accordance with the established requirements.
- The ability to take on the fundaments, paradigms and techniques in intelligent systems, and analyse, design and build IT systems, services and applications that use these techniques in any area of application.
- The ability to acquire, obtain, formalise and represent human knowledge in a computable format to solve problems through a computer system in any area of application, specifically those linked to computation, perception and action in intelligent environments.
- The ability to take on and develop computational learning techniques, and design and implement applications and systems that use them, including those dedicated to automatic data extraction and knowledge from large volumes of data.
Specific Technology Module Skills: Information Systems
- The ability to integrate information and communication technology solutions and business processes to meet the information requirements of organisations, enabling them to reach their targets effectively and efficiently, thus providing them with competitive advantages.
- The ability to determine the requirements for information and communication systems at an organisation, taking into account security aspects and complying with current regulations and legislation.
- The ability to actively participate in the specification, design, implementation and maintenance of information and communication systems.
- The ability to understand the principles and practices at organisations to be able to serve as a link between the technical and management communities there, and to actively take part in training users.
- The ability to understand and apply risk assessment principles and to apply them correctly in producing and performing action plans.
- The ability to understand and apply quality and technological innovation management principles and techniques at organisations.
Specific Technology Modules Skills: Information Technology
- The ability to understand the environment at an organisation and its needs in the area of information and communication technologies.
- The ability to select, design, roll out, integrate, assess, operate and maintain hardware, software and network technologies within the appropriate cost and quality parameters.
- The ability to use methodologies based around users and the organisation to develop, assess and manage applications and systems based on information technologies that ensure accessibility, ergonomics and usability of the systems.
- The ability to select, design, roll out, integrate and manage communication infrastructures and networks at an organisation.
- The ability to select, roll out, integrate and manage information systems that meet the organisation's needs, as per set cost and quality criteria.
- The ability to design systems, applications and services based on network technologies, including the internet, web, online shopping, multimedia, interactive services and mobile computing.
- The ability to understand, apply and manage computer systems' guarantees and security.
Final Degree Project Module Skill
- An original and individual piece of work to be presented and defended before a university panel that comprises a project in the area of specific technologies in professional Computer Sciences, and which summarises and integrates the skills acquired on the degree programme.