O Mestrado em Engenharia Informática (MEI) tem por objetivo oferecer uma formação avançada de Engenharia Informática, permitindo consolidar e aprofundar as competências obtidas no 1ºciclo, sendo orientado para a inovação, para a conceção de serviços e produtos, e para investigação científica.
O MEI está estruturado para alcançar os seguintes objetivos: fornecer uma formação principal especializada numa área da Informática, complementada por uma formação numa segunda área; garantir um nível de abrangência de conhecimentos na área da Informática que exceda as áreas de especialização.
Para alcançar o primeiro objetivo, o curso segue um modelo que combina especializações e concentrações secundárias.
Um especialização (36 ECTS, 30% do curso) fornece um conhecimento profundo numa área alargada da Informática. Para obter uma especialização um estudante deve realizar duas UCs nucleares, obrigatórias, e 4 UCs de especialização (opcionais de entre um conjunto de 7 UCs). Existirão as seguintes seis especializações:
Uma concentração secundária (18 ECTS, 15% do curso) fornece conhecimentos adicionais numa segunda área da Informática. Para obter uma concentração secundária um estudante deve realizar uma UCs nuclear, obrigatória, e 2 UCs de especialização (opcionais de entre um conjunto de 3 UCs).
Uma UC usada para obter uma especialização não pode ser usada para obter uma concentração secundária.
Um estudante pode obter, no máximo, uma especialização e uma concentração secundária. No entanto, um estudante pode decidir não ter uma concentração secundária - por exemplo, para realizar UCs em múltiplas áreas ou mais UCs da área de especializão do que necessárias para obter a especialização. Pode ainda decidir não ter uma especialização, ficando sem especialização nesse caso.
Para garantir uma abrangência de conhecimentos que exceda a sua especialização, para complementar o mestrado, um estudente deve realizar 4 UCs nucleares de 3 especializações diferentes.
O curso culmina com uma Dissertação ou Projeto em Engenharia Informática (42 ECTS, 35% do curso), organizados numa fase de preparação (12 ECTS) e numa fase de elaboração (30 ECTS).
Os restantes 18 ECTS (15% do curso) são obtidos em unidades curriculares transversais, nomeadamente de Matemática (6 ECTS), Ciências Humanas e Sociais (3 ECTS) e numa unidade opcional da oferta de várias dezenas de outras áreas (6 ECTS).
Organização
1º ano, 1º semestre
Unidade Curricular |
Área científica e ECTS |
Especialização (UC nuclear) |
INF - 6 ECTS |
Especialização (UC nuclear) |
INF - 6 ECTS |
Concentração secundária (UC nuclear) |
INF - 6 ECTS |
Introdução à Investigação Operacional |
MAT - 6 ECTS |
Aspetos Socioprofissionais da Informática |
CHS - 3 ECTS |
1º ano, 2º trimestre
Unidade Curricular |
Área científica e ECTS |
Empreendedorismo |
CC - 3 ECTS |
1º ano, 2º semestre
Unidade Curricular |
Área científica e ECTS |
Especialização (UC opcional) |
INF - 6 ECTS |
Especialização (UC opcional) |
INF - 6 ECTS |
Especialização (UC opcional) |
INF - 6 ECTS |
Especialização / Concentração secundária (UC opcional) |
INF - 6 ECTS |
Concentração secundária (UC opcional) |
INF - 6 ECTS |
2º ano, 1º semestre
Unidade Curricular |
Área científica e ECTS |
Especialização / Concentação secundária (UC opcional) |
INF - 6 ECTS |
UC nuclear |
INF - 6 ECTS |
Opção livre (qualquer área) |
QAC - 6 ECTS |
Preparação de Dissertação / Projeto em Engenharia Informática |
INF - 12 ECTS |
2º ano, 2º semestre
Unidade Curricular |
Área científica e ECTS |
Elaboração de Dissertação / Projeto em Engenharia Informática |
INF - 30 ECTS |
Especializações
Esta secção apresenta as UCs definidas para cada especialização.
Engenharia de Sistemas de Informação / Information Systems Engineering
- Sistemas de Bases de Dados / Database Systems (nuclear, obrigatória)
- Modelação de Sistemas e Processos / Process and Systems Modelling (nuclear, obrigatória)
- Engenharia de Requisitos / Requirements Engineering
- Qualidade do Software / Software Quality
- Engenharia Orientada por Modelos / Model Driven Engineering
- Modelação de Dados / Data Modeling
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
- Computação em Cloud / Cloud Computing
- Tópicos avançados em Engenharia de Sistemas de Informação / Advanced Topics in Information Systems Engineering
Inteligência Artificial / Artificial Intelligence
- Aprendizagem Automática / Machine Learning (nuclear, obrigatória)
- Representação de Conhecimento e Raciocínio / Knowledge Representation and Reasoning (nuclear, obrigatória)
- Tomada de Decisão Autónoma / Autonomous Decision Making
- Resolução Declarativa de Problemas / Declarative Problem Solving
- Aprendizagem Não Supervisionada / Unsupervised Learning
- Aprendizagem Profunda / Deep Learning
- Bioinformática / Bioinformatics
- Pesquisa e Processamento de Linguagem Natural / Natural Language Processing and Search
- Tópicos Avançados em Inteligência Artificial / Advanced Topics in Artificial Intelligence
Linguagens de Programação e Sistemas de Software / Programming Languages and Software Systems
- Verificação de Software / Software Verification (nuclear, obrigatória)
- Desenho de Linguagens e Compiladores / Language and Compiler Design (nuclear, obrigatória)
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
- Programação Concorrente: Linguagens e Técnicas / Concurrent Programming: Languages and Techniques
- Segurança de Software / Software Security
- Algoritmos Avançados / Advanced Algorithms
- Engenharia Orientada por Modelos / Model Driven Engineering
- Algoritmos Distribuídos / Distributed Algorithms
- Tópicos Avançados em Linguagens de Programação e Sistemas de Software / Advanced Topics in Programming Languages and Software Systems
Segurança e Privacidade / Security and Privacy
- Segurança de Sistemas de Computadores / Computer Systems Security (nuclear, obrigatória)
- Privacidade de Sistemas / Systems Privacy (nuclear, obrigatória)
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
- Algoritmos Distribuídos / Distributed Algorithms
- Sistemas Distribuídos Confiáveis / Reliable Distributed Systems
- Segurança de Software / Software Security
- Qualidade do Software / Software Quality
- Aprendizagem Não Supervisionada / Unsupervised Learning
- Tópicos Avançados em Segurança e Privacidade / Advanced Topics in Security and Privacy
Sistemas Distribuídos e Paralelos / Distributed and Parallel Systems
- Computação Paralela / Parallel Computing (nuclear, obrigatória)
- Computação em Cloud / Cloud Computing (nuclear, obrigatória)
- Algoritmos Distribuídos / Distributed Algorithms
- Sistemas IoT e Móveis / IoT and Mobile Systems
- Sistemas Concorrentes / Concurrent Systems
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
- Sistemas de Bases de Dados / Database Systems
- Tópicos Avançados em Sistemas Distribuídos e Paralelos / Advanced Topics in Distributed and Parallel Systems
Sistemas Interativos Multimodais / Interactive Multimodal Systems
- Interação Pessoa Máquina / Human Computer Interaction (nuclear, obrigatória)
- Visão por Computador / Computer Vision (nuclear, obrigatória)
- Computação Multimédia / Multimedia Computing
- Jogos e Ambientes Imersivos / Games and Immersive Environments
- Conceção e Desenvolvimento de Sistemas Geoespaciais / Geospatial Systems Design and Development
- Pesquisa e Processamento de Linguagem Natural / Natural Language Processing and Search
- Sistemas de Processamento de Visão e Linguagem / Vision and Language Processing Systems
- Aprendizagem Automática / Machine Learning
- Tópicos Avançados em Sistemas Interativos Multimodais / Advanced Topics in Interactive Multimodal Systems
Concentrações Secundárias
Esta secção apresenta as UCs definidas para cada concentração secundária (minor).
Desenho de Algoritmos e de Linguagens de Programação / Algorithms and Programming Language Design
- Desenho de Linguagens e Compiladores / Language and Compiler Design (nuclear, obrigatória)
- Programação Concorrente: Linguagens e Técnicas / Concurrent Programming: Languages and Techniques
- Algoritmos Avançados / Advanced Algorithms
- Algoritmos Distribuídos / Distributed Algorithms
Desenvolvimento de Software Confiável / Trustworthy Software Development
- Verificação de Software / Software Verification (nuclear, obrigatória)
- Segurança de Software / Software Security
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
- Qualidade do Software / Software Quality
Engenharia de Software / Software Engineering
- Modelação de Sistemas e Processos / Process and Systems Modelling (nuclear, obrigatória)
- Engenharia de Requisitos / Requirements Engineering
- Qualidade do Software / Software Quality
- Engenharia Orientada por Modelos / Model Driven Engineering
Interação Multimédia Imersiva / Immersive Multimedia Interaction
- Interação Pessoa Máquina / Human Computer Interaction (nuclear, obrigatória)
- Computação Multimédia / Multimedia Computing
- Jogos e Ambientes Imersivos / Games and Immersive Environments
- Conceção e Desenvolvimento de Sistemas Geoespaciais / Geospatial Systems Design and Development
Segurança de Sistemas e Software / Systems and Software Security
- Segurança de Sistemas de Computadores / Computer Systems Security (nuclear, obrigatória)
- Segurança de Software / Software Security
- Sistemas Concorrentes / Concurrent Systems
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
Sistemas Concorrentes e Paralelos / Concurrent and Parallel Systems
- Computação Paralela / Parallel Computing (nuclear, obrigatória)
- Programação Concorrente: Linguagens e Técnicas / Concurrent Programming: Languages and Techniques
- Algoritmos Distribuídos / Distributed Algorithms
- Sistemas Concorrentes / Concurrent Systems
Sistemas baseados em Conhecimento / Knowledge-Based Systems
- Representação de Conhecimento e Raciocínio / Knowledge Representation and Reasoning (nuclear, obrigatória)
- Tomada de Decisão Autónoma / Autonomous Decision Making
- Resolução Declarativa de Problemas / Declarative Problem Solving
- Modelação de Dados / Data Modeling
Sistemas de Aprendizagem Automática / Automated Learning Systems
- Aprendizagem Automática / Machine Learning (nuclear, obrigatória)
- Aprendizagem Não Supervisionada / Unsupervised Learning
- Aprendizagem Profunda / Deep Learning
- Bioinformática / Bioinformatics
Sistemas de Informação Web / Web Information Systems
- Sistemas de Bases de Dados / Database Systems (nuclear, obrigatória)
- Modelação de Dados / Data Modeling
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
- Computação em Cloud / Cloud Computing
Sistemas de Visão e Linguagem / Vision and Language Systems
- Visão por Computador / Computer Vision (nuclear, obrigatória)
- Pesquisa e Processamento de Linguagem Natural / Natural Language Processing and Search
- Sistemas de Processamento de Visão e Linguagem / Vision and Language Processing Systems
- Computação em Cloud / Cloud Computing
Sistemas Distribuídos / Distributed Systems
- Computação em Cloud / Cloud Computing (nuclear, obrigatória)
- Algoritmos Distribuídos / Distributed Algorithms
- Sistemas IoT e Móveis / IoT and Mobile Systems
- Desenho e Implementação de Aplicações para a Internet / Internet Applications Design and Implementation
Sistemas Seguros e Confiáveis / Secure and Dependable Systems
- Privacidade de Sistemas / Systems Privacy (nuclear, obrigatória)
- Algoritmos Distribuídos / Distributed Algorithms
- Criptografia Aplicada Avançada / Applied Advanced Cryptography
- Sistemas Distribuídos Confiáveis / Reliable Distributed Systems