Fundamentals of Computer Engineering

Is an introductory subject that provides a global view from both, a professional and academic perspectives. Preparing the student with a interdisciplinar and practical way to help comprehend what the Computer Engineering is about and prepare them for their future professional role on society.

Objectives:

Contents:

This subject has two parts, a theorical and a practical part each of them with their corresponding units:

Theorical Part

Three different blocks:

Block 1: Computer Engineering in Society Block 2: Current paradigms and trends in systems and applications Block 3: Information and Data
Unit 1: Background and historical perspectives Unit 4: Hardware Unit 9-1: Information and Data
Unit 2: The current context of Computer Science Unit 5: Software Unit 9-2: Information and data
Unit 3: Computer Engineering as a Degree and Profession Unit 6: Operating Systems Unit 10: Information and Big Data
--------------------------------------------------- Unit 7: Networks -----------------------------------
--------------------------------------------------- Unit 8: New Trends -----------------------------------

BLOCK 1:

This block covers the historical context of computer science, starting with Alan Turing with Phoenix and finishing with the modern era, tracing the evolution and discipline from its origins. It also covers the current situation of this science, highlighting the emerging technologies, the challenges and the impact on society. With this, this first block not only explains and shows the skills and responsabilities needed for this degree and profession, but also the career paths expected.

BLOCK 2:

This block covers the essential of the hardware and software, explaining the evolution of the different types of computers, the methods, phases and life cycle of the software, the bases of the operative systems such us the functions and the proccess managment, the different types of networks and the evolution it had, possible models, and the hardware and software behind this. It also covers the trends we have been following since the beggining, the artificial intelligence, blockchain, computation, self-driving cars, and everything related to them.

BLOCK 3:

This block presents steps and explanations to pass from binary to decimal, octal or even hexadecimal. It also explains RGB and the surface of everything related to Big Data, such as the life cycle of data, databases and How to create a DDBB (Database) for an online store.

Practical Part

Two different blocks:

Block 4: Software Development Block 5: Web Applications
Unit 1: Introduction to software development Unit 3: Introduction to web programming
Unit 2: Introduction to software development II Unit 4: HTML
-------------------------------------------------------------------------- Unit 5: CSS

BLOCK 4:

In this block, we are provided with the basics of the software development explained primary with Git and Github, with steps to install it, what is a repository, the main operations, how to work with a team and solve problems with pushes and pulls, branches for a more efficient work and how to add collabolators.

BLOCK 5:

This block explains what is a website and a webpage, how we can build a web application and the basics of HTML and CSS to create and decorate our own functional website.

Practical assigments

  • Practical work I: Research Topics.
  • Act I: My first repository.
  • Act II: Conflict resolution.
  • Act III: My first web page.
  • Act IV: From web to my web app.
  • Practical work II: Personal Web

Outcomes:

With all this knowledge and the principal objectives of the subject, the possible outcomes the students will have are the capacity of apply the fundamentals of the theory into practice with the adquired habilities in a professional manner, comprehend the discipline and the impact it can have, develope a critical and ethical thinking, be able to analyse and interpret relevant data, convey information, ideas, problems and solutions to both an expert and non-expert audience and knowledge of structure, organization and the basics of the concepts and programming for problem solving.