Ferramentas pessoais

LEI - Detalhes das disciplinas

Da Engenharia Informática e Tecnologias da Informação na Universidade de Lisboa, Faculdade de Ciências

Ano lectivo 2011/2012
Algoritmos e Estruturas de Dados
CódigoSiglaÁrea

26723

AED

CTP

Objectivos

Proporcionar ao aluno uma introdução às técnicas de estruturação de dados no contexto da metodologia de programação centrada em objectos baseada em contratos. Aprofundar o estudo desta metodologia, com ênfase para os princípios de abstracção e modularização, bem como nos mecanismos de correcção e robustez. Introdução às técnicas algorítmicas mais comuns.

Programa de estudos
Componente Teórica

Análise de Algoritmos,
Tipos de Dados Abstractos,
Pilhas,
Filas,
Iteradores,
Recursão,
Árvores,
Conjuntos e Tabelas,
Ordenação,
Árvores Equilibradas.

Componente Teórico-prática

Análise de Algoritmos,
Tipos de Dados Abstractos,
Pilhas,
Filas,
Iteradores,
Recursão,
Árvores,
Conjuntos e Tabelas,
Ordenação,
Árvores Equilibradas.

Bibliografia

Objects, Abstraction, Data Structures and Design Using Java, Version 5.0. Elliot B. Koffman, Paul A.T. Wolfgang. John Wiley & Sons, Inc, 2005.

Outros elementos de estudo
Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Análise e Design de Sistemas de Informação
CódigoSiglaÁrea

26736

ADSI

SI

Objectivos

O objectivo fundamental da disciplina é discutir a análise e design de sistemas de informação numa perspectiva sistémica, complementando as tradicionais análise de dados e análise funcional com uma análise cuidada do contexto humano, organizacional e ambiental que afecta ou condiciona o desenvolvimento de sistemas. Em particular, a discussão teórica está centrada em dois grandes desafios: 1) Compreensão do problema - Envolvendo o contacto com as “fontes” e a análise das diversas facetas do problema; 2) Desenvolvimento de uma solução - Envolvendo a procura de uma solução inovadora, útil e bem projectada. 

Programa de estudos
Componente Teórica

Componente Teórico-prática

Bibliografia

Matthew Miles and Michael Huberman. Qualitative Data Analysis, 2nd Edition. Sage, 1994. 

Hugh Beyer and Karen Holtzblatt. Contextual Design: Defining Customer-Centered Systems. Morgan Kaufmann, 1998. 

Bush, Rumbaugh and Jacobson. The Unified Modeling Language User Guide. Addiison-Wesley, 1999. 

Outros elementos de estudo
Avaliação

Avaliação final (Exame - 35%). Projecto (50%). Apresentaçao do projecto (10%). Presença nas aulas práticas (5%).

Língua de Ensino
Departamento

Dep. de Informática

Precedências
    Nenhuma
Cálculo
CódigoSiglaÁrea

13538

CAL

MAT

Objectivos

Obtenção de conhecimentos básicos de Cálculo Diferencial e Integral e suas aplicações

Programa de estudos
Componente Teórica

Componente Teórico-prática

Bibliografia

Sallas, Hille e Etgen, Calculus, One and several variables, John Wiley and Sons.

K.G. Binmore, Mathematical Analysis, Cambridge University Press.

C. Sarrico, Análise Matemática. Leituras e exercícios, Godiva.

Tom Apostol, Calculus, Vol.I.

Tom Apostol, Calculus, Vol.I

Outros elementos de estudo
Método de Ensino

Duas horas por semana de exposição da matéria teórica, juntamente com três horas semanais destinadas à resolução de exercícios.

Avaliação

A avaliação consiste num exame final com a duração de três horas.  Em alternativa, os alunos poderão realizar dois testes, tendo o 1º teste lugar a meio do semestre e sendo o 2º coincidente com a data do exame da 1ª época.

Língua de Ensino

Português.

Departamento
Precedências
    Nenhuma
Ciências da Linguagem e da Cognição
CódigoSiglaÁreaURL

26741

CLC

MISC

http://mocho.di.fc.ul.pt/p/CLC
Objectivos

Apresentar resultados e métodos fundamentais no âmbito do estudo e modelação da cognição e da linguagem humanas. Apoiar os alunos na compreensão e prática da Computação como uma das disciplinas da Ciência Cognitiva. Ampliar o âmbito da sua competência e cultura científicas para além da sua área científica e tecnológica específica

Programa de estudos
Componente Teórica

Sistema nervoso: estrutura do cérebro, representação neuronal da informação, especialização funcional. Percepção: processamento analítico e integrador, reconhecimento de padrões. Atenção: afunilamento serial, memória icónica. Representação do conhecimento baseada na percepção: teoria do código dual, imagens mentais, representação de informação verbal. Representação do conhecimento baseada no significado: categorização, redes conceptuais e proposicionais, enquadramentos. Memória: activação e intensidade de traços mnésicos, retenção, recuperação, estrutura associativa. Resolução de problemas: busca no espaço do problema, efeitos de fixação e incubação. Desenvolvimento de destrezas: lei exponencial da aprendizagem, aprendizagem táctica e estratégica. Raciocínio dedutivo e indutivo; raciocínio com quantificadores. Decisão: efeitos de enquadramento. Linguagem: compreensão e aquisição. Contribuição da Computação e IA para a Ciência Cognitiva.

Componente Teórico-prática

Bibliografia

Michel Habib, 1998, Bases Neurológicas dos Comportamentos, Lisboa: Climepsi Editores, ISBN 972-8449-59-3.

John Anderson, 2000, Cognitive Psychology and Its Implications, 5ª ed., Nova Iorque: Worth Publishers, ISBN 0-7167-3678-0.

James James, Walter Schneider e Amy Eschman, 2003, PsychMate Student Guide. Pittsburgh: Psychology Software Tools Inc, ISBN 1-880374-52-8.

Stuart Shieber (org.), 2004, The Turing Test: Verbal Behavior as the Hallmark of Intelligence, Londres: MIT Press, ISBN 0-262-69293-7.

Outros elementos de estudo

William Bechtel e George Graham (orgs.), 1999, A Companion to Cognitive Science, Oxford: Blackwell, ISBN 0-631-21851-3.

Jean-Pierre Changeux, 1983, O Homem Neuronal, Lisboa: Edições 70.

Steven Weisler e Slavko Milekic, 2000, Theory of Language, Cambridge: MIT Press.

Daniel Dennett, 2004, Freedom Evolves, Nova Iorque: Penguin Books.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Ciencias da Vida
CódigoSiglaÁrea

44348

CV

MISC

Objectivos

A Bioinformática pode ser definida como o armazenamento, o processamento, a análise, a previsão e a modelação de dados biológicos com a ajuda das ciências e tecnologias da computação. Consiste portanto numa abordagem integrada de métodos computacionais, matemáticos e estatísticos, e de conceitos biológicos, bioquímicos e fármaco-clínicos, destinada à manipulação e análise de informação biológica.Assim pretende-se que os alunos da licenciatura em Eng. Informática, a maioria dos quais sem qualquer conhecimento prévio de sistemas biológicos e/ bioquímicos, adquiram noções básicos acerca de:

• estrutura e função dos principais componentes moleculares
• natureza da informação biológica e sua transmissão.
• genómica e  proteómica
Programa de estudos
Componente Teórica

Introdução à Célula Diferentes Tipos de células e compartimentos intracelulares   Os Componentes Químicos das Células O átomo. Elementos existentes no seres vivos. Ligação Química. Moléculas relevantes para os seres vivos.  Estrutura e Função de Proteínas Introdução ao estudo de proteinas e péptidos. A ligação peptídica. Conformação nativa e folding. Ligações intra-moleculares Estrutura e Função de Lípidos Alguns exemplos de moléculas de lípidos dos seres vivos. Constituição de membranas lipídicas da célula. Estrutura e Função de Glúcidos Moléculas de glícidos com relevância biológica. Sua importância e função DNA e RNA Estrutura dos ácidos nucleícos. Replicação do DNA. A transcrição do RNA Do DNA à Proteina Introdução à síntese de proteínas Breves Noções de Tecnologia do DNA Engenharia genética: as metodologias do DNA recombinante. Sequênciação de ácidos nucleicos. A reacção em cadeia da polimerase – PCR.  

Componente Teórico-prática

Realização de series de exercícios que permitam a consolidação dos conceitos básicos ministrados nas aulas teóricas. Elaboração e apresentação de uma monografia sobre um tema relacionado com os objectivos da disciplina.

Componente Prática

n/a

Bibliografia

C. M. Dobson, J. A. Gerrard, Pratt "Foundations of  Chemical Biology", Oxford Science Publications . A. Quintas, A. P. Freire, M. J. Alpern (2008) ‘Bioquímica- organização molecular da vida, Lidel, Lisboa.

Outros elementos de estudo

Ficheiros pdf das aulas teóricas

Método de Ensino

Aulas teóricas e teorico-práticas

Avaliação

• 70% componente teórica+ 30% componente teórico- prática

Língua de Ensino

Português

Departamento
Precedências
    Nenhuma
Computação Gráfica
CódigoSiglaÁrea

26733

CG

MC

Objectivos

Os alunos terão contacto com os princípios e técnicas fundamentais básicos da Computação Gráfica, desde os aspectos geométricos até ao fotorealismo.
Os alunos saberão identificar um conjunto importante de técnicas propostas para resolver os principais desafios da Computação Gráfica. Algumas destas técnicas são concretizadas pelos alunos.

Programa de estudos
Componente Teórica

Aplicações da Computação Gráfica. Transformações geométricas 2 D e 3D. Algoritmos de recorte e de eliminação de invisíveis. Projecções. "Pipeline" de visualização. Imagens realistas. Modelos de iluminação locais e globais. Métodos flat, de Gouraud e de Phong. Ray-tracing. Introdução à teoria da cor. Anti-aliasing. Texturas. Introdução a alguns tópicos avançados.

Componente Teórico-prática

Transformações 2D e 3D. Transformação clipping window-viewport. Introdução ao OpenGL.
Estudo de diversos aspectos relacionados com imagens realistas utilizando vários exemplos de cenas 3D em VTK.

Bibliografia

Foley, van Dam, Feiner, Hughes, Phillips, Introduction to Computer Graphics, Addison-Wesley, 1994

Donald Hearn, M. Pauline Baker, “Computer Graphics using OpenGL”, Addison-Wesley, 3rd edition 2004

Edwrad Angel, OpenGL: A Primer, 2nd edition, Addison-Wesley,2005

Edward Angel, “Interactive Computer Graphics”, Addison-Wesley, 2006

AlanWatt, “3D Computer Graphics”, Addison-Wesley, 3rd edition 2000

Will Schroeder, Ken Martin and Bill Lorensen, The Visualization Toolkit, 3rd edition, Kitware, Inc., ISBN 1-930934-12-2

Outros elementos de estudo

Guiões das aulas

Método de Ensino

Aulas presenciais em sala convencional e em laboratório.

Avaliação

Exame e dois trabalhos

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Desenvolvimento Centrado em Objectos
CódigoSiglaÁrea

26727

DCO

CTP

Objectivos

Por um lado, pretende-se que o aluno seja capaz de analisar os requisitos de um sistema e conceber (e justificar) desenhos centrados em objectos que não só satisfaçam esses requisitos como sejam robustos e suportem a evolução. Por outro lado, pretende-se que o aluno seja capaz de escrever programas OO que implementem correctamente os desenhos. Em particular, o aluno deve ser capaz de, em Java, usar subclasses, classes abstractas e interfaces.

Programa de estudos
Componente Teórica

Análise e Desenho OO: Análise de requisitos e modelação do domínio. Desenho de sistemas de classes orientado pela atribuição de responsabilidades. Padrões de desenho. (A linguagem adoptada é o UML). Programação OO: herança, redefinição, sobrecarga, polimorfismo, ligação dinâmica, verificação de tipos, abstracção, reflexão, carregamento de classes, etc. Reutilização através do uso de APIs (Application User Interface).

Componente Teórico-prática

Bibliografia

Craig Larman, Applying UML and patterns, an introduction to Object-oriented analysis and design, Prentice-Hall, 2002, ISBN 0-13-092569-1.
K. Arnold, J.Gosling, The JAVA Programming Language, Third edition, Addison-Wesley 2000.

Outros elementos de estudo
Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Elementos de Álgebra Linear
CódigoSiglaÁreaURL

13540

ALG

MAT

http://mocho.di.fc.ul.pt/p/ALG
Objectivos

Formação básica em Álgebra Linear.

Programa de estudos
Componente Teórica

1. Matrizes e Sistemas de equações lineares

Operações com matrizes. Matrizes em forma de escada e em forma de escada reduzida.Matrizes invertíveis.Operações elementares.
Sistemas de equações lineares: definição, exemplos e métodos de resolução. Matriz de um sistema. Condensação ou eliminação de Gauss. Classificação e resolução de sistemas a partir das suas matrizes.


2.Determinantes
Determinantes e suas propriedades. Teorema de Laplace. Caracterização das matrizes invertíveis.Regra de Cramer.


3. Espaços vectoriais
Definição e exemplos de espaços e subespaços vectoriais.O espaço Rn. Combinações lineares, independência linear, geradores, bases e dimensão. Intersecção de espaços.


4. Aplicações lineares
Definição e exemplos. Caracterização das aplicações lineares de m para n, matriz de uma aplicação linear em relação a duas bases. Matriz mudança de base. Núcleo e imagem de uma aplicação linear .


5. Valores e vectores próprios
Definições e propriedades. Diagonalização de matrizes.

Componente Teórico-prática

Exercícios sobre a matéria teórica.

Bibliografia

H. Anton & C. Rorres, Elementary Linear Algebra - Applications Version, John Wiley and Sons, 2000
I. Cabral, C. Saiago, C. Perdigão, Álgebra Linear, Escolar Editora, 2008
R. Fernandes & F. Rodrigues, Álgebra Linear e Geometria Analítica, Sebenta de ALGA da Faculdade de Ciências e Tecnologia da UNL, 2008
E. Giraldes, V. H. Fernandes & P. Marques Smith, Álgebra Linear e Geometria Analítica, McGraw-Hill de Portugal, 1995
L. T. Magalhães, Álgebra Linear como Introdução à Matemática Aplicada, Texto Editora, 2004
A. Monteiro, Álgebra Linear e Geometria Analítica, McGraw-Hill de Portugal, 2001
G. Strang, Introduction to Linear Algebra, Wellesley-Cambridge Press, 1998

Outros elementos de estudo
Método de Ensino

Aulas teóricas expositivas e teórico-práticas de resolução de exercícios e apresentação de resoluções.

Avaliação

Nesta disciplina, há duas alternativas de avaliação:

1. Exame final escrito, eventualmente seguido de um exame oral.
2. Dois testes escritos:
2.1. 1º teste, a realizar durante o semestre.
2.2. 2º teste a realizar na 1ª data da época normal de exames.



Para os restantes alunos a aprovação ou não na disciplina e, em caso de aprovação, a classificação final dependem da sua prestação no conjunto da(s) prova(s) escrita(s) e eventualmente de uma prova oral.

Língua de Ensino

Português

Departamento
Precedências
    Nenhuma
Engenharia do Conhecimento
CódigoSiglaÁreaURL

26734

EC

MC

http://mocho.di.fc.ul.pt/p/EC
Objectivos

Familiarização com linguagens e ferramentas associadas à web semântica. Aplicação de métodos e técnicas da Inteligência Artificial à concepção e desenvolvimento de sistemas baseados em conhecimento, nomeadamente sistemas periciais e sistemas de apoio à decisão.

Programa de estudos
Componente Teórica

1. Sistemas baseados em conhecimento:
- Introdução e conceitos gerais
- Sistemas de regras de produção
- Evolução histórica e casos paradigmáticos
- Web semàntica e ontologias
- Linguagens e ferramentas de representação de ontologias
- Tipos de tarefas de análise e de síntese
- Métodos genéricos de resolução de alguns tipos de tarefas
2. Conhecimento e Raciocínio:
- Sistemas de manutenção da verdade
- Raciocínio não monótono
- Redes de crenças Bayesianas

Componente Teórico-prática

Representação de conhecimento na linguagem de regras de produção Jess. Representação de ontologias em OWL, utilizando a sintaxe abstracta. Uso da ferramenta Protégé-OWL para construção e manipulação de ontologias. Representação de regras associadas a ontologias, utilizando a linguagem SWRL. Concepção de aplicações em Jess e em Java, recorrendo à Protégé-OWL API.
Resolução de exercícios sobre sistemas de manutenção da verdade, hipótese do mundo fechado, lógicas de omissão e redes de crenças bayesianas.

Bibliografia

- A Semantic Web Primer, Grigoris Antoniou and Frank van Harmelen, MIT Press, 2004.
- Introduction to Expert Systems - Third Edition, Peter Jackson, Addison Wesley, 1999.

Outros elementos de estudo

- Notas das aulas teóricas.
- Exercícios resolvidos.
- Exemplos de código de pequenos programas.

Avaliação

avaliação periódica (2 mini-testes e dois projectos) e avaliação final ( exame )

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
Física A
CódigoSiglaÁrea

34706

FIS

FIS

Objectivos

Apresentar os conceitos e princípios fundamentais do Electromagnetismo. Os alunos deverão ter a capacidade de compreender e manipular esses conceitos e saber aplicá-los à resolução de problemas. As aulas teórico-práticas serão utilizadas para a discussão e resolução de problemas sobre os temas abordados nas aulas teóricas.

Programa de estudos
Componente Teórica

1. Grandezas Físicas.
Operações com Vectores.
2. Campo Eléctrico – Carga eléctrica. Lei de Coulomb. Campo eléctrico.
3. Lei de Gauss – Fluxo eléctrico. Lei de Gauss. Aplicações.
4. Potencial Eléctrico – Potencial eléctrico e energia potencial
5. Condensadores e Dieléctricos – Capacidade. Associação de condensadores. Energia armazenada nos condensadores.
6. Corrente Eléctrica e Resistência – Corrente eléctrica. Resistência. Lei de Ohm. Efeito de Joule. Potência eléctrica. Supercondutores.
7. Circuitos de Corrente Contínua – Força electromotriz. Associação de resistências. Leis de Kirchhoff. Circuitos RC. Instrumentos de medida.
8. Campo Magnético – Campo magnético. Força magnética sobre cargas eléctricas em movimento.
9. Fontes de Campos Magnéticos - Lei de Biot-Savart. Lei de Ampère. Fluxo magnético. Lei de Gauss do campo magnético. Magnetismo na matéria.
10. Lei de Faraday – Indução magnética. Lei de Faraday. Lei de Lenz. Aplicações.
11. Ondas Electromagnéticas – Características das ondas electromagnéticas. Transmissão da energia electromagnética
12. Circuitos de Corrente Alternada – Corrente alternada. Transformadores.
13. Semicondutores – Conceitos básicos. Aplicações

Componente Teórico-prática

Nas aulas teórico-práticas resolvem-se problemas sobre a matéria dada nas aulas teóricas.

Bibliografia

•  Raymond A. Serway e John W. Jewett, Jr., Physics for Scientists and Engineers with Modern Physics, Thomson, Brooks/Coles, qualquer edição.
•  Narciso G. and A. Damask, Physics for Computer Science Students, Springer Verlag, 2nd. Ed., 1991.
•  Fishbane, Gasiorowicz and Thornton, Physics for Scientists and Engineers Prentice Hall, N.J., 1993.

Outros elementos de estudo

Página da disciplina de Física A no servidor moodle da FCUL

Método de Ensino

Aulas teóricas, que se dedicam à exposição da matéria, e aulas teórico-práticas, que são utilizadas para a resolução e discussão de séries de problemas sobre a matéria dada nas aulas teóricas.

Avaliação

• Avaliação por exames de frequência:
3 testes durante semestre (opcionais).

• Avaliação final:
Exame escrito

Língua de Ensino

Português

Departamento
Precedências
    Nenhuma
Física Experimental
CódigoSiglaÁrea

34707

FE

FIS

Objectivos

O curso de Física Experimental desenvolve conceitos básicos mas fundamentais de experimentação, análise de dados, princípios físicos que têm aplicações na Electrónica tanto analógica como digital, assim como de propagação e digitalização de sinais. Estes conceitos são fundamentais aos alunos de EI para entenderem a impementação real, em componentes electrónicos, e o funcionamento (perda de sinal em cabos, digitaização, fontes de alimentação, codificação digital e processadores, etc.) que utilizam.

Programa de estudos
Componente Teórica

Os principais tópicos incluem:
- Análise dimensional, incertezas, cálculo e análise de erros.
- Aquisição de dados e representação gráfica com recurso a folha de cálculo.
- Utilização de equipamentos de medida: multímetro, osciloscópio e interfaces analógico-digitais.
- Utilização de equipamentos electrónicos como fontes de tensão, gerador de sinais. Digitalizador de sinais.
- Estudo de componentes básicos electrónicos como a resistência óhmica, díodos, LED, condensador, indutor e transformador.
- Circuitos simples: RC, CR, RL e LR.
- Rectificação de sinais.
- Conceitos de vibração e ondas. Sinais periódicos.
- Digitalização de sinais.
- Estudo das Leis de Kirchoff.
- Ondas electromagnéticas. Transmissão de sinais em cabos coaxiais.
- Circuitos com portas lógicas e álgebra de Boole.

Componente Teórico-prática

Componente Prática

Os trabalhos experimentais incluem:
- Aquisição e análise de dados.
- Estudo das Leis dos circuitos. Lei de Ohm.
- Utilização de equipamentos de medida: multímetro, osciloscópio e interfaces analógico-digitais.
- Utilização de equipamentos electrónicos como fontes de tensão, gerador de sinais.
- Estudo de componentes básicos electrónicos como a resistência óhmica, díodos, LED, condensador, indutor e transformador.
- Circuitos simples: RC, CR, RL e LR. Transformadores.
- Díodos e Rectificação de sinais.
- Conceitos de vibração e ondas. Análise de sinais periódicos. Digitalização de sinais.
- Ondas electromagnéticas. Transmissão de sinais em cabos coaxiais.
- Implementação de circuitos com portas lógicas e álgebra de Boole.

Bibliografia

- Física Experimental- uma Introdução, M. C. Abreu, L. Matias and L. F. Peralta, Editorial Presença, 1994.
- Introdução aos Circuitos Eléctricos e Electrónicos, Manuel de Medeiros Silva, Fundação Calouste Gulenkian, 1996.
- Introdução à Electrónica, João Sousa Lopes, LFEN, 1979.
- Electronics, Circuits & Devices, Ralph J. Smith, N. Y. , 3th.Ed., 1987.

Outros elementos de estudo

- http://moodle.fc.ul.pt/course/view.php?id=35
- Practical Physics, G. L. Squires, Cambridge University Press , 4th Ed., Cap.13, 2000.
- Physics for Computer Science Students, Narciso G., A. Damask, Springer Verlag, 2nd. Ed., 1991.
- Physics for Scientists and Engineers, Fishbane, Gasiorowicz and Thornton, Prentice Hall, N.J., 1993.

Método de Ensino

Discussão e execução dos trabalhos experimentais.
Explanação e explicação das matérias em causa.
Uso de novas tecnologias.
Exige muita atenção, concentração e empenho dos estudantes.

Avaliação

A avaliação é constituída pelos seguintes elementos:

a- Participação efectiva nas aulas práticas.
b- Entrega dos respectivos relatórios para avaliação
c- Realização de testes escritos efectuados durante o semestre.
d- Exame escrito final.

Língua de Ensino

Português

Departamento
Precedências
    Nenhuma
Informática na Óptica do Utilizador
CódigoSiglaÁrea

93102

IOU

FCSE

Objectivos

Ensinar aos alunos os fundamentos das Tecnologias de Informação e da Comunicação (TIC) e ensinar as práticas e modelos de uso que são relevantes na sua qualidade de estudantes do ensino superior e para a sua futura vida profissional.

Programa de estudos
Componente Teórica

1. Apresentação de conceitos fundamentais em TICs - Informática, Telecomunicações, Media e Convergência Tecnológica. 2. Fundamentos e uso da Internet. Ferramentas de comunicação individual e em grupo. Ferramentas de pesquisa na Internet - Breve História da Internet. Estrutura da Internet. Aplicações da Internet e Infraestrutura Internet da FCUL. 3. Princípios legais e éticos de uso das TIC. A sociedade da Informação - Analisar os principais aspetos legais que devem ser tomados em consideração no uso dos sistemas informáticos e das redes de telecomunicações. Abordar os aspetos éticos a ter em consideração ao usar as tecnologias da informação no contexto da Universidade. 4. Introdução ao uso da Biblioteca Científica Digital- Apresentação da Biblioteca do Conhecimento. O Portal de acesso e Modos de pesquisa. 5. Aplicações Informáticas de uso comum- Processador de texto. Folha de cálculo e gestão de dados. Gestor de apresentações e E-mail

Componente Teórico-prática

Componente Prática

Os conteúdos suportam-se nas principais ferramentas que compõem o Office da Microsoft. Destas ferramentas temos como principias capacidades que se pretendem potenciar: Word, Excel, PowerPoint e Outlook.

Bibliografia

Microsoft Office 2010 para todos Nós, Sérgio Sousa e Maria José SousaColecção Guias Práticos – Informática,  Porto Editora. Word e Excel XP e 2010 Depressa & Bem, Lima D`Oliveira. 

Outros elementos de estudo


Aulas pré-gravadas no site da cadeira.

Método de Ensino

O modelo de ensino baseia-se no paradigma de "aprender pela prática", com um número muito reduzido de aulas presenciais, onde se apresenta a disciplina e se tiram dúvidas, em estudo assistido por computador (eLearning) e através do curso Microsoft Office XP step by step e auto-estudo dos alunos.

Avaliação

Através de teste  automatizado, trabalho individual com apresentação e entrevista individual. A nota final será a média das notas do teste e do trabalho prático. A aprovação na disciplina implica classificações superiores a 60% em cada uma das partes.

Língua de Ensino

Português

Departamento
Precedências
    Nenhuma
Inglês
CódigoSiglaÁrea

93101

ING

FCSE

Objectivos
Programa de estudos
Componente Teórica

Componente Teórico-prática

Bibliografia
Outros elementos de estudo
Língua de Ensino
Departamento
Precedências
    Nenhuma
Interfaces Pessoa Máquina
CódigoSiglaÁreaURL

26728

IPM

SI

http://mocho.di.fc.ul.pt/p/IPM
Objectivos

Esta disciplina tem como objectivos apresentar os conceitos, modelos e técnicas fundamentais associados à interacção entre pessoas e máquinas. Apresenta-se uma panorâmica histórica do desenvolvimento de interfaces e dispositivos de interacção. Discutem-se teorias, modelos e heurísticas de suporte ao processo de design de interfaces pessoa-máquina. Ensinam-se métodos e técnicas de engenharia de usabilidade, com ênfase nos mecanismos de avaliação.

Programa de estudos
Componente Teórica

Introdução: O que é a IPM e quais os seus componentes;
Aspectos Humanos: Percepção e Representação; Atenção e Memória; Cognição e Modelos Mentais; Metáforas da Interface e Modelos Conceptuais;
Tecnologias: Entradas e Saídas; Estilos de Interacção; Sistemas de Janelas; Suporte ao Utilizador; Panorâma Histórico;
Design Centrado no Utilizador: Princípios e Métodos; Levantamento de Requisitos e Análise de Tarefas; Design Estruturado; Engenharia da Usability;
Suporte ao Design e Orientações: Normas e Métricas; Lógica de Design; Prototipagem; Ferramentas de Suporte; Design Gráfico, Design de Websites; Design Universal;
Avaliação: O Papel da Avaliação, Avaliação Interpretativa e Preditiva; Avaliação por Peritos; Dados de Utilização, Experimentação e Avaliação de Desempenho.

Componente Teórico-prática

Realização de um projecto de desenvolvimento de uma aplicação interactiva, seguindo um processo de design centrado no utilizador, em três iterações. São abordados os tópicos: Análise e Design; Criatividade; Análise Cognitiva de Tarefas: GOMS e KLM; Prototipagem de baixa e alta fidelidade; HTML e JavaScript; Avaliação de Usabilidade em diferentes fases: Feiticeiro de OZ; Avaliação por Peritos; Avaliação por Observação, Entrevista e Questionário; Apresentações dos Resultados no final de cada iteração.

Bibliografia

Alan Dix, et al., Human Computer Interaction, 3rd Edition, Prentice Hall, 2003, ISBN 0130461091.

Outros elementos de estudo

Jenny Preece et al., Human Computer Interaction, Addison Wesley, 1994, ISBN 0-201-62769-8.
Ben Shneiderman, Designing the User Interface, 3th Edition, Prentice Hall, 1998.
Jakob Nielsen, Usability Engineering, Academic Press, 1994, ISBN 0125184069.
Jakob Nielsen, Designing Web Usability, New Riders, 2000, ISBN 156205810X.
Don Norman, The Design of Everyday Things, New York: Basic Books, 2002.

Método de Ensino

aulas teóricas de exposição de matéria
aulas teórico-práticas de apoio ao projecto e exercícios da matéria exposta nas aulas teóricas

Avaliação

projecto
exame
participação

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Introdução à Inteligência Artificial
CódigoSiglaÁrea

26732

IIA

MC

Objectivos

Pretende-se que os alunos aprendam como as técnicas de inteligência artificial (IA) se situam, hoje em dia, na informática em geral com o objetivo de dota-la de mais importância e de suportar serviços inovadores e de valor acrescentado para os clientes das empresas. A IA é também um vetor de intervenção na resolução dos problemas complexos que absorvem as organizações.

Programa de estudos
Componente Teórica

Programação lógica, Prolog, representação do conhecimento, resolução de problemas, algoritmos de jogos, procura, raciocínio, planeamento, agente inteligentes.

Ver Portefólio da disciplina na página Moodle.

Componente Teórico-prática

Componente Prática

Estudo através de exercícios da representação, pesquisa, planeamento, jogos e agentes.

Bibliografia

p.MsoNormal, li.MsoNormal, div.MsoNormal { margin: 0cm 0cm 0.0001pt; font-size: 12pt; font-family: "Times New Roman"; }div.Section1 { page: Section1; }

Livro Base:

BLACKBURN, P., BOS, J. E STRIEGNITZ, K. – Learn Prolog Now!, College Publications, Volume 7, 2006.

RUSSELL, S. e NORVIG, P. – Artificial Intelligence: a modern approach, Prentice-Hall, 1stedition, 1995; 2ndedition, paperback edition, 2003; 3rdedition, 2010.

 

Outros livros:

COELHO, H. – Inteligência Artificial em 25 lições, Fundação Calouste Gulbenkian, 1995.

COSTA, E. e SIMÕES, A. – Inteligência Artificial, Fundamentos e Aplicações, FCA, 2004; 2ª edição, 2008.

NILSSON, N. - Artificial Intelligence. a New Synthesis, Morgan Kaufmann, 1998.

Outros elementos de estudo


E. Costa e A. Simões, Inteligência Artificial, Fundamentos e Aplicações, FCA, 2004.

Ver Portefólio da disciplina na página Moodle.

Método de Ensino

Aulas teóricas, teórico-práticas e de laboratório. Sessões de discussão. Realização de competição entre os grupos de alunos.

Ver Portefólio da disciplina na página Moodle.

Avaliação

Projecto e exame.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
Introdução à Investigação Operacional
CódigoSiglaÁrea

22736

IIO

MAPL

Objectivos

Introdução de diversos problemas, modelos e técnicas próprios da
Investigação Operacional

Programa de estudos
Componente Teórica

Introdução às aplicações e às técnicas da Investigação Operacional. Apresentação de vários problemas em áreas diversas áreas. Resolução de casos simples.
Resenha histórica.

Modelação. Obtenção e avaliação de soluções.

Introdução à Programação Matemática (Linear, Não Linear e Inteira). Resolução gráfica e Análise de pós-optimização em Programação Linear – Estudo gráfico.

Introdução à Teoria dos Grafos. Definições e conceitos básicos. Problemas de caminho Óptimo. Algoritmos para grafos sem circuitos. Modelação de problemas como caminho óptimo num grafo.

Planeamento de Actividades. Representação de um projecto – redes com actividades nos arcos. Introdução ao Método CPM - determinação do caminho crítico numa rede de actividades. Faseamento temporal das actividades e controle de projectos.

Problemas de árvores de suporte óptimas em grafos não orientados.

Componente Teórico-prática

Complemento da componente teórica com a resolução de exercícios em que é dado particular ênfase aos aspectos da construção dos modelos e a algumas técnicas para a sua resolução.

Bibliografia

HILLIER, F. S.; LIEBERMAN, G. J. “Introduction to Operations Research” (8th edition), McGraw-Hill, 2005.

TAHA, H.A. “Operations Research: An Introduction”, (6th edition), Macmillan & Collier, New York, 1997.

??

Outros elementos de estudo

Slides das aulas teóricas (slides of the lectures).

Método de Ensino

Aulas teóricas e teórico-práticas.

Avaliação

Exame final.

Língua de Ensino

Português.

Departamento

Dep. de Estatística e Investigação Operacional

Precedências
    Nenhuma
Introdução à Programação
CódigoSiglaÁrea

26722

IP

CTP

Objectivos

Os principais objectivos da disciplina são familiarizar o aluno com o paradigma de programação imperativa e o pensamento algorítmico/computational. Mais concretamente, pretende-se que o aluno no final do semestre seja capaz de:

*Desenvolver pequenos programas imperativos para resolver problemas simples de programação.
* Implementar estruturas de dados simples através de classes java.
* Utilizar classes fornecidas por terceiros para desenvolver programas mais complexos.
* Tirar proveito da biblioteca standard do java, nomeadamente das classes Math, String, StringBuilder, Scanner, BufferedReader e BufferedWriter.
* Aplicar métodos de programação em larga escala, nomeadamente abstracção procedimental e abstracção de dados.

Programa de estudos
Componente Teórica

Conceitos fundamentais de programação imperativa: variáveis, atribuição, sequenciação, alternativa, iteração, gestão de memória.
Abstracção procedimental e abstracçaõ de daos.
Conceitos básicos de programação por objectos: classes, objectos, atributos, métodos.
Metodologia de programação em larga escala e desenho por contrato.

Componente Teórico-prática

Técnicas e metodologias de desenvolvimento de programas.

Componente Prática

Desenvolvimento de programas em laboratório. Ferramentas de apoio à programação. Teste e debugging.

Bibliografia

Java software solutions: foundations of program design. J.Lewis & W.Loftus. 6a Edição. 2008

Outros elementos de estudo
Avaliação

Exame, projecto e avaliação continua.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Introdução aos Sistemas Computacionais
CódigoSiglaÁreaURL

26721

ISC

OSC

http://mocho.di.fc.ul.pt/p/ISC
Objectivos

Pretende-se que o aluno adquira uma formação sólida e rigorosa em termos da arquitectura dos computadores actuais, no seu nível de hardware, e no modo como servem o software, obtendo no global a computação. Estudam-se diferentes plataformas de hardware e o modo como se estruturam sobre ele as várias camadas funcionais, e.g. sistema operativo e aplicações

Programa de estudos
Componente Teórica

Sistemas de numeração. Modelos computacionais e de máquina virtual. Organização e Arquitectura de Computadores. Processador, memória e dispositivos de entrada/saída. Microprocessadores CISC. Exemplo de microprocessador CISC. Visão integrada: máquina (PC), sistema operativo, programação (assembly, linguagem de alto nível). Rudimentos dos mecanismos de suporte: memória virtual, protecção, interrupções, mudança de contexto. Processadores RISC e arquitecturas de estações de trabalho. Arquitectura de Sistemas Embebidos.

Componente Teórico-prática

Sistemas de Numeração. Linguagem Assembly (GNU Assembler) para Processadores 80x86. Programação em Linguagem Assembly. Utilização do Depurador Visual DDD. Interrupções e chamadas de sistema. Cálculo de vírgula flutuante na arquitectura IA-32.

Bibliografia

Andrew Tanenbaum, Structured Computer Organization, Prentice Hall, 5ª edição, 2005.

Outros elementos de estudo

Guião das Aulas Teóricas de ISC, José Rufino, DI-FCUL, 2007.

Guião das Aulas Teórico-Práticas de ISC - Sistemas de Numeração (Colectânea de Fascículos - 2ª edição), M. Correia, A. Casimiro, M. Calha, J. Rufino, DI-FCUL, Outubro 2007.

Guião das Aulas Teórico-Práticas de ISC - Introdução ao Assembly (Colectânea de Fascículos - 2ª edição), M. Correia, A. Casimiro, M. Calha, J. Rufino, DI-FCUL, Outubro 2007.

Caderno de Exercícios de ISC (5ª edição), Teresa Chambel, Dulce Domingos, et.al, DI-FCUL, Outubro de 2005

Assembly para o Assemblador da GNU - Arquitectura Intel IA-32, Filipe Araújo, DI-FCUL, Outubro 2005

Método de Ensino

Aulas teóricas: exposição da matéria em sala de aula, complementada quando julgado apropriado com outros elementos pedagógicos, como por exemplo, realização de jogos suportados na matéria leccionada, projecção de pequenos vídeos ilustrativos da importância dos temas leccionados, etc. Procura-se assim estimular o interesse entre os alunos e a interacção entre docente e discentes.

Aulas teórico-práticas e de laboratório: realização de exercícios teórico-práticos e laboratoriais segundo um guião publicado antecipadamente. Utilização de métodos interactivos que fomentam a discussão com os alunos de uma solução base e de possíveis alternativas.

Avaliação

Exercicios de programação Assembly em laboratório. Testes parcelares ao longo do semestre. Exame final.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Introdução às Probabilidades e Estatística
CódigoSiglaÁrea

22701

IPE

MAPL

Objectivos

Pretende-se que o aluno adquira os conceitos fundamentais de Probabilidades e Estatística, que constituem uma ferramenta indispensável à decisão em situações de incerteza, presente em muitas áreas da Informática. O aluno deve demonstrar capacidade de resolução de problemas de índole prática.

Programa de estudos
Componente Teórica

Probabilidade de um acontecimento e suas propriedades; acontecimentos independentes; probabilidade condicional; teorema de Bayes. Variáveis aleatórias: função de distribuição; v.a. discreta (função massa de probabilidade); v.a. contínua (função densidade de probabilidade); par aleatório discreto; variáveis aleatórias independentes; características populacionais; algumas distribuições importantes (Binomial, Poisson, Geométrica, Hipergeométrica, Uniforme, Exponencial, Normal). Distribuição de amostragem da média para populações Normais e para populações não Normais (Teorema Limite Central). Estatística Descritiva: representações gráficas: histograma, caule-e-folhas, Box-plot; principais características amostrais. Inferência Estatística: introdução à estimação - estimador pontual e intervalo de confiança; introdução aos testes de hipóteses.

Componente Teórico-prática

Aplicação de modelos probabilísticos e métodos estatísticos na resolução de problemas de índole prática e teórica-prática, propostos sob a forma de exercícios.

Bibliografia

Hogg, R. & Tanis, E., Probability and Statistical Inference, Prentice-Hall, 7th ed., 2005.

Montgomery, D. C. & Runger, G. C., Applied Statistics and Probability for Engineers. 2nd edition, Wiley, 1999. 

Mood, A. M., Graybill, F. A. & Boes, D., Introduction to the Theory of Statistics, 3rd edition, McGraw-Hill, 1974.

Murteira, B., Ribeiro, C.S., Silva, J.A. e Pimenta, C., Introdução à Estatística, 2ª edição, McGraw-Hill de Portugal, 2008.

Reis, E., Estatística Descritiva, 7ª edição, Edições Sílabo, 2009.

Ross, S., A First Course in Probability, 8th edition, Prentice-Hall, 2008.

Ross, S. M., Introduction to Probability and Statistics for Engineers and Scientists, 3rd edition, WIley, 2004.

Outros elementos de estudo

Slides das aulas teóricas.

Método de Ensino

Aulas teóricas e teórico-práticas.

Avaliação

Exame final.

Língua de Ensino

Português

Departamento

Dep. de Estatística e Investigação Operacional

Precedências
    Nenhuma
Laboratórios de Programação
CódigoSiglaÁrea

26724

LP

MISC

Objectivos

Facultar aos alunos uma prática experimental autónoma em programação. 

Programa de estudos
Componente Teórica

Componente Teórico-prática

Bibliografia

Java: Software Solutions, Foundations of Program Design, Fourth edition. Lewis e Loftus. Addison-Wesley, 2004. ISBN 0-321-26979-9. Website. Este livro encontra-se à venda na Associação de Estudantes.
Uma Questão de Estilo, Elementos de Estilo Java, Vasco Vasconcelos, Setembro 2004. Disponível online
Programação por Contrato na Disciplina de Introdução à Programação, Isabel Nunes, Novembro 2004. Disponível online.
Java: Introduction to Problem Solving and Programming, Fifth Edition. Savitch e Carrano. Pearson International Edition, 2008. ISBN 0-13-135451-5. Website.
Objects, Abstraction, Data Structures and Design Using Java, Version 5.0. Koffman e Wolfgang. Wiley & Sons, 2005. Website.
The Elements of Java Style, Vermeulen, Ambler, Bumgardner, Metz, Misfeldt, Shur e Thompson. Cambridge University Press, 2000. ISBN: 0-521-77768-2. Website.

Outros elementos de estudo

Java: Software Solutions, Foundations of Program Design, Fourth edition. Lewis e Loftus. Addison-Wesley, 2004. ISBN 0-321-26979-9. Website. Este livro encontra-se à venda na Associação de Estudantes.
Uma Questão de Estilo, Elementos de Estilo Java, Vasco Vasconcelos, Setembro 2004. Disponível online
Programação por Contrato na Disciplina de Introdução à Programação, Isabel Nunes, Novembro 2004. Disponível online.
Java: Introduction to Problem Solving and Programming, Fifth Edition. Savitch e Carrano. Pearson International Edition, 2008. ISBN 0-13-135451-5. Website.
Objects, Abstraction, Data Structures and Design Using Java, Version 5.0. Koffman e Wolfgang. Wiley & Sons, 2005. Website.
The Elements of Java Style, Vermeulen, Ambler, Bumgardner, Metz, Misfeldt, Shur e Thompson. Cambridge University Press, 2000. ISBN: 0-521-77768-2. Website.

Método de Ensino

Aulas em Laboratório. Apresentação do trabalho com uma semana de antecedência. Implementação dos projetos semanais sem consulta.

Avaliação

Média das avaliações dos trabalhos.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
Linguagens Formais e Autómatos
CódigoSiglaÁrea

26729

LFA

CTP

Objectivos

Introdução a conceitos básicos da teoria da computação, relevantes para se definir modelos abstractos de computação a partir dos quais se pode estabelecer resultados relativos a computabilidade e complexidade. Introdução a conceitos básicos da teoria das linguagens formais, relevantes para se estabelecer linguagens de programação.

Programa de estudos
Componente Teórica

Questões abordadas pela teoria da computação. Implicações práticas e aspectos fundacionais. Autómatos finitos. Definição formal e representação diagramática. Definição de computação. Palavra aceite e linguagem reconhecida por um autómato. Linguagens regulares. Exemplos. Fecho por união. AF não deterministas. Exemplos. Árvores de transição. Definição formal de AFN e de computação por AFN. Equivalência AFD e AFN. Fecho da classe das linguagens regulares por união, concatenação e operação estrela. Expressões regulares. Operações de união, concatenação e estrela para expressões regulares. Expressões regulares descrevem linguagens regulares. Linguagens regulares são descritas por expressões regulares. Lema de Bombeamento. Aplicação do Lema de Bombeamento. Gramáticas livres de contexto. Derivação. Árvore sintáctica. Palavra e linguagem gerada. Ambiguidade. Equivalência entre APs e GLCs. Lema de bombeamento para LLCs. Aplicação do Lema de Bombeamento para mostrar a não pertença à classe das LLCs: o caso das linguagens a^nb^nc^n, a^ib^jc^l (0Grafo de uma gramática. Parser descendente. Eliminação da recursividade à esquerda. Forma Normal de Greibach. Redução. Parser ascendente. Máquinas de Turing. Exemplos chave de Máquinas de Turing. Variantes de Máquinas de Turing e equivalência a modelo padrão. Máquinas enumeradoras. Máquinas de Turing não-deterministas. Codificação da entrada em máquinas de Turing. Resultado fundamental da teoria da computação. A noção de máquina de Turing universal. Tese de Church-Turing. Indecidibilidade, Complexidade e hierarquia de complexidade (de Chomsky): introdução.

Componente Teórico-prática

Questões abordadas pela teoria da computação. Implicações práticas e aspectos fundacionais. Autómatos finitos. Definição formal e representação diagramática. Definição de computação. Palavra aceite e linguagem reconhecida por um autómato. Linguagens regulares. Exemplos. Fecho por união. AF não deterministas. Exemplos. Árvores de transição. Definição formal de AFN e de computação por AFN. Equivalência AFD e AFN. Fecho da classe das linguagens regulares por união, concatenação e operação estrela. Expressões regulares. Operações de união, concatenação e estrela para expressões regulares. Expressões regulares descrevem linguagens regulares. Linguagens regulares são descritas por expressões regulares. Lema de Bombeamento. Aplicação do Lema de Bombeamento. Gramáticas livres de contexto. Derivação. Árvore sintáctica. Palavra e linguagem gerada. Ambiguidade. Equivalência entre APs e GLCs. Lema de bombeamento para LLCs. Aplicação do Lema de Bombeamento para mostrar a não pertença à classe das LLCs: o caso das linguagens a^nb^nc^n, a^ib^jc^l (0Grafo de uma gramática. Parser descendente. Eliminação da recursividade à esquerda. Forma Normal de Greibach. Redução. Parser descendente. Máquinas de Turing. Exemplos chave de Máquinas de Turing. Variantes de Máquinas de Turing e equivalência a modelo padrão. Máquinas enumeradoras. Máquinas de Turing não-deterministas. Codificação da entrada em máquinas de Turing. Resultado fundamental da teoria da computação. A noção de máquina de Turing universal. Tese de Church-Turing. Indecidibilidade, Complexidade e hierarquia de complexidade (de Chomsky): introdução.

Componente Prática

n/a

Bibliografia

Manual:

Sipser, Michael, 2007, Introdução à Teoria da Computação, São Paulo: Thomson, isbn 978-85-221-0499-4.

tradução portuguesa de:
Sipser, Michael, 2004, Introduction to the Theory of Computation, 2ª edição, Boston: Thomson, isbn 978-0-6192-1764-8 (cota 2476, Biblioteca DIFCUL).  

Manual para os capítulos de parsing:

Sudkamp, Thomas, 2006, Languages and Machines, 3ª edição, Boston: Addison-Wesley, isbn 0-321-32221-5 (cota2048, biblioteca DIFCUL).


Outros elementos de estudo


Bibliografia adicional recomendada:

Hopcroft, John, Rajeev Motwani, Jeffrey Ullman, 2001, Introduction to Automata Theory, Languages and Computation, Boston: Addison-Wesley.

Método de Ensino

Aulas presenciais.

Avaliação

Exame final ou, em alternativa, conjunto de 3 testes (18 valores).

Participação nas aulas Teóricas (1 valor) e Teórico-Práticas (1 valor).

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Lógica de Primeira Ordem
CódigoSiglaÁrea

13539

LPO

MAT

Objectivos

Esta disciplina é uma introdução à lógica, focando a relação entre linguagens formais e suas interpretações. Pretende-se: 1) introduzir linguagens formais - via as linguagens da lógica de primeira ordem - e suas manipulações sintácticas; 2) interpretar semanticamente essas linguagens, ensinando a formalizar asserções e a raciocinar dedutivamente (formal e informalmente).

Programa de estudos
Componente Teórica

Este curso é uma introdução à lógica de primeira ordem com igualdade, desde o cálculo proposicional até ao cálculo de predicados. Os conectivos lógicos são introduzidos gradualmente. Em cada etapa estudam-se os aspectos sintácticos e semânticos dos conectivos e os métodos de demonstração associados ao fragmento em causa (regras de introdução e de eliminação). Estudam-se as noções sintáctica e semântica de consequência lógica (usa-se o sistema de dedução formal de Fitch). Ênfase em demonstrações e contra-exemplos.

Constantes, símbolos relacionais (predicados), símbolos funcionais, termos, igualdade, sentenças atómicas. Exemplos: as linguagens da teoria de conjuntos e da aritmética. Conectivos lógicos, sentenças. Métodos de demonstração. Satisfazibilidade duma fórmula proposicional (o problema P vs NP) e tautologias. Leis proposicionais básicas. Deduções formais. Forma normal negativa. Formas normal conjuntiva e disjuntiva. Discussão informal da correcção e completude do cálculo dedutivo proposicional de Fitch. O algoritmo de satisfação de Horn. Método da resolução.

Variáveis e termos. Unificaçnao de termos. Fórmulas atómicas, quantificadores. Fórmulas e sentenças (variáveis mudas e livres). Semântica (verdade e satisfação, informalmente). Equivalência lógica. Leis básicas da quantificação. O uso de quantificadores múltiplos. Deduções formais envolvendo quantificadores. Forma prenexa normal. Skolemização. Existência e unicidade. Quantificações numéricas. Discussão informal da correcção e completude do sistema dedutivo de Fitch. Introdução ao método de resolução para o cálculo de predicados (sem igualdade).

Componente Teórico-prática

Resolução de problemas e esclarecimento de dúvidas.

Bibliografia

Language, Proof and Logic
Jon Barwise & John Etchemendy
Seven Bridges Press

Outros elementos de estudo

Folhas de exercícios. (Exercise sheet.)

Método de Ensino

Apresentação magisterial na aula teórica. Aula prática de perguntas, respostas e exposição de matéria e soluções de exercícios.

Avaliação

A avaliação é cumulativa e consiste em:

(1) Três mini-testes de trinta minutos feitos nas aulas teórico-práticas. Cada mini-teste vale 2 (dois) valores. Esta parte da avaliação perfaz, portanto, 6 (seis) valores.

(2) Um exame final que vale 14 (catorze) valores. O professor regente reserva-se o direito de efectuar as orais que achar convenientes.

As exceções às regras anteriores (p.ex., para trabalhadores estudantes) estão descritas na página MOODLE da disciplina

Língua de Ensino

Português.

Departamento
Precedências
    Nenhuma
Matemática Discreta
CódigoSiglaÁreaURL

13528

MD

MAT

http://mocho.di.fc.ul.pt/p/MD
Objectivos

Fornecer aos alunos conhecimentos básicos de métodos e estruturas da matemática discreta

Programa de estudos
Componente Teórica

Teoria elementar dos números: Divisibilidade. Algoritmo de Euclides. Números primos. Teorema fundamental da aritmética. Representação dos números naturais numa base b =2. Aritmética modular.
Combinatória: Problemas básicos de contagem. Arranjos, permutações e combinações. Triângulo de Pascal e teorema do binómio. Propriedades dos coeficientes binomiais. Princípio de inclusão-exclusão.
Relações de recorrência: Números de Stirling, números de Fibonacci. Relações de recorrência lineares.
Grafos: Definição e propriedades básicas de grafos não dirigidos. Conexidade. Caminhos e ciclos. Caminhos Eulerianos e caminhos Hamiltonianos. Árvores. Colorações dos vértices de um grafo. Grafos planares. Teorema de Euler.

Componente Teórico-prática

Resolução de exercícios sobre os temas leccionados nas aulas teóricas.

Bibliografia

Norman L. Biggs – Discrete Mathematics, Oxford University Press, 2nd. Ed., 2007.
Kenneth H. Rosen – Discrete Mathematics and its Applications, McGraw-Hill, 6th edition, 2007.

Outros elementos de estudo

Cópia dos acetatos utilizados nas aulas teóricas.

Método de Ensino

Nas aulas teóricas (2 horas por semana) será feita a exposição dos resultados e serão dados exemplos que os ilustrem.
Nas aulas teórico-práticas (3 horas por semana) resolver-se-ão exercícios sobre os temas leccionados nas aulas teóricas.

Avaliação

A avaliação consistirá em dois testes parciais (facultativos), ou exame final, escritos e uma prova oral, nos casos em que tal se mostrar necessário.

Língua de Ensino

Português

Departamento
Precedências
    Nenhuma
Princípios de Programação
CódigoSiglaÁrea

26725

PP

CTP

Objectivos

Adquirir conceitos básicos da programação com especial foco na programação funcional e experiência prática na escrita de programas funcionais usando a linguagem Haskell.

Programa de estudos
Componente Teórica

Tipos; funções; listas; recursão; funções de ordem superior; efeitos laterais; tipos de dados definidos pelo utilizador; classes; avaliação de expressões; estruturas de dados infinitas; especificação; raciocínio sobre programas.

Componente Teórico-prática

Bibliografia

• Programming in Haskell, Graham Hutton. Cambridge University Press. 2007.

Outros elementos de estudo

• Haskell - The craft of functional programming, 2nd edition. Simon Thompson. Addison-Wesley. 1999. [capítulos 1-10, 12-14, 16-18]

N.B.: Poderá vir a ser utilizada a 3ª edição (recentemente publicada) dependendo dos prazos de disponibilização do livro por parte da empresa distribuidora.

• Lista de exercícios das aulas teórico-práticas

Método de Ensino

Aulas teóricas de exposição da matéria e aulas teórico-práticas de resolução de exercícios.

Avaliação

Avaliação contínua; projecto de programação; exame escrito final.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
Projecto de Sistemas de Informação
CódigoSiglaÁreaURL

26731

PSI

SI

http://mocho.di.fc.ul.pt/p/PSI
Objectivos

A disciplina aborda os problemas e soluções, métodos e tecnologias relacionadas com o desenvolvimento de sistemas de informação.

Um dos objectivos centrais é a realização completa de um projecto de sistemas de informação, em que os conhecimentos adquiridos nas várias cadeiras que constituem as suas precedências são utilizados de forma coerente e sistemática. No projecto faz-se a aplicação prática de métodos de planeamento, análise, concepção e teste de sistemas de informação.

Nas aulas, além da discussão dos conceitos básicos essenciais à aplicação dos referidos métodos, abordam-se ainda os conceitos relativos à engenharia de software. 

Programa de estudos
Componente Teórica

Componente Teórico-prática

Bibliografia

Roger S. Pressman, Software Engineering: A Practitioners Approach, McGraw-Hill, 6ª edição, 2005.

Eric J. Braude, Software Engineering: An Object-Oriented Perspective, John Wiley & Sons, 2001.

Outros elementos de estudo
Avaliação

exame (35%) + projecto (55%) + participação (10%)

Língua de Ensino
Departamento

Dep. de Informática

Precedências
    Nenhuma
Redes de Computadores
CódigoSiglaÁrea

26704

RC

OSC

Objectivos

A unidade curricular introduz aos alunos toda a problemática associada à construção e utilização das redes de computadores, utilizando como referência a Internet. São discutidas as limitações apresentadas pelas redes de computadores e os protocolos que são actualmente utilizados para as contornar. São ainda discutidas algumas arquiteturas e restrições particulares, que não podem ser abordadas sem uma visão integrada das redes de computadores. Exemplos são as redes sem fios, a transmissão de dados com requisitos de tempo-real e gestão de redes.

Programa de estudos
Componente Teórica

A Internet e a sua estrutura. Protocolos. O Nível aplicação: HTTP, FTP, SMTP, DNS. Transporte: UDP, TCP, controlo da congestão. Rede: IP e sua evolução, encaminhamento interior e exterior, encaminhamento para difusão, mobilidade. Nível de comunicação de dados: deteção e recuperação de erros, controlo de acesso ao meio, repetidores, comutadores, pontes, redes sem fios, PPP, ATM. Multimedia: RTSP, RTP, RSVP, serviços integrados, serviços diferenciados. Gestão de redes.

Componente Teórico-prática

Análise funcional e laboratorial dos seguintes protocolos: HTTP, DNS, TCP, IPv4, IPv6, ARP e Ethernet

Bibliografia

James F. Kurose and Keith W. Ross, Computer Networking - A Top-Down Approach Featuring the Internet, 5th Edition, ISBN-13:  9780136079675, Addison Wesley, 2010.

Outros elementos de estudo

Guiões de Laboratório publicados na página web da unidade curricular

Caderno de Exercícios de Redes de Computadores, José Rufino, 2011/2012.

Livro texto complementar: TCP/IP Tutorial and Technical Overview,  ISBN 0738494682, IBM Redbooks, 2006 (disponível on-line em formato PDF)

Método de Ensino

Aulas teóricas: método principalmente expositivo, estimulando-se sempre que possível a curiosidade e o interesse dos alunos, utilizando a matéria para justificar fenómenos observáveis pelos alunos.
Aulas teórico-práticas: método preferencialmente interactivo. São apresentados e discutidos guiões de experiências laboratoriais onde pode ser observado o funcionamento de alguns dos protocolos da Internet.

Avaliação

Exame final da matéria lecionada. Avaliação dos relatórios laboratoriais. Exercícios efectuados no contexto de sala de aula.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
Segurança
CódigoSiglaÁrea

26735

SEG

OSC

Objectivos

Apresentar ao alunos as questões da segurança sob a óptica da redes de computadores e dos sistemas distribuídos. Expor os alunos ao contacto com paradigmas fundamentais da segurança, como a criptografia, a autenticação e o controlo de acesso, para citar alguns exemplos, e modelos de programação e comunicação com segurança, ilustrados com exemplos de aplicações e sistemas que o tornam possível.

Programa de estudos
Componente Teórica

Aspectos abordados incluirão: conceitos e obtenção de confidencialidade, autenticidade, disponibilidade e integridade; criptografia (ex. DES, AES, Diffie-Hellman, RSA, MD5, SHA); segurança em UNIX e Internet (ex. cavalos-de-tróia, vírus, corridas, firewalls, SSH, SSL, HTTPS, políticas 4PP); comércio electrónico (EDI, smart-cards, dinheiro digital, assinaturas no escuro, WWW, SET); protecção e segurança de dados (autoridades de certificação, controlo de acesso e servidores de segurança, Kerberos).

Componente Teórico-prática

Aspectos abordados incluirão: conceitos e obtenção de confidencialidade, autenticidade, disponibilidade e integridade; criptografia (ex. DES, RSA, PGP, MD5); segurança em UNIX e Internet (ex. cavalos-de-tróia, vírus, corridas, firewalls, SSH, WWW SHTTP-SSL, políticas 4PP); comércio electrónico (EDI, smart-cards, dinheiro digital, assinaturas no escuro, WWW, SET); protecção e segurança de dados (controlo de acesso e servidores de segurança, Kerberos).

Bibliografia

Paulo Veríssimo and Luís Rodrigues, Distributed System for System Architects, Kluwer Academic Publishers ISBN 0-7923-7266-2.
Scott Oaks, Java Security, 2nd edition, OReilly 2001

Outros elementos de estudo
Método de Ensino

Introdução e discussão dos conceitos, metodogias e mecanismos em aulas teóricas semanais com a duração de 2 horas. Complementar o estudo com aulas teórico-práticas onde é explicado como se aplicam os conceitos, nomeadamente na programação e instalação de aplicações distribuídas seguras feitas em Java.

Avaliação

Três projectos de programação e configuração de sistemas distribuídos seguros (40%) e exame final (60%); a avaliação dos projectos genericamente baseia-se na apreciação dos relatórios entregue-se, na demonstração em laboratório dos programas desenvolvidos, e numa discussão oral individual.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Sistemas de Informação e Bases de Dados
CódigoSiglaÁreaURL

26726

SIBD

SI

http://mocho.di.fc.ul.pt/p/SIBD
Objectivos

Aprender os fundamentos dos sistemas de gestão de bases de dados, por forma a adquirir capacidade para desenvolver e gerir uma base de dados relacional.

Programa de estudos
Componente Teórica

- Introdução aos Sistemas de Gestão Base de Dados

- Modelação conceptual de base de dados: Modelo Entidade-Associação e UML

- Modelação lógica de base de dados: Modelo Relacional, SQL DDL, e Normalização

- Interrogações aos SGBD: Álgebra Relacional e SQL DML 

- Desenvolvimento de Aplicações com bases de dados

- Introdução à Gestão de Transações

Componente Teórico-prática

Exercícios sobre as matérias dadas na componente teórica.
Uso de uma linguagem de programação procedimental para acesso ao sistema de gestão de base de dados.

Componente Prática

Elaboração de um projecto, onde será pedido o desenvolvimento de uma base de dados relacional. Componentes do projecto:
- diagrama entidade-associação e esquema relacional
- interrogações SQL para criação, acesso e manutenção da base de dados.

Bibliografia

Database Management Systems, Raghu Ramakrishnan, Third Edition, McGraw-Hill, 2003

Outros elementos de estudo

Desenvolvimento de Sistemas de Informação baseados em PHP e MySQL, Francisco M. Couto, DI-FCUL Learning Object, DOI:10455/3167, 2009

Método de Ensino

Métodos expositivo, demonstrativo e activo-participativo

Avaliação

Exame e Projecto

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Sistemas Distribuídos
CódigoSiglaÁreaURL

26730

SD

OSC

http://mocho.di.fc.ul.pt/p/SD
Objectivos

Pretende-se que o aluno adquira noções introdutórias sobre a distribuição num sistema computacional e os conceitos subjacentes. Um aluno irá aprender diversos modelos e serviços de sistemas distribuídos, e terá a oportunidade de estudar as arquitecturas e mecanismos em que estes se apoiam. Serão também apresentadas várias modalidades de processamento distribuído, com exemplos práticos.

Programa de estudos
Componente Teórica

Arquitecturas genéricas distribuídas; modelo cliente-servidor; comunicação distribuída (chamada a procedimentos remotos, invocação a objectos remotos, filas de mensagens, streams, grupos); migração de código e agentes; protocolos (sincronização de relógios, salvaguarda de estado, eleição); transacções distribuídas; replicação e consistência de dados; tolerância a faltas; sistemas de ficheiros distribuídos (NFS); introdução à segurança

Componente Teórico-prática

Estuda fundamentalmente a comunicação em sistemas distribuídos, explicando detalhadamente como se programam aplicações com sockets POSIX.

Bibliografia

A. Tanenbaum, M. van Steen, Distributed Systems: Principles and Paradigms, 2nd edition, Prentice Hall, 2007

Outros elementos de estudo

Any book about the C programming language and UNIX system programming.

Método de Ensino

Introdução e discussão dos conceitos, metodogias e mecanismos em aulas teóricas semanais com a duração de 2 horas. Complementar o estudo com aulas teórico-práticas onde é explicado como se aplicam os conceitos, nomeadamente na programação de aplicações distribuídas.

Avaliação

Quatro projectos de programação em sistemas distribuídos (40%) e exame final (60%).

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
    Nenhuma
Sistemas Operativos
CódigoSiglaÁrea

26703

SO

OSC

Objectivos

É estudada a problemática dos sistemas operativos, sua organização e programação. Serão estudados os modelos de computação oferecidos pelos SOs, sua organização, operações primitivas e programação elementar. Algumas destas noções serão consolidadas com pormenores de sistemas, tais como o Windows e o LINUX.

Programa de estudos
Componente Teórica

Conceitos básicos sobre os sistemas operativos: definições, funções e modelos. Processos e escalonamento: processo, espaço de endereçamento, threads, algoritmos de escalonamento, sincronização e interbloqueio. Gestão de memória: paginação, segmentação, memória virtual. Gestão de armazenamento: sistema de ficheiros e sistemas de entradas e saídas. Protecção. Sistemas operativos Unix e Windows.

Componente Teórico-prática

Utilização do sistema operativo Unix. Chamadas ao sistema operativo Unix.

Bibliografia

Avi Silberschatz, Peter Baer Galvin, Greg Gagne. Operating System Concepts. John Wiley & Sons, Inc., 8th edition. 2010.

Outros elementos de estudo

Sebentas e guiões disponíveis na página web da disciplina.

Avaliação

Exame e trabalhos

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências
Teoria da Computação
CódigoSiglaÁrea

26737

TC

CTP

Objectivos

Abordagem da computação com ênfase nas limitações téoricas do que os computadores conseguem calcular e nos constrangimentos práticos impostos por recursos de tempo ou espaço limitados

Programa de estudos
Componente Teórica

Máquinas abstratas (máquinas de Turing, máquina de registos) e sua programação. Revisita ao conceito de algoritmo. Computabilidade e decidibilidade. Postulado de Church-Turing. Máquinas universais. Computabilidade sob recursos limitados. Classes de complexidade. Problemas completos. Teorema de Cook.

Componente Teórico-prática

Bibliografia

Michael Sipser, "Introduction to the Theory of Computation, 2nd Edition",
Thomson, 2006, ISBN 0-534-95097-3.

Outros elementos de estudo

Lista de exercícios das aulas teórico-práticas

Método de Ensino

Aulas teóricas de exposição da matéria e aulas teórico-práticas de resolução de exercícios.

Avaliação

Avaliação contínua; exame escrito final.

Língua de Ensino

Português

Departamento

Dep. de Informática

Precedências