
Métodos de Desenvolvimento de Software
Código
8148
Unidade Orgânica
Faculdade de Ciências e Tecnologia
Departamento
Departamento de Informática
Créditos
6.0
Professor responsável
Ana Maria Dinis Moreira, Vasco Miguel Moreira do Amaral
Horas semanais
5
Total de horas
68
Língua de ensino
Português
Objectivos
Saber
a) Ciclo de desenvolvimento, ferramentas, métodos e técnicas de gestão, especificação e desenho de projetos em larga escala, que envolvam equipas grandes e multidisciplinares
b) Importância das atividades de desenvolvimento de um projeto, das abordagens e dos modelos que integram estas atividades para enfrentar problemas complexos de uma forma pragmática, mas rigorosa
c) Abordagens de modelação estruturada, ágil e orientada a objetos
d) Responsabilidade Profissional e Social do Engenheiro Informático
Fazer
e) Lidar e modelar problemas complexos (Domínio do Problema e da Solução)
f) Interpretar, compreender e discutir problemas com requisitos mal definidos (omissões, ambiguidades, contradições, duplicações)
g) Usar técnicas de desenvolvimento de software estruturadas, ágeis e orientadas a objetos
h) Usar ferramentas adequadas à especificação e desenho
Conteúdo
Parte 1:
Introdução aos Processos de Desenvolvimento de Software
-
Utilidade dos processos
-
Modelos (cascata, incremental, prototipagem rápida, ágil) e fases do ciclo de vida
Paradigmas de elicitação e modelação mais importantes
-
Estruturado
-
Orientado a objetos
-
Ágil (Scrum, xProgramming)
Requisitos Funcionais e Não-Funcionais
UML
-
Requisitos: Diagramas de Caso de Uso
-
Comportamento: Diagramas de Atividade, Sequência e Estados
-
Estrutura: Diagramas de Classes, Objetos e Pacotes
-
OCL (Object-constraint language)
Parte 2:
Princípios de Arquitetura e Desenho
-
Desenho arquitetural e de detalhe
-
Separação de assuntos
-
Coesão e acoplamento
-
Reutilização de estruturas standard
Ferramentas e Ambientes
UML
-
Arquitetura: Modelos de Componentes e Instalação
-
Persistência: Derivar modelos Entidade-Relação
Parte 3:
Introdução à gestão de projetos
-
Atividades de gestão
-
Planeamento e Agendamento de projetos
-
Gestão de riscos
Código de ética Profissional
Bibliografia
Software Engineering: A Practitioner''s Approach, Roger Pressman, McGraw-Hill, 2009
The Unified Modeling Language User Guide, G. Booch, J. Rumbaugh & I. Jacobson, Addison-Wesley Professional; 2nd edition, May 29, 2005
UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design (2nd Edition), Addison-Wesley Professional; 2 edition, July 7, 2005
Writing Effective Use Cases, A. Cockburn, Addison Wesley, 2000
The Object Constraint Language: Getting Your Models Ready for MDA (2nd Ed.), Anneke Kleppe, Jos Warmer, Addison-Wesley, ISBN 0321179366, 2003
The Unified Software Development Process, I. Jacobson, G. Booch & J. Rumbaugh, Addison-Wesley, 1999
UML 2 Toolkit (e-book), Hans-Erik Eriksson, John Wiley & Sons, 2003, ISBN: 0471463612.
A code of ethics and professional practice for software engineering, ACM/IEEE-CS Joint Task Force on Software Engineering Ethics and Professional Practices, 2004
Extreme Programming Explained: Embrace Change, 2nd Edition, Kent Beck and Cynthia Andres, Addison-Wesley, 2004
Agile Software Development with Scrum, Ken Schwaber, Mike Beedle, Prentice-Hall, 2001
Modern Structured Analysis, Edward Yourdon, Prentice Hall, 1988
Método de ensino
Aulas teóricas
Estas aulas decorrem num anfiteatro. O professor apresenta a matéria através da projecção, quer de transparentes (os quais são posteriormente disponibilizados na página da disciplina), quer de demonstrações com recurso a uma ou mais ferramentas, ilustrando os diversos assuntos com exemplos de modelação adequados.
Aulas práticas
Estas aulas decorrem preferencialmente em laboratório equipado com computadores, sendo os a turma desdobrada em turnos práticos, com dimensão tal que permita o trabalho em grupos de 3 alunos.
Método de avaliação
Nota: Qualquer aluno envolvido numa fraude (detectada imediatamente ou a posteriori, no trabalho, testes ou no exame) reprova imediatamente na disciplina. Será dado igualmente seguimento ao procedimento de fraude académica, sendo comunicada às devidas instâncias na direcção da FCT / UNL com vista a activar as medidas punitivas previstas no regulamento da Faculdade.
O ensino consiste na exposição da matéria em aulas teóricas e na resolução de problemas em aulas práticas de laboratório. No laboratório, os alunos vão exercitar UML, conhecimento necessário à realização do projecto assim como matéria relacionada com gestão de projectos. Estas aulas de laboratório não serão dedicadas ao acompanhamento do trabalho final, (pontualmente, se assim o justificar, o docente poderá dedicar tempo a esclarecimentos gerais e clarificação de eventuais ambiguidades).
O trabalho é obrigatório em grupos de 3 alunos, em 2 fases, entregues em datas marcadas e sujeitas a avaliação independente.
Os testes são sem consulta, escritos e individuais.
1) Avaliação Contínua (datas eventualmente sujeitas a ligeira modificação para ajustamento com o esquema de avaliação de outras cadeiras):
- Notas combinadas das tuas fases do trabalho, valendo cada uma 20% da nota final (NP).
Discussão: durante o horários dos laboratórios e teóricas a agendar oportunamente
- Notas combinadas de 2 testes, valendo cada 30% da nota final (NT).
2- Em época de recurso, a nota dos dois testes é substituída pela nota do exame, que vale 60% (NT) da nota final.
3- O aluno obtém aprovação se ambas as notas NP e NT forem superiores ou iguais a 10 valores em 20.
4- Plano de transição:
Os alunos a quem, no ano lectivo de 2011/2012 e 2010/2011, tenha sido reconhecida frequência para efeitos de acesso a exame final, poderão optar pela não realização dos projectos (contactar o docente). Nesse caso, deverão inscrever-se à mesma em qualquer turno prático (uma vez que serão aulas dedicadas a exercícios). A sua nota final será a média dos dois testes (50%+50%) ou a do exame de recurso. Este calculo considera-se cancelado assim que o aluno fizer qualquer entrega de trabalho para avaliação. Neste último caso, significará que o peso das referidas classificações passe de 100% para 60%, à semelhança do que acontece com qualquer aluno sem frequência anterior.
5- As melhorias de nota apenas se realizam por exame de recurso, sendo a nota final igual à nota do exame.