Disciplinas - Eng. Software


Cada disciplina ficará sob a responsabilidade de um ou mais professores do corpo docente do Curso, mas ela poderá ser ministrado por qualquer outro professor, mediante aprovação interna.

Ao professor da disciplina compete ministrar aulas, sanar dúvidas e aplicar avaliações de desempenho.


 

MC971 Introduction to Concurrent Programming

Since 2016

 

Syllabus:

Principles of concurrent programming. Concurrent Process. Mutual Exclusion. Shared Memory. Sincronization primitives. Consensus. Concurrent data structures.

 

Program:

- Foundations of concurrent algorithms, Multicore Processors, Moore's Law and Amdahl's Law;

- Mutual Exclusion: time, critical regions, classic algorithms for mutual exclusion, concurrent objects, consistency, sequential and linear. The Java memory model;

- Foundations of shared memory: registers and photographies;

MC921 - Compilers Construction and Design

Since 2016

 

Prerequisite: MC504

 

Syllabus:

Syntactic analysis methods. Execution systems. Object code generation and optimization. Error recovery. Implementation of a compiler.

 

 

Programme:

- Techniques, methods and algorithms used in the construction of modern compilers:

- Lexical, syntactic and semantic analysis;

- Type verification;

- Activation Records;

- Translation to intermediate code;

- Code generation;

- Data flow analysis;

MC750: Human-Computer Interface Construction

Prerequisite:  MC504 / EA876 / MC436

Description:

Introduction to Human-computer Interfaces. Human aspects. Technological aspects. Design methods and techniques. Support tools . Evaluation.

Programme:

1.     Introduction

a.     What is HCI?

b.    HCI components

2.     Human aspects

a.     Perception and representation

                                      i.        Visual perception