LEI PT - DI @ UMinho

Propaganda
Engenharia Informática
Descrição:
Qualificação e Título – Licenciatura em Engenharia Informática, Licenciado.
Duração oficial - 3 anos/6 semestres/40 semanas de estudo a tempo inteiro por ano/180
créditos ECTS.
Requisitos de acesso – O ingresso no curso pode ser efectuado através do Concurso
Nacional de Acesso ao Ensino Superior, dos Regimes Especiais, dos Concursos
Especiais de Acesso ou dos Regimes de Reingresso, Mudança de Curso e Transferência.
Para se candidatarem ao ensino superior através do Concurso Nacional de Acesso, os
estudantes devem satisfazer as condições descritas em DGES/Acesso ao Ensino
Superior.
Requisitos do programa de estudos - A Licenciatura em Engenharia Informática tem
por objectivo preparar engenheiros informáticos, aptos em todas as fases actualmente
reconhecidas no rigoroso processo de análise, concepção e implementação de soluções
informáticas. Os seus licenciados devem adquirir durante o curso grande experiência
teórica e prática na análise de sistemas a informatizar, na especificação dos requisitos
desses mesmos sistemas, nas técnicas de construção de protótipos e em todas as fases da
sua instalação, na gestão de projectos informáticos, no teste e manutenção de aplicações
informáticas, e, consequentemente, dos sistemas ou redes que as suportam.
Acesso a um nível de estudos superior - O grau de Licenciado permite a candidatura a
estudos pós-graduados, nos termos descritos em
DGES/Reconhecimento+Académico/Suplemento+ao+Diploma/.
Estatuto e Saídas profissionais – O licenciado em Engenharia Informática tem
capacidade e conhecimento suficiente para se integrar em inúmeros domínios
profissionais. O seu perfil tecnológico, associado com a experiência teórico-prática
adquirida ao longo do curso, permite-lhes projectar e implementar sistemas e aplicações
informáticas em empresas que desenvolvam as suas actividades em áreas como o
desenvolvimento de software, a banca, os seguros, os transportes, o retalho, a saúde, as
finanças, as telecomunicações, a Internet, ou o desenvolvimento de aplicações para a
Web.
Local Funcionamento: Campus de Gualtar, Braga
Director:
Orlando Manuel Oliveira Belo
Manuel Alcino Pereira da Cunha
Coordenadores ECTS:
Paulo Jorge Sousa Azevedo
Ano Código Nome
Regime ECTS
1
8201N1 Álgebra Linear
S1
5
1
8201N2 Cálculo I
S1
5
1
8201N5 Elementos de Engenharia de Sistemas
S1
5
1
8201N6 Laboratórios de Informática I
S1
5
1
8201N4 Programação Funcional
S1
5
1
8201N3 Tópicos de Matemática Discreta
S1
5
1
8202N2 Cálculo II
S2
5
1
8202N6 Laboratórios de Informática II
S2
5
1
8202N4 Lógica
S2
5
1
8202N5 Programação Imperativa
S2
5
1
8202N1 Sistemas de Computação
S2
5
1
8202N3 Tópicos de Física Moderna
S2
5
2
8203N6 Algoritmos e Complexidade
S1
5
2
8203N4 Arquitectura de Computadores
S1
5
2
8203N5 Comunicação de Dados
S1
5
2
8203N3 Engenharia Económica
S1
5
2
8203N2 Estatística Aplicada
S1
5
2
8203N1 Introdução aos Sistemas Dinâmicos
S1
5
2
8204N4 Análise de Custos
S2
5
2
8204N5 Cálculo de Programas
S2
5
2
8204N3 Electromagnetismo
S2
5
2
8204N6 Laboratórios de Informática III
S2
5
2
8204N2 Programação Orientada aos Objectos
S2
5
2
8204N1 Sistemas Operativos
S2
5
3
8205N1 Bases de Dados
S1
5
3
8205N2 Desenvolvimento de Sistemas de Software
S1
5
3
8205N6 Métodos Numéricos
S1
5
3
8205N3 Modelos Determinísticos de Investigação Operacional
S1
5
3
8205N5 Redes de Computadores
S1
5
3
8205N4 Sistemas Distribuídos
S1
5
3
8206N2 Computação Gráfica
S2
5
3
8206N4 Comunicações por Computador
S2
5
3
8206N6 Laboratórios de Informática IV
S2
5
3
8206N3 Modelos Estocásticos de Investigação Operacional
S2
5
3
8206N5 Processamento de Linguagens
S2
5
3
8206N1 Sistemas de Representação de Conhecimento e Raciocínio
S2
5
8201N1 - Álgebra Linear
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
aulas teóricas e teórico-práticas.
Programa:
Matrizes: álgebra de matrizes; matrizes invertíveis; matrizes elementares; característica.
Sistemas de equações lineares; classificação e resolução de sistemas, eliminação de
Guass. Determinantes: Cálculo do determinante, regra de Cramer, matriz adjunta.
Valores e vectores próprios: definições básicas e algumas propriedades. Espaços
vectoriais reais: definições, subespaços, dependência e independência linear; base e
dimensão de um espaço. Aplicações lineares; núcleo e imagem; isomorfismos; matriz
de uma aplicação linear; matrizes semelhantes.
Métodos de Avaliação:
Avaliação periódica / Exame final escrito.
Pré-requisitos:
Nenhuns.
Resultados de Aprendizagem:
Com a aprovação na disciplina, o estudante deverá ser capaz de:
Operar com matrizes. Classificar e resolver sistemas de equações lineares. Calcular o
determinante de uma matriz e calcular os valores e vectores próprios de uma matriz.
Estruturar e redigir demonstrações de resultados básicos que envolvam espaços
vectoriais e aplicações lineares.
Bibliografia:
1.Título: Introdução à álgebra linear
Autores: M. Raquel Valença
Ano: 2003
2. Title: Curso de Álgebra Linear e Geometria Analítica
Authors: Maria Paula Marques Smith; Emília Giraldes; Victor Hugo Fernandes
Year: 1995
Docentes: Zhang Yulin
8201N2 - Cálculo I
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
2 horas/semana - aulas teóricas. 2 horas/semana - teórico-práticas.
Programa:
Tópicos sobre o corpo dos números reais.
Limites e continuidade de funções reais de variável real.
Funções trigonométricas, trigonométricas inversas, hiperbólicas e hiperbólicas
inversas.
Derivadas, aproximação polinomial, primitivas e integrais.
Métodos de Avaliação:
Avaliação periódica e exame final.
Pré-requisitos:
Nenhuns
Resultados de Aprendizagem:
Com a aprovação na disciplina, o estudante deverá ser capaz de:
- dominar noções topológicas no conjunto dos números reais fundamentais para
introduzir a noção de limite, como por exemplo ponto interior, ponto aderente, ponto
de acumulação e ponto isolado;
- entender a noção de limite, do ponto de vista geométrico e analítico. Calcular limites
de funções;
- aplicar resultados de continuidade de funções, da composição de funções e da função
inversa;
- calcular derivadas de funções e interpretar geometricamente o resultado.
- calcular o polinómio de Taylor de uma função;
- conhecer e aplicar algumas técnicas de primitivação;
- relacionar as noções de integral e de primitiva;
- aplicar integrais para o cálculo de áreas e de comprimentos de curvas.
Bibliografia:
Fernando Miranda e Lisa Santos, Introdução à Análise Real, Departamento de
Matemática, Universidade do Minho, 2004
Lisa Santos, Tópicos de Análise Real, Departamento de Matemática, Universidade do
Minho, 2004
Tom Apostol, Cálculo, Editora Réverté, 1991
Elon Lages Lima, Curso de Análise, Vol. 1, IMPA, Projecto Euclides. 1992
Docentes:
Fernando Miranda
8201N5 - Elementos de Engenharia de Sistemas
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas, aulas práticas e aulas tutórias.
Programa:
Introdução a Engenharia de Sistemas. Enquadramentos metodológicos da Engenharia de
Sistemas. Estruturação de problemas e análise de alternativas. Introdução a modelos
matemáticos e modelos de simulação. Introdução à tomada de decisão. Métodos para
gestão de sistemas. Estudo de casos. Utilização de software.
Introdução a Sistemas. Definições de Sistemas. A abordagem sistémica de situações
problema. Metodologias de Engenharia de Sistemas. Estruturação de problemas e
análise de alternativas. Modelação de Sistemas. Tipos de modelos. Construção de
modelos. Modelos de Simulação. Tópicos elementares sobre Teoria das Filas de Espera.
Modelação e optimização de sistemas em rede. Gestão de projectos. Aplicações e
utilização de software (Arena, folhas de cálculo e “solvers” de programação linear em
folhas de cálculo).
Métodos de Avaliação:
Exame escrito, participação nas aulas e realização de trabalhos práticos. e avaliação
contínua.
Pré-requisitos:
Sem Pré-Requisitos.
Resultados de Aprendizagem:
Definir e descrever abordagens metodológicas da Engenharia de Sistemas.
Aplicar princípios de ES na estruturação de problemas e análise de alternativas e
abordar problemas simples com auxílio de ferramentas informáticas.
Distinguir e utilizar diferentes tipos de modelos.
Aplicar métodos básicos de gestão de sistemas.
Aplicar métodos básicos de gestão de projectos.
Bibliografia:
A.P. Sage, J.E. Armstrong Jr., “Introduction to Systems Engineering”, John Wiley and
Sons, 2000.
H.G. Daellenbach, D.C. McNickle, “Management Science - Decision making through
systems thinking”, Palgrave MacMillan, 2005.
W.D. Kelton, R.P. Sadowski, D.T. Sturrock, “Simulation with Arena”, McGraw-Hill,
2004.
F. Alvelos, “Diapositivos sobre Elementos de Engenharia de Sistemas”, 2006.
Docentes:
Filipe Pereira Pinto Cunha Alvelos
Luís Miguel Silva Dias
8201N6 - Laboratórios de Informática I
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 30
Créditos: 5
Métodos de Ensino:
Aulas de laboratório.
Programa:
Utilização de editores de texto (Vi e Emacs).
Utilização do LaTeX na elaboração de relatórios e outros documentos.
Prática de programação na linguagem Haskell.
Métodos de Avaliação:
Testes práticos no computador.
Pré-requisitos:
Nenhuns.
Resultados de Aprendizagem:
- Redigir relatórios técnicos em LaTeX.
- Compreender e utilizar a recursividade na resolução de pequenos problemas de
programação.
- Definir tipos algébricos para representar os dados de um problema.
- Utilizar funções de ordem superior e polimorfismo ad-hoc com classes para abstrair
padrões comuns de programação.
Bibliografia:
- T. Oetiker, H. Partl, I. Hyna, and E. Schlegl. The not so short introduction to
LaTeX2e.
- José Manuel Valença e José Bernardo Barros. Fundamentos da Computação, Livro II:
Programação Funcional. Universidade do Minho, 1998.
- Richard Bird. Introduction to Functional Programming using Haskell. Prentice-Hall,
1998.
Docentes:
José Bernardo Barros
Olga Pacheco
Manuel Bernardo Barros
8201N4 - Programação Funcional
Regime: S1
Tipo: Obrigatória
Língua de Instrução:
Carga Total: 60
Créditos: 5
Métodos de Ensino:
2 horas/semana - aulas teóricas; 2 hora/semana - aulas teórico-práticas.
Programa:
O paradigma funcional da computação; a linguagem de programação Haskell.
Expressões, valores e redução. Tipos básicos, tipos algébricos, indução e recursividade.
Programação funcional de ordem superior. Polimorfismo, classes, tipos principais.
Modularidade.
Métodos de Avaliação:
Prova individual escrita (teste final) e trabalho prático.
Pré-requisitos:
Nenhuns
Resultados de Aprendizagem:
No final desta disciplina, o aluno deverá ser capaz de:
Escrever programas numa linguagem de programação funcional (Haskell).
Compreender o conceito de tipo indutivo e de recursividade.
Definir tipos algébricos para modelar problemas, e programar com esses tipos.
Compreender a noção de tipo principal e de polimorfismo.
Usar funções de ordem superior.
Bibliografia:
- Fundamentos da Computação, Livro II: Programação Funcional, José Manuel Valença
e José Bernardo Barros, Universidade do Minho, 1998.
- Introduction to Functional Programming, Richard Bird and Philip Wadler, PrenticeHall, 1988
- Introduction to Functional Programming using Haskell, Richard Bird, Prentice-Hall,
1998
- The Craft of Functional Programming, Simon Thompson, Addison-Wesley, 1996.
Docentes:
José Bernardo Barros
Maria João Gomes Frade
Luís Soares Barbosa
8201N3 - Tópicos de Matemática Discreta
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
2 horas/semana - aulas teóricas. 2 horas/semana - teórico-práticas.
Programa:
Introdução ao cálculo proposicional: conectivos, fórmulas, valores de verdade,
valorações, tautologias, equivalências lógicas. Quantificação existencial e quantificação
universal. Introdução à teoria elementar de conjuntos: noção intuitiva de conjunto, a
relação "pertence", representação de conjuntos, igualdade de conjuntos, o conjunto
vazio, inclusão de conjuntos operações de união, intersecção e complementação de
conjuntos; conjunto potência, pares ordenados e produto cartesiano de conjuntos,
famílias de conjuntos. Princípio de indução e princípio de indução completa. Relações
binárias, aplicações, relações de equivalência, conjuntos quociente. Conjuntos
parcialmente ordenados: elementos especiais, conjuntos bem ordenados. Elementos de
teoria de grafos: definições e conceitos básicos, subgrafos, grafos isomorfos, algumas
classes de grafos.
Métodos de Avaliação:
Avaliação periódica / Exame final escrito.
Pré-requisitos:
Nenhuns.
Resultados de Aprendizagem:
Com a aprovação na disciplina, o estudante deverá ser capaz de:
- aplicar propriedades das operações lógicas proposicionais e de quantificação;
- operar com conjuntos;
- aplicar a indução como método de prova;
- construir exemplos de relações de equivalência e relações de ordem, identificando os
seus elementos particulares (máximo, mínimo, etc.);
- reconhecer funções injectivas, sobrejectivas e bijectivas;
- reconhecer e caracterizar as componentes de um grafo e algumas classes de grafos.
Bibliografia:
Fejer, P.A., Simovici, D.A., Mathematical Foundations of Computer Science (Springer
Verlag, 1991). Bloch, E., Proofs and Fundamentals (Birkhauser, 2000). Lipschutz, S.,
Teoria de Conjuntos (McGraw Hill, 1972), Chetwynd, A. e Diggle, P., Discrete
Mathematics (Edward Arnold, 1995).
Docentes:
Maria Cláudia Freitas Sousa Mendes Araújo
8202N2 - Cálculo II
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Sessões teóricas e sessões teórico-práticas; acompanhamento tutorial.
Programa:
Funções reais de várias variáveis reais (campos escalares e campos vectoriais): aspectos
analítico, geométrico/gráfico e computacional. Limites e Continuidade.
Diferenciabilidade e Gradientes. Integrais Múltiplos. Integrais de Linha.
Métodos de Avaliação:
Avaliação contínua: Projectos semanais (orais e escritos, em grupo e individual) + 2
testes escritos.
Exame final (escrito ou escrito+oral)
Pré-requisitos:
Conhecimentos básicos ao nível do Cálculo Infinitesimal para funções reais de uma
variável real.
Resultados de Aprendizagem:
O aluno deverá ser capaz de compreender quer os aspectos conceituais quer os
procedimentos do Cálculo de funções reais de várias variáveis reais.
Em especial, deverá
- analisar problemas com várias variáveis e identificar os elementos significativos;
- desenvolver competências específicas na selecção e na utilização de uma ou mais
estratégias de resolução de problemas matemáticos;
- demonstrar capacidade para o trabalho individual e para o trabalho cooperativo, na
resolução de problemas matemáticos;
- desenhar (recorrendo às novas tecnologias), esboçar e analisar gráficos de funções
reais de várias variáveis reais, apresentadas explícita, implícita ou parametricamente;
- discutir e distinguir o conceito de Limite de uma função real de várias variáveis reais,
num ponto e conhecer a notação correspondente;
- calcular (analítica, gráfica e numericamente) o limite de uma função real de várias
variáveis reais;
- inferir se uma função real de várias variáveis reais é (ou não) contínua num
determinado domínio;
- definir e calcular derivadas parciais e direccionais, bem como gradientes de funções
reais de várias variáveis reais;
- projectar, organizar e justificar problemas de optimização (aplicações de pontos
estacionários);
- definir e calcular integrais duplos, triplos e de linha;
- interpretar e testar os conceitos do Cálculo Integral a problemas do quotidiano de áreas
científicas afins (física, química, medicina, engenharia(s) e economia).
Bibliografia:
Hughes-Hallett & al. Calculus (single and multivariable), 2002.
Larson & al. Cálculo (volume 2), 2006.
Docentes:
Maria Elfrida Ramos Matos Ralha
Maria do Rosário Fernandes
8202N6 - Laboratórios de Informática II
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 30
Créditos: 5
Métodos de Ensino: A disciplina, que pretende integrar os conhecimentos que são
transmitidos a nível das restantes disciplinas do semestre corrente e do anterior (do 1º
ano do curso), privilegia o método dito de ensino orientado ao projecto.
Assim toda a aprendizagem será feita através do desenvolvimento de um projecto, que
requer: a análise do enunciado; a concepção e o desenho da resolução; a implementação
completa do software que realiza o sistema projectado.
Para realizar essas tarefas será usado o tempo lectivo em laboratório de informática,
com o acompanhamento permanente de 1 docente, o qual irá discutindo com os grupos
as alternativas (para os ajudar a fazer as opções técnicas), irá guiando as actividades dos
grupos, bem como esclarecendo dúvidas que os alunos coloquem. Além desse período
lectivo, espera-se que os grupos desenvolvam algum trabalho extra aulas.
Programa:
Nenhum.
Métodos de Avaliação:
A disciplina é avaliada em várias etapas pela qualidade do projecto elaborado assim
como pelos relatórios submetidos.
Pré-requisitos: Nenhum
Resultados de Aprendizagem:
a capacidade de trabalho em grupo e respectiva comunicação efectiva e eficiente entre
os elementos do grupo
a capacidade de comunicação escrita e oral na apresentação e discussão dos processos
usados e resultados obtidos
a capacidade de aplicar os conceitos leccionados nas várias disciplinas do segundo
semestre num projecto de índole prática
a capacidade de analisar um problema e de desenvolver um algoritmo e as estruturas de
dados necessários para o resolver e codificá-lo numa linguagem imperativa
Bibliografia:
Kernighan e Ritchie, "The C Programming Language (ANSI C)", 2.nd edition, Prentice
Hall Software series, 1988
P. Guerreiro, "Elementos de Programação com C", FCA -- Editora de Informática Lda,
série Tecnologias de Informação, 2ªEdição, 2001
L. Damas, "Linguagem C", FCA -- Editora de Informática Lda, 1999
I. Sampaio e A. Sampaio, "Fundamental da Programação em C", FCA -- Editora de
Informática Lda, 1998
R. Barbosa, "Domine a 100% a Programação em C", volumes I e II, FCA -- editora de
Informática Lda, 1997
Leendert Ammeraal, "Programas e Estruturas de Dados em C", Editora Presença, 1994
Docentes:
José Manuel Machado
Jorge Gustavo Rocha
Miguel Pereira Rocha
Rui Mendes
8202N4 - Lógica
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
2 horas/semana – aulas teóricas. 2 horas/semana – aulas teórico-práticas.
Programa:
Cálculo Proposicional e Lógica de 1ª ordem: Sintaxe, Semântica e Sistemas Dedutivos.
Métodos de Avaliação:
Exame final escrito e trabalho teórico-prático intermédio.
Pré-requisitos:
Noções elementares de Teoria de Conjuntos.
Resultados de Aprendizagem:
Com a aprovação na disciplina, o aluno deverá ser capaz de:
1. definir funções por recursão estrutural e fazer demonstrações por indução estrutural;
2. manipular sintaxe formal da lógica proposicional e lógica de 1ª ordem;
3. usar fórmulas da lógica de 1ª ordem para representar frases em linguagem natural;
4. dar significado a fórmulas e decidir o seu valor lógica, no contexto de uma
interpretação;
5. explicar e construir demonstrações formais em dedução natural;
6. descrever algumas das consequências dos teoremas da correcção e completude.
Bibliografia:
1. Logic and structure, van Dalen, Springer
2. Language, Proof and Logic, Barwise and Etchemendy, CSLI Publications
Docentes:
Luís Filipe Ribeiro Pinto
João Manuel Caramalho Melo Domingues
8202N5 - Programação Imperativa
Regime: S2
Tipo: Obrigatória
Língua de Instrução:
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas teóricas e de resolução de problemas.
Programa: Conceitos fundamentais da Programação Imperativa: estado (variáveis),
atribuições, sequenciação. Manipulação de arrays: algoritmos de ordenação, operações
com matrizes. Implementação de estruturas de dados standard e algoritmos associados:
listas ligadas e duplamente ligadas, stacks e queues, árvores binárias e árvores binárias
de procura.
Métodos de Avaliação: A avaliação tem duas componentes obrigatórias: [70%]
realização de um teste individual escrito, no final do semestre(nota mínima de 9,5),
[30%] realização de 3 provas laboratoriais (em grupo) em ambiente. Serão dispensados
de exame os alunos que obtenham 10.0 na média ponderada dos factores acima. Serão
admitidos a exame os alunos que tenham realizado as três provas laboratoriais. O exame
consiste numa única prova individual escrita e a nota final é a media ponderada com as
notas das provas laboratoriais (70%, 30%)
Pré-requisitos: Não aplicável.
Resultados de Aprendizagem:
- Compreender os conceitos fundamentais da Programação Imperativa: estado
(variáveis), atribuições, sequenciação.
- Utilizar correctamente as estruturas de controlo de fluxo em linguagens imperativas,
nomeadamente as construções condicionais e iterativas.
- Manipular arrays, por exemplo em algoritmos de ordenação e operações com matrizes.
- Compreender e utilizar correctamente apontadores.
- Reconhecer estruturas de dados standard e algoritmos associados: listas ligadas e
duplamente ligadas, stacks e queues, árvores binárias e árvores binárias de procura.
Bibliografia: The C Programming Language, Brian W. Kernighan, Dennis M. Ritchie,
Prentice Hall Software Series (ISBN 0-13-110362-8).
Docentes:
José Bernardo Barros
Manuel Bernardo Barbosa
8202N1 - Sistemas de Computação
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas, de resolução de problemas e
laboratoriais.
Programa:
Fundamentos tecnológicos dos computadores e da computação organização e
estrutura de um sistema de computação; representação da informação,
incluindo texto, imagens, inteiros, reais norma IEEE 754 e o instruction set
dum CPU; análise ao nível do assembly, da execução de programas codificados
numa linguagem imperativa; análise ao nível dos sistemas digitais, do CPU,
memória, barramentos e controlador de periféricos.
Métodos de Avaliação:
Testes, Trabalhos Práticos e Exame.
Pré-requisitos:
Nenhuns.
Resultados de Aprendizagem:
1. Descrever e analisar informação (textos, imagens, números inteiros/reais
e instruções de CPU), em diferentes bases de representação numérica
2. Descrever a estrutura e organização de um sistema de computação, as
funcionalidades dos seus componentes e as relações entre os níveis de
abstracção
3. Identificar as características mais relevantes do conjunto de instruções
de um CPU e descrever o funcionamento de instruções de um ISA tipo
4. Analisar e modificar código assembly de um CPU típico gerado por um
compilador, incluindo estruturas de controlo/dados e invocação de
procedimentos/funções
5. Descrever técnicas actuais de realização física ao nível da hierarquia de
memória e da execução paralela de instruções, e seu impacto no desempenho do
sistema
Bibliografia:
Computer Organization and Architecture - Designing for Performance, William
Stallings, Prentice Hall, 6th Ed., 2002
Computer Systems: A Programmer's Perspective (CS:APP), Randal Bryant and
David O'Hallaron, Prentice Hall, 2003
Docentes:
João Miguel Lobo Fernandes
Alberto José Gonçalves Carvalho Proença
8202N3 - Tópicos de Física Moderna
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: Presencial: aulas teóricas (2 horas/semana) e aulas teórico-práticas
(2 horas/semana).
Programa:
1 Unidades e análise dimensional
1.1 Sistema Internacional
1.2 Conversão de unidades
1.3 Análise dimensional e estimativas
2 Relatividade restrita
2.1 Espaço-Tempo
2.2 Referenciais
2.3 O princípio da relatividade
2.4 Transformações de Lorentz
2.5 Contracção do espaço e dilatação do tempo.
2.6 O mapa do Espaço-Tempo
2.7 Regiões do Espaço-Tempo
2.8 Momento-Energia
2.9 Colisões
2.10 Espaço-Tempo curvo
3 Física Quântica: um mundo irreal?
3.1 Ondas: propriedades e fenómenos ondulatórios
3.2 Ondas de Matéria e as relações de incerteza
3.3 Spin
3.4 Indiscernibilidade
3.5 Correlação e entrelaçamento quântico
3.6 Criptografia quântica
3.7 Teleportação quântica
3.8 Computação quântica
4 Física Geral
4.1 As fases da matéria
4.2 radiação do Corpo Negro
4.3 As moléculas e o estado sólido.
4.4 A estrutura atómica
4.5 O átomo de Bohr
4.6 O núcleo atómico
4.7 Olhar mais além, até ao limite!
4.8 As partículas elementares
4.9 As interacções fundamentais
4.10 Cosmologia
Métodos de Avaliação: 6 testes ao longo do semestre
Pré-requisitos: Sem pré-requisitos
Resultados de Aprendizagem:
Efectuar conversão de unidades e dominar o conceito de análise dimensional.
Efectuar a transformação de Lorentz de coordenadas e velocidades entre referenciais
inerciais. Aplicar os conceitos de “dilatação de tempo”, “contracção de espaço” e tempo
e comprimentos próprios a problemas numéricos concretos.
Descrever fundamentos da interacção da radiação com a matéria: absorção e emissão de
luz, espectro atómico de linhas e níveis de energia e o modelo atómico de Bohr.
Reconhecer a descrição probabilística do mundo microscópico em que as partículas têm
a si associadas uma natureza ondulatória e as ondas um carácter corpuscular.
Descrever os fundamentos da estrutura atómica, molecular e do estado sólido e nuclear.
Identificar o conhecimento cosmológico do universo: as partículas fundamentais,
conhecimento dos tipos de forças fundamentais, o modelo cosmológico padrão e o
universo em expansão.
Bibliografia: E. F. Taylor, J. A. Wheeler, Spacetime Physics
Martinus Veltman, Facts and Mysteries in Elementary Particle Physics
Valerio Scarani, Initiation à la Physique Quantique
Cummings, Laws, Redish, Cooney, Understanding Physics
Docentes: Ricardo Mendes Ribeiro
Paulo Coutinho
8203N6 - Algoritmos e Complexidade
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas e aulas teórico-práticas para resolução de exercícios.
Programa:
Análise de Complexidade de Algoritmos:
- Análise da complexidade de algoritmos iterativos simples.
- Uso de relações de recorrência para analisar a complexidade algorítmica de definições
recursivas.
- Análise assimptótica (notações O, Teta e Omega).
Estratégicas algorítmicas:
- Algoritmos Incrementais, divisão e conquista, programação dinâmica.
- Análise de complexidade associadas a estratégias algorítmicas.
- Apresentação de algoritmos clássicos para como exemplos destas estratégias
(procuras, ordenações e travessias).
Estruturas de Dados clássicas e algoritmos associados:
- Estruturas Lineares (Stacks, queues, tabelas de hash): inserção e consulta.
- Estruturas hierárquicas (heaps, árvores binárias balanceadas, árvores B): inserção,
consulta e travessia.
- Grafos: travessias, árvores geradoras, caminhos mais curto, fecho transitivo.
Métodos de Avaliação:
Prova escrita individual e pequeno projecto prático para resolver em grupo de forma
autónoma.
Pré-requisitos:
Conhecimentos de programação imperativa.
Resultados de Aprendizagem:
- Utilizar estruturas de dados não-lineares eficientes para pesquisa: árvores binárias
balanceadas e tabelas de hash.
- Utilizar estruturas de dados baseadas em grafos: representar grafos em computador;
algoritmos clássicos para grafos.
- Analisar assimptoticamente o tempo de execução de algoritmos iterativos e recursivos
simples.
Bibliografia:
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.
Introduction to Algorithms. MIT Press, Cambridge,Mass., second edition, 2001.
- Robert L. Kruse, Bruce P. Leung, and Clovis L. Tondo. Data Structures and Program
Design in C. Prentice Hall, second edition, 1997.
- Donald E. Knuth. The Art of Computer Programming : (1) Fundamental Algorithms,
(2) Seminumerical Algorithms, (3) Sorting and Searching. Addison/Wesley, third
edition, 1997/98. 3 volumes.
Docentes:
José Bernardo Barros
Manuel Alcino Cunha
Maria João Frade
8203N4 - Arquitectura de Computadores
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas teóricas e sessões teórico-praticas
Programa:
Hierarquia de Memória





















Arquitectura do Processador
Conjunto de Instruções do Y86
Desenho Lógico e Linguagem de Controlo de Hardware
Modelo Sequencial
Encadeamento
Limitações de Encadeamento
Dependências de Dados e de Controlo
Atalhos de Dados
Prognóstico de Salto
Optimização de Desempenho de Programas
Capacidade e Limitações dos Compiladores
Métricas de Desempenho
Técnicas Independentes da Arquitectura
Estudo de Caso - Intel P6
Técnicas Dependentes da Arquitectura
Conversão de instruções em Operações
Modelo Gráfico de execução de operações
Desenrolar de Ciclos
Paralelismo ao Nível das Instruções
Limitações do Paralelismo
Perfis de Execução
Métodos de Avaliação: Avaliação periódica/exame escrito
Pré-requisitos: Conhecimentos fundamentais de organização e arquitectura de Sistemas
de Computação.
Resultados de Aprendizagem:
Após a frequência de Arquitectura de Computadores” o formando deve ser capaz de:
descrever as principais características da arquitectura dos computadores e processadores
modernos, analisando o respectivo impacto no desempenho esperado do sistema;
desenvolver e/ou optimizar programas, tendo em consideração as características do
sistema de computação alvo.
Bibliografia:
Computer Systems: A Programmer's Perspective (CS:APP), Randal Bryant and David
O'Hallaron, Prentice Hall, 2002
Docentes: Luís Paulo Peixoto dos Santos
8203N5 - Comunicação de Dados
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
A unidade curricular consiste em aulas Teóricas (T) e Teórico-Práticas (TP). As aulas
TP consistem em: i) realização de exercícios TP por forma a consolidar os conceitos
apresentados e discutidos nas aulas teóricas e ii) discutir/planear o desenvolvimento de
possíveis aplicações em tópicos específicos cobertos pelo programa da unidade
curricular.
Programa:
Teoria da informação e codificação da fonte: medida de informação, entropia,
codificação de fontes com e sem memoria; Digitalização: amostragem, quantização
uniforme e não uniforme, conversão AD; Multiplexagem: TDM síncrono e estatístico,
modelos de filas de espera, FDM e outras; Sinais e sistemas de transmissão: espectro de
um sinal, transmissão e filtragem, limitações fundamentais, ganhos e perdas de
potência, ruído, relação potencia de sinal/ruído; Códigos para controlo de erros:
detecção e correcção de erros, códigos lineares de bloco, códigos cíclicos.
Métodos de Avaliação:
Avaliação periódica – dois testes de avaliação -: cada teste de avaliação consiste numa
prova com questões teórico e teórico práticas abrangendo uma parte da matéria a definir
pelo docente. A nota final será a média das classificações obtidas nestas duas provas.
Os alunos que não tenham obtido aproveitamento nos elementos de avaliação periódica
descritos poderão fazer um exame final.
Pré-requisitos:
Nenhum
Resultados de Aprendizagem:
Definir, discutir e relacionar os conceitos básicos da teoria das telecomunicações.
Explicar os componentes fundamentais dum sistema de comunicações digital ou
analógico. Listar e discutir as principais limitações da comunicação à distância e os
mecanismos subjacentes aos sistemas de telecomunicações actuais. Compreender os
conceitos subjacentes aos principais algoritmos, técnicas e ferramentas relacionadas
com a digitalização, compressão e processamento de sinais multimédia. Compreender
as técnicas e a teorias de suporte que permitem a detecção e correcção de erros nas
comunicações digitais.
Bibliografia:
- V. Freitas, Fundamentos das Telecomunicações, Universidade do Minho, 2003
- R. Ziemer, W. Tranter, Principles of Communications, 5th Edition John Wiley &
Sons, 2002
- A. Bruce Carlson, Communication Systems, McGraw-Hill Series, 2001
- Pedro Sousa, Data Communications, - Notas de apoio às aulas teóricas, Grupo de
Comunicações por Computador, DI/UM, 2007.
Docentes:
Pedro Sousa (T, TP)
Bruno Dias (TP)
8203N3 - Engenharia Económica
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 45
Créditos: 5
Métodos de Ensino:
Aula Teórica e Aula Teórico-Prática
Programa:
O âmbito da economia da empresa. O modelo da procura e da oferta. Teoria da procura.
Teoria da produção. Teoria dos custos. Estruturas de mercado. Política de preços.
Aspectos Gerais da Empresa. Noções de Contabilidade Geral. O plano oficial de
contabilidade. Mapas financeiros.
Métodos de Avaliação:
Avaliação periódica e Exame final escrito
Pré-requisitos:
Sem pré-requisitos.
Resultados de Aprendizagem:
Analisar o funcionamento de uma economia;
Analisar o comportamento dos consumidores e das empresas;
Explicar o funcionamento de diferentes estruturas de mercado;
Caracterizar as funções gerais de gestão de uma empresa;
Compreender os principais mapas financeiros de uma empresa;
Aplicar ferramentas de análise económica.
Bibliografia:
Managerial Economics in a Global Economy, D. Salvatore, McGraw-Hill, 2nd Edition.
Economia da Empresa, J. Mata, Fundação Calouste Gulbenkian, 2ª Edição, 2002.
Microeconomia e Comportamento, R. Frank, McGraw-Hill, 3ª Edição,1998.
Princípios de Economia, R. Frank e B. Bernanke, McGraw-Hill, 2004.
Plano Oficial de Contabilidade (POC) Comentado, C. Santiago, Texto Editores, 2005.
Apontamentos de Engenharia Económica elaborados pelos docentes.
Docentes:
Jorge Miguel de Oliveira Sá e Cunha
Paulo Sérgio Lima Pereira Afonso
8203N2 - Estatística Aplicada
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas/ Trabalhos em Grupo/ Exercícios Práticos/ Resolução de
exercícios em EXCEL e SPSS.
Programa: Estatística Descritiva. Probabilidades e teorema de Bayes. Inferência
Estatística: Inferência paramétrica e não paramétrica. Regressão e correlação. Regressão
Métodos de Avaliação: Aulas/Exercícios Práticos/ Resolução de exercícios em EXCEL
e SPSS.
Pré-requisitos:
Nenhuns
Resultados de Aprendizagem:
- Sintetizar e formular hipóteses associadas a um problema;
- Planear um estudo experimental;
- Recolher os dados de acordo com o plano de amostragem;
- Identificar e classificar as variáveis em estudo;
- Analisar os dados utilizando os métodos estatísticos mais adequados;
- Tirar inferências, decidir e/ou concluir, face aos resultados obtidos;
- Utilizar ferramentas informáticas (SPSS) na análise estatística de dados.
Bibliografia:
Guimarães, Rui C. e Cabral, J. A. Sarsfield (1997), “Estatística”, McGraw-Hill
Pestana, M. H. (2001), “Análise de dados para ciências sociais: a complementaridade do
SPSS“, Edições Sílabo
Conover, W. J. (1980) “Pratical Nonparametric Statistics”, 2nd ed., John Wiley &
Sons.,
Docentes:
Ana Cristina Silva Braga (docente responsável)
Lino António Costa
Celina Pinto Leão
8203N1 - Introdução aos Sistemas Dinâmicos
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 45
Créditos: 5
Métodos de Ensino: 2 horas/semana – aulas teóricas. 1 hora/semana – aulas teóricopráticas.
Programa: Equações diferenciais ordinárias, aplicações à dinâmica de sistemas
mecânicos, oscilações lineares.
Equações diferenciais com derivadas parciais, análise de Fourier, equação de onda e
equação de difusão.
Sistemas não-lineares, sistemas caóticos. Implementação computacional de sistemas
dinâmicos.
Aplicações à dinâmica de fluidos, turbolência.
Métodos de Avaliação: Avaliação periódica (um teste e um trabalho de grupo) ou
exame final escrito.
Pré-requisitos: Cálculo.
Resultados de Aprendizagem:
Descrever técnicas de integração e exemplificar aplicações de equações diferenciais
ordinárias (EDOs).
Analisar qualitativamente sistemas de EDOs não-lineares.
Aplicar ferramentas computacionais no contexto da unidade curricular.
Descrever técnicas de integração e aplicações de equações diferenciais de derivadas
parciais.
Bibliografia:
J.C. Robinson, An introduction to ordinary differential equations, Cambridge U.P. 2004.
W.E. Boyce and R.C. DiPrima, Elementary Differential Equations and Boundary Value
Problems, John Wiley 1992.
P.J. Olver, Applied Mathematics Lecture Notes, 2007.
Docentes: Salvatore Cosentino
8204N4 - Análise de Custos
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas (síntese dos conceitos, exemplos demonstrativos, estudo de casos e
discussão de temas) e teórico-práticas (resolução de problemas, estudo de casos,
discussão de temas)
Programa:
O conceito de custo. O juro e as equações financeiras. Equivalência económica.
Comparação de custos. Amortização. Impostos. Inflação. Fluxos monetários de um
empreendimento. Métodos e índices de avaliação económica de projectos. Incerteza e
risco na avaliação de projectos.
Métodos de Avaliação: Testes individuais e/ou trabalho de grupo.
Pré-requisitos: Não tem.
Resultados de Aprendizagem:
Identificar conceitos e técnicas de avaliação e selecção económica de projectos;
Descrever conceitos e técnicas de avaliação e selecção económica de projectos;
Usar técnicas de avaliação e selecção económica de projectos em problemas de
engenharia;
Propor técnicas de avaliação e selecção económica de projectos em problemas
específicos.
Bibliografia:
Park, C.S. (2001), Contemporary Engineering Economics, Prentice Hall.
Jelen, F.C., Blanck, J. H (1993), Cost and Optimization Engineering, McGraw Hill.
Blank, L.T. and Tarquin, A.J. (1989), Engineering Economy, McGraw-Hill.
Docentes: Fernando Carlos Cabrita Romero
8204N5 - Cálculo de Programas
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas e aulas teórico-práticas para resolução de exercícios.
Programa:
Especificação e verificação de programas imperativos:
- Lógica de Floyd-Hoare para verificar a correcção de algoritmos imperativos.
- Anotação dos programas com obrigações de prova.
Cálculo sobre programas funcionais:
- Programação funcional usando combinadores point-free.
- Técnicas para eliminação de variáveis na definição de funções.
- Álgebra da programação funcional: cálculo equacional usando propriedades universais
e leis derivadas.
Padrões de recursividade:
- Definição genérica de tipos de dados indutivos usando functores.
- Definição de funções recursivas usando folds e unfolds.
- Cálculo com funções recursivas: indução vs. fusão.
Métodos de Avaliação:
Teste individual e participação nas aulas teórico-práticas.
Pré-requisitos:
Conhecimentos básicos sobre programação imperativa, programação funcional e lógica
de primeira ordem.
Resultados de Aprendizagem:
- Verificar a correcção de pequenos programas imperativos previamente anotados.
- Anotar pequenos programas imperativos com pré e pós condições e invariantes de
ciclo.
- Eliminar as variáveis na definição de uma função recorrendo a combinadores pointfree.
- Demonstrar a equivalência de funções point-free envolvendo somas e produtos.
- Codificar funções recursivas simples usando folds e unfolds.
- Demonstrar a equivalência de funções recursivas usando a lei de fusão.
Bibliografia:
M. Gordon. Specification and Verification I. University of Cambridge, 1999.
J.N. Oliveira. Program Design by Calculation. Departamento de Informática,
Universidade do Minho, 2005.
A. Cunha. Cálculo de Programas: notas teórico-práticas. Departamento de Informática,
Universidade do Minho, 2005.
Docentes:
Manuel Alcino Cunha
José Bernardo Barros
Maria João Frade
8204N3 - Electromagnetismo
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas (2 horas/semana) e aulas teórico-práticas (2 horas/semana).
Programa:
1. Análise vectorial
Revisões: escalares e vectores; álgebra vectorial; sistemas de coordenadas cartesianas,
cilíndricas e esféricas; produto escalar; produto vectorial.
2. Lei de Coubomb e campo eléctrico
Lei de Coulomb. Campo eléctrico de uma carga pontual. Linhas de campo eléctrico.
Princípio de sobreposição de forças de Coulomb. Campo eléctrico de uma distribuição
discreta de cargas estáticas. Campo eléctrico de distribuições contínuas de cargas
eléctricas.
3. Lei de Gauss
Densidade de fluxo eléctrico, Lei de Gauss. Aplicações da Lei de Gauss.
Operadores divergência e laplaciano. Forma diferencial da lei de Gauss.
4. Energia e potencial eléctrico
Conservação de energia electrostática. Potencial eléctrico de uma carga pontual e de um
sistema de cargas. O campo eléctrico como derivando do potencial eléctrico:
E = -gradV. Superfícies equipotenciais. Condutor eléctrico como um volume
equipotencial. Definição de dipolo eléctrico. Potencial de um dipolo eléctrico num
ponto muito afastado do dipolo. Densidade de energia no campo electrostático.
5. Corrente eléctrica e condutores
Corrente e densidade de corrente eléctrica. Continuidade de corrente eléctrica.
Mobilidade dos portadores de carga. Condutividade eléctrica. Lei de Ohm; resistência;
resistividade. Energia dissipada numa resistência: efeito Joule. Leis de Kirchhoff para
circuitos de corrente contínua: lei das malhas e lei dos nós. Resistência equivalente de
associações de resistências em série e em paralelo. Instrumentos de medida de
intensidade de corrente eléctrica (amperímetro) e diferença de potencial (voltímetro).
Condutores metálicos. Propriedades dos condutores e condições de fronteira.
6. Capacidade e dieléctricos
Definição de condensador. Definição de dieléctrico. Capacidade de condensadores de
armaduras paralelas e armaduras cilíndricas. Polarizabilidade eléctrica. Mecanismos de
polarização de um dieléctrico. Cargas de polarização. Vectores polarização e
deslocamento eléctrico. Relação entre polarização e campo eléctrico; susceptibilidade
eléctrica. Relação entre o vector deslocamento eléctrico e o campo eléctrico; constante
dieléctrica. Constante dieléctrica relativa. Teorema de Gauss na presença de um meio
(material) dieléctrico. Condensador com dieléctrico entre as armaduras. Campo de
ruptura dieléctrica. Energia potencial eléctrica armazenada num condensador.
7. Equações de Poisson e de Laplace
Equação de Poisson e equação de Laplace.
8. O campo magnético estacionário
Campo magnetostático. Vector indução magnética. Lei de Biot-Savart. Força que actua
sobre uma carga em movimento submetida à acção de um campo magnético: Lei de
Laplace. Força sobre uma carga submetida simultaneamente à acção de um campo
magnético e de um campo eléctrico: fórmula de Laplace-Lorentz. Força entre dois
elementos de corrente. Cálculo da indução magnética de uma corrente linear infinita e
no interior de uma bobina infinita. Teorema de Gauss para o campo magnetostático.
Expressão da divergência do vector indução magnética. Forma integral da lei de
Ampère. Forma diferencial da lei de Ampère. Rotacional e Teorema de Stokes. Fluxo
magnético e densidade de fluxo magnético.
9. Forças magnéticas, materiais magnéticos
Força numa carga em movimento. Força num elemento de corrente. Força entre
elementos de corrente. Introdução ao estudo dos materiais magnéticos: meios
diamagnéticos, paramagnéticos e ferroeléctricos. Vector magnetização. Relação entre
campo magnético, indução magnética e magnetização. Permeabilidade e
susceptibilidade magnéticas.
10. Campos variáveis no tempo e equações de Maxwell
Lei de Faraday na forma integral e na forma diferencial. Lei de Lenz. Corrente de
deslocamento. Força electromotriz induzida num circuito pela variação do fluxo da
indução magnética. Corrente de deslocamento. Equações de Maxwell da forma integral
e na forma diferencial.
11. Linhas de transmissão
Propagação em linhas de transmissão. As equações das linhas de transmissão.
Impedância característica da linha; constante de propagação; atenuação; constante de
fase; velocidade de propagação. Propagação sem perdas e com poucas perdas. Análise
complexa.
12. A onda electromagnética plana
Ondas planas como uma solução da equação de onda do campo electromagnético.
Comprimento de onda; velocidade de propagação no vazio e num meio material; índice
de refracção. Relação entre os vectores campo eléctrico e campo magnético numa onda
plana; ortogonalidade entre os vectores campo eléctrico, campo magnético e a direcção
de propagação da onda electromagnética; as ondas electromagnéticas planas como
ondas transversais. Teorema de Poynting e potência da onda.
13. Reflexão e dispersão de ondas planas
Reflexão e refracção de ondas planas. Reflexão de ondas em múltiplas interfaces.
Dispersão e prismas. Princípio de Huygens. Reflexão total interna. Princípio de Fermat.
Reflexão total e transmissão total. As condições de interferência. Experiência de Young
de dupla fenda. Interferência em filmes finos. Polarização das ondas luminosas.
Métodos de Avaliação:
Testes e trabalhos teórico-práticos ou Exame.
Pré-requisitos:
Conhecimentos básicos de cálculo diferencial e integral.
Resultados de Aprendizagem:
Aplicar conceitos básicos de electrostática e magnetostática. Enunciar as leis da indução
electromagnética. Calcular a força electromotriz induzida e investigar aplicações
práticas relacionada com este conceito.
Aplicar as equações de Maxwell. Aplicar as equações de onda electromagnética.
Enunciar o teorema de Poynting.
Descrever a propagação de ondas em guias de onda. Descrever o comportamento de
ondas planas electromagnéticas em diferentes meios.
Resolver problemas que envolvam propagação de ondas.
Compreender os fundamentos das comunicações ópticas.
Bibliografia:
Hayt, Eletromagnetismo,7ª edição, McGraw-Hill (2008)
Halliday, Resnick e Walker, Fundamentals of Physics, Jonh Wiley 7th edition (2005)
Jaime E. Villate, Electromagnetismo, McGraw-Hill (1999).
F. Sears, M. Zemansky e H. Young, "Física", Vol. I e II, Livros Técnicos e
Científicos, 1991.
J.D. Deus, M. Pimenta, A. Noronha, T. Peña e P. Brogueira, "Introdução à Física",
McGraw-Hill, 2000.
D.J. Griffiths, "Introduction to Electrodynamics", Prentice-Hall, 1999.
E. Hecht, "Óptica", Fundação Calouste Gulbenkian, 1991.
P. Lorrain, D. Corson e F. Lorrain, "Campos e Ondas Electromagnéticas", 3ª edição,
Fundação Calouste Gulbenkian, Lisboa, 2000.
Docentes:
Anabela Gomes Rolo
Cacilda Moura
8204N6 - Laboratórios de Informática III
Regime: S2.
Tipo: Obrigatória.
Língua de Instrução: Português.
Carga Total: 30.
Créditos: 5.
Métodos de Ensino:
- Seminários e sessões de acompanhamento dos trabalhos.
Programa:
- Metodologias e processos de desenvolvimento de software.
- Ambientes e ferramentas de desenvolvimento de software.
- Validação, teste e manutenção de software.
- Gestão de projectos de software.
- Fábricas de software.
Métodos de Avaliação:
- Trabalhos práticos.
Pré-requisitos:
Noções e prática elementar de algoritmia e programação.
Resultados de Aprendizagem:
- dominar os conceitos e a terminologia base da Engenharia de Software.
- saber desenvolver processos de análise de requisitos de software.
- conhecer as diversas etapas de um projecto de engenharia de software.
- conhecer as técnicas, as normas e os requisitos principais para a qualidade do software.
- saber o que é uma fábrica de software e conhecer as suas principais estruturas.
- contactar com empresas de engenharia de software.
Bibliografia:
- Ian Sommerville. Software Engineering, 8th Edition, Pearson Education (Addison
Wesley), 2007.
- Alain Abran, James W. Moore, Pierre Bourque, Robert Dupuis, Leonard L. Tripp.
Guide to the Software Engineering Body of Knowledge - 2004 Version IEEE, 2004.
- Carlo Ghezzi, Mehdi Jazayeri and Dino Mandrioli. Fundamentals of Software
Engineering, Second Edition, Pearson Education (Addison Wesley), 2003.
- Hans Van Vliet. Software Engineering: Principles and Practice, 2nd Edition, John
Wiley and Sons, 2002.
Docentes:
Orlando Belo, César Analide, Paulo Novais e Victor Alves
8204N2 - Programação Orientada aos Objectos
Regime: S2
Tipo: Obrigatória
Língua de Instrução:
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Programa:
Métodos de Avaliação:
Pré-requisitos:
Resultados de Aprendizagem:
Bibliografia:
Docentes:
8204N1 - Sistemas Operativos
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: 2h aulas teórica + 2h sessões práticas em laboratório de PCs, por
semana
Programa:
Conceitos gerais de programação de sistemas e organização de sistemas operativos.
Programação Concorrente e Gestão de Processos. Gestão de Memória real e virtual.
1.
2.
3.
4.
5.
Gestão de periféricos e sistemas de ficheiros.
Métodos de Avaliação: duas provas de avaliação
Pré-requisitos: não tem
Resultados de Aprendizagem:
Compreender o papel do sistema operativo num sistema informático.
Demonstrar conhecimento da arquitectura e operação de sistemas operativos actuais.
Perceber o conceito de processo/tarefa e a forma como um sistema operativo gere
múltiplas actividades.
Discutir compromissos, mecanismos e estratégias de gestão de recursos.
Escrever programas multi-tarefa simples utilizando correctamente primitivas de
sincronização e comunicação.
Bibliografia:
Silberschatz, A., Galvin, P., Gagne, G., “Applied Operating Systems Concepts”, 7th Ed.,
John Wiley & Sons, Inc., 2004.
Tanenbaum, A., “Modern Operating Systems”, 2nd Ed., Prentice Hall, 2001.
Docentes:
Francisco Soares de Moura, Rui Oliveira, Carlos Baquero, António Luís Sousa
8205N1 - Bases de Dados
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
2 horas/semana – aulas teóricas. 2 horas/semana – aulas teórico-práticas.
Programa:
Sistemas de Informação e bases de dados; A linguagem SQL; Bases de dados
distribuídas; Bases de dados dedutivas; Sistemas gestores de bases de dados;
Administração de bases de dados.
Métodos de Avaliação:
Prova escrita e trabalho prático
Pré-requisitos:
nenhuns
Resultados de Aprendizagem:
1) distinguir dados, informação e conhecimento.
2) aplicar as formas normais e definir conceptualmente o modelo de dados para um
problema específico.
3) escrever interrogações de bases de dados relacionais usando a álgebra relacional
3) utilizar a linguagem SQL para administrar, manter e interrogar bases de dados
relacionais.
4) desenvolver aplicações informáticas que operem sobre bases de dados, incluindo
aplicações baseadas na Web.
Bibliografia:
Ullman J., Principles of Database and Knowledge-Base Systems, Volumes I and II,
Computer Science Press, New York, USA, 1989;
Bell D., and Grimson J., Distributed Database Systems, Addison-Wesley Publishing
Company, New York, USA, 1992.
Ramakrishman R. and Gehrke G., Database Management System, 3rd Edition, Mc
Graw Hill High Edication, 2003.
Docentes:
José Manuel Ferreira Machado
António Carlos da Silva Abelha
8205N2 - Desenvolvimento de Sistemas de Software
Regime: S1
Tipo: Obrigatória
Língua de Instrução:
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas teóricas e aulas laboratoriais
Programa:
Introdução aos Sistemas de Software: definição, modelos, processo de desenvolvimento
de software. Modelação Orientada aos Objectos de Sistemas de Informação em UML:
Introdução à Unified Modelling Language (UML); Modelação Estrutural; Modelação
Comportamental; Modelação Arquitectural; Estudos de Casos.
Métodos de Avaliação:
Exame final escrito e trabalho prático
Pré-requisitos:
Nenhum formal (conhecimentos de Programação Orientada aos Objectos são
desejáveis).
Resultados de Aprendizagem:
Os alunos deverão ser capazes de:
- Reconhecer os diferentes tipos de diagramas da UML ;
-Compreender modelos (de requisitos/estruturais/comportamentais) descritos em UML;
- Conceber sistemas de software utilizando UML;
- Implementar sistemas de software a partir de modelos UML.
Bibliografia:
G. Booch, J. Rumbaugh, I. Jacobson. The Unified Modeling Language User Guide.
Addison-Wesley, 2005. ; J. Rumbaugh, I. Jacobson, G. Booch. The Unified Modeling
Language Reference Manual. Addison-Wesley, 2004. ;M. Fowler. UML Distilled.
Addison-Wesley, 2003. (third edition).
Docentes:
António Nestor Ribeiro
8205N6 - Métodos Numéricos
Regime: S1
Tipo: Obrigatória
Língua de Instrução: português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Apresentação de conteúdos. Aprendizagem activa: inclui aprendizagem baseada em
problemas.
Programa:
Erros e algarismos significativos. Resolução de equações algébricas não lineares.
Métodos da secante e de Newton, condições de convergência. Método de Newton para
sistema de equações não lineares. Interpolação polinomial. Diferenças divididas,
fórmula de Newton. Integração numérica, fórmulas simples e compostas.
Aproximação dos mínimos quadrados. Modelos lineares. Modelo não linear, método
Gauss-Newton. Optimização não linear sem restrições. Condições de optimalidade.
Algoritmo de Davies, Swann e Campey para optimização univariável. Optimização
multivariável: método de procura de Nelder-Mead e métodos do gradiente.
Globalização dos algoritmos. Optimização não linear com restrições. Condições de
optimalidade. Método da programação quadrática sequencial. Função mérito.
Métodos de Avaliação:
Avaliação contínua (inclui resolução de problemas e realização de trabalhos práticos) e
um teste escrito.
Pré-requisitos:
Nenhuns
Resultados de Aprendizagem:
Descrever, analisar e aplicar métodos iterativos para resolução de equações não lineares.
Aproximar funções, integrais e ajustar modelos pela técnica dos mínimos quadrados.
Utilizar métodos analíticos de optimização. Escolher, analisar e implementar métodos
numéricos de optimização. Utilizar software computacional para resolver problemas de
engenharia e avaliar os resultados.
Bibliografia:
S.C. Chapra e R.P. Canale, Numerical Methods for Engineers: with Programming and
Software Applications, 3rd. edition, McGraw-Hill, 1998.
E.M.G.P. Fernandes, Computação Numérica, 2ª edição, Universidade do Minho, 1998.
G.J. Lastman e N.K. Sinha, Microcomputer-Based Numerical Methods for Science and
Engineering, Saunders College Publishing, 1989.
S.G. Nash e A. Sofer, Linear and Nonlinear Programming, McGraw-Hill, 1996.
J. Nocedal e S.J. Wright, Numerical Optimization, Springer Verlag, 1999.
Docentes:
Edite Manuela G.P. Fernandes
M. Teresa T. Monteiro
Ana Maria A.C. Rocha
Isabel A.C.P. Espírito Santo
8205N3 - Modelos Determinísticos de Investigação Operacional
Regime: S1
Tipo: Obrigatória
Língua de Instrução:
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas teóricas e teórico-práticas
Programa:
Programação linear. Problema de transportes. Programação inteira. Programação
dinâmica.
Métodos de Avaliação:
Exames escritos e trabalhos
Pré-requisitos: Nenhuns
Resultados de Aprendizagem:
- Desenvolver a capacidade de resolução de problemas (modelos determinísticos), com
ênfase em problemas de engenharia de sistemas.
- Conhecer as técnicas e os métodos de Investigação Operacional apresentados na
disciplina, e ser capaz de os aplicar na resolução de instâncias de problemas de pequena
dimensão.
- Desenvolver a capacidade de analisar sistemas complexos, de criar modelos para os
descrever, de obter soluções para esses modelos utilizando programas computacionais
adequados, de validar os modelos obtidos, de interpretar as soluções obtidas, e de
elaborar recomendações para o sistema em análise.
- Compreender a importância da avaliação das soluções, e ser capaz de realizar análises
de sensibilidade.
Bibliografia:
- Guimarães Rodrigues, Investigação Operacional – Modelos determinísticos. Jorge
Guerreiro, Alípio Magalhães, Manuel Ramalhete, Programação Linear (Volumes I e II)
Mc Graw-Hill Portuguesa.
- Tavares, L. V., Oliveira, R.C., Themido, I.H. e Correia, F.N., Investigação.
Operacional, McGraw-Hill, Lisboa, 1996.
- Harvey M. Wagner, Principles of Operations Research, Prentice Hall.
- Hamdy Taha, Operations Research - An Introduction. Collier MacMillan International
Editions
Docentes:
José Manuel Vasconcelos Valério de Carvalho
Cláudio Alves
Manuel Carlos Figueiredo
Pedro Chaves
8205N5 - Redes de Computadores
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 45
Créditos: 5
Métodos de Ensino:
Aulas teóricas onde é exposta a matéria teórica (T) fundamental, em formato de
seminário assistido e interactivo.
As aulas teórico-práticas (TP) consistem na realização de fichas TP e de um trabalho de
desenvolvimento na área de redes de computadores, segundo calendário a definir.
As fichas TP, orientadas ao trabalho em grupo (max. 3 elementos), devem ser
realizadas e concluídas durante a aula. Os alunos deverão ter conhecimento dos
conceitos teóricos que sustentam cada trabalho, podendo haver a necessidade de
realizarem uma pequena exposição oral do tópico em estudo, caso seja solicitado pelo
docente.
Programa:
Introdução à comunicação de dados. Elementos protocolares.
Controlo da ligação de dados. O protocolo HDLC.
Redes de computadores. Interligação de redes TCP/IP. Estudo do Protocolo IP.
Métodos de Avaliação:
A avaliação da aprendizagem é efectuada com base nas seguintes componentes:
* Realização de fichas teórico-práticas (20%)
* Trabalho de desenvolvimento (30%)
* Exame envolvendo toda a matéria leccionada (50%). Duração 2h.
As componentes teórica e experimentais têm uma nota mínima de 8.0 e 10.0 valores,
respectivamente.
Pré-requisitos: Nenhum
Resultados de Aprendizagem:
Compreender os princípios da comunicação de dados, e estruturação protocolar.
Conhecer as principais tecnologias de rede local (com e sem fios), entender o seu
funcionamento, planeamento e interligação (níveis 2 e 3).
Bibliografia:
PMC, MSL, Redes de Computadores, Notas de apoio às aulas teóricas, Grupo de
Comunicações por Computador, DI/UM, 2007.
J. Kurose and K. Rose, Computer Networking: A Top Down Approach Featuring The
Internet, Addison-Wesley, ISBN: 0-321-49770-8, 4th Edition 2008;
W. Stallings, Data and Computer Communications, 8ª Edição, Prentice Hall, ISBN: 013-2433109, 2007.
A.S.Tanenbaum, Computer Networks, 4ª Edição, Prentice Hall, ISBN: 0130661023,
2003.
Docentes:
Paulo Martins de Carvalho (T,TP)
Maria Solange Rito Lima (TP)
8205N4 - Sistemas Distribuídos
Regime: S1
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Aulas teóricas e aulas práticas.
Programa:
Concorrência em memória partilhada: exclusão mútua, deadlocks, semáforos,
monitores (tipos abstractos de dados concorrentes, variáveis de
condição,espera e semânticas de sinalização, invariantes e predicados,
concorrência em linguagens orientadas a objectos); Sistemas distribuídos:
caracterização de sistemas distribuídos; modelos síncronos e assincronos;
paradigmas de programação de sistemas distribuídos; modelo cliente-servidor.
Métodos de Avaliação:
Exames escritos.
Pré-requisitos:
Nenhuns.
Resultados de Aprendizagem:
- Compreender os principais modelos e primitivas de programação concorrente
em memória partilhada;
- Escrever aplicações concorrentes em memória partilhada;
- Compreender os principais modelos e primitivas de programação concorrente
em sistemas distribuídos;
- Escrever aplicações distribuídas baseadas em passagem de
mensagens e modelo cliente-servidor, incluindo servidores multi-threaded.
Bibliografia:
Principles of Concurrent and Distributed Programming: Algorithms and Models,
M. Ben-Ari, Prentice-Hall, 2006;
Java Concurrency in Practice, Brian Goetz, Tim Peierls, Joshua Bloch,
Addison Wesley, 2006
Docentes:
Paulo Sérgio Almeida
Carlos Baquero Moreno
Victor Francisco Fonte
8206N2 – Computação Gráfica
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas Teóricas e Teórico-Práticas
Programa:
Introdução à API do OpenGL, contexto histórico. Sistemas de coordenadas e
transformações geométricas.Tipos de projecção: ortográfica e perspectiva.
Texturas: Aplicação de imagens a polígonos; coordenadas de texturas, matrizes de
texturas. Filtros e outras opções existentes em OpenGL. Mipmapping.
Iluminação Local: Tipos de luzes, componentes da luz, modos de shading: Flat,
Gouraud e Phong. As equações para cálculo da Iluminação.
Técnicas de representação de polígonos e sua influência na performance: Display Lists,
Vertex Arrays. Análise de performance e detecção de botlenecks.
Técnicas de optimização básicas: View Frustum Culling, Partição Espacial
Shaders (GLSL): Arquitectura e fundamentos. Contexto histórico.
Shaders para texturas e iluminação em GLSL
Texturas Procedimentais e GLSL
Efeitos Avançados através de shaders: non-photorealistic shaders, bump mapping,...
Iluminação - Sombras: Sombras no plano, Shadow Volumes, Shadow Maps, Spherical
Wavelets, All-frequency shadows
Métodos de Avaliação: Prova escrita e trabalho prático realizado em grupo
Pré-requisitos: Conhecimentos básicos de geometria analítica e programação.
Resultados de Aprendizagem:
Conceber algoritmos para aplicações gráficas em tempo real. Aplicar técnicas de
optimização para aumento de desempenho.
Programar efeitos gráficos no GPU.
Analisar, e avaliar soluções algoritmicas para o desenvolvimento de aplicações gráficas
3D.
Bibliografia:
"OpenGL Programming Guide", Woo, Neider, Davis and Schneider, Addison Wesley.
Referência obrigatória!
"Interactive Computer Graphics", Edward Angel, Addison Wesley. Boa introdução.
"Real-Time Rendering", Moller and Haines. Boa visão geral do estado da arte.
"OpenGL Shading Language", Randi J. Rost. Excelente livro de introdução à
programação de shaders em GLSL.
Docentes: António Ramires Fernandes
8206N4 - Comunicações por Computador
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Exposição teórica com resolução de exercícios teórico-práticos; Realização de trabalhos
práticos em aulas laboratoriais;
Programa:
Conceitos, algoritmos e protocolos de encaminhamento. Vector Distância (DV). Estado
das Ligações (LS). Comparação entre DV e LS. Protocolos da Camada de Transporte
(UDP e TCP). Controlo de Congestão Algoritmos de prevenção. Programação usando
sockets TCP e UDP. Protocolos da camada de aplicação. HTTP, FTP, SMTP. Serviços
de directoria. DNS e LDAP.
Métodos de Avaliação:
2 testes escritos, trabalhos teóricos-práticos e projecto a realizar em aulas laboratoriais.
Pré-requisitos: Conceitos básicos de redes (nível IP e inferiores)
Resultados de Aprendizagem:
(i) Discutir diferentes protocolos de encaminhamento interno e externo
(ii) Analisar, relacionar e sintetizar soluções e protocolos para encaminhamento
dinâmico
(iii) Configurar interligações de rede e de encaminhamento IP
(ii) Caracterizar a congestão na rede e discutir metodologias de prevenção e controlo em
redes de comutação de pacotes
(iv) Aplicar metodologias de desenvolvimento de aplicações por camadas
(v) Relacionar o desempenho de aplicações básicas TCP/IP com as características da
rede de suporte (tempos de transmissão e propagação, perdas e atrasos em filas).
Bibliografia:
* J. Kurose et al, Computer Networking . A Top Down Approach Featuring the Internet,
Addisson-Wesley, 2002;
* W.Stallings, Data and Computer Communications, 7 Edição, Prentice Hall, 2004.
* A.S.Tanenbaum, Computer Networks, 4 Edição, Prentice Hall, 2002
Docentes:
António Duarte Costa
Bruno Alexandre Dias
Pedro Nuno Sousa
8206N6 - Laboratórios de Informática IV
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português/Inglês
Carga Total: 30
Créditos: 5
Métodos de Ensino:
Aprendizagem baseada em projecto.
Programa:
Desenvolvimento de um projecto em grupo e de forma autónoma pelos alunos.
Os projectos são propostos e supervisionados por docentes dos diversos departamentos
envolvidos na licenciatura.
Os projectos devem abordar problemas típicos da área de Engenharia Informática.
Métodos de Avaliação:
Avaliação contínua, relatório final e apresentação e defesa pública do projecto.
Pré-requisitos:
Sendo o projecto final da licenciatura, pressupõe um domínio básico de todos os
conceitos e tecnologias relaccionados com a Engenharia Informática.
Resultados de Aprendizagem:
- Planear e desenvolver um projecto na área de Engenharia Informática.
- Divulgar os resultados do projecto através de um relatório e de uma apresentação
pública.
Bibliografia:
Docentes:
Todos os que supervisionarem projectos.
8206N3 - Modelos Estocásticos de Investigação Operacional
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas teóricas e teórico-práticas.
Programa:
Introdução aos processos estocásticos. Programação dinâmica estocástica. Teoria de
filas de espera. Técnicas de previsão. Gestão e controlo de stocks – modelos tradicionais
para procuras contínuas.
Métodos de Avaliação: Projectos em Grupo; Exame Final.
Pré-requisitos: Sem Pré-Requisitos.
Resultados de Aprendizagem:
Aplicar as técnicas de Investigação Operacional leccionadas (modelos estocásticos) na
resolução de instâncias de problemas de pequena dimensão.
Aplicar programas computacionais adequados à resolução de modelos de Investigação
Operacional.
Resolver problemas de Investigação Operacional: análise de sistemas complexos,
criação de modelos, obtenção de soluções, validação dos modelos criados, interpretação
e avaliação das soluções obtidas, implementação das soluções.
Bibliografia:
A.J.M. Guimarães Rodrigues, Investigação Operacional, Volume-II - Modelos
Estocásticos, Universidade do Minho, 1994.
Hamdy Taha, Operations Research - An Introduction, Collier MacMillan International
Editions, 2001.
Docentes:
José Manuel Henriques Telhada
8206N5 - Processamento de Linguagens
Regime: S2
Tipo: Obrigatória
Língua de Instrução:
Carga Total: 60
Créditos: 5
Métodos de Ensino:
Programa:
Métodos de Avaliação:
Pré-requisitos:
Resultados de Aprendizagem:
Bibliografia:
Docentes:
8206N1 - Sistemas de Representação de Conhecimento e Raciocínio
Regime: S2
Tipo: Obrigatória
Língua de Instrução: Português
Carga Total: 60
Créditos: 5
Métodos de Ensino: Aulas teóricas, com resolução de problemas, e aulas laboratoriais.
Programa: Demonstração de Teoremas de Forma automática, Lógicas Multi-valor em
Programação em Lógica, Representação do Conhecimento e Formas de Raciocínio,
Conhecimento e a Problemática da sua Quantificação, Agentes e Sistemas MultiAgente, Estudos de Complexidade.
Métodos de Avaliação: Uma prova escrita, correspondendo à avaliação por exame final,
e trabalhos de grupo.
Pré-requisitos: Não há.
Resultados de Aprendizagem: Distinguir entre os métodos computacionais, em geral, e
as tecnologias baseadas em conhecimento, em particular.
Compreender não só as diferenças entre os potenciais sistemas de representação de
conhecimento, mas também ser capaz de organizar os aspectos mais relevantes dos
objectos e relações entre estes que ocorrem num dado universo de discurso, de acordo
com o sistema de representação de conhecimento seleccionado. Relacionar o sistema de
representação de conhecimento com diferentes formas de raciocínio, bem como em
como optar entre os formalismos que melhor potenciem este relacionamento.
Compreender a relação entre causalidade e inferência. Compreender a relação entre a
complexidade de um modelo e o seu desempenho.
Bibliografia: Christopher J. Hogger, "Essentials of Logic Programming", Clarendon
Press, Oxford, 1990;
Ivan Bratko, "PROLOG: Programming for Artificial Intelligence", 3rd Edition,
Addison-Wesley Longman Publishing Co., Inc., 2000;
Stuart Russel, Peter Norvig, "Artificial Intelligence - A Modern Approach", 2nd
Edition, Prentice-Hall International, Inc., 2003.
Docentes:
José Neves
Cesar Analide
Paulo Novais
Download