Métodos de Desenvolvimento de Software

Objetivos

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

Caracterização geral

Código

8148

Créditos

6.0

Professor responsável

Ana Maria Diniz Moreira, Vasco Miguel Moreira do Amaral

Horas

Semanais - 5

Totais - 52

Idioma de ensino

Português

Pré-requisitos

Não tem pré-requisitos.

Bibliografia

Software Engineering, Ian Sommerville (8th Edition or later) Addison-Wesley

UML 2 and the Unified Process: Practical Object-Oriented Analysis and Design (2nd Edition), Jim Arlow, Addison-Wesley Professional, 2005

Slides das Aulas Teóricas e Fichas de Exercícios das Aulas Práticas e alguns  elementos de revisões da matéria

A code of ethics and professional practice for software engineering, ACM/IEEE-CS Joint Task Force on Software Engineering Ethics and Professional Practices, 2004.

Tools:Gantter (Ferramenta de gestão de projeto), Star UML (Editor de UML), USE Tool (UML tool with OCL support), UML quizzes (online)


Método de ensino

As aulas teóricas consistem na exposição de matéria, ilustrada com exemplos de aplicação, e suportada por diapositivos e pela utilização do ambiente de desenvolvimento no computador do docente.
Nas aulas de laboratório, os alunos resolvem exercícios que constituem exemplos concretos de aplicação dos conceitos dados nas anteriores aulas teóricas. Adicionalmente, serão definidos momentos no horário das aulas dedicados, onde os alunos poderão consultar o respectivo docente sobre dúvidas relacionadas com a interpretação do enunciado no desenvolvimento do projecto.
Os alunos podem esclarecer dúvidas durante as aulas ou nos horários de atendimento.

Método de avaliação

A avaliação na cadeira de MDS processa-se de maneira diferente:

  E1 - Para estudantes de 1ª inscrição ou que nunca obtiveram aproveitamento na componente prática descrito em I, II,III eiV.

  E2 - Para os restantes.

 

Os estudantes abrangidos pelo método E1 têm que obter aprovação nas componentes teórica e prática, cujo funcionamento é descrito de I a IV. A classificação de cada componente de projecto e testes é expressa na escala de 0 a 20 valores (com arredondamento às décimas).Apenas a nota final será arredondada às unidades.

 

A avaliação dos estudantes abrangidos pelo E2 é descrita de V a VIII.

 

I– Componente Teórica– Testes e Exame

 

1. A classificação da componente teórica (NT) é a média aritmética arredondada às décimas das classificações obtidas nos 2 testes (a classificação de cada teste é arredondada às décimas) ou a classificação do exame final arredondada às décimas.

2. Os estudantes que obtenham uma classificação NT igual ou superior a 9,5 valores obtêm aprovação na componente teórica.

3. Cada teste incidirá essencialmente sobre toda a matéria leccionada nas aulas teóricas, e posta em prática nos laboratórios, até às aulas teóricas da semana anterior à semana da realização do teste.

4. Apesar de a avaliação nos testes não ser cumulativa, e devido à natureza dos assuntos abordados nesta Unidade Curricular, não é excluído que um elemento de avaliação se socorra de conhecimentos respeitantes à matéria avaliada em elemento(s) anterior(es).

5. Os testes realizam-se no horário previamente anunciada(s) no CLIP. A cadeira contará ainda com um portal no moodle onde serão colocados os links zoom (que se repetirão ao longo do semestre) para cada turno prático e aulas teóricas. 

6. Todos os estudantes E1 têm obrigatoriamente que estar inscritos num turno teórico e prático.

[OS PONTOS SEGUINTES ATÉ 10. PODERÃO SOFRER MODIFICAÇÕES DADA SITUAÇÃO CORRENTE COVID-19]

7. Os testes e exames serão presenciais. Os estudantes só poderão ter consigo durante a prova de avaliação:

 a. Lápis/Caneta e borracha;

 b. Obrigatório: Documento de identificação com fotografia;

8. Durante a realização das provas não é permitida a utilização de aparelhos electrónicos, tais como máquinas de calcular e telemóveis (os quais devem estar desligados e não podem estar sobre as mesas onde é realizada a prova).

9. Não é permitido desagrafar as folhas dos cadernos com os enunciados e com as resoluções feitas pelos estudantes na prova.

10. A prova será anulada se não forem satisfeitos os nºs 6,7 e 8.

11. Os estudantes que cometam fraude numa prova de avaliação (Teste ou Exame) terão a referida prova anulada, estão automaticamente reprovados na unidade curricular no presente ano lectivo, e perdem a frequência caso já a tenham obtido em anos lectivo anteriores, o que implica que terão que obter frequência no ano lectivo seguinte.

 

 

II – Componente Projecto

 

1. As aulas práticas terão início na semana de de 21 a 25 de Setembro.

2. Na segunda aula prática de cada turno serão constituídos automáticamente pelo corpo docente os grupos de trabalho (o número de  estudantes por grupo será de 5 alunos do mesmo turno prático).

3. A realização do projecto implica, desde o dia da publicação do seu enunciado:

a. Submissão na plataforma moodle de relatórios semanais (a detalhar no enunciado) e apresentação oral de sumário de andamento de projecto na aula prática correspondente.

b. Cumprimento de 3 milestones (M1, M2, M3) com entrega de artefactos do projecto P1, P2 e P3 (a detalhar no enunciado), incluindo os sumários de status do projecto semanais (de acordo com uma template fornecida pelo corpo docente). O cumprimento destas milestones e sua avaliação corresponderá cada a 15% da nota Final (ou dito de outra forma, cada Px corresponde a 1/3 da nota do componente de projeto NP).

c. O Relatório Final deverá conter todos os elementos requeridos no enunciado do projecto em formato electrónico.

4. O projecto será discutido e avaliado oralmente na última semana de aulas.

5. A classificação da componente projecto (NP) será determinada pelo conjunto da avaliação da Entrega final do projecto e discussão oral.  Este valor será apresentado na escala de 0 a 20, sendo o resultado da soma dos três componentes Px arredondados às décimas

6. Os estudantes que obtenham uma classificação NP igual ou superior a 9,5 valores obtêm Frequência na cadeira.

 

III – Frequência

1. Os estudantes que obtenham Nota do Projecto (NP) >=9,5 obtêm frequência à unidade curricular.

2. A frequência obtida no ano lectivo anterior (edição de 2019/20) é válida no corrente ano lectivo, sendo que a nota do projecto será considerada para o cálculo nota final de acordo com a fórmula de cálculo do ano a que a frequência foi obtida.

3- Os estudantes que tenham obtido frequência em 2019/20, e queiram fazer uso desta, podem-se inscrever nos turnos teórico e práticos, e estão admitidos ao exame regular ou testes (E2 Avaliação). 

[ATENÇÃO] No caso, no caso de pretender usar a frequência do ano anterior, é obrigatório enviar um e-mail aos docentes (regente e professor do turno prático correspondente), até ao fim da primeira semana de aulas (18 de Setembro), a indicar que não pretendem fazer projecto

Uma vez formados os grupos de projecto, o aluno não poderá mais usar a frequência. 

 

 

IV – Classificação Final dos Estudantes E1

1. A classificação final (CF) é o resultado da seguinte expressão aproximado às unidades:

 

CF=NT×0.55+NP×0.45

2. Os estudantes que obtenham frequência, cuja nota final provisória seja positiva, e apresentem uma discrepância na nota do Projecto (NP) superior a 4 valores em relação à média dos testes NT são admitidos a uma prova oral.

3. Na prova oral mencionada no número anterior, os estudantes podem subir ou descer a nota final com a garantia de classificação mínima CF=NT.

4. A ausência à prova oral referida no número anterior traduz a aceitação por parte do estudante da nota final de NF = NT

 

V – Estudantes E2

1. Estes estudantes têm frequência de MDS na edição de 2019/2020 perdem automaticamente este estatuto, regendo-se pelas mesmas regras de E1, caso não informem os docentes da cadeira até ao fim da primeira semana de aulas (impreterívelmente até 25 de Setembro) .

2. Estes estudantes podem estar inscritos num turno prático e no turno teórico.

3. A classificação da componente teórica (NT) é a classificação da média dos dois testes ou do Exame de Recurso com arredondamento até às décimas.

 

VI – Classificação Final dos E2 (Frequência no ano 2019/2020)

1. Os estudantes que obtenham uma classificação NT igual ou superior a 9,5 valores obtêm aprovação na unidade curricular.

2. A classificação final é igual à classificação NF=NT×0.6+NP×0.40 arredondada às unidades.  

VII – Melhoria de Nota

1. Os estudantes que pretendam efectuar melhoria de nota devem cumprir, para esse efeito, as formalidades legais de inscrição.

3. Devido ao facto de haver mudança substâncial na fórmula de cálculo, tendo o componente de projecto maior peso e foco de matéria distinto que em anos anteriores, a nova classificação final é obtida considerando a fórmula de cálculo do ano em que a frequência foi obtida.

No entanto, é dada a possibilidade de os alunos realizarem durante o semestre lectivo melhoria da componente de projecto, se assim o entenderem, tendo para isso que informar o regente da cadeira na primeira semana de aulas (impreterívelmente até 25 de Setembro). Neste último caso a NF=0,45*NP+0,55*NT.

 

VIII – Trabalhadores Estudantes (primeira vez na cadeira)

1. Os estudantes são considerados como detentores do estatuto de Trabalhador Estudante se constarem como tal nas pautas no CLIP.

2. Os estudantes devem, assim que possível, comunicar o seu estatuto ao docente regente da unidade curricular.

3. Os estudantes detentores do estatuto de Trabalhador Estudante, tal como os restantes estudantes, têm que realizar as provas de avaliação (testes, projectos e exames) segundo o calendário previamente tornado público.

4. O Componente de Avaliação Final será

CF=NT×0.55+NP×0.45

 

IX – Aulas

1. Links zoom das aulas estarão identificadas tanto no CLIP como no portal da cadeira no moodle.

2. Formato da aula teórica 90 min = 10 (tolerância para mudança de aulas e setup) + 70 (exposição) + 10 (fecho)

3. Formato da aula Prática 120 min = 10 (tolerância para mudança de aulas e setup) +  30 (sumário de progresso dos projectos) + 75 (exposição + exercícios) + 5 (fecho)

 

X – Outros

1. É total responsabilidade do aluno acompanhar as aulas teóricas e práticas (ou fazer-e informar por colegas em caso de ausência), sendo que qualquer mensagem e conteúdo de matéria ou informações de natureza administrativa transmitido durante as aulas não será repetido.

2. Ao contactar por e-mail com os professores, os estudantes devem iniciar o Assunto (Subject) com  “[MDS]" e o conteúdo da mensagem deverá conter Turno – Nome – Nº de estudante – Assunto. 

3. Não serão respondidas mensagens electrónicas com perguntas cuja resposta conste nos pontos anteriores ou na página da unidade curricular no CLIP, portal moodle, ou que tenham sido devidamente esclarecidas nas aulas teóricas.

4. O meio de comunicação privilegiado deverá ser o horário de atendimento dos docentes, dedicados a dúvidas técnicas (que deverão ser marcadas até um dia de antecedência via e-mail com o professor do horário correspondente) e aulas teóricas ou práticas. As mensagens de email não relacionadas com  conteúdo técnico serão respondidas com a brevidade possível, ou oralmente nas aulas teóricas quando demonstrem ser de interesse geral sendo responsabilidade do aluno tomar conhecimento do que foi dito.

5. Os e-mails não serão respondidos (com a ressalva, naturalmente, de casos excepcionais justificados) fora de horário normal laboral dos docentes.

Conteúdo

Parte 1:
1. Introdução aos Processos de Desenvolvimento de Software

2. Paradigmas de elicitação e modelação mais importantes

3. Requisitos Funcionais e Não-Funcionais

4. UML

 a) Requisitos: Diagramas de Caso de Uso

b) Comportamento: Diagramas de Atividade, Sequência e Estados

c) Estrutura: Diagramas de Classes, Objetos e Pacotes

d) OCL (Object-constraint language)

Parte 2:

1. Princípios de Arquitetura e Desenho

2. Ferramentas e Ambientes

3. UML

a) Arquitetura: Modelos de Componentes e Instalação

b) Persistência: Derivar modelos Entidade-Relação

Parte 3:

1. Introdução à gestão de projetos

2. Código de ética Profissional

Cursos

Cursos onde a unidade curricular é leccionada: