Engenharia de Software
- Detalhes
- Categoria: Disciplina
- Pressman, R. S., & Maxim, B. (2020). Software Engineering: A Practitioner’s Approach (9ª ed.). McGraw-Hill. Bass, L., Clements, P., & Kazman, R. (2021). Software Architecture in Practice (4ª ed.). Addison-Wesley / SEI. Farley, D. (2018). Modern Software Engineering: Doing What Works to Build Better Software Faster. O’Reilly. IEEE Computer Society. (2022). Guide to the Software Engineering Body of Knowledge (SWEBOK). IEEE. O’Connor, R., et al. (2014). Software Engineering Education for a Global E-Service Economy: State-of-the-Art Trends and Developments. Springer. Arora, R. (2025). Software Engineering Made Easy. Springer.
- Engenharia Informática (ISMAT)
- 587
- 7341
- Engenharia de Software
- ISMAT587-7341
- 2
- 6
- 0
- 12
- Não
- Português
- A metodologia de ensino inclui o método expositivo (ME1) para apresentar os conteúdos necessários, o demonstrativo (ME2) para ilustrar a sua aplicação a casos práticos e o ativo (ME3) para resolução de exercícios em sala de aula, com e sem recurso ao computador. A avaliação de conhecimentos é feita por avaliação contínua ou por prova escrita de exame final. A avaliação contínua inclui a realização de dois testes escritos com uma ponderação de 21,25% cada e um de grupo (42,5%) e a participação ativa nas aulas (10%). A assiduidade será um elemento adicional de avaliação com uma ponderação de 5%. Ao longo do semestre são disponibilizados Quizes após as aulas (acerca do tópico dado) ou com grupo de perguntas referentes a tópicos da matéria dada como forma dos alunos irem aferindo o seu conhecimento das matérias já lecionadas.
- Obrigatório
- OA1. Compreender os métodos, técnicas e ferramentas para o completo desenvolvimento de um sistema de software, desde a sua conceção até à sua entrega e manutenção. OA2. Saber planear, gerir, avaliar e garantir a qualidade do desenvolvimento de projetos de software utilizando os princípios da Engenharia de Software.
- CP1. Introdução à Engenharia de Software; CP2. Modelos e processos desenvolvimento de software; Modelos Clássicos: Cascata (contexto histórico) Modelos Ágeis: Agile (framework de Scrum) CP3. Modelação de sistemas; Análise de requisitos Diagrama de domínio Diagrama de conceitos Casos de uso CP4. Desenho da arquitectura; Análise Desenho Avaliação Evolução CP5. Desenho e implementação; Padrões UML Princípios de desenvolvimento orientado a objectos: S.O.L.I.D, KISS, entre outros. CP6. Verificação e validação; Conhecer os diferentes tipos de testes Aplicação de testes unitários CP7. Segurança e Confiabilidade CP8. Integração Contínua Vantagens Ferramentas e tecnologias
A avaliação será conduzida da seguinte forma:
-
21,25% — Teste de Avaliação 1 (teórico): aplicado sobre ferramentas da Engenharia de Software, uso de metodologias de software, entre outros.
-
21,25% — Teste de Avaliação 2 (teórico): focado nos conceitos de artefatos de software e testes de software.
-
42,50% — Projeto (prático): elaboração de artefatos de software aplicados a uma metodologia adequada, com ênfase em escrita acadêmica.
-
10% — Assiduidade: mínimo de 75% de presença nas aulas, avaliado durante todo o semestre.
-
5% — Participação: engajamento e contribuições ao longo do semestre.
Observação
A autoavaliação será considerada para a pontuação dos projetos, bem como para a análise das habilidades, competências e capacidade de autocrítica.
-
- Semestral
- A Engenharia de Software ensina o desenho, escrita de código e testes, e manutenção de programas que têm um propósito de resolver problemas complexos com soluções eficientes e seguras. Todas as unidades curriculares anteriores tem um maior foco na sintaxe e técnicas de programação enquanto nesta unidade curricular os alunos aprendem as técnicas de de desenhar e desenvolver software de uma forma eficiente, legível, modular e escalável. Esta unidade curricular é essencial para desenvolver as capacidades de desenho e programação que os alunos vão enfrentar no mercado de trabalho.