Engenharia de Software
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Engenharia de Software |
Ocorrência: 2015/2016 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português
Objetivos
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.
Resultados de aprendizagem e competências
No final da unidade curricular, os estudantes deverão ser capazes de:
- descrever os princípios, conceitos e práticas da engenharia de software e do ciclo de vida do software;
- conhecer e saber aplicar as técnicas e ferramentas necessárias para executar e gerir as várias actividades do processo de desenvolvimento de software de qualidade;
- explicar os métodos e processos de construção de diferentes tipos de sistemas de software.
Modo de trabalho
Presencial
Programa
- INTRODUÇÃO: problemática do desenvolvimento de software; objetivos e âmbito da engenharia de software.
- PROCESSO DE SOFTWARE: noção de processo de software; modelos de processos; métodos ágeis; atividades do processo; métricas de desempenho; exemplo do Rational Unified Process.
- GESTÃO DE PROJECTOS DE SOFTWARE: estimação, planeamento, monitorização e controlo de projecto; gestão ágil e gestão clássica de projetos; organização e gestão de equipas; gestão de riscos.
- ENGENHARIA DE REQUISITOS: requisitos de software; documentos de requisitos; processo de engenharia de requisitos; modelação de requisitos com UML (diagramas de casos de utilização e diagramas de atividades); prototipagem de interfaces.
- DESENHO DE SOFTWARE:desenho de arquitetura; modelação de arquitetura com UML (diagramas de "deployment", componentes e "packages"); reutilização (componentes, frameworks e linhas de produtos); desenho detalhado.
- CONSTRUÇÃO DE SOFTWARE: ambientes integrados de desenvolvimento; ambientes de desenvolvimento rápido; ambientes de desenvolvimento baseados em modelos; integração contínua; gestão de versões; desenvolvimento ágil com XP.
- VERIFICAÇÃO E VALIDAÇÃO DE SOFTWARE: conceitos básicos; testes unitários, de integração, de sistema e de aceitação; revisões e inspecções de software; registo de defeitos; análise estática de código.
- EVOLUÇÃO DE SOFTWARE: processos de evolução; dinâmica da evolução de programas; manutenção de software; sistemas legados; engenharia reversa e re-engenharia do software.
- MELHORIA DE PROCESSOS: ciclo de vidas dos processos; métricas; melhoria de processos com PSP/TSP; o modelo de maturidade CMMI.
Bibliografia Obrigatória
Ian Sommerville;
Software engineering (9th edition), Addison-Wesley, 2011. ISBN: 9780137035151 (Na biblioteca da FEUP existe apenas a 8ª edição)
Bibliografia Complementar
Russ Miles & Kim Hamilton; Learning UML 2.0, O'Reilly, 2006. ISBN: 0-596-00982-8
Silva, Alberto Manuel Rodrigues da;
UML, metodologias e ferramentas CASE. ISBN: 989-615-009-5
Humphrey, Watts S;
A discipline for Software engineering. ISBN: 0-201-54610-8
Métodos de ensino e atividades de aprendizagem
A disciplina tem uma componente teórica baseada em aulas de exposição e discussão, que incluem a descrição dos problemas, as metodologias de análise e as soluções e boas práticas preconizadas. As aulas teórico-práticas serão dedicadas à aplicação prática e aprofundamento dos conceitos e técnicas apresentados nas aulas teóricas, através de exercícios, pequenos projetos e trabalhos de pesquisa.
Software
Eclipse
Enterprise Architect
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Designação |
Peso (%) |
Exame |
50,00 |
Trabalho escrito |
50,00 |
Total: |
100,00 |
Componentes de Ocupação
Designação |
Tempo (Horas) |
Elaboração de projeto |
28,00 |
Estudo autónomo |
78,00 |
Frequência das aulas |
56,00 |
Total: |
162,00 |
Obtenção de frequência
Obtenção de um mínimo de 40% na componente IP (Informação Prática).
Fórmula de cálculo da classificação final
A classificação final (CF) da disciplina será calculada segundo a seguinte fórmula: CF= 0,5*EF + 0,5*IP em que:
- EF – Classificação obtida no exame final;
- IP – Classificação obtida nas trabalhos práticas.
A componente IP compreendendo :
- 5 trabalho de pesquisa - 2 valores cada.
É exigido um mínimo de 40% em cada uma das 2 componentes.
Avaliação especial (TE, DA, ...)
Os trabalhos de pesquisa são obrigatórios para todos os alunos, mesmo para os alunos dispensados de frequência às aulas ao abrigo de estatutos especiais. Tais estudantes ficam apenas dispensados da discussão do progresso do projeto nas aulas práticas, podendo ser chamados para discussão com os docentes. É válida no entanto a classficiação de frequência do ano anterior.
Melhoria de classificação
A classificação do exame pode ser melhorada em exame de recurso. As classificações obtidas nos trabalhos de pesquisa podem ser melhoradas na edição seguinte da disciplina.
Observações
Para a frequência desta unidade curricular é de toda a conveniência terem concluído LPOO.