Buscar

INF1028 (2023 1) - Análise detalhada dos Projetos

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 31 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Análise Detalhada
 dos Projetos
INF1028 – Projeto e Construção de Software
Alessandro Garcia and Daniel Coutinho
 
Criteria
► Active
► Open Source 
► Hosted on GitHub
► At least 3 years of existence 
► Multiple developers
► Modern code review applied (through GitHub Pull Requests)
► Feasible Installation
2
Recommended Languages
3
General Information
4
spring-boot zulip mockito JabRef matplotlib
Commits 41883 50438 5905 17986 46753
Open PRs 32 1123 7 22 325
Closed PRs 5582 15820 1465 5821 15829
Open Issues 580 1779 321 361 1507
Closed Issues 28198 6050 1149 3481 7852
~Lines of Code 754.2k 1.0m 112k 1.6m 790k
Useful Information
► README
► Contribution Guidelines
► Issue Template
► Code of Conduct
► Pull Request Instructions/Template
5
6
7
8
9
10
11
12
13
Useful Information
14
zulip mockito matplotlib JabRef spring-boot
README
Contribution 
Guidelines
Issue 
Template
Code of 
Conduct
Pull Request 
Instructions
15
Spring-boot (last month)
16
Mockito (last month)
17
JabRef (last month)
18
Zulip (last month)
19
Matplotplib (last month)
20
Refactoring Activity
21
Tools – Refactoring
22
► RefactoringMiner – State of the art for Java projects
► Forks for Kotlin and Python (KotlinRMiner, PyRef, 
Py-RefactoringMiner)
► RefDiff – Multi-language refactoring detection tool
► Works as a Java Library instead of as a command line 
tool
► Supports Java, Javascript and C 
Non-Functional Requirements
► A NFR Commit should address one (or more) NFR
23
NFR commits
24
25
26
NFRs (Labels)
27
Next Steps
► Evaluate candidate projects
► Domain 
► Documentation 
► README and artifacts to setup the Project 
► Templates for contributions 
► Closed Issues/PRs
► Source Code: Good practices 
► Modules that are easily understandable
28
Projects (last 4 semesters)
29
Tools – Static Analysis
► PMD 
► Open Source Static Analyzer
► Mainly for Java, has limited support for other languages
► SonarQube Community Edition
► Free and open source version of a proprietary static 
analyzer
► Support Java, C#, PHP, Python, Javascript, Typescript, 
Kotlin, Ruby, Go, Python, and a few other
30
Análise Detalhada
 dos Projetos
INF1028 – Projeto e Construção de Software
Alessandro Garcia and Daniel Coutinho

Outros materiais