UNIVERSIDADE DO ESTADO DE SANTA CATARINA-UDESC
CENTRO DE CIÊNCIAS TECNOLÓGICAS-CCT

SQALE
Software Quality Assessment based on Lifecycle
Expectations

Engenharia de Software - Seminário 2
Aluno: Glaucio Scheibel
Orientador: prof. Fabiano Baldo
Technical Debt
• Metáfora criada por Ward Cunningham (1993)
– Negligenciar o design é como pedir dinheiro
emprestado.
– Refactoring, é como pagar a dívida principal.
– Desenvolvimento mais lento por causa dessa
dívida é como o pagamento de juros sobre o
empréstimo.
– Cada minuto gasto em código “não muito
certo”, conta como forma de juros.
SQALE
• Método desenvolvido na frança pela empresa
Inspearit (DNV ITGS France).
• Baseada na ISO 9126-1:2001
– Incluído “Reusability”

• Licenciada pela Creative Commons Attribution
NonCommercial NoDerivs 3.0
Fundamentos
• A qualidade do código-fonte é um requisito não
funcional.
• As exigências em relação à qualidade do código
fonte têm de ser formalizadas de acordo com os
mesmos critérios de qualidade, tais como a
qualquer outro requisito funcional.
• A avaliação da qualidade de um código fonte é a
avaliação da distância entre o seu estado atual de
qualidade e o que foi previsto.
Fundamentos
• O Método SQALE avalia a distância para a
conformidade
com
os
requisitos, considerando o custo de
remediação necessária de trazer o código
fonte para conformidade.
• O Método SQALE avalia a importância de uma
não conformidade, considerando os custos
resultantes de entregar o código fonte com
esta não conformidade.
Features vs. Não Conformidades
Ciclo de Vida
ISO 25010
Modelo de Qualidade
Modelo de Qualidade
Índices no SQALE
• Características
–
–
–
–
–
–
–
–

Testability Index: STI
Reliability Index: SRI
Changeability Index: SCI
Efficiency Index: SEI
Security Index: SSI
Maintainability Index: SMI
Portability Index: SPI
Reusability Index: SRuI

• Qualidade (Technical Debt)
– Quality Index: SQI
Índices Consolidados no SQALE
•
•
•
•
•
•
•
•

Consolidated Reliability Index: SCRI = STI + SRI
Consolidated Changeability Index: SCCI = STI + SRI + SCI
Consolidated Efficiency Index: SCEI = STI + SRI + SCI + SEI
Consolidated Security Index: SCSI = STI + SRI + SCI + SEI +
SSI
Consolidated Maintainability Index: SCMI = STI + SRI + SCI +
SEI + SSI + SMI
Consolidated Portability Index: SCPI = STI + SRI + SCI + SEI +
SSI + SMI + SPI
Consolidated Reusability Index: SCRuI = STI + SRI + SCI + SEI
+ SSI + SMI + SPI+ SRuI
Consolidated Testability Index: SCTI = STI
Método SQALE
Classificação SQALE
• Diferença entre o custo de desenvolvimento e
o custo de remediação.
SQALE Kiviat
Pirâmide SQALE
Pirâmide SQALE
Ferramentas
•
•
•
•
•
•

Insite SaaS (Metrixware)
Mia-Quality (Mia-Software )
PLC Checker (Itris Automation)
SonarQube (SonarSource)
SQuORE (SQuORING)
System Code (Metrixware)
SonarQUBE
• Produto open-source de análise de qualidade.
– Implementa SQALE (plugin comercial)

• Características
– Suporte a mais de 20 linguagens de programação
– Utiliza PMD, FindBugs, CheckStyle, entre outros

• Demo
Sonarqube – SQALE Dashboard
Referências
• HEGEMAN, Erik. InfoSupport-On the Quality of
Quality Models. 2011.
• LETOUZEY, J. L. The SQALE Method–Definition
Document, Version 1.0, January 2012.
• LETOUZEY, J.-L. The SQALE method for evaluating
Technical Debt. In: Managing Technical Debt
(MTD), 2012 Third International Workshop on.
IEEE, 2012. p. 31-36.
• STERLING, Chris. Managing Software Debt:
Building for Inevitable Change. Addison-Wesley
Professional, 2010.
Referências
• http://www.sonarqube.org
• http://www.sqale.org

SQALE Software Quality Assessment based on Lifecycle Expectations

  • 1.
    UNIVERSIDADE DO ESTADODE SANTA CATARINA-UDESC CENTRO DE CIÊNCIAS TECNOLÓGICAS-CCT SQALE Software Quality Assessment based on Lifecycle Expectations Engenharia de Software - Seminário 2 Aluno: Glaucio Scheibel Orientador: prof. Fabiano Baldo
  • 2.
    Technical Debt • Metáforacriada por Ward Cunningham (1993) – Negligenciar o design é como pedir dinheiro emprestado. – Refactoring, é como pagar a dívida principal. – Desenvolvimento mais lento por causa dessa dívida é como o pagamento de juros sobre o empréstimo. – Cada minuto gasto em código “não muito certo”, conta como forma de juros.
  • 3.
    SQALE • Método desenvolvidona frança pela empresa Inspearit (DNV ITGS France). • Baseada na ISO 9126-1:2001 – Incluído “Reusability” • Licenciada pela Creative Commons Attribution NonCommercial NoDerivs 3.0
  • 4.
    Fundamentos • A qualidadedo código-fonte é um requisito não funcional. • As exigências em relação à qualidade do código fonte têm de ser formalizadas de acordo com os mesmos critérios de qualidade, tais como a qualquer outro requisito funcional. • A avaliação da qualidade de um código fonte é a avaliação da distância entre o seu estado atual de qualidade e o que foi previsto.
  • 5.
    Fundamentos • O MétodoSQALE avalia a distância para a conformidade com os requisitos, considerando o custo de remediação necessária de trazer o código fonte para conformidade. • O Método SQALE avalia a importância de uma não conformidade, considerando os custos resultantes de entregar o código fonte com esta não conformidade.
  • 6.
    Features vs. NãoConformidades
  • 8.
  • 9.
  • 10.
  • 11.
    Índices no SQALE •Características – – – – – – – – Testability Index: STI Reliability Index: SRI Changeability Index: SCI Efficiency Index: SEI Security Index: SSI Maintainability Index: SMI Portability Index: SPI Reusability Index: SRuI • Qualidade (Technical Debt) – Quality Index: SQI
  • 12.
    Índices Consolidados noSQALE • • • • • • • • Consolidated Reliability Index: SCRI = STI + SRI Consolidated Changeability Index: SCCI = STI + SRI + SCI Consolidated Efficiency Index: SCEI = STI + SRI + SCI + SEI Consolidated Security Index: SCSI = STI + SRI + SCI + SEI + SSI Consolidated Maintainability Index: SCMI = STI + SRI + SCI + SEI + SSI + SMI Consolidated Portability Index: SCPI = STI + SRI + SCI + SEI + SSI + SMI + SPI Consolidated Reusability Index: SCRuI = STI + SRI + SCI + SEI + SSI + SMI + SPI+ SRuI Consolidated Testability Index: SCTI = STI
  • 13.
  • 14.
    Classificação SQALE • Diferençaentre o custo de desenvolvimento e o custo de remediação.
  • 15.
  • 16.
  • 17.
  • 18.
    Ferramentas • • • • • • Insite SaaS (Metrixware) Mia-Quality(Mia-Software ) PLC Checker (Itris Automation) SonarQube (SonarSource) SQuORE (SQuORING) System Code (Metrixware)
  • 19.
    SonarQUBE • Produto open-sourcede análise de qualidade. – Implementa SQALE (plugin comercial) • Características – Suporte a mais de 20 linguagens de programação – Utiliza PMD, FindBugs, CheckStyle, entre outros • Demo
  • 20.
  • 21.
    Referências • HEGEMAN, Erik.InfoSupport-On the Quality of Quality Models. 2011. • LETOUZEY, J. L. The SQALE Method–Definition Document, Version 1.0, January 2012. • LETOUZEY, J.-L. The SQALE method for evaluating Technical Debt. In: Managing Technical Debt (MTD), 2012 Third International Workshop on. IEEE, 2012. p. 31-36. • STERLING, Chris. Managing Software Debt: Building for Inevitable Change. Addison-Wesley Professional, 2010.
  • 22.