IPLUSO 24355
Engenharia de Software II
Engenharia Informática e Aplicações (L) (IPLUSO)
-
ApresentaçãoPresentationA unidade curricular de Engenharia de Software II pretende aprofundar e aumentar os conhecimentos em Engenharia de Software partindo dos conceitos de Engenharia de Software I, explorando em maior detalhe os fundamentos de desenho, desenvolvimento e manutenção de software. O curso aborda temas avançados como desenho de arquitetura de software, métricas e estimativas de software. Os alunos, no fim do curso, ficarão preparados para desenvolver soluções de software complexas, escaláveis, seguras e altamente disponíveis através da aprendizagem de padrões de desenho, ferramentas e técnicas. Para além disso, os alunos são introduzidos a ferramentas de desenvolvimento de software modernas, metodologias e frameworks, o que os coloca numa posição ideal para enfrentar desafios reais na dinâmica indústria da tecnologia.
-
ProgramaProgrammeCP1: Metodologias Agile. Framework Kanban em detalhe; CP2: Requisitos e especificação de regras de negócio sobre ontologias de domínio da ciência da computação; CP3: Programação Orientada a Objectos e Padrões de Desenho. Conceitos de orientação programada a objetos. Padrões de desenho para geração, estrutura e de comportamento; CP4: Arquitetura de Software e o seu Desenho. Conceitos de arquitetura de software e padrões de arquitetura; CP5: Desafios da Engenharia de Software e Tendências Emergentes. Introdução a tópicos como inteligência artificial, aprendizagem automática ou cibersegurança.
-
ObjectivosObjectivesOA1: Aprofundar os conhecimentos do curso de Engenharia de Software I e adquirir espírito crítico na aplicação das ferramentas propostas; OA2: Saber interligar e aumentar a capacidade dos conhecimentos adquiridos em desenvolvimento de software; OA3: Aprender os princípios de padrões de desenho e perceber a sua aplicação; OA4: Aprender arquiteturas e técnicas de desenho de software para aplicações de grande escala.
-
BibliografiaBibliographySlides de Engenharia de software, fornecidos pelo docente da disciplina. Software Engineering, Ian Sommerville, 10th Edition, Addison-Wesley, 2016. Design Patterns: Elements of reusable object-oriented software, Gamma E., Helm R., Johnson R., Vlissides J., Addison-Wesley, 1995.
-
MetodologiaMethodologySerá proposto ao aluno a elaboração de guias de trabalho, sobre a implementação de conceitos de engenharia, nas platafomas usadas atualmente. Sempre que possível, os grupos de trabalho criarão WebApps, para ferramentas e plataformas de Gestão de equipas, Servicedesk, controlo de versões, relacionamento com clientes/Stakeholders, entre outras. Deverão os alunos fazer comparação, pelo uso e análise, da melhoria de desempenho no uso de ferramentas "LINT" na programação.
-
LínguaLanguagePortuguês
-
TipoTypeSemestral
-
ECTS6
-
NaturezaNatureObrigatório
-
EstágioInternshipNão




