Métodos Formais em Engenharia de Software

Mestrado Integrado em Engenharia Informática - MFES 2020/2021

Tópicos

Avisos

29 Nov - Os avisos de CSI estão agora nesta página: https://haslab.github.io/MFES/CSI/2021/index

27 Out - EM: o servidor do alloy4fun já está a funcionar.

12 Out - As aulas iniciam-se esta semana.

17 Set - Vídeo de apresentação da edição 2020/21 de MFES.

Education » MFES » WebHome » ATS

Análise e Teste de Software (H507O9)

Equipa Docente

João Saraiva: Aulas teóricas

José Nuno Macedo: Aulas laboratoriais

Sumários

Aula 1 (14/10)

(T + PL) Apresentação da disciplina. Combinadores de Parsing. "Embedded Domain Specific Languages". Gramáticas (BNF) como uma EDSL em Haskell: Combinadores de Parsing.

Material

Combinadores de Parser - Slides: Slides-Parsing.pdf

Combinadores de Parsing - Library: Parser.hs

Parser para a linguage Let: Parser_Let.hs

Combinadores de Parsing - Exercícios: *Parsing.pdf*

Aula 2 (21/10)

T: Métricas de Software e Smells de Código.

PL: O Sistema SonarQube.

Material

Software Metrics - Slides: SoftwareMetrics.pdf

Code Smells - Slides: CodeSmells.pdf

Sonarqube - Slides: SonarQube.pdf

Aula 3 (28/10)

T: Catálogo de Smells de Código e Program Refactoring.

PL: Program Refactoring em intelliJ.

Material

Program Refactoring - Slides: ProgramRefactoring.pdf

Program Refactoring - _ Exercícios_: Refactoring.pdf

Exemplos de Programas: Contactos.zip, Poligono.zip

Aula 4 (04/11)

T: Technical Debt. e Green Software.

PL: Análise da Technical Debt de um sistema de software usando o SonarQube. Utilização de refactorings do IntelliJ para eliminar smells e diminuir o Technical Debt.

Material

Technical Debt - Slides: TechnicalDebt.pdf

Green Software - Slides: GreenSoftware.pdf

Ficha de Exercícios: ficha.pdf

Software: Sofwate.zip

Aula 5 (11/11)

T: Green Software: Analysis and Optimization.

PL: Análise do consumo de energia usando a framework da Intel RAPL.

Material

Green Software Smells - Slides: GreenSoftware-Smells.pdf

RAPL - Software: RAPL_2020.tar.tgz

Aula 6 (18/11)

T: Software Testing: White Box vs Black Box Testing. Testing Layers. Testing coverage.

PL: The Java Unit testing framework JUnit. Exercises.

Material Software Testing - Slides: Testing-Coverage.pdf

Software Testing - JUnit: ficha-SwTesting.pdf

Aula 7 (25/11)

T: Software Testing: Automated Test Case Generation.

PL: The EvoSuite system. Exercises.

Material EvoSuite - Slides: Test-Generation-Using-EvoSuite.pdf

EvoSuite - Exercises: ficha-evosuite.pdf

Aula 8 (02/12)

T: Software Testing: Automated Test Case Generation and Property-based Testing.

PL: The QuickCheck. Exercises.

Material QuickCheck - Test Case Generation: AutomatedTestGenaration-2020-2021.pdf

QuickCheck - Property-Based Testing: PropertyBasedTesting-2020-2021.pdf

QuickCheck - Exercises: ficha-test_case_generation.pdf ficha-property_testing.pdf

Aula 9 (09/12)

T: Software Testing: Mutation-based Testing. Fault Localization.

PL: The PIT and CodeDefender. Exercises and Game.

Material PIT - Mutation-base Testing in Java - Ficha: ficha-mutation.pdf

Spectrum-based Fault Localization - Slides: FaultLocalization.pdf , Excel Template

Aula 10 (16/12)

T: Web-Based Testing. O Sistema Selenium.

PL: CodeDefender: practice.

Material

Web-Based Testing - Selenium: Selenium.pdf

Aula 11 (06/01)

T + PL: Teste Individual

Projeto em Grupo

Enunciado do projeto:. projeto.pdf

Material

Sistema de Software - Enúnciado/Requisitos: enunciado.pdf

Sistema de Software - Soluções: software.zip

Regime de Avaliação

A avaliação consiste em duas componentes: prova individual (PI) (teste ou exame escritos) e Projeto em Grupo (PG) (a resolver durante o semestre). As provas escritas são de consulta de material impresso, apenas.

A Nota final é calcula de acordo com a seguinte fórmula: 50% PI + 50% PG, com nota mínima de 8 valores em todas as componentes de avaliação.

O projeto em grupo será desenvolvido por grupos de 3 alunos.

Importante: O torneio de CodeDefender será disputado individualmente e poderá contibuir com (mais) dois valores na nota do projeto em grupo.

O início do torneio é 3a feira, dia 22/12, às 14:00, e será realizado no BlackBoard Collaborate Ultra.

Os resultados da fase de grupos estão disponíveis aqui. (ver worksheet: Resultados Fase de Grupos).

Haverá ainda uma eliminatória entre 5 alunos, em que os dois melhores passarão aos quartos de final. (ver worksheet: Eliminatorias).

Esta eliminatória será realizada no dia do teste (6 de Janeiro).

Os quartos de final, meia final e final serão realizados no dia 26 de Janeiro.

Os alunos podem praticar para o torneio no site local do Code Defender disponível aqui

Datas da Avaliação

Prova Individual: 06/01/2021 às 14:00 (última aula do semestre)

O teste do ano passado está disponível aqui.

Entrega do Projeto em Grupo: 25/01/2021

Torneio - Finais: 26/01/2021, às 14:00

Exame:: 17/02/2021 (a definir)

Alunos | Students

# Nome Curso Grupo
a84584 Alexandra de Barros Reigada MiEI 5
a84462 Alexandre Esteves Miranda MiEI 12
a83916 Ana João Dias de Almeida MiEI 3
a85762 Ana Afonso MiEI 1
a84475 Ana Rita Miranda Rosendo MiEI 9
a84807 André Sousa Figueiredo MiEI 3
a85516 António Manuel Carvalho Gonçalves MiEI 9
a78352 Bruno Cruz Veloso MiEI 4
pg42818 Carolina Resende Marques MiEI 6
pg39286 Emely da Mata Mendonça MEI 6
a76089 Etienne da Silva Filipe Amado da Costa MiEI 8
a65277 Flávio Manuel Machado Martins MiEI 1
a85579 Hugo Filipe Duarte Carvalho MiEI 2
a85573 Jorge Gabriel Alves Cerqueira MiEI 6
a84776 José Emanuel Silva Rodrigues MiEI 3
a85501 José Manuel Pires Rodrigues MiEI 7
a84577 José Pedro Oliveira Silva MiEI 10
a80791 João Diogo Mendes Teixeira da Mota MiEI 4
a83581 João Miguel Fernandes Cerqueira Soares MiEI 9
a80397 João Nuno Alves Lopes MiEI 1
a84241 Luís Manuel Azevedo Maia MiEI 11
a86265 Luís Pedro Barbosa Ferreira MiEI 3
e9867 Maria Medvidova Erasmus 8
a83840 Maria Moutinho Figueiredo da Silva MiEI 12
a85242 Maria Miguel Albuquerque Regueiras MiEI 5
a71407 Maurício Zulueta Lima Salgado MiEI 8
a44419 Miguel Mateus Ribeiro MEI 12
a83819 Miguel Rúben Silva de Oliveira MiEI 7
a84727 Nelson Correia Faria MiEI 7
a85493 Pedro Alexandre Gonçalves Ribeiro MiEI 2
a82535 Pedro Mendes Pinto MiEI  
a85700 Pedro Miguel Araújo Costa MiEI 10
a84783 Pedro Miguel Borges Rodrigues MiEI 10
a86266 Rafael Inácio Lourenço MiEI 4
a82568 Ricardo Jorge Silva Ferreira MiEI 11
a83765 Rodrigo da Silva Pimentel MiEI 11
a80789 Rui Filipe Brito Azevedo MiEI 8
a83712 Rui Filipe Moreira Mendes MiEI 2
a85176 Tânia Filipa Amorim da Rocha MiEI 5

r33 - 22 Feb 2021 - 08:55:10 - JoaoSaraiva
This site is powered by the TWiki collaboration platform Copyright © by the contributing authors. Ideas, requests, problems? Send feedback.
Syndicate this site RSSATOM