SlideShare a Scribd company logo
1 of 14
QUALIDADE DE
CÓDIGO
LIVROS DE
REFERÊNCIA
QUALIDADE DE
SOFTWARE(diferente)
QUALIDADE DE
CÓDIGO
POR QUÊ?
Nem todo software bom tem código
bom
QUALIDADE DE
SOFTWARE(diferente)
QUALIDADE DE
CÓDIGO
Nem todo código bom tem um
propósito real
As métricas de qualidade são
especificas para código
As métricas de qualidade são
voltadas para usabilidade
Software
código
B. dados infra
O QUE É
QUALIDADE
?
NBR ISO 9000:2005
"Qualidade é o grau no qual um conjunto de características
inerentes satisfaz aos requisitos”.
NBR ISO 8402
"A totalidade das características de uma entidade que lhe
confere a capacidade de satisfazer às necessidades explícitas e
implícitas”.
O QUE É
QUALIDADE
?
Aspecto / Forma / Apresentação
Material / Constituição / Técnica
Custo / Distribuição / Processo
Técnica
Custo
QUALIDADE
Aspecto / Forma / Apresentação
Material / Constituição / Técnica
Custo / Distribuição / Processo
CÓDIGO
Linguagem de Programação
Símbolos representativos
Instruções
< Código >
Aspecto
CUSTO
Débitos técnicos Técnica
Custo
< Código >
Aspecto
Poucos sistemas permanecem sem débitos técnicos, devido a N fatores, a
questão é “Quando será pago?"
Um débito técnico é como uma conta a ser paga, quanto antes pagar menor será
o prejuízo com erros inesperados, tempo de correção e manutenção.
TÉCNICA
Patterns, frameworks, etc.
Uma fonte comum de baixa qualidade é a escolha errônea da tecnologia,
metodologia ou ferramenta, para escolher é fundamental considerar fatores como
potencial sobrevivência, interoperabilidade, segurança e padrões.
Técnica
Custo
< Código >
Aspecto
Um framework é uma promessa de qualidade, atualização e manutenção a um custo menor.
Exemplos:
Design patterns são soluções de design comprovadas e design são as bases de projeto de
software OO.
O uso de OO ajuda evitar a intuitividade e legibilidade do código, resultando em menor dificuldade
de manutenção da aplicação.
ASPECTO
Código limpo
O nível de retardo para manter um código "sujo" pode ser significativo ao
longo de um ou dois anos e piorar gradativamente a cada alteração.
- “Um código limpo é simples e direto. Ele é tão bem legível quanto uma prosa
bem escrita”.
- - Grady Booch
Técnica
Custo
< Código >
Aspecto
Patterns, frameworks, etc.
Débitos técnicos
< Código >
Código limpo
TESTES
Teste de Unidade: Testa um componente isolado ou classe do sistema.
Teste de Integração: Testa se um ou mais componentes combinados funcionam
de maneira satisfatória.
Teste de Regressão: Reteste de um sistema ou componente para verificar se alguma
modificação recente causou algum efeito indesejado.
Teste Funcional: Testa os requisitos funcionais, as funções e os casos de uso.
QUALIDADE DE
CÓDIGO
OBRIGADA! =)
THAMARA.HESSEL@GMAIL.COM
FB - @THAMARAHESSEL
TW - @THAMARAHESSEL

More Related Content

What's hot

Características de Qualidade de Software - O que testar?
Características de Qualidade de Software - O que testar?Características de Qualidade de Software - O que testar?
Características de Qualidade de Software - O que testar?Marlon Almeida
 
Os 5 Níveis de Reuso
Os 5 Níveis de ReusoOs 5 Níveis de Reuso
Os 5 Níveis de ReusoDr. Spock
 
Qualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberQualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberKamilla Queiroz Xavier
 
Senac QSS - 1) Intro
Senac QSS - 1) IntroSenac QSS - 1) Intro
Senac QSS - 1) Introlcbj
 
Behavior Driven Development - Unificando propostas de negócio com testes e có...
Behavior Driven Development - Unificando propostas de negócio com testes e có...Behavior Driven Development - Unificando propostas de negócio com testes e có...
Behavior Driven Development - Unificando propostas de negócio com testes e có...Rafael Prallon
 
Certificação de processos e gestão da qualidade de software nas organizações
Certificação de processos e gestão da qualidade de software nas organizaçõesCertificação de processos e gestão da qualidade de software nas organizações
Certificação de processos e gestão da qualidade de software nas organizaçõesRafael Pires
 
ISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de SoftwareISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de SoftwareFelipe Cabral
 
ArchUnit: testando a arquitetura de sua aplicação Java
ArchUnit: testando a arquitetura de sua aplicação JavaArchUnit: testando a arquitetura de sua aplicação Java
ArchUnit: testando a arquitetura de sua aplicação JavaFabio Domingues
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de softwareLeonardo Melo Santos
 
Aula processo de reuso de software
Aula processo de reuso de softwareAula processo de reuso de software
Aula processo de reuso de softwareTatiana Tavares
 
Tech talk clean architecture and_pyramid_test
Tech talk clean architecture and_pyramid_testTech talk clean architecture and_pyramid_test
Tech talk clean architecture and_pyramid_testVictor Yuri Alves Tripeno
 
Apresentacao IzCode Web
Apresentacao IzCode  WebApresentacao IzCode  Web
Apresentacao IzCode Webjoaopauloaos
 
Integração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPSIntegração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPSFabiano Souza
 
Visão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOKVisão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOKMário Pravato Junior
 

What's hot (20)

Características de Qualidade de Software - O que testar?
Características de Qualidade de Software - O que testar?Características de Qualidade de Software - O que testar?
Características de Qualidade de Software - O que testar?
 
Os 5 Níveis de Reuso
Os 5 Níveis de ReusoOs 5 Níveis de Reuso
Os 5 Níveis de Reuso
 
Qualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saberQualidade e Teste de Software - O que preciso saber
Qualidade e Teste de Software - O que preciso saber
 
Senac QSS - 1) Intro
Senac QSS - 1) IntroSenac QSS - 1) Intro
Senac QSS - 1) Intro
 
Behavior Driven Development - Unificando propostas de negócio com testes e có...
Behavior Driven Development - Unificando propostas de negócio com testes e có...Behavior Driven Development - Unificando propostas de negócio com testes e có...
Behavior Driven Development - Unificando propostas de negócio com testes e có...
 
eXtreme Programming
eXtreme ProgrammingeXtreme Programming
eXtreme Programming
 
Certificação de processos e gestão da qualidade de software nas organizações
Certificação de processos e gestão da qualidade de software nas organizaçõesCertificação de processos e gestão da qualidade de software nas organizações
Certificação de processos e gestão da qualidade de software nas organizações
 
ISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de SoftwareISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de Software
 
Documentos de software
Documentos de softwareDocumentos de software
Documentos de software
 
ArchUnit: testando a arquitetura de sua aplicação Java
ArchUnit: testando a arquitetura de sua aplicação JavaArchUnit: testando a arquitetura de sua aplicação Java
ArchUnit: testando a arquitetura de sua aplicação Java
 
Verificação e validação de software
Verificação e validação de softwareVerificação e validação de software
Verificação e validação de software
 
BDD
BDDBDD
BDD
 
O que devo procurar em um code review
O que devo procurar em um code review O que devo procurar em um code review
O que devo procurar em um code review
 
Aula processo de reuso de software
Aula processo de reuso de softwareAula processo de reuso de software
Aula processo de reuso de software
 
Tech talk clean architecture and_pyramid_test
Tech talk clean architecture and_pyramid_testTech talk clean architecture and_pyramid_test
Tech talk clean architecture and_pyramid_test
 
Apresentacao IzCode Web
Apresentacao IzCode  WebApresentacao IzCode  Web
Apresentacao IzCode Web
 
Reúso
ReúsoReúso
Reúso
 
Ferramentas case
Ferramentas caseFerramentas case
Ferramentas case
 
Integração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPSIntegração contínua - Rumo à automação e ao DEVOPS
Integração contínua - Rumo à automação e ao DEVOPS
 
Visão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOKVisão de Testes de Software segundo o SWEBOK
Visão de Testes de Software segundo o SWEBOK
 

Viewers also liked

Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Roberto Pepato
 
Clean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de SoftwareClean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de SoftwareGabriel Felipe Soares
 
Banco de questões qualidade de software
Banco de questões qualidade de softwareBanco de questões qualidade de software
Banco de questões qualidade de softwareBruno Nascimento
 
MPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software BrasileiroMPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software BrasileiroPaulo Henrique de Sousa
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaGuilherme Cardoso
 

Viewers also liked (7)

Brisa Qualidade e Testes de software
Brisa   Qualidade e Testes de softwareBrisa   Qualidade e Testes de software
Brisa Qualidade e Testes de software
 
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
 
Clean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de SoftwareClean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de Software
 
Banco de questões qualidade de software
Banco de questões qualidade de softwareBanco de questões qualidade de software
Banco de questões qualidade de software
 
MPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software BrasileiroMPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software Brasileiro
 
Qualidade de software
Qualidade de softwareQualidade de software
Qualidade de software
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-ponta
 

Similar to Guia para qualidade de código

1 Qss
1 Qss1 Qss
1 Qsslcbj
 
DevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeDevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeKamilla Queiroz Xavier
 
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu SoftwareDevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu SoftwareAndré Dias
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de SoftwareJoão Rolim
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Softwareeros.viggiano
 
ESw 10 - Qualidade de Software.pdf
ESw 10 - Qualidade de Software.pdfESw 10 - Qualidade de Software.pdf
ESw 10 - Qualidade de Software.pdfssuser9293ae
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de TestesUFPA
 
Aula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfAula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfHoctairBernardino
 
Qualidade no desenvolvimento de software
Qualidade no desenvolvimento de softwareQualidade no desenvolvimento de software
Qualidade no desenvolvimento de softwareDennes Torres
 
Análise e Design Orientado a Objetos.ppt
Análise e Design Orientado a Objetos.pptAnálise e Design Orientado a Objetos.ppt
Análise e Design Orientado a Objetos.pptTzveDyor
 
Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...
Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...
Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...Leandro Ugioni
 
Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfMichaelArrais1
 
Final Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applicationsFinal Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applicationsLuiz Henrique
 
Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...
Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...
Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...Joao Galdino Mello de Souza
 
Aula 01-Conceitos de Qualidade
Aula 01-Conceitos de QualidadeAula 01-Conceitos de Qualidade
Aula 01-Conceitos de QualidadeCris Fidelix
 

Similar to Guia para qualidade de código (20)

1 Qss
1 Qss1 Qss
1 Qss
 
DevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidadeDevQA | Da zona de conforto ao comprometimento com a qualidade
DevQA | Da zona de conforto ao comprometimento com a qualidade
 
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu SoftwareDevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
152191 11993
152191 11993152191 11993
152191 11993
 
Arquitetura de Software
Arquitetura de SoftwareArquitetura de Software
Arquitetura de Software
 
Aula1 eng software
Aula1 eng softwareAula1 eng software
Aula1 eng software
 
ESw 10 - Qualidade de Software.pdf
ESw 10 - Qualidade de Software.pdfESw 10 - Qualidade de Software.pdf
ESw 10 - Qualidade de Software.pdf
 
Test-Driven Development
Test-Driven DevelopmentTest-Driven Development
Test-Driven Development
 
Engenharia de Testes
Engenharia de TestesEngenharia de Testes
Engenharia de Testes
 
Aula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdfAula07_TesteSoftware_Parte1_semResposta.pdf
Aula07_TesteSoftware_Parte1_semResposta.pdf
 
Qualidade no desenvolvimento de software
Qualidade no desenvolvimento de softwareQualidade no desenvolvimento de software
Qualidade no desenvolvimento de software
 
Análise e Design Orientado a Objetos.ppt
Análise e Design Orientado a Objetos.pptAnálise e Design Orientado a Objetos.ppt
Análise e Design Orientado a Objetos.ppt
 
Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...
Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...
Melhoria da qualidade e padrões de código fonte utilizando ferramentas de aná...
 
Aula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdfAula18_V&VTesteSoftware.pdf
Aula18_V&VTesteSoftware.pdf
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Final Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applicationsFinal Project (2013): Test-Driven Development applied on web applications
Final Project (2013): Test-Driven Development applied on web applications
 
Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...
Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...
Performance e Capacidade de Aplicação e Infraestrutura - Qualidade do Código ...
 
Aula 01-Conceitos de Qualidade
Aula 01-Conceitos de QualidadeAula 01-Conceitos de Qualidade
Aula 01-Conceitos de Qualidade
 

More from Thamara Hessel

Liderar e ser liderado(a) - o que você precisa saber sobre liderança técnica
Liderar e ser liderado(a) - o que você precisa saber sobre liderança técnicaLiderar e ser liderado(a) - o que você precisa saber sobre liderança técnica
Liderar e ser liderado(a) - o que você precisa saber sobre liderança técnicaThamara Hessel
 
What do software engineers do
What do software engineers do What do software engineers do
What do software engineers do Thamara Hessel
 
Arquitetura e qualidade de codigo
Arquitetura e qualidade de codigoArquitetura e qualidade de codigo
Arquitetura e qualidade de codigoThamara Hessel
 
Composer - tricks and tips
Composer - tricks and tipsComposer - tricks and tips
Composer - tricks and tipsThamara Hessel
 
Git style best practices - OLX
Git style best practices - OLXGit style best practices - OLX
Git style best practices - OLXThamara Hessel
 
Code review Effective - kwan
Code review  Effective - kwanCode review  Effective - kwan
Code review Effective - kwanThamara Hessel
 
Git - Saia do Básico!
Git - Saia do Básico!Git - Saia do Básico!
Git - Saia do Básico!Thamara Hessel
 
Refactoring sem complicação!
Refactoring sem complicação!Refactoring sem complicação!
Refactoring sem complicação!Thamara Hessel
 

More from Thamara Hessel (9)

Liderar e ser liderado(a) - o que você precisa saber sobre liderança técnica
Liderar e ser liderado(a) - o que você precisa saber sobre liderança técnicaLiderar e ser liderado(a) - o que você precisa saber sobre liderança técnica
Liderar e ser liderado(a) - o que você precisa saber sobre liderança técnica
 
What do software engineers do
What do software engineers do What do software engineers do
What do software engineers do
 
Arquitetura e qualidade de codigo
Arquitetura e qualidade de codigoArquitetura e qualidade de codigo
Arquitetura e qualidade de codigo
 
Composer - tricks and tips
Composer - tricks and tipsComposer - tricks and tips
Composer - tricks and tips
 
Git style best practices - OLX
Git style best practices - OLXGit style best practices - OLX
Git style best practices - OLX
 
Code review Effective - kwan
Code review  Effective - kwanCode review  Effective - kwan
Code review Effective - kwan
 
Object calisthenics
Object calisthenics  Object calisthenics
Object calisthenics
 
Git - Saia do Básico!
Git - Saia do Básico!Git - Saia do Básico!
Git - Saia do Básico!
 
Refactoring sem complicação!
Refactoring sem complicação!Refactoring sem complicação!
Refactoring sem complicação!
 

Guia para qualidade de código

  • 4. Nem todo software bom tem código bom QUALIDADE DE SOFTWARE(diferente) QUALIDADE DE CÓDIGO Nem todo código bom tem um propósito real As métricas de qualidade são especificas para código As métricas de qualidade são voltadas para usabilidade Software código B. dados infra
  • 5. O QUE É QUALIDADE ? NBR ISO 9000:2005 "Qualidade é o grau no qual um conjunto de características inerentes satisfaz aos requisitos”. NBR ISO 8402 "A totalidade das características de uma entidade que lhe confere a capacidade de satisfazer às necessidades explícitas e implícitas”.
  • 6. O QUE É QUALIDADE ? Aspecto / Forma / Apresentação Material / Constituição / Técnica Custo / Distribuição / Processo
  • 7. Técnica Custo QUALIDADE Aspecto / Forma / Apresentação Material / Constituição / Técnica Custo / Distribuição / Processo CÓDIGO Linguagem de Programação Símbolos representativos Instruções < Código > Aspecto
  • 8. CUSTO Débitos técnicos Técnica Custo < Código > Aspecto Poucos sistemas permanecem sem débitos técnicos, devido a N fatores, a questão é “Quando será pago?" Um débito técnico é como uma conta a ser paga, quanto antes pagar menor será o prejuízo com erros inesperados, tempo de correção e manutenção.
  • 9. TÉCNICA Patterns, frameworks, etc. Uma fonte comum de baixa qualidade é a escolha errônea da tecnologia, metodologia ou ferramenta, para escolher é fundamental considerar fatores como potencial sobrevivência, interoperabilidade, segurança e padrões. Técnica Custo < Código > Aspecto Um framework é uma promessa de qualidade, atualização e manutenção a um custo menor. Exemplos: Design patterns são soluções de design comprovadas e design são as bases de projeto de software OO. O uso de OO ajuda evitar a intuitividade e legibilidade do código, resultando em menor dificuldade de manutenção da aplicação.
  • 10. ASPECTO Código limpo O nível de retardo para manter um código "sujo" pode ser significativo ao longo de um ou dois anos e piorar gradativamente a cada alteração. - “Um código limpo é simples e direto. Ele é tão bem legível quanto uma prosa bem escrita”. - - Grady Booch Técnica Custo < Código > Aspecto
  • 11. Patterns, frameworks, etc. Débitos técnicos < Código > Código limpo
  • 12. TESTES Teste de Unidade: Testa um componente isolado ou classe do sistema. Teste de Integração: Testa se um ou mais componentes combinados funcionam de maneira satisfatória. Teste de Regressão: Reteste de um sistema ou componente para verificar se alguma modificação recente causou algum efeito indesejado. Teste Funcional: Testa os requisitos funcionais, as funções e os casos de uso.
  • 14. OBRIGADA! =) THAMARA.HESSEL@GMAIL.COM FB - @THAMARAHESSEL TW - @THAMARAHESSEL