Partilhar: WhatsApp
aulify
UC UC02837 · T. Desenv. Software

Ficha 02 · Git, qualidade e PAP

Controlo de versões, CI, relatório e defesa
Versão · Aluno
Tempo · 60 minutos
Cotação · 100 pontos
Aluno(a)
Turma
Data
Objectivos da ficha

Parte I · Git

Exercício 1 · Comandos (15 pts)

Indica o comando Git para:

a) Iniciar repositório. ___

b) Preparar todos os ficheiros alterados. ___

c) Gravar com mensagem. ___

d) Enviar para o remoto. ___

e) Criar e mudar para nova branch "feature/login". ___

f) Ver histórico resumido. ___

Exercício 2 · Conventional commits (15 pts)

Reescreve estas mensagens de commit no formato convencional:

a) "mudei coisas"

b) "agora o login funciona"

c) "arranjei o bug do total errado no carrinho"

d) "actualizei o readme"

Exercício 3 · .gitignore (10 pts)

Escreve um .gitignore para um projecto Python web com virtualenv, base SQLite e ficheiro de secrets.

Exercício 4 · Fluxo com branch + PR (10 pts)

Descreve, em comandos, o fluxo para desenvolver uma funcionalidade "carrinho" sem mexer directamente na main.

Parte II · Qualidade

Exercício 5 · CI (10 pts)

a) O que é Integração Contínua (CI)?

b) Que vantagem traz a uma PAP individual?

Exercício 6 · Code smells (15 pts)

Identifica 3 problemas de qualidade neste código e como melhorar:

def p(d):
    x = d['preco'] * d['qtd']
    if d['tipo'] == 1:
        x = x * 0.9
    elif d['tipo'] == 2:
        x = x * 0.8
    return x

Parte III · PAP

Exercício 7 · Estrutura do relatório (15 pts)

Lista a estrutura (capítulos) de um relatório de PAP e explica o objectivo de cada um em 1 frase.

Exercício 8 · Preparar a defesa (10 pts)

Vais defender a PAP perante um júri. Lista 5 cuidados para a apresentação oral.