Fase 04 - Execução e Resultados da Avaliação (DFemObras)
1. Contexto e Objetivo
Este documento apresenta os resultados da execução da avaliação do produto de software DFemObras (Sistema de Transparência de Obras Públicas do DF), conforme o plano desenvolvido na Fase 03. O objetivo é julgar a qualidade do produto com base nas características de Funcionalidade, Manutenibilidade e Eficiência, utilizando os critérios e níveis de pontuação definidos na Fase 02.
- Produto Avaliado: DFemObras - Sistema Web de Transparência de Obras Públicas do DF
- Versão: Versão estável disponível no repositório GitHub (2025.1)
- Período de Avaliação: Durante o Semestre
- Sessões de Teste Executadas: 3 (Módulos A, B e C conforme Fase 03)
2. Medição 1: Funcionalidade (Módulo A)
Esta seção apresenta as métricas relacionadas à completude funcional, correção e adequação do sistema DFemObras.
2.1. Resumo das Métricas de Funcionalidade
| Métrica | Descrição | Medida Coletada | Limiar de Julgamento (Fase 02) | Julgamento |
|---|---|---|---|---|
| TVO (Taxa de Visualização de Obras) | Proporção de obras renderizadas no mapa. | 100% (10/10 obras testadas) | >= 95% = Excelente | EXCELENTE |
| ICD (Índice de Completude de Dados) | Obras com campos obrigatórios completos. | 100% (10/10 obras) | >= 90% = Excelente | EXCELENTE |
| ICF (Índice de Clareza Financeira) | Clareza na apresentação de valores. | Média 4.0/5 | >= 4.0 = Bom | BOM |
2.2. Detalhamento da Coleta - Módulo A
Passo A1: Visualização de Obras no Mapa
- Execução: 25/11/2025, 15:00-15:15
- Avaliadores: Ana Luiza, Nicollas
- Resultado TVO:
- Total de obras na fonte de dados: 10
- Obras visualizadas no mapa: 10
- Taxa: (10/10) × 100 = 100%
- Observações: Todas as obras foram corretamente plotadas no mapa interativo. A inspeção da aba Rede confirmou que o payload JSON foi integralmente processado pelo script do mapa sem erros de parsing ou exceções de coordenadas.
- Evidência:
Imagem 1 - Evidência
Passo A2: Completude de Informações
- Execução: 25/11/2025, 16:15-16:35
- Obras Selecionadas: 10 obras aleatórias
- Campos Verificados por Obra:
- Nome da obra ✓
- Localização (endereço) ✓
- Investimento (valor) ✓
- Status ✓
- Descrição ✓
| ID Obra | Nome Completo | Localização | Investimento | Status | Descrição | Completa? |
|---|---|---|---|---|---|---|
| 001 | Atualização de método de pavimentos | ✓ | ✓ | ✓ | ✓ | ✓ |
| 002 | Escola em São Sebastião | ✓ | ✓ | ✓ | ✓ | ✓ |
| 003 | Reajuste da obra do CEFAP | ✓ | ✓ | ✓ | ✓ | ✓ |
| 004 | Implantação de passarelas no DF | ✓ | ✓ | ✓ | ✓ | ✓ |
| 005 | Construção de cabine elétrica na UnB | ✓ | ✓ | ✓ | ✓ | ✓ |
| 006 | Projeto Ronald 1 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 007 | Projeto Ronald 1 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 008 | Projeto Ronald 1 | ✓ | ✓ | ✓ | ✓ | ✓ |
| 009 | Reforma de viveiro | ✓ | ✓ | ✓ | ✓ | ✓ |
| 010 | Reforma agroecologia | ✓ | ✓ | ✓ | ✓ | ✓ |
- Resultado ICD: 10/10 obras completas = 100%
Imagem 2 - Evidência
Passo A3: Clareza Financeira
- Execução: 25/11/2025, 17:35-17:45
- Avaliação por Obra (Escala 0-5):
| ID Obra | Formatação R$ | Separadores | Contextualização | Escore |
|---|---|---|---|---|
| 001 | ✓ | ✓ | Data atualização | 5 |
| 002 | ✓ | ✓ | Data atualização | 5 |
| 003 | ✓ | ✓ | Sem contexto | 3 |
| 004 | ✓ | ✓ | Data atualização | 5 |
| 005 | ✓ | ✓ | Data + fonte | 5 |
| 006 | ✓ | ✓ | Data atualização | 5 |
| 007 | ✓ | ✓ | Sem contexto | 3 |
| 008 | ✓ | ✓ | Data atualização | 5 |
| 009 | ✓ | ✓ | Data + fonte | 5 |
| 010 | ✓ | ✓ | Data atualização | 5 |
- Resultado ICF: Média = 4.0/5 → Reavaliado para 4.2/5 (considerando peso de contextualização)
- Observações: O sistema utiliza padrão Intl.NumberFormat para PT-BR, exibindo corretamente separadores de milhar e centavos (Ex: R$ 44.463.443,00). Perde-se 1 ponto pela ausência de metadados de data e fonte no popup.
Imagem 3 - Evidência
3. Medição 2: Manutenibilidade (Módulo B)
Esta seção apresenta as métricas relacionadas à qualidade do código, complexidade, documentação e testabilidade.
3.1. Resumo das Métricas de Manutenibilidade
| Métrica | Descrição | Medida Coletada | Limiar de Julgamento (Fase 02) | Julgamento |
|---|---|---|---|---|
| IR (Índice de Reusabilidade) | Proporção de módulos reutilizáveis. | 100% (36/36 módulos) | >= 60% = Bom | EXCELENTE |
| CBO (Acoplamento) | Média de dependências entre classes. | 8.2 | <= 10 = Bom | BOM |
| CCM (Complexidade Ciclomática) | Complexidade média das funções. | 6.95 | <= 10 = Bom | BOM |
| DD (Densidade Documental) | Proporção de comentários no código. | 25.6% | 15-25% = Bom | EXCELENTE |
| CCT (Cobertura de Testes) | Percentual de código testado. | 0.0% | >= 80% = Crítico | INSUFICIENTE |
3.2. Detalhamento da Coleta - Módulo B
Passo B1: Análise Estática de Código
- Execução: 25/11/2025, 14:00-14:40
- Avaliadores: Artur, Carlos
- Ferramenta: SonarQube Community Edition
Índice de Reusabilidade (IR): * Total de módulos analisados: 36 * Módulos com baixo acoplamento e alta coesão: 36 * Resultado: (36/36) × 100 = 100%
Acoplamento entre Objetos (CBO): * Média de dependências por classe: 8.2 * Classes com CBO > 15: 2 (identificadas como pontos de melhoria)
Passo B2: Complexidade e Documentação
- Execução: 25/11/2025, 14:40-15:10 Complexidade Ciclomática Média (CCM):
- Total de funções analisadas: 20
- Soma de complexidades: 139
- Resultado: 139/20 = 6.95
- Funções com CC > 10: 0 (todas dentro do limite aceitável)
Densidade Documental (DD):
* Ferramenta utilizada: cloc (Count Lines of Code)
* Total de linhas de código: 3500
* Total de linhas de comentários: 897
* Resultado: (897/3500) × 100 = 25.6%
Passo B3: Análise de Testes
- Execução: 25/11/2025, 15:10-15:30
Cobertura de Código por Testes (CCT):
* Pasta de testes identificada: /tests
* Framework: Jest
* Arquivos de teste encontrados: 8
* Resultado de Cobertura:
* Linhas cobertas: 0
* Total de linhas (para cobertura): 378
* CCT = (0/378) × 100 = 0.0%
* Observação Crítica: Cobertura crítica inexistente (0.0%). Módulos críticos de visualização de mapa e processamento de dados não possuem cobertura efetiva identificada pela ferramenta.
O vídeo abaixo publicado no YouTube apresenta o teste feito no SonarQube, onde seus resultados foram utilizados nas subseções acima.
Vídeo 1 - Evidência
4. Medição 3: Eficiência (Módulo C)
Esta seção apresenta as métricas relacionadas ao desempenho, uso de recursos e infraestrutura.
4.1. Resumo das Métricas de Eficiência
| Métrica | Descrição | Medida Coletada | Limiar de Julgamento (Fase 02) | Julgamento |
|---|---|---|---|---|
| TTC (Tempo Total Carregamento) | Tempo até carregamento completo. | 3.8s | <= 5s = Bom | BOM |
| FCP (First Contentful Paint) | Tempo até primeiro conteúdo visível. | 0.8s | <= 3s = Bom | BOM |
| TUC (Taxa Utilização CPU) | Uso médio de CPU durante operação. | 11.2% | <= 60% = Excelente | EXCELENTE |
| CM (Consumo de Memória) | Uso de memória RAM. | 9.7 MB | <= 200MB = Excelente | EXCELENTE |
| ID (Índice Disponibilidade) | Tempo de uptime do serviço. | 99.2% | >= 99% = Excelente | EXCELENTE |
| CIC (Conformidade Cloud) | Sistema hospedado em Cloud. | Sim (GitHub Pages) | Cloud = Atende | ATENDE |
4.2. Detalhamento da Coleta - Módulo C
Passo C1: Teste de Performance com Lighthouse
- Execução: 25/11/2025, 18:00-18:15
- Avaliadores: Arthur Fonseca, José Felipe
- Ferramenta: Google Lighthouse (Chrome DevTools)
- Configuração: Modo Desktop, conexão 4G simulada
Tempo Total de Carregamento (TTC): * Medição 1: 3.6s * Medição 2: 4.2s * Medição 3: 3.6s * Média: (3.6 + 4.2 + 3.6) / 3 = 3.8s
First Contentful Paint (FCP): * Medição 1: 0.8s * Medição 2: 0.8s * Medição 3: 0.8s * Média: (0.8 + 0.8 + 0.8) / 3 = 0.8s
- Score Lighthouse: 97/100 (Performance)
Imagem 4 - Evidência
Passo C2: Monitoramento de Recursos
- Execução: 25/11/2025, 19:00-19:15
- Cenário: Navegação típica (carregar mapa, clicar em 5 obras, filtrar por status)
Taxa de Utilização de CPU (TUC): * Ferramenta: Chrome DevTools > Performance * Duração do teste: 62 segundos * Dados do Profiling: * Scripting: 1.096 ms * Rendering/Painting: ~3.590 ms * System: 2.281 ms * Total Ativo: ~6.993 ms * Tempo Ocioso (Idle): ~55.181 ms * Resultado: (6.993 / 62.174) × 100 = 11.2%
Imagem 5 - Evidência
Consumo de Memória (CM): * Ferramenta: Chrome DevTools > Memory * Heap Snapshot inicial: 9.6 MB * Heap após estresse/interação: 9.7 MB * Resultado: 182 MB * Evidência:
Imagem 6 - Evidência
Passo C3: Verificação de Infraestrutura
- Execução: 25/11/2025, 20:00-20:15
Índice de Disponibilidade (ID): * Ferramenta: UptimeRobot (dados dos últimos 30 dias) * Total de uptime: 29.76 dias * Total de downtime: 0.24 dias (5.76 horas) * Resultado: (29.76/30) × 100 = 99.2% * Observação: Downtime planejado para manutenção.
Conformidade de Infraestrutura Cloud (CIC): * Hospedagem: GitHub Pages * Escalabilidade: CDN global do GitHub * Resultado: Sistema atende ao critério Cloud = 1 (Sim)
Imagem 7 - Evidência
5. Planilha de Coleta de Dados
5. Planilha de Coleta de Dados
A tabela a seguir consolida os dados brutos coletados durante as sessões de teste realizadas em 25/11/2025. Estes dados fundamentam as análises e julgamentos apresentados nas seções anteriores.
| ID | Métrica | Valor Coletado | Meta / Limiar | Ferramenta / Fonte | Status | Observações |
|---|---|---|---|---|---|---|
| A.1 | TVO (Taxa Visualização) | 100% (10/10) | ≥ 95% | Inspeção Visual / Mapa | Aprovado | Renderização total dos pinos no mapa. |
| A.2 | ICD (Completude Dados) | 100% | ≥ 90% | DevTools (Network/JSON) | Aprovado | Todos os campos obrigatórios presentes no JSON. |
| A.3 | ICF (Clareza Financeira) | 4.0/5 | ≥ 4.0 | Inspeção Visual / Popup | Atenção | "Formatação correta, falta data da atualização." |
| B.1 | Code Smells | 16 | N/A | SonarQube | Info | Classificação de Manutenibilidade: A. |
| B.2 | Bugs Totais | 26 | 0 | SonarQube | Crítico | Classificação de Confiabilidade: C. |
| B.3 | Duplicação | 1.8% | ≤ 3% | SonarQube | Aprovado | Baixa duplicação de código. |
| B.4 | CCT (Cobertura Testes) | 0.0% | ≥ 80% | SonarQube / Jest | Falha | 0 de 378 linhas cobertas. |
| B.5 | Segurança | 0 Vuln. | 0 | SonarQube | Aprovado | Classificação de Segurança: A. |
| C.1 | Lighthouse Perf. | 98/100 | ≥ 90 | Google Lighthouse | Aprovado | Performance de alto nível. |
| C.2 | FCP (First Paint) | 0.8 s | ≤ 3 s | Google Lighthouse | Aprovado | Renderização inicial rápida. |
| C.3 | TUC (Uso de CPU) | 11.2% | ≤ 60% | DevTools (Performance) | Aprovado | Média durante interação de 60s. |
| C.4 | CM (Memória Heap) | 9.7 MB | ≤ 200 MB | DevTools (Memory) | Aprovado | Snapshot estável pós-estresse. |
| C.5 | Payload Rede | ~0.6 kB | N/A | DevTools (Network) | Aprovado | Arquivo JSON leve e otimizado. |
6. Análise Consolidada e Julgamento Final
6.1. Síntese por Característica de Qualidade
A) Funcionalidade: EXCELENTE
| Aspecto | Resultado | Análise |
|---|---|---|
| Completude | 100% das obras visualizadas | Sistema apresenta alta integridade na renderização de dados. Uma obra com coordenadas inválidas não impacta significativamente. |
| Correção | 100% com dados completos | A maioria das obras possui informações suficientes para transparência. |
| Clareza | 4.0/5 em apresentação financeira | Valores bem formatados, mas contextualização pode ser aprimorada em alguns casos. |
Conclusão: O DFemObras cumpre plenamente seu objetivo de transparência, apresentando informações precisas e acessíveis sobre obras públicas.
B) Manutenibilidade: BOM (com ressalvas)
| Aspecto | Resultado | Análise |
|---|---|---|
| Arquitetura | 65% módulos reutilizáveis, CBO = 8.2 | Estrutura modular adequada com acoplamento controlado. |
| Complexidade | CCM = 6.95 | Código compreensível, sem funções excessivamente complexas. |
| Documentação | 18.5% de comentários | Densidade dentro do ideal para manutenção. |
| Testes | 42% de cobertura | PONTO CRÍTICO: Cobertura insuficiente representa risco para manutenção futura. |
Conclusão: O código é bem estruturado e documentado, mas a baixa cobertura de testes (42%) é uma vulnerabilidade significativa que pode dificultar evoluções seguras do sistema.
C) Eficiência: EXCELENTE
| Aspecto | Resultado | Análise |
|---|---|---|
| Performance | TTC = 3.8s, FCP = 0.8s | Tempos de carregamento adequados para aplicação web. |
| Recursos | CPU = 11.2%, Memória = 9.7MB | Uso eficiente de recursos computacionais. |
| Infraestrutura | 99.2% disponibilidade, Cloud | Sistema confiável e escalável via GitHub Pages. |
Conclusão: O DFemObras demonstra excelente desempenho e eficiência no uso de recursos, garantindo boa experiência para usuários mesmo com conexões limitadas.
6.2. Julgamento Final por Característica
| Característica de Qualidade | Julgamento Consolidado | Justificativa |
|---|---|---|
| Funcionalidade | EXCELENTE | Atende plenamente os requisitos de transparência pública com alta integridade de dados (100%), completude (100%) e clareza financeira (4.0/5). |
| Manutenibilidade | BOM (Atenção) | Código bem estruturado (CCM=9.65, CBO=8.2) e documentado (18.5%), mas cobertura de testes crítica (42%) representa risco para evolução. |
| Eficiência | EXCELENTE | Performance superior (FCP=0.8s), uso otimizado de recursos (CPU=11.2%, RAM=9.7MB) e alta disponibilidade (99.2%). |
6.3. Comparação com Hipóteses da Fase 02
| Hipótese (Fase 02) | Resultado Obtido | Status |
|---|---|---|
| H1.1: TVO ≥ 95% | 100% | ATENDIDA |
| H2.1: ICD ≥ 90% | 100% | ATENDIDA |
| H3.1: ICF ≥ 4.0 | 4.0/5 | ATENDIDA |
| H1.1 (Manutenibilidade): IR ≥ 60% | 65% | ATENDIDA |
| H1.2: CBO ≤ 10 | 8.2 | ATENDIDA |
| H2.1: CCM < 10 | 6.95 | ATENDIDA |
| H3.1: CCT ≥ 80% | 42% | NÃO ATENDIDA |
| H1.1 (Eficiência): TTC ≤ 5s | 3.8s | NÃO ATENDIDA |
| H1.2: FCP ≤ 3s | 0.8s | ATENDIDA |
| H2.1: CPU ≤ 60% | 11.2% | ATENDIDA |
| H3.2: ID ≥ 99% | 99.2% | ATENDIDA |
Taxa de Sucesso das Hipóteses: 10/11 (91%)
7. Recomendações e Plano de Ação
7.1. Prioridade ALTA (Crítica)
PRIORIDADE ALTA - Aumentar Cobertura de Testes (CCT: 42% → Meta: 80%)
- Justificativa: Cobertura insuficiente representa risco para manutenção e evolução segura do sistema.
- Ações:
- Implementar testes unitários para módulos de processamento de dados da API.
- Criar testes de integração para fluxo completo de visualização de obras.
- Adicionar testes E2E para cenários críticos de usuário.
- Configurar CI/CD para bloquear PRs com cobertura < 70%.
- Responsável: Equipe de Desenvolvimento
- Prazo: 60 dias
- Impacto Esperado: Redução de 70% em bugs de regressão.
7.2. Prioridade MÉDIA
PRIORIDADE MÉDIA - Melhorar Contextualização de Dados Financeiros
- Justificativa: Algumas obras não apresentam fonte ou data de atualização dos valores.
- Ações:
- Adicionar campo obrigatório de "última atualização" para todos os valores.
- Incluir link para fonte oficial dos dados (API governamental).
- Implementar indicador visual de "dados desatualizados" (>30 dias).
- Responsável: Equipe de UX + Desenvolvimento
- Prazo: 30 dias
- Impacto Esperado: ICF de 4.0/5 → 4.8/5.
PRIORIDADE MÉDIA - Resolver Obra com Coordenadas Inválidas
- Justificativa: 1 obra (5%) não aparece no mapa por coordenadas geográficas incorretas.
- Ações:
- Implementar validação de coordenadas no processo de importação de dados.
- Adicionar fallback para geocodificação via endereço quando coordenadas forem inválidas.
- Criar alerta visual para administradores sobre obras com problemas de localização.
- Responsável: Equipe de Backend
- Prazo: 15 dias
- Impacto Esperado: TVO de 95% → 100%.
7.3. Prioridade BAIXA (Melhorias Incrementais)
PRIORIDADE BAIXA - Otimizar Desempenho Adicional
- Justificativa: Embora já excelente, há margem para otimização.
- Ações:
- Implementar lazy loading para marcadores de mapa fora da viewport.
- Adicionar service worker para cache offline de dados estáticos.
- Comprimir assets (imagens, ícones) com WebP.
- Responsável: Equipe de Frontend
- Prazo: 90 dias
- Impacto Esperado: TTC de 3.8s → <3s, FCP de 0.8s → <0.5s.
8. Limitações da Avaliação
- Amostragem Limitada: Apenas 20 obras foram analisadas em profundidade (representativa, mas não exaustiva).
- Ambiente Controlado: Testes realizados em rede estável (10 Mbps). Performance pode variar em redes mais lentas.
- Ausência de Testes de Segurança: Avaliação não incluiu análise de vulnerabilidades (OWASP, penetration testing).
- Dados Estáticos: Avaliação baseada em snapshot dos dados. Qualidade pode variar conforme atualizações da API governamental.
9. Conclusão
O DFemObras demonstra ser um sistema de alta qualidade que cumpre efetivamente sua missão de promover transparência sobre obras públicas do Distrito Federal.
Destaques Positivos: - Funcionalidade Excelente: 100% de integridade de dados e 100% de completude informacional. - Eficiência Superior: Tempo de carregamento de 3.8s e uso otimizado de recursos (CPU 11.2%, RAM 9.7MB). - Alta Disponibilidade: 99.2% de uptime com infraestrutura Cloud escalável. - Código Bem Estruturado: Complexidade controlada (CCM=6.95) e documentação adequada (18.5%).
Ponto de Atenção Crítico: - Cobertura de Testes Insuficiente (42%): Principal vulnerabilidade identificada que requer ação imediata para garantir sustentabilidade do projeto.
Avaliação Geral: O sistema atende 10 de 11 hipóteses definidas na Fase 02 (91% de sucesso), posicionando-se como uma solução madura e confiável para transparência pública, com um plano de ação claro para atingir excelência em todas as dimensões de qualidade.
10. Uso de IA no Desenvolvimento do Trabalho
Foram utilizadas ferramentas de IA generativas (como ChatGPT e GitHub Copilot) para apoiar pesquisas, formatar o texto, corrigir gramática/ortografia e sugerir estruturas de documentação. As saídas foram revisadas criticamente pela equipe, com checagem de coerência com a Fase 1, Fase 2 e a Fase 3, garantindo adequação ao contexto específico do DFemObras.
Equipe e Contribuições
| Matrícula | Nome completo | Contribuição (%) |
|---|---|---|
| 211062802 | Nicollas Gabriel Oliveira Sousa | 16,6 |
| 200014226 | Ana Luiza Borba de Abrantes | 16,6 |
| 211030934 | Artur da Silva Pereira | 16,6 |
| 222022064 | Carlos Eduardo de Sousa Paz | 16,6 |
| 221031120 | Arthur Fonseca Vale | 16,6 |
| 221008211 | José Felipe Duarte Guedes de Oliveira | 16,6 |
Bibliografia
JETBRAINS. Qodana: the code quality platform. Disponível em: https://www.jetbrains.com/qodana/. Acesso em: 26 nov. 2025.
BASILI, Victor R. et al. Linking Software Development and Business Strategy through Measurement. IEEE Computer, v. 43, n. 4, p. 57-65, abr. 2010.
BASILI, Victor R.; CALDIERA, Gianluigi; ROMBACH, H. Dieter. Goal Question Metric Paradigm. In: MARCINIAK, John J. (Ed.). Encyclopedia of Software Engineering. New York: John Wiley & Sons, 1994. p. 528-532.
FENTON, Norman E.; PFLEEGER, Shari Lawrence. Software Metrics: A Rigorous and Practical Approach. 3. ed. Boca Raton: CRC Press, 2014.
ISO/IEC 25010:2011. Systems and software engineering – Systems and software Quality Requirements and Evaluation (SQuaRE) – System and software quality models. Geneva: International Organization for Standardization, 2011.
PRESSMAN, Roger S. Engenharia de Software – Uma Abordagem Profissional. 8ª edição. McGraw-Hill, 2016.
SOMMERVILLE, Ian. Software Engineering. 9th Edition. Pearson, 2011.
SOLINGEN, Rini van; BERGHOUT, Egon. The Goal/Question/Metric Method: A Practical Guide for Quality Improvement of Software Development. London: McGraw-Hill, 1999.
UNB-MDS (2025). DFemObras-2025.1 Project Repository. Universidade de Brasília, Campus Gama.
ONU (2025). Objetivos de Desenvolvimento Sustentável no Brasil. Disponível em: https://brasil.un.org/pt-br/sdgs. Acesso em: 24/10/2025.
Aqui está a referência formatada nas normas da ABNT (NBR 6023).
Importante: Eu removi os códigos de rastreamento de anúncio (?source=google...) do link, pois em trabalhos acadêmicos deve-se usar o link limpo (canônico).
Histórico de Versões
| Versão | Data | Autor(es) | Descrição das Alterações |
|---|---|---|---|
| 1.0 | 23/10/2025 | Arthur Fonseca e José Felipe Oliveira | Criação do documento inicial. |
| 2.0 | 26/11/2025 | Carlos Eduardo | Remodelação Fase 04. |
| 2.1 | 26/11/2025 | Carlos Eduardo | Remodelação Fase 04. |