Engenharia de Software
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Engenharia de Software |
Ocorrência: 2011/2012 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português
Objetivos
Objectivos:
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:
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.
Programa
1. INTRODUÇÃO: problemática do desenvolvimento de software; objetivos e âmbito da engenharia de software; ética e responsabilidade profissionais.
2. PROCESSO DE SOFTWARE: noção de processo de software; modelos de processos; métodos ágeis; atividades do processo; métricas de desempenho; exemplos de processos (Personal Software Process e Rational Unified Process).
3. GESTÃO DE PROJECTOS DE SOFTWARE: estimação, planeamento, monitorização e controlo de projecto; organização e gestão de equipas; gestão de riscos; exemplos de metodologias (Scrum e Team Software Process).
4. ENGENHARIA DE REQUISITOS: requisitos de software; processo de engenharia de requisitos; modelação de requisitos com UML (modelos de casos de utilização); documentação de requisitos; prototipagem de interfaces.
5. DESENHO DE SOFTWARE:desenho de arquitetura; modelação de arquitetura com UML; reutilização (componentes, frameworks e linhas de produtos); desenho detalhado; desenho da interface para o utilizador.
6. 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.
7. 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.
8. 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.
9. MELHORIA DE PROCESSOS: ciclo de vidas dos processos; 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
Enterprise Architect
Eclipse
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
56,00 |
|
|
Conclusão de exercícios, projetos e trabalhos |
Trabalho escrito |
28,00 |
|
2011-12-16 |
Exame final |
Exame |
5,00 |
|
2012-02-10 |
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo individual |
Estudo autónomo |
28 |
2011-12-16 |
Preparação para exames |
Estudo autónomo |
45 |
2012-02-10 |
|
Total: |
73,00 |
|
Obtenção de frequência
Obtenção de um mínimo de 45% 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,7*EF + 0,3*IP
em que:
- EF – Classificação obtida no exame final;
- IP – Classificação obtida nas aulas práticas, em que o trabalho de pesquisa é cotado em 2 valores e cada uma das restantes aulas (de realização de exercícios e pequenos projetos) é cotada em 1 valores.
Para obtenção de aprovação:
- CF>=9,5
- É exigido um mínimo de 45% em cada uma das 2 componentes.
Avaliação especial (TE, DA, ...)
Os mini-projectos, exercícios e trabalho 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.
É 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 mini-projectos, exercícios e trabalho 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.