práticas de agilidade e qa na comunidade kde
TRANSCRIPT
![Page 1: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/1.jpg)
Práticas de Agilidade e QAna Comunidade KDE
Sandro AndradeIFBA / KDE
[email protected]@andradesandro
![Page 2: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/2.jpg)
O KDE
4239 colaboradores em todo o mundo20 anos de existência21.216.876 de linhas de código7664 anos de trabalho (modelo COCOMO) Fonte: Open HUB
![Page 3: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/3.jpg)
KDE – o que fazemos?
http://plasma-desktop.org
![Page 4: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/4.jpg)
KDE – o que fazemos?
http://plasma-mobile.org
![Page 5: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/5.jpg)
163 Aplicações (KA) em diversos domínios
KDE – o que fazemos?
![Page 6: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/6.jpg)
minuet.kde.org
KDE – o que fazemos?
![Page 7: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/7.jpg)
minuet.kde.org
KDE – o que fazemos?
![Page 8: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/8.jpg)
minuet.kde.org
KDE – o que fazemos?
![Page 9: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/9.jpg)
minuet.kde.org
KDE – o que fazemos?
![Page 10: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/10.jpg)
KDE Frameworks 5 (KF5):
KDE – o que fazemos?
SO (Linux, Windows, OS X, ...)
Servidor Gráfico (X11, Wayland, ...)
C++ / Qt 5 / QML / JavaScript
KDE Frameworks 5
KDE Plasma
KDE Applications
65 novos módulos para o Qt:
Compressão de arquivosConfiguração do sistemaNovos models e viewsPlottingIntegração e detecção de HWMultithreadingSystem notifications...
http://www.frameworks.org
![Page 11: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/11.jpg)
KDE – o ecossistema
Colaboradores(desenvolvedores, testadores, tradutores, designers, sysadmins, etc)
KDE e.V.(membros da associação)
Empresas
KDEFree Qt
Foundation
WorkingGroups
KDE e.V.Board ofDirectors
Afiliados
![Page 12: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/12.jpg)
KDE – o ecossistema
![Page 13: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/13.jpg)
KDE – múltiplos atores
![Page 14: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/14.jpg)
KDE – múltiplos atores
Core Developers
![Page 15: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/15.jpg)
KDE – múltiplos atores
Core Developers Co-developers
![Page 16: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/16.jpg)
KDE – múltiplos atores
Core Developers Co-developers Tradutores
![Page 17: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/17.jpg)
KDE – múltiplos atores
Core Developers Co-developers Tradutores Release Team
![Page 18: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/18.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Co-developers Tradutores Release Team
![Page 19: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/19.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Co-developers
Usuários (passivos/ativos)
Tradutores Release Team
![Page 20: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/20.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Co-developers
Usuários (passivos/ativos)
Tradutores
Sysadmins
Release Team
![Page 21: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/21.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Co-developers
Usuários (passivos/ativos)
Tradutores
Sysadmins
Release Team
Designers
![Page 22: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/22.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Novatos
Co-developers
Usuários (passivos/ativos)
Tradutores
Sysadmins
Release Team
Designers
![Page 23: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/23.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Novatos
Co-developers
Usuários (passivos/ativos)
Community Manager
Tradutores
Sysadmins
Release Team
Designers
![Page 24: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/24.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Novatos
Co-developers
Usuários (passivos/ativos)
Community Manager
Tradutores
Sysadmins
PR/Marketing
Release Team
Designers
![Page 25: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/25.jpg)
KDE – múltiplos atores
Core Developers
Empacotadores
Novatos
Co-developers
Usuários (passivos/ativos)
Community Manager
Tradutores
Sysadmins
PR/Marketing
Release Team
Designers
Board de Diretores
![Page 26: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/26.jpg)
KDE e Métodos Ágeis
![Page 27: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/27.jpg)
● Release Schedule● Epics Dashboard● Automação● phabricator.kde.org● Git Branching Model● Neon e Continuous Delivery
KDE e Métodos Ágeis
![Page 28: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/28.jpg)
KA Release Schedule (anterior)
![Page 29: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/29.jpg)
KA Release Schedule (atual)
![Page 30: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/30.jpg)
● Releases mensais● String freeze duas semanas antes do release● Não há feature freeze:
– Desde que testadas, revisadas, sem problemas de CI e não violem o string freeze
KF5 Release Schedule
![Page 31: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/31.jpg)
Epics Dashboard
![Page 32: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/32.jpg)
● Traduções– gettext+scripts → tradutores → commit automático
no repositório original → empacotamento (release)● Release 100% automatizado
– Versionamento, QA, geração de tarballs e upload● Integração Phabricator, Git, IRC, Telegram e
listas de discussão● Zabbix + Ansible + Docker● Redeploy de websites via git hooks (jekyll, etc)
Automação
![Page 33: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/33.jpg)
phabricator.kde.org
![Page 34: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/34.jpg)
Git Branching Model
![Page 35: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/35.jpg)
Neon e Continuous Delivery
http://neon.kde.org
![Page 36: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/36.jpg)
KDE e Quality Assurance
![Page 37: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/37.jpg)
● Release Schedule● Continuous Delivery (Neon)● Sanity Checks● Revisões (dev + i18n + UI)● KF5 Policy e CI/CD
KDE e Quality Assurance
![Page 38: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/38.jpg)
● Krazy● Clazy● astyle-kdelibs
Sanity Checks
![Page 39: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/39.jpg)
● Suportadas via Phabricator● Revisões de código – core developers● Revisões de mockups – Visual Design Group –
vdesign.kde.org (via Phabricator Pholio)● Revisões de i18n – equipe de i18n
Revisões
![Page 40: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/40.jpg)
● KF5 Definition of Done:– Dependências não utilizadas são removidas– Frameworks tier1 dependem somente do Qt– Nome de bibliotecas em CamelCase– Em conformidade com a política de organização
de diretórios– Possui testes de unidade– Mantém compatibilidade de código-fonte com
kdelibs– CI em estado OK ...
KF5 Policy e CI/CD
![Page 41: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/41.jpg)
KF5 Policy e CI/CDhttp://build.kde.org
![Page 42: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/42.jpg)
● Atividades realizadas via CI:– Compilação em múltiplas plataformas– Detecção de regressões– Detecção de violações de arquitetura– Atualização de documentação de API
● Atividades realizadas via CD:– Verificação de dependências– Geração de pacotes– Atualização de repositórios
KF5 Policy e CI/CD
![Page 43: Práticas de Agilidade e QA na Comunidade KDE](https://reader034.vdocuments.mx/reader034/viewer/2022050806/58ed2c301a28abc97f8b468b/html5/thumbnails/43.jpg)
● KDE = agilidade em alta escala● O processo está em constante evolução● Software livre é um excelente lugar
para aprender e experimentartécnicas ágeis
● Nós fazemos software,amigos e livros :)– 20years.kde.org
Conclusão