Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
320
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
280
What if Picasso was a Robot? Teaching art to the machine
bellasilveira
2
450
Empathy Driven Development: Boosting performance by implementing for unfavorable conditions
bellasilveira
3
830
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
570
Building functional Front-ends with ClojureScript
bellasilveira
3
390
A Importância do Ócio: Delegando tarefas para a máquina com Machine Learning
bellasilveira
2
280
A Web para todos: Melhorando a performance em condições adversas
bellasilveira
6
880
Art attack para robôs: ensinando arte à máquina
bellasilveira
1
320
Other Decks in Programming
See All in Programming
Developing static sites with Ruby
okuramasafumi
0
190
connect-python: convenient protobuf RPC for Python
anuraaga
0
370
AIコーディングエージェント(Manus)
kondai24
0
150
令和最新版Android Studioで化石デバイス向けアプリを作る
arkw
0
340
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
6.7k
React Native New Architecture 移行実践報告
taminif
1
140
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
5
19k
愛される翻訳の秘訣
kishikawakatsumi
1
270
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
710
分散DBって何者なんだ... Spannerから学ぶRDBとの違い
iwashi623
0
180
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
300
How Software Deployment tools have changed in the past 20 years
geshan
0
28k
Featured
See All Featured
Practical Orchestrator
shlominoach
190
11k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
120
20k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
The Invisible Side of Design
smashingmag
302
51k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Unsuck your backbone
ammeep
671
58k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Designing for humans not robots
tammielis
254
26k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Designing Experiences People Love
moore
143
24k
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