Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.
Transcript of Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.
![Page 1: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/1.jpg)
arfs – Aluisio Rodrigo Fonseca de Santanafns2 – Fagner Nascimento e Silva
![Page 2: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/2.jpg)
Jomic é um visualizador de “comics” suportando tipos de arquivo como CBZ, CBR, PDF, RAR e ZIP;
Permite visualização de duas páginas, caching e suporta vários formatos de imagem (PNG, JPEG, TIFF, GIF).
Desenvolvido em Java, como opensource distribuido como GNU-GPL.
![Page 3: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/3.jpg)
Visualização de duas páginas + Miniatura
![Page 4: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/4.jpg)
Rotação
![Page 5: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/5.jpg)
![Page 6: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/6.jpg)
![Page 7: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/7.jpg)
Total de linhas de código: 18.402.Total de Classes: 164.Pacotes: 6.12 horas de marcação.Total de Linhas Marcadas: 7.655
![Page 8: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/8.jpg)
![Page 9: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/9.jpg)
![Page 10: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/10.jpg)
GUI Código espalhado pelo projeto inteiro.
Internacionalização Código localizado nos documentos de
configuração Negócio
Ausência de documento de Requisitos Tratamento de Eventos
Concern normalmente presente em projetos com GUIs.
![Page 11: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/11.jpg)
![Page 12: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/12.jpg)
![Page 13: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/13.jpg)
![Page 14: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/14.jpg)
public void setScaleMode(String newScaleMode) { imageTools.assertIsValidScaleMode(newScaleMode); scaleMode = newScaleMode; if (scaleMode.equals(ImageTools.SCALE_ACTUAL)) {
setHorizontalScrollBarPolicy(HORIZONTAL_SCROLLBAR_AS_NEEDED); setVerticalScrollBarPolicy(VERTICAL_SCROLLBAR_AS_NEEDED); } else if (scaleMode.equals(ImageTools.SCALE_FIT)) { setHorizontalScrollBarPolicy(HORIZONTAL_SCROLLBAR_NEVER); setVerticalScrollBarPolicy(VERTICAL_SCROLLBAR_NEVER); } else if (scaleMode.equals(ImageTools.SCALE_HEIGHT)) {
setHorizontalScrollBarPolicy(HORIZONTAL_SCROLLBAR_AS_NEEDED); setVerticalScrollBarPolicy(VERTICAL_SCROLLBAR_NEVER); } else if (scaleMode.equals(ImageTools.SCALE_WIDTH)) { setHorizontalScrollBarPolicy(HORIZONTAL_SCROLLBAR_NEVER); setVerticalScrollBarPolicy(VERTICAL_SCROLLBAR_AS_NEEDED); } if (model != null) { updateDisplay(); } }
![Page 15: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/15.jpg)
![Page 16: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/16.jpg)
![Page 17: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/17.jpg)
public void showError (String message, Throwable error, boolean modal) {
if (errorTools != null) { errorTools.showMessage(null,
JOptionPane.ERROR_MESSAGE, message, error, modal);
} if (logger != null) { logger.error(message, error); } else { // In case there isn't anything else to work with, use
System.err. PrintStream errorStream = System.err;
errorStream.println(message); error.printStackTrace(errorStream); } }
![Page 18: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/18.jpg)
Projeto feito por terceiros (entendimento do código);
Definição dos concerns Devido à ausência de documentos de
caso de uso; Identificação de concerns convencionais;
![Page 19: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/19.jpg)
Dos concerns identificados, Log foi o que apresentou o maior índice espalhamento, e esteve “crosscutting” com todos os outros concerns marcados.
As métricas foram úteis para identificação e quantificação dos espalhamento dos concerns.
![Page 20: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/20.jpg)
![Page 21: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/21.jpg)
Parte 2: Resultados da utilização do CCFinder
![Page 22: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/22.jpg)
![Page 23: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/23.jpg)
Minimum Clone Lengh 50
Minimum TKN 6
Shaper Level 2 - Softshaper
![Page 24: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/24.jpg)
Quantidade de pares detectados 89
Quantidade de clones associados a concerns: 13 Não marcados anteriormente como
concerns.
![Page 25: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/25.jpg)
Extract: 6Blur: 7Outros concerns: 0
![Page 26: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/26.jpg)
![Page 27: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/27.jpg)
![Page 28: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/28.jpg)
![Page 29: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/29.jpg)
![Page 30: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/30.jpg)
![Page 31: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/31.jpg)
![Page 32: Arfs – Aluisio Rodrigo Fonseca de Santana fns2 – Fagner Nascimento e Silva.](https://reader034.fdocumentos.com/reader034/viewer/2022051820/552fc181497959413d8f3bf4/html5/thumbnails/32.jpg)
Foram encontrados classes e métodos praticamente copiados;
Entretanto, a relação de cópia eram em pares. Sendo consideradas poucas em relação ao tamanho do projeto.
Muitas das cópias encontradas não foram relevantes para refatoramento.