Metodologias de Desenvolvimento de Software

Conhecimentos de Base Recomendados

Experiência em programação.

Métodos de Ensino

Os temas lecionados e os materiais de estudo são apresentados e discutidos, sendo dada ênfase à análise e discussão de casos de estudo. São ainda efetuadas análises direcionadas, realização de atividades e apresentação e defesa dos trabalhos.

Os trabalhos constam essencialmente da escrita de pequenos relatórios relacionados, que são apresentados e discutidos pela turma.

Algumas aulas servem para a realização de atividades práticas, como o planeamento e execução de tarefas relacionadas com o desenvolvimento de um pequeno projeto.

Resultados de Aprendizagem

Nesta unidade curricular são abordadas diversas metodologias de desenvolvimento de software, incluindo tradicionais e ágeis. Os alunos serão capazes de planear e aplicar planos simples para desenvolvimento de aplicações e sistemas. Ao completarem esta unidade curricular, os alunos deverão ser capazes de:

  • Identificar as diferentes fases do ciclo de vida de software.
  • Conhecer metodologias ágeis e tradicionais de desenvolvimento de software.
  • Compreender os objetivos e níveis de maturidade de software.
  • Desenvolver pequenas aplicações recorrendo a metodologias ágeis.
  • Justificar a aplicação de diferentes metodologias a projetos concretos.
  • Analisar projetos reais de desenvolvimento de software e sistemas de informação.
  • Escrever artefactos claros, concisos e tangíveis.

Programa

  1. Motivação
    • Casos de estudo sobre problemas relacionados com desenvolvimento de software
    • Exemplos de abordagens de desenvolvimento de software
  2. Processo de software
    • Processo, framework, ciclo de vida
  3. Modelos de Processos e Avaliação
    • ISO/IEC 12207, CMMI, ISO/IEC 15504
  4. Metodologias tradicionais
    • Modelos em cascata, incrementais, evolutivos
  5. Metodologias ágeis
    • Scrum, Extreme Programming, Kanban, Agile Unified Process, DevOps
  6. Design Thinking
  7. Conclusões
    • Análise global

 

Docente(s) responsável(eis)

Estágio(s)

NAO

Bibliografia

  • Abrahamsson, Pekka, Outi Salo, Jussi Ronkainen, and Juhani Warsta. Agile Software Development Methods – Review and Analysis. Finland: VTT Publications, 2002.
  • Pressman, Roger S. Software Engineering: a practitioner’s approach – 6th ed. New York: McGraw-Hill, 2005.
  • Shore, James, and Shane Warden. The Art of Agile Development. O’Reilly, 2007
  • Tsui, Frank, and Orlando Karam. Essentials of Software Engineering. Sudbury, MA: Jones and Bartlett Publishers, 2007
  • Vários artigos e casos de estudo