Código Oficial: | 9459 |
Sigla: | MIEIC |
Descrição: | No final dos cinco anos do curso os diplomados terão uma formação avançada em Engenharia Informática e Computação, podendo ter escolhido uma área de especialização ou manter um leque mais alargado de interesses, mercê de uma ampla oferta de opções, configurável individualmente, contida no plano de estudos. As possíveis especializações incluem atualmente: * Engenharia de Software e Sistemas de Informação (2 sub-áreas com estes nomes) * Redes e Tecnologias de Informação (sub-áreas de Tecnologias da Internet e de Infraestruturas Informáticas) * Sistemas Inteligentes e Multimédia (2 sub-áreas com estes nomes) |
OBJECTIVOS ESPECÍFICOS: Esta disciplina tem dois objectivos fundamentais: por um lado, tratando-se de uma disciplina propedêutica tem um carácter didáctico/científico, promovendo o desenvolvimento do raciocínio lógico e de métodos de análise e, por outro, visa introduzir e desenvolver em termos teóricos um conjunto de conceitos que serão ferramentas essenciais para apoio às disciplinas mais específicas da Engenharia.
Aquisição de conhecimentos teóricos e práticos sobre cálculo diferencial e integral em R que possibilitem a aplicação das ferramentas básicas da análise matemática ao tratamento e resolução dos problemas mais adaptados ao perfil da Engenharia Informática e Computação. Capacitar o estudante para a inovação, complementando os conhecimentos de forma a desenvolver soluções para resolução de novas questões. No final da disciplina, os estudantes devem possuir as seguintes competências: 1. Saber derivar funções, desenhar gráficos e estudar funções 2. Saber integrar e utilizar os integrais em aplicações de engenharia 3. Conhecer técnicas de integração e de resolução de equações diferenciais 4. Relacionar séries e polinómios e perceber os conceitos de aproximação.
Esta unidade curricular introduz os princípios de funcionamento de um computador moderno e a sua arquitetura geral, com especial ênfase na contribuição de cada subsistema para o desempenho global. A análise da tecnologia de implementação física dos computadores (circuitos lógicos e de memória), associada à explicação das formas elementares de representação de informação em formato digital, permitirá aos estudantes identificar e descrever princípios fundamentais da operação dos computadores, das linguagens de programação e do desenvolvimento de software.
1 - INTRODUÇÃO
Os engenheiros informáticos requerem conhecimentos elevados de técnicas de programação que só podem ser consolidados com uma boa base de fundamentos da programação.
2 - OBJETIVOS ESPECÍFICOS
Desenvolver o conhecimento básico para resolver problemas de programação de média complexidade.
3 - DISTRIBUIÇÃO PERCENTUAL
Componente científica: 40%
Componente tecnológica: 60%
Enquadramento
A Lógica constitui a base de qualquer raciocínio científico e essa é a razão primeira da sua inclusão no 1º ano do curso. Para além disso, no caso da Engenharia Informática, a Lógica tem um interesse direto operacional em múltiplas dimensões da profissão.
Objetivos específicos
Os objetivos são o desenvolvimento de competências de raciocínio rigoroso e de técnicas de matemática discreta necessárias em várias áreas da informática, como a resolução de problemas, a criação e análise de algoritmos, a teoria da computação, a representação de conhecimento e a segurança.
Distribuição percentual
Componente científica: 100%
Componente tecnológica: 0%.
1- ENQUADRAMENTO (BACKGROUND) A unidade curricular tem dois objetivos fundamentais: por um lado, tratando-se de uma unidade curricular propedêutica tem um carácter didático/científico, promovendo o desenvolvimento do raciocínio lógico e de métodos de análise e, por outro, visa introduzir e desenvolver em termos teóricos um conjunto de conceitos que serão ferramentas essenciais para apoio às restantes unidades curriculares.
2- OBJETIVOS ESPECÍFICOS (SPECIFIC AIMS) Adquirir conhecimentos teóricos e práticos, essenciais, sobre o cálculo diferencial e integral de funções reais e vetoriais de uma ou várias variáveis, bem como sobre algumas das suas aplicações.
3- CONHECIMENTO PRÉVIO (PREVIOUS KNOWLEDGE) São considerados essenciais para a frequência desta unidade curricular os conhecimentos relativos ao cálculo diferencial e integral, adquiridos na Unidade Curricular Análise Matemática, e os relativos à álgebra vetorial e à geometria analítica, adquiridos na Unidade Curricular Álgebra, ambas lecionadas no 1º Ano, 1º Semestre do MIEIC.
4- DISTRIBUIÇÃO PERCENTUAL (PERCENTAGE DISTRIBUTION) Componente Científica: 75% Componente Tecnológica 25%
5- RESULTADOS DA APRENDIZAGEM (LEARNING OUTCOMES) No fim do período lectivo os estudantes devem ser capazes de: 1. Usar representações paramétricas de curvas em Rn e obter o seu vector tangente e normal; calcular integrais de linha ao longo dessas curvas. 2. Discutir a continuidade de funções escalares de várias variáveis. 3. Obter derivadas parciais e direccionais para campos escalares e campos vectoriais e saber. construir o vector gradiente. 4. Calcular derivadas de funções compostas, de campos escalares e vectoriais, bem como de funções definidas implicitamente. 5. Calcular integrais de linha e de superfície
A Física é uma das ciências de base de qualquer Engenharia. Com o desenvolvimento dos computadores pessoais, o tipo de problemas físicos que podem ser resolvidos numa disciplina introdutória aumentou significativamente. A Física Computacional e as técnicas de simulação permitem que o aluno possa ter uma visão geral de um problema de física, sem ter que usar técnicas analíticas complicadas. As técnicas computacionais desenvolvidas para resolver problemas de mecânica têm sido aplicadas com sucesso em outros campos fora da física, dando origem à teoria geral dos sistemas dinâmicos.
O objetivo desta unidade curricular é dar ao estudante conhecimentos básicos de mecânica e dos métodos computacionais usados para resolver sistemas dinâmicos. É usado um Sistema de Álgebra Computacional (CAS), para permitir que o estudante possa resolver problemas práticos de mecânica e sistemas dinâmicos, em vez de perder muito tempo em aprender métodos abstratos. Os conhecimentos adquiridos de dinâmica e modelação de sistemas físicos no computador serão bastante importantes em outras unidades curriculares relacionadas com computação gráfica e visualização, teoria de jogos, simulação e computação científica.
Garantir que os alunos adquiram uma visão integrada de conceitos e técnicas básicas da Estatística no âmbito do curso de Engenharia Informática.
ENQUADRAMENTO
Os computadores pessoais (PC), tanto computadores de mesa como portáteis, constituem uma ferramenta ubíqua nas sociedades modernas. A sua arquitetura reflete o avanço tecnológico atual, mas também estabelece os limites das suas capacidades e desempenho . O conjunto de instruções IA-32 está no centro de todos os computadores pessoais atualmente em uso. Tanto a arquitetura como o conjunto de instruções têm um impacto profundo na prática diária dos engenheiros informáticos.
OBJETIVOS ESPECÍFICOS
A unidade curricular de Microprocessadores e Computadores Pessoais tem por objectivo desenvolver, combinar e aplicar de forma integrada conceitos das áreas de Arquitectura de Computadores e de Linguagens de Programação. Por um lado, a unidade curricular explora as relações entre o conjunto de instruções do CPU e a programação de baixo nível (linguagem "assembly"). Por outro lado, reconhecendo que a arquitectura de computadores pessoais modernos vai muito para além da arquitectura do CPU, a unidade curricular abordará a arquitectura geral de um PC, incluindo o subsistema de armazenamento de dados e outros periféricos. Após a conclusão com sucesso desta unidade curricular, o estudante terá adquirido a capacidade de identificar e descrever a arquitectura dos computadores pessoais em uso actualmente, bem como a capacidade de aplicar as técnicas de programação "assembly" na implementação de qualquer tipo de algoritmo.
DISTRIBUIÇÃO PERCENTUAL
Os objetivos principais desta unidade curricular são dotar os estudantes com:
- conhecimentos fundamentais sobre a programação procedimental e a programação baseada em objectos;
- a capacidade de aplicar esses paradigmas de programação para desenvolver programas, usando a linguagem C++ como ferramenta.
Na sequência das unidades curriculares de Introdução à Programação, é objetivo desta unidade curricular: recorrer às noções de programação já estabelecidas e sistematizar o uso de estruturas de informação e de algoritmos para resolver categorias de problemas; usar, como paradigma de suporte ao desenvolvimento de programas, a orientação por objetos; dar ênfase à organização dos programas em torno de tipos de dados abstratos. Serão realizados pequenos projetos usando a linguagem C++.
Atualmente o processamento, armazenamento e transmissão de informação são feitos usando fenômenos eletromagnéticos. Consequentemente, a formação de base de um engenheiro informático deve incluir o estudo da eletricidade, do magnetismo e dos circuitos elétricos
Esta unidade curricular visa dotar os estudantes com conhecimentos básicos de eletromagnetismo e processamento de sinais. A abordagem é experimental, com recurso a experiências simples que os estudantes podem realizar durante as aulas teórico-práticas para consolidar os conhecimentos teóricos e adquirir experiência no uso dos instrumentos de medição. O Sistema de Computação Algébrica (CAS) usado na unidade curricular Física 1 é também aproveitado para facilitar a resolução de problemas e para visualizar campos elétricos e magnéticos.
1- Enquadramento
Os dispositivos periféricos são uma parte fundamental dum computador, sem a qual a utilidade ou a facilidade de uso dos computadores seriam significativamente inferiores. A importância destes dispositivos em sistemas baseados em computadores tem crescido desde os primórdios dos computadores (cerca de 1950) e continua com a difusão cada vez maior de sistemas embebidos. Contudo, a programação dos dispositivos periféricos usando a sua interface programática, i.e. a interface de "hardware", requer conhecimentos e técnicas específicas.
2- Objetivos Específicos
Os objetivos da unidade curricular são dotar os estudantes com conhecimentos essenciais para serem capazes de:
3- Distribuição Percentual
Científica: 10%
Tecnológica: 90%
A disciplina pretende em primeiro lugar fornecer aos estudantes competências sólidas no cálculo numérico. Será organizada por tópicos, cobrindo os problemas de representação numérica, a resolução de equações e sistemas de equações algébricas e diferenciais, a integração definida, a optimização não linear e o ajuste de curvas.
O estudante deverá:
Como o enfoque da disciplina não é a algoritmia dos métodos mas a compreensão da sua aplicabilidade e da sua implementação, as ferramentas informáticas mais usadas nas aulas serão as que fornecem uma maior clareza no processo de cálculo, rapidez de desenvolvimento e flexibilidade,essencialmente 'super máquinas de calcular', como são as folhas de cálculo, os manipuladores algébricos ou matriciais.
Dominado o processo numérico, é pedido ao aluno que faça a sua implementação usando ferramentas mais eficientes, mas menos flexíveis e de maior exigência em termos de preparação, como são as linguagens de programação.
Preparar os estudantes em tópicos relacionados com teoria da computação, com um ênfase especial em tópicos relacionados com linguagens formais.
Munir os estudantes dos conhecimentos necessários que lhes permitam utilizar corretamente linguagens regulares, expressões regulares, linguagens não-regulares, autómatos finitos deterministas e não-deterministas, linguagens e gramáticas livres de contexto, autómatos de pilha, e Máquinas de Turing.
Capacitar os estudantes para que estes sejam capazes de expressar problemas computacionais usando linguagens formais, autómatos e máquinas de Turing.
Capacitar os estudantes de métodos para formalizar problemas computationais relacionados com linguagens e para provar afirmações relacionadas com esses problemas.
ENQUADRAMENTO
Sistemas de Informação (SI) é uma área fundamental em engenharia informática. Bases de dados são repositórios de dados necessários em qualquer SI. A unidade curricular de bases de dados é uma unidade chave na área de SI. O objetivo principal desta unidade curricular é preparar os alunos para projetar e desenvolver sistemas de bases de dados que atendam às necessidades dos utilizadores de acordo com os objetivos de gestão organizacionais.
OBJETIVOS ESPECÍFICOS
Este é um curso introdutório sobre bases de dados. Aborda o paradigma relacional. Abrange o desenho (modelo UML), construção (linguagem de definição de dados SQL), consulta (linguagem de manipulação de dados SQL) e gestão (optimização, controlo de acesso e políticas de concorrência) de bases de dados relacionais. Introduz, ainda, o conceito de bases de dados multi-dimensionais, bases de dados NoSQL e modelos de dados semi-estruturados.
DISTRIBUIÇÃO PERCENTUAL
Componente científica: 50%
Componente tecnológica: 50%
ENQUADRAMENTO: A computação Gráfica tem vindo a afirmar-se e é hoje um componente muito importante em toda a envolvente de interação pessoa-computador. No entanto, a sua aplicabilidade vai muito além, tendo hoje em dia uma posição de relevo em indústrias importantes como sejam a cinematográfica e a dos jogos. Também na tecnologia e na ciência desempenha um papel insubstituível permitindo a visualização de fenómenos, muitas vezes ligada a simulação e a técnicas de realidade virtual. Nesta unidade curricular, efetua-se uma abordagem às matérias de Computação Gráfica segundo uma filosofia tipo Top-Down, iniciando-se com os temas mais relacionados com os 3D (síntese de imagem, modelação) e terminando com a visita a vários algoritmos mais elementares, no âmbito dos 2D. A componente 3D da matéria é acompanhada, nas aulas práticas, com exercícios baseados em tecnologias de grande utilização, o OpenGL e o WebGL.
OBJETIVOS ESPECÌFICOS: - Transmitir o conhecimento de conceitos, técnicas, algoritmos, tecnologias e arquitecturas de Computação Gráfica. - Reforçar os conhecimentos teóricos com a sua aplicação prática, por meio da implementação, teste e avaliação de algoritmos abordados em teoria.
DISTRIBUIÇÃO PERCENTUAL
- Componente científica: 50%
- Componente tecnológica: 50%
Esta Unidade Curricular tem por objectivo complementar e aprofundar os conhecimentos assimilados nas disciplinas de "Programação" e de "Algoritmos e Estruturas de Dados", nomeadamente pela introdução de técnicas de concepção e implementação de algoritmos eficientes para a resolução de diferentes tipos de problemas, assim como a sua análise e avaliação.
Mais especificamenet, pretende-se permitir aos estudantes:
Os objetivos principais desta unidade curricular são fornecer os conhecimentos fundamentais sobre:
O1- a estrutura e o funcionamento de um sistema operativo;
O2- a utilização da interface de programação (API) de um sistema operativo real.
Familiarizar-se com os métodos de engenharia e gestão necessários ao desenvolvimento de sistemas de software complexos e/ou em larga escala, de forma economicamente eficaz e com elevada qualidade.
ENQUADRAMENTO
Esta unidade curricular surge na sequência de "Computação Gráfica", do segundo semestre do segundo ano, onde foram dados a conhecer os principais princípios teóricos da matéria.
OBJETIVOS ESPECÍFICOS
Esta unidade curricular tem por objectivo principal desenvolver um conjunto de competências práticas, algumas já tratadas em unidades curriculares anteriores num contexto mais teórico. Foca-se em trabalhos práticos de desenvolvimento, tendencialmente multidisciplinares, nomeadamente nas áreas de Computação Gráfica e Interfaces, de Programação em Lógica e de Sistemas Operativos.
DISTRIBUIÇÃO PERCENTUAL
Componente científica: 30%
Componente tecnológica: 70%
Pretende-se dotar os alunos de capacidade de exploração adequada ao desenvolvimento de software, nomeadamente na criação de ambientes 3D (representação poligonal, iluminação e interacção) e na utilização dos serviços oferecidos por um sistema operativo, com ênfase especial em comunicações e sincronização.
Pretende-se, nesta disciplina, que os alunos desenvolvam competências nas linguagens e tecnologias WEB mais significativas, no contexto tecnológico atual, ou que foram determinantes no processo evolutivo da WEB.
O paradigma da Programação em Lógica apresenta uma abordagem declarativa e baseada em processos formais de raciocínio à programação, mais apropriada para a resolução de alguns tipos de problemas. A programação em lógica com restrições permite abordar problemas de satisfação de restrições e de optimização, modelando-os de uma forma directa e elegante.
Objetivos: Adquirir familiaridade com os paradigmas da Programação em Lógica e da Programação com Restrições. Desenvolver as capacidades de raciocínio abstracto e de representação de problemas de forma declarativa.
A Unidade Curricular centra-se no paradigma da programação baseada em lógica de primeira ordem. A componente prática baseia-se na utilização da linguagem de programação Prolog. Adicionalmente, é também abordada a programação em lógica com restrições, com ilustração de diversas aplicações práticas.
Distribuição Percentual: Componente científica: 50%; Componente tecnológica: 50%
Redes de Computadores (RCOM) é a unidade curricular que introduz os estudantes no domínio de conhecimento das redes de comunicações. Os conceitos fundamentais endereçados em RCOM incluem os seguintes: canais de comunicação e controlo da ligação de dados, modelos de erro e atraso, comunicações multi-acesso, encaminhamento, controlo de fluxo e controlo de congestionamento. As principais tecnologias discutidas em RCOM são a Ethernet comutada, a Wireless LAN 802.11, a Internet e a pilha de comunicações TCP/IP. As implementações e projetos a desenvolver em RCOM incluem um protocolo de ligação de dados com controlo de fluxo, uma aplicação a funcionar em modo cliente, e a configuração e teste de redes Ethernet e IP.
Fornecer os conceitos que permitam:
- compreender as fases de compilação de linguagens, em especial das linguagens imperativas e orientada por objectos;
- especificar a sintaxe e semântica de uma linguagem de programação;
- compreender e utilizar as estruturas de dados e os algoritmos principais usados na implementação de compiladores.
Esta unidade curricular apresenta um conjunto de assuntos nucleares para a área dos Sistemas Inteligentes.
Objectivos:
Distribuição Percentual: Componente científica: 60%; Componente tecnológica: 40%
A unidade curricular de LBAW tem como objetivo sedimentar as matérias expostas nas unidades curriculares de bases de dados e linguagens e tecnologias web. Esta unidade curricular oferece uma perspetiva prática sobre duas áreas centrais da engenharia informática.
Nesta unidade curricular pretende-se dotar os estudantes da capacidade de projetar e desenvolver sistemas de informação acessíveis através da web e suportados por sistemas de gestão de bases de dados.
OBJETIVOS: ●Identificar e adquirir os conhecimentos essenciais para saber como maximizar progressivamente as condições de êxito do desempenho pessoal e interpessoal. ●Aplicar técnicas de auto-controlo e estratégias de relacionamento interpessoal que permitam gerir com elevada mestria a eficiência dos processos de trabalho a implementar e a eficácia dos resultados a atingir em cada organização. ●Ter consciência da importância de saber utilizar competências complementares (soft skills) e de realizar mudanças evolutivas de forma a desenvolver um perfil profissional que contribua para melhorar continuamente a futura atividade do engenheiro informático.
1 - Enquadramento
Um dos mais importantes desenvolvimentos recentes na computação é o crescimento de aplicações distribuídas, como é ilustrado pelo enorme número de aplicações orientadas para a Web, muitas delas móveis.
2 - Objectivos Específicos
Esta unidade curricular tem dois objectivos fundamentais:
3 - Distribuição Percentual
Componente Científica: 50%; Componente Tecnológica: 50%
A unidade curricular assume-se como de Engenharia (evidenciando apenas a teoria essencial para se entender as aplicações práticas) e proporciona uma perspetiva global das técnicas associadas à especificação e desenvolvimento de Agentes computacionais bem como realça a sua relevância prática apresentando exemplos de aplicação.
A Programação Orientada a Agentes é apresentada como uma nova metáfora para a descrição e programação de sistemas computacionais distribuídos. Os conhecimentos sobre Agentes e Sistemas Multi-Agente são apreendidos quer usando formalismos lógicos quer através da utilização de ferramentas de software. Para consolidar os conhecimentos ministrados nas aulas teóricas incentiva-se a realização de pequenos projetos, apoiados nas aulas práticas, ilustrativos dos tópicos abordados na disciplina. O OBJETIVO principal é, assim, que os estudantes saibam especificar e implementar sistemas distribuídos e descentralizados usando o paradigma dos Sistemas Multi-Agente.
A unidade curricular tem por objetivo desenvolver competências na área da Gestão, integrando uma sólida componente teórica, baseada na apresentação e discussão de conceitos e metodologias, com a sua aplicação à análise e à discussão de casos de estudo.
A unidade curricular tem como objectivo principal desenvolver nos estudantes as seguintes competências:
- aplicar um processo de Engenharia de Software ao desenvolvimento completo de um sistema de software real, ao longo do semestre, abrangendo a especificação de requisitos, arquitectura e desenho, implementação, integração, teste, documentação e demonstração;
- adquirir os conhecimentos fundamentais e experiência sobre as práticas de desenvolvimento ágil de software: planeamento de iterações, testes unitários, refactoring, pattern-based design, autoria colectiva de código, programação em pares, integração contínua;
- utilizar ferramentas de desenvolvimento de software adequadas à metodologia em uso e que permitam o acompanhamento do desenvolvimento do produto durante todo o seu ciclo de vida;
- utilizar APIs e infraestruturas de software de grande escala, introduzindo o desenvolvimento baseado em componentes e problemas relacionados com integração aplicacional;
- desenvolvimento de trabalho colaborativo integrando outros intervenientes do projecto em decisões de desenho e planeamento e delegar, negociar e rever estas decisões em grupo;
- aplicar os conhecimentos anteriormente adquiridos em disciplinas nas áreas Engenharia de Software, Bases de Dados, Interfaces Gráficas, Sistemas Operativos, Linguagens de Programação e Inteligência Artificial.
1-CONHECIMENTOS ÚTEIS Conhecimentos de engenharia de software (nomeadamente, processos de desenvolvimento e modelação de software) e conhecimentos de teoria de computação.
2-OBJETIVOS ESPECÍFICOS Desenvolver as capacidades de abstração de forma a descrever o que o sistema deve fazer e não a maneira de o fazer. Estar familiarizados com os métodos formais e forma como eles podem contribuir para aumentar a qualidade dos sistemas de software.
3-CONHECIMENTO PRÉVIO É útil frequência anterior em Engenharia de software, Teoria de computação e Conceção e análise de algoritmos.
4-DISTRIBUIÇÂO PERCENTUAL Componente científica = 75% Componente tecnológica = 25%
5-RESULTADO DA APRENDIZAGEM No final da unidade curricular os estudantes devem ser capazes de: - aplicar métodos formais de especificação (baseado em modelos; baseado em propriedades; baseado em comportamento) e verificação ("Model-checking", provas formais e teste) no desenvolvimento de sistemas de software. - identificar os métodos formais existentes e saber quando devem ser aplicados e quais são mais adequados em cada caso.
ENQUADRAMENTO: Esta é a única UC de sistemas de informação no MIEIC. Por este motivo, pretende ser uma UC introdutória aos Sistemas de Informação nas Organizações focando-se no seu papel e na forma como o SI contribui para a construção de valor.
OBJETIVOS ESPECÍFICOS: É objectivo desta unidade curricular preparar os estudantes para compreender o papel dos Sistemas de Informação (SI) nas organizações e a importância de se encontrarem alinhados com a sua estratégia de negócio.
ENQUADRAMENTO À medida que os sistemas de software aumentam de dimensão e de complexidade torna-se cada vez mais importante compreendê-los a níveis de abstracção mais elevados. A arquitectura de um sistema de software descreve a sua estrutura global em termos dos seus componentes, das propriedades externas desses componentes e das suas interrelações. Para sistemas de média e grande dimensão a escolha adequada da arquitectura assume uma importância crucial para o sucesso do seu desenvolvimento.
OBJETIVOS ESPECÍFICOS A disciplina de Arquitecturas de Sistemas de Software tem como objectivo principal introduzir os conceitos de arquitecturas de software, padrões de desenho e tópicos directamente relacionados, tais como o de componentes de software. Pretende ensinar a desenhar, compreender e avaliar arquitecturas de sistemas de software, tanto ao nível de abstracção de macro-arquitectura como de micro-arquitectura e assim familiarizar os alunos com os conceitos fundamentais de arquitectura de software, as propriedades e aplicabilidade dos diferentes estilos de arquitectura existentes, os padrões de desenho mais populares, componentes de software, arquitecturas reutilizáveis e as relações destes conceitos todos com a reutilização de software.
DISTRIBUIÇÃO PERCENTUAL Componente Científica: 50% Componente Tecnológica 50%.
Como objectivo desta unidade curricular os estudantes deverão adquirir competências no planeamento e gestão integrada de infra-estruturas de rede, sistemas e serviços.
ENQUADRAMENTO
A programação paralela e distribuída está a tornar-se o paradigma comum de programação dada a evolução do hardware para arquiteturas multicore e elementos massivamente paralelos como as GPUs. O computador pessoal atual é composto por vários processadores que coletivamente disponibilizam maior capacidade de processamento, do que os anteriores single-core, mas que individualmente têm menor capacidade. Os programadores terão de dominar a programação multi-processador para que possam utilizar com eficiência as máquinas do presente e do futuro.
OBJECTIVOS
Aquisição de conhecimentos conducentes à utilização simultânea de várias unidades de processamento num sistema de computação. Construção de bases sólidas sobre arquiteturas paralelas, paralelização de algoritmos, modelos de programação, sincronização de processos e medidas de desempenho, através do desenvolvimento de programas.
Componente ciêntifica:50%
Componente técnica:50%
Comunicações Móveis é uma Unidade Curricular (UC) de redes de comunicações. Nesta UC são discutidos os aspectos fundamentais do funcionamento de redes de comunicações móveis, as tecnologias de comunicações móveis mais importantes, e técnicas de engenharia e de projeto de redes de comunicações móveis.
1 - INTRODUÇÃO
Os engenheiros informáticos podem tirar grandes vantagens em possuir competências no desenvolvimento de jogos digitais, não só como produto final da indústria do entretenimento, mas também pelas capacidades imersiva e de interatividade desta tecnologia, que podem potenciar, inclusivamente, a aprendizagem.
2 - OBJETIVOS ESPECÍFICOS
O objetivo desta unidade curricular é transmitir o conhecimento sobre o processo de desenvolvimento de jogos de computador, com ênfase particular nos aspetos relacionados com a programação dos diversos módulos que compõem um motor de jogo.
3 - DISTRIBUIÇÃO PERCENTUAL
Dotar os alunos com competências para planear, gerir e levar a cabo um processo de análise e especificação de requisitos de um sistema de software.
Esta unidade curricular tem como objectivos principais:
Dotar os alunos com competências para: - identificar problemas de decisão; - aplicar as várias fases de resolução de um problema de decisão, em particular, a definição e estruturação de problemas, a construção de modelos e a utilização de métodos quatitativoas para a obtenção da solução - analisar de forma crítica a solução obtida - perceber a importância do papel de agente de mudança nas organizações
1- ENQUADRAMENTO
O sucesso dos projetos e produtos de software depende não só do domínio das competências técnicas necessárias à realização das várias atividades do ciclo de vida do desenvolvimento do software, mas também, e cada vez mais, de um conjunto de capacidades e competências de gestão, comportamentais e comunicacionais, tais como competências de gestão de projeto (nas suas diversas variáveis de prazo, orçamento, âmbito, qualidade, recursos, etc.), capacidade de trabalhar em equipa, capacidade de relacionamento com clientes e capacidade de comunicação e marketing.
2- OBJETIVOS ESPECÍFICOS
No final da Unidade Curricular os estudantes deverão ser capazes de:
1.Identificar a necessidade de recurso à gestão de projetos bem como a importância do seu enquadramento estratégico;
2.Identificar os diferentes referenciais normativos e metodologias para a gestão de projetos; 3.Identificar e definir as áreas de processo e variáveis da gestão de projetos;
4. Aplicar metodologias e ferramentas de gestão de projeto e trabalho em equipa;
5. Aplicar conceitos e ferramentas de gestão da qualidade a projetos;
6. Identificar e gerir os riscos inerentes a um projeto.
3- CONHECIMENTO PRÉVIO
Domínio das competências técnicas necessárias ao desenvolvimento de projetos de software.
Ter frequentado Laboratório de Desenvolvimento de Software (LDSO).
4- DISTRIBUIÇÃO PERCENTUAL
Componente Científica: 50%
Componente Tecnológica 50%
ENQUADRAMENTO
A unidade curricular "Linguagens de Anotação e Processamento de Documentos" tem como contexto o uso generalizado de linguagens de anotação para a representação de informação semi-estruturada e a existência de ferramentas normalizadas para o seu tratamento.
OBJETIVOS ESPECÍFICOS
Esta unidade curricular foca-se na obtenção de linguagens de anotação para um dado domínio e na realização de aplicações baseadas em linguagens de anotação e tem por objetivos:
1. Sensibilizar os estudantes para as múltiplas aplicações não triviais das linguagens de anotação;
2. Familiarizar os estudantes com as tecnologias de processamento e armazenamento de informação semi-estruturada;
3. Aplicar as tecnologias de anotação na definição de uma linguagem e na resolução de um problema com recurso ao desenvolvimento de uma aplicação.
A unidade curricular tem por objectivo desenvolver competências na área da Gestão de Marketing, integrando uma sólida componente teórica, baseada na apresentação e discussão de conceitos e metodologias, com a sua aplicação ao desenvolvimento de um plano de marketing e à discussão de casos de estudo.
Esta UC tem por missão fornecer uma perspectiva geral a nível tecnológico sobre a geração, codificação, distribuição e percepção de sinais multimédia. Pretende dotar os estudantes de novos conhecimentos específicos para o processamento e codificação de sinais audiovisuais e consolidar conhecimentos gerais sobre processamento de sinais e redes de computadores para projectar e gerir aplicações e serviços multimédia. Pretender ainda que os estudantes adquiram conhecimentos sobre boas práticas a adoptar na criação de aplicações multimédia interactivas que permitam comunicar de forma eficiente e eficaz informação media, bem como ferramentas para editar, manipular e interligar os dados multimédia.
Esta Unidade Curricular tem por âmbito o estudo da problemática de segurança de sistemas Informáticos, de forma a fornecer aos estudantes um painel básico dos conceitos e das ameaças e defesas de uma utilização abusiva e destrutiva de tais sistemas.
Dotar os alunos com capacidade de desenvolver sistemas embarcados com requisitos de tempo-real, recorrendo, se necessário, a sistemas operativos de tempo-real.
Habilitar os alunos a desenvolver e administrar grandes bases de dados, nomeadamente a afinar o esquema físico, a otimizar interrogações SQL, a tirar partido das extensões à manipulação de objetos e à tecnologia XML e a recuperar e replicar dados.
Os objetivos principais da unidade curricular incluem:
- a aquisição de conhecimento e prática dos conceitos essenciais do projeto e arquitetura de aplicaçãoes distribuídas empresariais;
- aplicação dos principais padrões e tecnologias, consoante os requisitos e funcionalidades dos cenários finais;
- conhecimaento detalhado de várias tecnologias, com vista à sua implementação fluente, e à sua interoperabilidade e integração.
O objetivo desta disciplina é dotar os alunos do conhecimento das metodologias-base para a análise da viabilidade económica e financeira de projetos de investimento.
Dotar os alunos da capacidade de projetar, implementar e explorar armazéns de dados (data warehouses).
A computação móvel tem tido um enorme incremento nos últimos anos com a explosão da utilização de dispositivos móveis de elevadas capacidades de computação, comunicação, armazenamento e interface. As aplicações estendem-se por cada vez mais campos desde o entretenimento e redes sociais até ao trabalho empresarial.
Os objectivos principais desta unidade curricular visam a aquisição de conhecimento e prática dos conceitos essenciais do projecto, arquitectura e implementação de aplicações, principalmente empresariais, em dispositivos móveis, utilizando APIs de grande divulgação corrente.
São problemas e desafios a vencer a grande diversidade de capacidades e formas de interação dos dispositivos móveis atuais.
ENQUADRAMENTO
A unidade curricular "Descrição, Armazenamento e Pesquisa de Informação" tem como contexto a existência de grandes repositórios de informação de natureza muito diversa e os requisitos para a sua organização, descrição, armazenamento e pesquisa.
OBJETIVOS ESPECÍFICOS
Nos termos do estipulado em normas específicas da FEUP, a caracterização de Dissertação é a seguinte: 1. Trabalho individual de investigação e desenvolvimento, conducente à elaboração de uma dissertação de natureza científica sobre um tema da área de conhecimento do curso, ou visando a integração e aplicação à resolução de problemas complexos de engenharia de conhecimentos, competências e atitudes adquiridos ao longo do curso. 2. Pode ser um trabalho de investigação ou de desenvolvimento tecnológico e aplicação, envolvendo meios experimentais e/ou de simulação, que promova o desenvolvimento de capacidades de iniciativa, de decisão, de inovação, de pensamento criativo e crítico, num contexto de trabalho individual ou em grupo. 3. Deve envolver a análise de situações novas, a recolha de informação pertinente, o desenvolvimento e selecção ou concepção das metodologias de abordagem e dos instrumentos de resolução do problema proposto, a sua resolução, o exercício de sín-tese e elaboração de conclusões, e a preparação de uma dissertação pertinente sujeita a apresentação pública e discussão dos resultados. 4. Pode ser realizado em ambiente académico ou académico e empresarial. Neste caso os objectivos, natureza e forma de acompanhamento do trabalho devem ser objecto de acordo prévio entre o estudante e os orientadores por parte da Faculdade e da empresa, validado pelo Director do Curso, que garanta a satisfação dos objectivos de natureza científica e pedagógica da unidade curricular, e proteja eventuais questões de confidencialidade por parte da empresa/instituição de acolhimento.
Após uma época em que as diferentes empresas/instituições muito investiram na recolha de dados no âmbito da informatização das suas operações, surge agora a necessidade de pôr esses dados ao serviço dessas empresas/instituições. O objetivo é ser capaz de extrair conhecimento desses dados que permita melhorar a eficiência e ganhar vantagem competitiva. É desta necessidade que surge a Unidade Curricular (UC) de Extração de Conhecimento e Aprendizagem Computacional (ECAC).
OBJECTIVO GERAL O principal objectivo da disciplina é o de preparar os estudantes para analisarem e projectarem as componentes interactivas dos sistemas, em particular da interface com os utilizadores, de uma forma adequada às suas necessidades, considerando o curto, médio e longo prazo.
OBJECTIVOS PARTICULARES
1. Preparar os estudantes para analisarem sistemas interactivos, em termos de um conjunto de parâmetros quantitativos e qualitativos.
2. Preparar os estudantes para utilizarem técnicas de estudo, observação e interrogação de utilizadores suportadas na compreensão do modelo conceptual dos utilizadores de sistemas.
3. Preparar os alunos para utilizarem um processo de construção de produtos interactivos baseado numa filosofia de projecto, incluindo a avaliação dos utilizadores, concepção, prototipagem, validação, construção e manutenção.
Os principais objectivos da unidade curricular é dotar os estudantes de conhecimentos e experiência concreta na definição, utilização e refinamento de processos ágeis para a especificidade de um projecto.
1. ENQUADRAMENTO
A unidade curricular "Preparação de Dissertação" acompanha o processo de organização e trabalho preliminar da dissertação do Mestrado Integrado em Engenharia Informática e Computação. Os estudantes completam PDIS antes do semestre em que a dissertação é realizada a tempo inteiro. O esforço da unidade é o equivalente a 6 ECTS (1/5 de semestre a tempo inteiro) e é ocupado com a escolha e familiarização com o tema da dissertação, com o estudo do estado da arte no domínio da dissertação e com a realização de trabalho preliminar que permita no semestre da dissertação um trabalho intenso, bem focado e com boa apresentação de resultados.
2. OBJETIVOS ESPECÍFICOS
Realidade Aumentada é uma tecnologia através da qual se pretende melhorar ou aumentar a visão que um utilizador tem do mundo real com imagens virtuais, usando técnicas de Visão por Computador e de Computação Gráfica/Realidade Virtual. O principal objectivo desta disciplina é transmitir aos alunos um conjunto de conhecimentos básicos destas técnicas, que lhes permitam prosseguir estudos mais avançados na área emergente da Realidade Aumentada, e a capacidade de realizar pequenos trabalhos ilustrativos das metodologias estudadas.
Os engenheiros de software têm impacto na sociedade através da criação de aplicações. Embora estas aplicações produzem valor para os utilizadores, por vezes produzem também desconforto (e até mesmo desastres) nas situações cuja operação desce abaixo do nível de qualidade esperado.
Os engenheiros de software constroem aplicações que as pessoas usam para diferentes propósitos, as quais, por sua vez, pressionam-nos para resolver problemas com novas abordagens. Cada uma destas aplicações enfatiza diferentes requisitos, tais como segurança, usabilidade, escalabilidade, confiabilidade, acessibilidade, eficiência e correcção. Por exemplo, o software orientado ao consumo prioritiza custos baixos, o médico a elevada qualidade, e as aplicações web o desenvolvimento rápido.
Assim sendo, o objectivo fundamental desta unidade curricular é aprender, discutir e desenhar soluções para as várias problemáticas que surgem pela influência da engenharia de software (e do uso do software em geral) pelas pessoas e pela sociedade como um todo.
Objetivos:
- Tomar conhecimento e discutir sobre trabalhos de investigação em curso nas áreas dos Sistemas Inteligentes.
- Tomar contacto com diferentes investigadores em Sistemas Inteligentes e, através deles, com vários grupos de investigação ativos nos tópicos apresentados.
O objectivo desta unidade curricular é o de dotar os alunos com conhecimentos consolidados na área da distribuição de conteúdos em redes de computadores, incluindo multimédia, e ainda sobre como uma rede pode suportar a qualidade de serviço na entrega de diferentes tipos de conteúdos. Neste contexto, será ainda introduzida e discutida a neutralidade da rede.
Familiarização com a terminologia usada em teste de software. Conhecer e saber aplicar as técnicas principais de teste para controlo de qualidade de software.
A visão por computador é uma área da ciência da computação focada na extracção de "informação útil" de imagens e vídeos. O objectivo da visão por computador é "descobrir a partir de imagens o que está presente no mundo, onde estão localizadas as coisas, que acções estão a ser executadas" (Marr,1982). Exemplos de "informação útil" incluem, por exemplo, o cálculo da geometria 3D de um objecto presente numa imagem, a detecção e identificação de faces ou de gestos humanos, o seguimento de pessoas ou de veículos numa sequência de vídeo. Os algoritmos da visão por computador têm imensas aplicações em muitas áreas, desde a industrial, militar ou médica até à sempre crescente área do entretenimento.
Este curso é uma introdução aos conceitos e métodos da visão por computador, adaptada aos estudantes do MIEIC que pretendam prosseguir investigação nesta área. Os principais tópicos a tratar incluem: o processo de formação de imagens, métodos básicos de processamento e análise de imagem, bem como métodos mais avançados de reconstrução 3D de uma cena, análise de movimento, seguimento e reconhecimento de objectos.
1- ENQUADRAMENTO Nos termos do estipulado em normas específicas da FEUP, a caracterização de Dissertação é a seguinte: • Trabalho individual de investigação e desenvolvimento, conducente à elaboração de uma dissertação de natureza científica sobre um tema da área de conhecimento do curso, ou visando a integração e aplicação à resolução de problemas complexos de engenharia de conhecimentos, competências e atitudes adquiridos ao longo do curso. • Pode ser um trabalho de investigação ou de desenvolvimento tecnológico e aplicação, envolvendo meios experimentais e/ou de simulação, que promova o desenvolvimento de capacidades de iniciativa, de decisão, de inovação, de pensamento criativo e crítico, num contexto de trabalho individual ou em grupo. • Deve envolver a análise de situações novas, a recolha de informação pertinente, o desenvolvimento e seleção ou conceção das metodologias de abordagem e dos instrumentos de resolução do problema proposto, a sua resolução, o exercício de síntese e elaboração de conclusões, e a preparação de uma dissertação pertinente sujeita a apresentação pública e discussão dos resultados. • Pode ser realizado em ambiente académico ou académico e empresarial. Neste caso os objetivos, natureza e forma de acompanhamento do trabalho devem ser objeto de acordo prévio entre o estudante e os orientadores por parte da Faculdade e da empresa, validado pelo Diretor do Curso, que garanta a satisfação dos objetivos de natureza científica e pedagógica da unidade curricular, e proteja eventuais questões de confidencialidade por parte da empresa/instituição de acolhimento. 2- OBJETIVOS ESPECÍFICOS • Promover o desenvolvimento de capacidades de iniciativa, de decisão, de inovação, de pensamento criativo e crítico, num contexto de trabalho individual. • Desenvolver um trabalho individual de investigação e desenvolvimento; • Elaborar uma dissertação de natureza científica. 3- CONHECIMENTO PRÉVIO • Área de conhecimento tecnológico do curso, • Conhecimentos, competências e atitudes adquiridos ao longo do curso. 4- DISTRIBUIÇÃO PERCENTUAL • Componente Científica: 40% a 60% • Componente Tecnológica 40 a 60% 5- RESULTADOS DA APRENDIZAGEM No final da unidade curricular, os estudantes deverão demonstrar capacidade de: • Análise de situações novas com recolha de informação pertinente; • Desenvolvimento e seleção ou conceção das metodologias de abordagem e dos instrumentos de resolução do problema proposto; • Resolução de problemas, com o consequente o exercício de síntese e elaboração de conclusões; • Preparação de uma dissertação pertinente, a ser sujeita a apresentação pública e discussão dos resultados.
O1. Assimilação dos processos, metodologias e práticas associados à investigação científica, com particular relevância em engenharia informática.
O2. Desenvolvimento do espírito de crítica científica.
O3. Demonstração da capacidade de elaborar e de apresentar um plano de um projecto de dissertação, incluindo o respectivo estado da arte, em tema a seleccionar.