Engenharia de Software e dos Sistemas de Informação Empresariais (SISE)

Programa de Especialização

Engenharia de Software e dos Sistemas de Informação Empresariais (SISE)

Catarina Carvalho

(+351) 218 417 894

catarinagcarvalho@tecnicomais.pt

MAIS INFORMAÇÕES

Este curso foi desenvolvido para oferecer aos profissionais dos mais diversos setores uma reconversão profissional e acesso a novas oportunidades de mercado nos domínios da Engenharia de Software e da Engenharia dos Sistemas de Informação Empresariais (SISE), área com elevada procura pelo mercado.

Os Cursos deste Programa desenvolvem competências necessárias para lidar com os problemas e decisões complexas inerentes à gestão e operação das organizações numa perspetiva de engenharia de sistemas.

Como complemento, o curso prevê um conjunto de seminários que se destinam a acrescentar conhecimentos em áreas importantes da aplicação da engenharia de software e da engenharia dos sistemas de informação empresariais.

EM PARCERIA

O programa visa proporcionar aos formandos conhecimentos básicos em todos os domínios fundamentais ao nível da licenciatura em Ciência da Computação e Engenharia Informática. O programa visa conferir profundas capacidades conceptuais e profissionais, em engenharia de software e em engenharia de sistemas de informação.

 

Serão preferencialmente admitidos candidatos com um grau de mestrado em qualquer campo da ciência e da engenharia, sendo admissíveis também, a título excepcional, candidatos com grau de licenciatura em qualquer campo da engenharia ou da ciência, cujo currículo profissional lhes tenha conferido maturidade, conhecimentos e capacidades para lidarem com as tecnologias de informação.

Áreas de estudo: qualquer área de engenharia, matemática e matemática aplicada, informática de gestão, ciências.

 

REQUISITOS FUNDAMENTAIS

Maturidade e capacidade profissional do candidato; ter um bom domínio da língua inglesa, dado que a bibliografia primária do curso será nesta língua.

Formadores: Prof. António Leitão; Prof.ª Cláudia Antunes

Esta unidade curricular tem como objetivo fornecer conhecimentos sobre conceitos fundamentais relativos à atividade de programação, nomeadamente, algoritmo, abstração procedimental e abstração de dados, a programação como construção de abstrações, paradigmas de programação. Após a frequência da disciplina, os alunos deverão dominar os conceitos apresentados e serem capazes de desenvolver programas em Python.

O curso cobre as seguintes temáticas:

  1. Algoritmos, procedimentos e processos. A construção de abstração através de procedimentos. Abstração procedimental. Desenvolvimento do topo para a base. Como executar programas em Python.
  2. Tipos de dados elementares. Operadores e precedências.
  3. Controlo do fluxo de execução.
  4. Tipos estruturados de dados. Tabelas. Manipulação de cadeias de caracteres.
  5. Tipos abstratos de dados. A construção de abstrações através de dados. A abstração de dados. Tipos abstratos de dados: listas e árvores.
  6. Programação por objetos. Noção de objeto, herança. Métodos e classes em Python.

Formadores: Prof. José Tribolet; Prof. Sérgio Guerreiro; Eng.º Armando Vieira; Eng.º Carlos Mendes

Este módulo pretende fornecer uma introdução aos conceitos fundamentais de engenharia empresarial com foco nos serviços e processos de negócio.

Ao completarem o módulo, os formandos terão competências para:

  • Compreender a relação entre modelação conceptual e sistemas de informação empresariais.
  • Compreender e aplicar os conceitos de objetivo, requisito, função, construção, estrutura e comportamento à modelação de sistemas de informação.
  • Conhecer e aplicar os elementos básicos das linguagens DEMO, ArchiMate e BPMN

O módulo cobre as seguintes temáticas:

  1. Fundamentos de modelação conceptual.
  2. Arquitetura de um sistema de informação.
  3. Objetivos, requisitos e qualidades.
  4. Função e construção de um sistema.
  5. Estrutura e comportamento de um sistema.
  6. Introdução à linguagem DEMO: serviços e papéis.
  7. Introdução à linguagem ArchiMate: estrutura e comportamento, função e construção.
  8. Introdução à linguagem BPMN: atividade, evento e ponto de decisão.

Formadores: Prof. António Rito da Silva; Prof. Guilherme Santos

Este módulo tem como objetivo fornecer conhecimento da sintaxe e regras de utilização da Linguagem Java, definição e estruturação de uma classe Java, operadores, ciclos, API Java, classes, métodos, tratamento de exceções e testes unitários.

Ao completarem o módulo, os formandos terão competências para:

  • Conhecer e compreender da sintaxe e forma de funcionamento da linguagem Java.
  • Dominar os conceitos e sintaxe da linguagem Java

O módulo cobre as seguintes temáticas:

  1. Estrutura de classe, métodos e tipos primitivos\objetos.
  2. Manipulação de dados: inicialização de variáveis, âmbito de execução, boxing, garbage collection.
  3. Operadores e ciclos.
  4. API Java: String, StringBuilder e Arrays.
  5. Métodos e encapsulamento: access modifiers, keyword static e overload.
  6. Desenho de Classes: Interfaces, herança e polimorfismo.
  7. Tratamento de exceções.
  8. Testes unitários.

Formadores: Prof. Sérgio Guerreiro; Eng.º Armando Vieira; Eng.º Carlos Mendes

Este módulo tem como objetivo fornecer uma introdução aos conceitos fundamentais de engenharia empresarial com foco na arquitetura de informação e aplicacional.

Ao completarem o módulo, os formandos terão competências para:

  • Conhecer e aplicar os elementos básicos das linguagens UML e ArchiMate para a modelação de sistemas de informação.
  • Identificar e modelar as entidades informacionais de sistemas de informação.
  • Otimizar a arquitetura aplicacional de contextos complexos.

O módulo cobre as seguintes temáticas:

  • Introdução à linguagem UML: entidades informacionais, modelos de classes, modelos de estados.
  • Introdução à técnica da Matriz CRUD.
  • Introdução à linguagem ArchiMate: camada aplicacional.

Formadores: Prof. José Tribolet, Prof. Sérgio Guerreiro, Engº Carlos Mendes, Engº Armando Vieira e Prof. Bruno Soares

Este módulo tem como objetivo fornecer uma introdução aos conceitos fundamentais de modelação conceptual para a comunicação, análise, desenho e desenvolvimento de sistemas de informação empresariais.

Ao completarem o módulo, os formandos terão competências para:

  • Compreender a relação entre modelação conceptual e sistemas de informação empresarias.
  • Compreender e aplicar os conceitos de objetivo, requisito, função, construção, estrutura e comportamento à modelação de sistemas de informação.
  • Conhecer e aplicar os elementos básicos das linguagens UML e ArchiMate para a modelação de sistemas de informação.
  • Aplicar técnicas de desenvolvimento orientado a modelos (MDD/MDE) para a construção de sistemas de informação.
  • Compreender e aplicar os conceitos de abstração, classificação, reificação, e as relações de parte-todo à modelação de sistemas de informação.

O módulo cobre as seguintes temáticas:

  • Fundamentos de modelação conceptual.
  • Arquitetura de um sistema de informação.
  • Objetivos, requisitos e qualidades.
  • Função e construção de um sistema.
  • Estrutura e comportamento de um sistema.
  • Introdução à linguagem UML: casos de uso, modelos de classes, modelos de estados.
  • Introdução à linguagem ArchiMate: estrutura e comportamento, função e construção.
  • Desenvolvimento orientado a modelos.

Formadores: Prof. Arlindo Oliveira; Prof. Alexandre Francisco

Este módulo tem como objetivo fornecer uma visão geral dos conceitos básicos sobre análise e síntese de algoritmos e estruturas de dados, focando aqueles que encontramos na maioria das bibliotecas; adquirir noções de complexidade computacional; aplicar estas noções na resolução de problemas práticos, tendo em conta a viabilidade, eficiência e escalabilidade; analisar a implementação de algoritmos e estruturas de dados.

Ao completarem o módulo, os formandos terão competências para:

  • Conhecer algoritmos e estruturas de dados padrão, incluindo a sua implementação e complexidade típica.
  • Compreender o papel dos algoritmos e das estruturas de dados na resolução de problemas e como selecionar os mais adequados.
  • Conhecer as classes de problemas típicas e a sua complexidade.
  • Conhecer as técnicas mais comuns para a síntese de algoritmos.
  • Conhecer a Java Collections Framework e a complexidade das operações típicas.

O módulo cobre as seguintes temáticas:

  • Introdução à resolução de problemas, aos algoritmos e às estruturas de dados.
  • Introdução ao desenho de algoritmos, desde o uso de recursão e da estratégia dividir para conquistar a estratégias gananciosos e à programação dinâmica.
  • Introdução à análise de algoritmos e complexidade computacional.
  • Vetores e algoritmos de ordenação e seleção. O problema fundamental das estruturas de dados. Listas ligadas, filas e pilhas. Funções e tabelas de dispersão. Árvores de pesquisa. Conjuntos e mapas.
  • A Java Collections Framework e implementações típicas. Utilização prática de algoritmos e estruturas de dados, problemas básicos em grafos e de otimização, aplicação em bases de dados e em problemas de aprendizagem. Classes de problemas e a sua complexidade. Paralelização e os seus limites.
  • Intratabilidade e como lidar com problemas intratáveis. Big Data ou quando o tempo polinomial pode ser demais.

Formadores: Prof. Paulo Carreira; Eng.º Carlos Mendes

Ao completarem o módulo, os formandos terão competências para:

  • Conhecer os conceitos básicos de bases de dados relacionais;
  • Saber desenhar e implementar bases de dados (modelo entidade-associação, modelo relacional, linguagem SQL)
  • Conhecer os conceitos de processamento de consultas e otimização (índices, transações, planos de execução);
  • Conhecer o funcionamento interno dos Sistemas de Gestão de Bases de Dados (gestão de ficheiros, optimizador de consultas, algoritmos de recuperação).

O módulo cobre as seguintes temáticas:

  • Introdução aos sistemas de informação e bases de dados.
  • O Modelo Entidade-Associação.
  • Conversão de modelos E-A em relacionais.
  • O Modelo relacional.
  • SQL
  • Restrições de Integridade.
  • Armazenamento e Indexação.
  • Processamento de transações.
  • Recuperação de Transações.

FormadoresProf. Rodrigo Miragaia Rodrigues; Prof. João Nuno Oliveira; Prof. João Barreto; Prof. Daniel Porto

Este módulo tem como objetivo fornecer uma visão geral dos sistemas computacionais, desde conceitos de baixo nível (gestão de memória, processamento) a camadas superiores como os sistemas operativos e os sistemas distribuídos.

Ao completarem o módulo, os formandos terão competências para:

  • Compreender as várias camadas de abstração de um sistema computacional.
  • Saber a forma como um processador executa as instruções de um programa.
  • Compreender o papel e os princípios básicos do sistema operativo.
  • Compreender os mecanismos básicos para a construção de sistemas distribuídos.

O módulo cobre as seguintes temáticas:

  • Tradução dos programas de linguagens de alto nível para assembly e linguagem máquina, e a sua execução no CPU.
  • Sistemas operativos.
  • Hierarquia e gestão de memória.
  • Sistemas distribuídos.

Formadores: Prof. Daniel Gonçalves; Prof. Alfredo Ferreira; Prof. Luís Veiga

Ao completarem o módulo, os formandos terão competências para:

  • Desenho centrado no utilizador.
  • Prototipagem.
  • Avaliação de Usabilidade (com utilizadores e Avaliação Heurística).
  • Princípios de desenho para a Web.
  • Padrões de desenho para a Web.
  • Portabilidade e Acessibilidade.
  • Desenvolvimento frontend web em javascript.
  • Desenvolvimento de aplicações em AngularJS e Node.js.
  • Desenho e desenvolvimento de componentes server-side em Javascript.
  • Armazenamento e transferência de dados.

O módulo cobre as seguintes temáticas:

  • Introdução ao desenho centrado no utilizador; Prototipagem; Heurísticas de usabilidade.
  • Javascript 101, NodeJS, Assynchronous development, REST.
  • Princípios de Desenho para a web (navegação, layout, etc.); Padrões de desenho.
  • Web platform development – AngularJS.
  • Avaliação Heurística e com Utilizadores; Portabilidade, Acessibilidade.
  • Javascript server-side: JSON, SocketIO, ExpressJS, WebRTC.

Formadores: Prof. Miguel Pardal; Prof Alberto Sardinha; Prof. Sérgio Guerreiro

Este módulo tem como objetivo fornecer capacidade de desenvolvimento e integração de sistemas em contextos de arquitetura aplicacional. Exemplos: arquiteturas SOA, Oracle SOA BPM Suite, Biztalk, Message Queuing.

Ao completarem o módulo, os formandos terão competências para:

  • Analisar quais os motivos que justificam a integração de sistemas e aplicações nas organizações.
  • Definir uma arquitectura de referência para suporte da integração.
  • Analisar as principais tecnologias disponíveis com ênfase na integração de serviços, integração processos.
  • Incorporar requisitos de segurança e tolerância a faltas na arquitetura.
  • Integrar Processos, Informação e Sistemas.
  • Integrar com parceiros externos à organização.
  • Construir soluções de automação de processos: “Business Process Management Systems”.

O módulo cobre as seguintes temáticas:

  • Necessidade de Integração: Introdução, Economia Digital.
  • Imperativos da evolução dos processos de negócio.
  • Arquitetura Empresarial e Estratégia de Integração Empresarial.
  • Componentes de uma Arquitetura de Integração Empresarial.
  • Avaliação das Tecnologias de Integração.
  • Tecnologias e tipos de arquiteturas .
  • Adaptadores e Interfaces, ODBC e Web Services.
  • Integração de Dados com Filas de Mensagens (Message Oriented Middleware).
  • Integração Orientada aos Serviços com Composição e Orquestração de Serviços.
  • Integração Orientada aos Processos com BPMN.
  • Business Process Management, com BPEL.
  • Business Process Management Systems BPMS – Business Process Management Systems.
  • Arquitetura de Integração de Aplicações.
  • Elementos da arquitetura SOA.
  • Arquitetura de Segurança. Exemplo: WS Security.
  • Tolerância a Faltas: Reliable Messaging e Monitores Transacionais.
  • Análise de Plataformas Comerciais: Biztalk, Oracle SOA and BPM Suite.

Formadores: Prof. Rui Maranhão; Prof. João Dias Pereira; Prof. Luis Cruz; Prof. Paulo Carreira; Prof Sofia Reis

Este módulo tem como objetivo fornecer capacidade de desenvolvimento de uma aplicação de software de grande dimensão por várias equipas de programadores; utilização de técnicas de engenharia de software durante o desenvolvimento orientado por testes, testar primeiro, gestão ágil de projetos, sistemas de gestão de configuração de software, ferramentas de profiling e teste das propriedades não funcionais do código.

Ao completarem o módulo, os formandos terão competências para:

  • Desenvolver software em equipa e com apoio em ferramentas e métodos de engenharia de software.
  • Ser capaz de entender um problema e dividi-lo em partes.

O módulo cobre as seguintes temáticas:

  • Gestão de Projeto: Scrum.
  • Desenho de Software: Padrões de desenho, desenho baseado no domínio e desenvolvimento orientado por testes.
  • Arquitetura de Software: Estilos arquiteturais.
  • Engenharia de Requisitos: Testar primeiro.
  • Validação e Verificação de Software: Testes de unidade, integração, sistema, entrega e utilizador.
  • Modelos de Processo de Desenvolvimento: Métodos ágeis.

Formadores: Prof.ª Helena Galhardas (responsável); Prof.ª Cláudia Antunes; Prof. João Lebre Pereira

Ao completarem o módulo, os formandos terão competências para:

  • Conhecer os conceitos fundamentais de sistemas para apoio à decisão.
  • Desenvolver soluções de exploração de dados para apoio à decisão.
  • Desenhar modelos de dados multidimensionais.
  • Explorar os dados através de interrogações OLAP e MDX, assim como reporting.
  • Conhecer os conceitos fundamentais de limpeza de dados
  • Distinguir ciência de dados e inteligência artificial
  • Entender as diferentes etapas do processo de descoberta de informação
  • Aplicar técnicas de treino de classificadores em dados tabulares
  • Avaliar modelos de classificação

O módulo cobre as seguintes temáticas:

  • Introdução aos Sistemas de Apoio à Decisão.
  • Data Warehousing.
  • Modelo multidimensional.
  • Exploração de dados: OLAP, MDX e reporting.
  • Limpeza de dados
  • Metodologias de desenvolvimento de data warehouse.
  • O processo de descoberta de informação
  • Exploração e preparação de dados
  • Treino de classificadores em dados tabulares
  • Segmentação e descoberta de regras de associação

Formadores: Prof. João Garcia; Prof. Nuno Santos

Este módulo tem como objetivo fornecer uma introdução à computação móvel e ubíqua e ao desenvolvimento em ambientes móveis, com foco em aplicações para Android.

Ao completarem o módulo, os formandos terão competências para:

  • Conhecer os desafios, oportunidades e problemas fundamentais subjacentes à computação móvel e ubíqua.
  • Conhecer a arquitetura e componentes fundamentais do ambiente Android.
  • Capacidade em desenvolver aplicações em Java para ambientes móveis Android.

O módulo cobre as seguintes temáticas:

  • Introdução à computação móvel e ubíqua.
  • Desafios e problemas fundamentais da computação móvel e ubíqua.
  • Context-awareness.
  • Cyberforaging.
  • Replicação, consistência, sincronização.
  • Segurança e privacidade em ambientes móveis.
  • Programação de aplicações para dispositivos móveis Android.

Formadores: Prof. José Tribolet (responsável); Especialistas, académicos e/ou profissionais.

Este módulo tem como objetivo convidar especialistas, académicos e/ou profissionais, para cobrir todos os temas relevantes na área do Programa que, por várias razões, não estão abrangidos por nenhuma dos outros módulos.

Exemplos de temas que serão abordados nesta disciplina:

  • Computação na Nuvem.
  • Segurança Informática.
  • Gestão de Projetos.
  • Gestão da Informática.
  • Sistemas de Software Normalizado.
  • Gestão de Programas de Transformação.
  • Aspetos éticos, comportamentais e organizacionais do exercício da profissão.

COORDENAÇÃO

José Tribolet

José Tribolet

Professor Jubilado | IST

VER BIOGRAFIA
Rui Maranhão

Rui Maranhão

Professor Associado | IST

VER BIOGRAFIA

Alexandre Francisco

Alexandre Francisco

Professor Associado | IST

António Menezes Leitão

António Menezes Leitão

Professor Auxiliar | IST

António Rito da Silva

António Rito da Silva

Professor Associado | IST

Arlindo Oliveira

Arlindo Oliveira

Professor Catedrático | IST

Artur Caetano

Artur Caetano

Professor Auxiliar | IST

Bruno Martins

Bruno Martins

Professor Auxiliar | IST

Daniel Gonçalves

Daniel Gonçalves

Professor Associado | IST

Francisco Melo

Francisco Melo

Professor Associado | IST

João Dias Pereira

João Dias Pereira

Professor Auxiliar | IST

Miguel Mira da Silva

Miguel Mira da Silva

Professor Associado | IST

Miguel Pardal

Miguel Pardal

Professor Auxiliar | IST

Paulo Carreira

Paulo Carreira

Professor Auxiliar | IST

Pável Calado

Pável Calado

Professor Associado | IST

Rodrigo Miragaia Rodrigues

Rodrigo Miragaia Rodrigues

Professor Catedrático | IST

A avaliação de cada módulo é constituída por uma combinação dos seguintes elementos:

  • Exame, onde são demonstrados, individualmente, os conhecimentos teóricos e práticos apreendidos num dado módulo.
  • Trabalho teórico, onde se apresenta através de um trabalho escrito, desenvolvido individualmente ou em grupo, o resultado da análise ou investigação sobre determinado problema.
  • Trabalho prático, onde se produz um ou mais artefactos com o objetivo de resolver determinado problema prático.

 

Aplicam-se as seguintes regras gerais de avaliação a todos módulos do Programa:

  • As notas finais de cada módulo são dadas na escala de 0 a 20 valores por combinação ponderada dos seus elementos de avaliação. Os elementos de avaliação e a ponderação específica são definidos no contexto de cada módulo.
  • Um aluno obtém aproveitamento positivo a um módulo se obtiver uma nota mínima de dez valores na avaliação.
  • ECTS significa “European Credit Transfer System”.
  • Os créditos ECTS são uma forma padronizada de contabilizar o trabalho desenvolvido pelo formando, incluindo a presença nas sessões, bem como o tempo de estudo e de avaliação.
  • No Técnico estabeleceu-se que 1 ECTS corresponde, tipicamente, a 28 horas de trabalho.

Este valor inclui:

Acesso à plataforma de aprendizagem online do Técnico+;

Diploma e Certificado.

(não cumulativas):

– Rede de Parceiros do Instituto Superior Técnico : 20%

– Colaboradores do Instituto Superior Técnico: 10%

– Condições para Associações e protocolos empresariais

João de Sousa GuimarãesADVOGADO
Read More
Trata-se de um curso muito completo, oferecido num enquadramento percetível tanto para quem lida diariamente com proteção de dados e pretenda aprofundar conhecimento, como para quem pretenda iniciar-se na temática. O curso é, por isso, de enorme capacitação profissional para quem nele participa e de uma mais valia inquestionável por ser disponibilizado por uma instituição como Instituto Superior Técnico.
Maria Antonieta RibeiroDPO - BRISA
Read More
Este curso é essencial para um DPO com formação jurídica e que apenas conhece a informática na ótica do utilizador. As lições aprendidas são, de facto, uma excelente e essencial ferramenta de trabalho.
Lina AlvesOFFICE MANAGER AND CORPORATE CONTROLLER - ZOMATO
Read More
Excelente mais valia para a atividade profissional.
Ivone Pita SoaresAdvogada
Read More
O balanço é claramente positivo, tanto pelo interesse prático do conteúdo programático, como pela excelente qualidade do corpo docente. Apresenta-se como um curso sério, indispensável para quem, não tendo formação de base em tecnologias da informação, exerça quaisquer funções no âmbito do RGPD.
Lara Feio
Read More
Vim de Braga de propósito para fazer estes cursos e não estou nada arrependida. Acho o curso uma mais-valia, muito denso ao nível do conteúdo, permitindo uma aprendizagem sobre os mais variados aspetos.
Nuno Pereira
Read More
Valeu muito a pena. Acho que o curso é extremamente rico ao nível dos conhecimentos que fornece. Enquanto DPO de um conjunto de entidades públicas e privadas acho extremamente relevante apostarmos neste tipo de formação, se tiver o selo de qualidade do Técnico ainda melhor.

MAIS INFORMAÇÕES E CANDIDATURAS

Contacte-nos relativamente a próximas datas ou adapte este curso à sua organização.

MAIS INFORMAÇÕES
EM PARCERIA
logo_inesc_1
CONTACTE-NOS
CURSOS RELACIONADOS
ARTIGO EM DESTAQUE
Data Science – ciência ou engenharia?
Ciência de Dados

Data Science – ciência ou engenharia?

O termo Data Science, normalmente traduzido para Ciência de Dados, …

MAIS INFORMAÇÕES E CANDIDATURAS

Contacte-nos relativamente a próximas datas ou adapte este curso à sua organização.

Curriculum is empty

PROCURAR CURSOS E PROGRAMAS

BEM-VINDO!

A sua subscrição foi efetuada com sucesso!

Verifique o e-mail de boas-vindas na sua caixa de correio.