Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Desenvolvimento orientado a qualidade
Search
Isabella Silveira
July 07, 2017
Programming
0
310
Desenvolvimento orientado a qualidade
Isabella Silveira
July 07, 2017
Tweet
Share
More Decks by Isabella Silveira
See All by Isabella Silveira
Looking under the rug: the art of learning from failure
bellasilveira
1
240
What if Picasso was a Robot? Teaching art to the machine
bellasilveira
2
420
Empathy Driven Development: Boosting performance by implementing for unfavorable conditions
bellasilveira
3
780
Turn and face the strange: Construindo front ends funcionais com Clojurescript
bellasilveira
1
300
A Importância do Ócio (JS Version): Delegando tarefas para a máquina com Machine Learning
bellasilveira
2
550
Building functional Front-ends with ClojureScript
bellasilveira
3
380
A Importância do Ócio: Delegando tarefas para a máquina com Machine Learning
bellasilveira
2
270
A Web para todos: Melhorando a performance em condições adversas
bellasilveira
6
860
Art attack para robôs: ensinando arte à máquina
bellasilveira
1
310
Other Decks in Programming
See All in Programming
Investigating Multithreaded PostgreSQL
macdice
0
150
人には人それぞれのサービス層がある
shimabox
3
460
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
770
TypeScript だけを書いて Tauri でデスクトップアプリを作ろう / Tauri with only TypeScript
tris5572
2
530
鯛変だったRubyKaigi 2025 ── それでも楽しかった!
pndcat
0
130
Cloudflare Realtime と Workers でつくるサーバーレス WebRTC
nekoya3
0
230
❄️ tmux-nixの実装を通して学ぶNixOSモジュール
momeemt
1
120
iOSアプリ開発もLLMで自動運転する
hiragram
6
2.1k
Doma で目指す ORM 最適解
nakamura_to
1
160
マテリアルって何者?RealityKitで扱うマテリアル入門
nao_randd
0
140
Devinで実践する!AIエージェントと協働する開発組織の作り方
masahiro_nishimi
6
2.5k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
600
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Adopting Sorbet at Scale
ufuk
76
9.4k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
460
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.4k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
25
2.8k
Balancing Empowerment & Direction
lara
1
84
Transcript
None
Desenvolvimento orientado a qualidade Huge 12 de maio, 2016
Isabella Silveira Front-End Developer @ Huge. Front-End, Back-End, Agile e
Integração Contínua.
1. Introdução 2. O que é qualidade de software? 3.
Processo de desenvolvimento 4. Pilares 5. Conclusão Agenda
Introdução.
Hoje em dia, a qualidade é um diferencial em tudo
que consumimos.
None
None
Mas como definir qualidade de software como um todo?
O que é qualidade de software?
Produtos de software != produtos industrializados.
Processos de manufatura são lineares e repetitivos.
A inovação está por toda parte nos processos de desenvolvimento.
Definindo o software ideal. O que é qualidade de software?
Definindo o software ideal. 1. Eficiente. 2. Escalável. 3. Confiável.
Qualidade está intrinsecamente ligada ao valor de um produto.
Processo de desenvolvimento.
Processo de desenvolvimento. 1. Conceito. 2. Implementação. 3. Software final.
Stakeholders. Processo de desenvolvimento
Stakeholders. 1. Clientes. 2. Usuários. 3. Desenvolvedores.
Pilares.
Pilares. 1. Qualidade funcional. 2. Qualidade estrutural. 3. Qualidade de
processo.
Qualidade funcional. Pilares
Consiste na eficiência do código, no quão bem a aplicação
cumpre o seu papel.
Usuários são os maiores interessados neste aspecto da aplicação.
“Mas o que define qualidade funcional?”
Qualidade funcional: 1. Cumprir com os requisitos. 2. Ter poucos
bugs. 3. Ter boa performance. 4. Ter boa UX.
Qualidade funcional: 1. Cumprir com os requisitos. 2. Ter poucos
bugs. 3. Ter boa performance. 4. Ter boa UX.
Sine qua non da qualidade funcional.
Qualidade funcional: 1. Cumprir com os requisitos. 2. Ter poucos
bugs. 3. Ter boa performance. 4. Ter boa UX.
Bugs comprometem a confiabilidade do sistema.
Qualidade funcional: 1. Cumprir com os requisitos. 2. Ter poucos
bugs. 3. Ter boa performance. 4. Ter boa UX.
Você conhece alguma aplicação boa e lenta?
Qualidade funcional: 1. Cumprir com os requisitos. 2. Ter poucos
bugs. 3. Ter boa performance. 4. Ter boa UX.
Para os usuários, a aplicação basicamente se resume à interface.
Ferramentas e aliados. Qualidade funcional
Testes automatizados.
None
Load testing.
None
Security testing.
+
None
Qualidade estrutural. Pilares
Caracteriza a qualidade do código escrito; o quão bem ele
é estruturado.
Desenvolvedores são o “público alvo”.
Qualidade estrutural: 1. Código testável. 2. Código sustentável. 3. Código
legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Qualidade estrutural: 1. Código testável. 2. Código sustentável. 3. Código
legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Funções limpas, claras e atômicas. Cada função lida apenas com
uma responsabilidade.
Qualidade funcional: 1. Código testável. 2. Código sustentável. 3. Código
legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Código manutenível. Sim, eu procurei essa palavra no Google.
O quão fácil é mudar o código sem introduzir novos
bugs?
None
Qualidade funcional: 1. Código testável. 2. Código sustentável. 3. Código
legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Funções e variáveis claras e explícitas. Isso facilita a compreensão
e assimilação do código por novos desenvolvedores e acelera a implementação de novas features.
None
Qualidade funcional: 1. Código testável. 2. Código sustentável. 3. Código
legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Código confiável e de rápida execução.
Qualidade funcional: 1. Cumpre com os requisitos. 2. Código sustentável.
3. Código legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Sem brechas de segurança, não deve permitir ataques ou SQL
injections.
None
None
None
Qualidade estrutural: 1. Código testável. 2. Código sustentável. 3. Código
legível. 4. Código eficiente. 5. Código seguro. 6. Código escalável.
Design pattern e código modularizado. Permite a implementação de novas
features em menos tempo e menor ocorrência de bugs e erros de regressão.
Ferramentas e aliados. Qualidade funcional
Análise de complexidade.
plato
None
None
Linters.
None
Refactoring.
None
Qualidade de processo. Pilares
É a qualidade do processo de implementação do produto.
Clientes e membros do projeto são os mais afetados.
Qualidade de processo: 1. Respeitar prazos de entrega. 2. Respeitar
o orçamento original. 3. Alinhamento entre a equipe. 4. Processo de entrega consistente.
Qualidade de processo: 1. Respeitar prazos de entrega. 2. Respeitar
o orçamento original. 3. Alinhamento entre a equipe. 4. Processo de entrega consistente.
O software foi entregue no prazo estipulado?
Qualidade de processo: 1. Respeitar prazos de entrega. 2. Respeitar
o orçamento original. 3. Alinhamento entre a equipe. 3. Processo de entrega consistente.
O software foi entregue de acordo com o orçamento original?
Qualidade de processo: 1. Respeitar prazos de entrega. 2. Respeitar
o orçamento original. 3. Alinhamento entre a equipe. 4. Processo de entrega consistente.
Desenvolvedores e designers estarem em sintonia com o gerente de
projeto é fundamental.
None
Qualidade de processo: 1. Respeitar prazos de entrega. 2. Respeitar
o orçamento original. 3. Alinhamento entre a equipe. 4. Processo de entrega consistente.
Ponto chave da qualidade de processo.
None
Ferramentas e aliados. Qualidade de processo
Métricas ágeis.
Gráfico de Burndown.
None
Scrumboard.
None
Conclusão.
Equilíbrio é fundamental.
Qualidade agrega valor à sua aplicação.
Não sacrifique qualidade por desempenho.
Qualidade de software não é opcional.
Questions?
Get in touch. /in/isabellasilveira
[email protected]
@silveira_bells /bella-silveira
None