O documento discute ferramentas de software livre para desenvolvimento de software, incluindo JIRA para gerenciamento de projetos, Enterprise Architect para modelagem, Subversion para controle de versão, Gerrit para revisão de código, Jenkins para integração contínua, Nexus para gerenciamento de dependências, TestLink para gerenciamento de testes, Selenium para teste automatizado, e SonarQube para análise de qualidade e métricas de código. Essas ferramentas são integradas na CPqD Developer Suite.
4. CPqD Developer Suite
Um conjunto de ferramentas
● de software livre e de baixo-custo,
● de qualidade comprovada,
● líderes de mercado em suas categorias,
● integradas para propiciar o
● desenvolvimento eficiente de
● software de qualidade.
16. Diagrama de
Sequência
Diagrama de
Caso de Uso
Diagrama de
Colaboração
Diagrama de
Estado
Diagrama de
Atividade
Modelos
Diagrama de
Classe
Diagrama de
Objeto
Diagrama de
Componente
Diagrama de
DistribuiçãoCOMPORTAMENTAIS
ESTRUTURAIS
Modelagem UML
25. “For those of you that have been living
under a rock, the single biggest change
in developers’ lives in the last decade is
Distributed Version Control.”
-- Joel Spolsky
http://www.joelonsoftware.com/items/2013/03/11.html
38. OK, a revisão de código ajuda a encontrar bugs
mais cedo. Mas ela não atrasa o processo de
desenvolvimento?
Sim. A revisão de código gasta aproximadamente
5% do tempo que se leva pra desenvolvê-lo.
5%, ok?
Só 5%, OK?!
49. Jenkins integrado ao CDS
Revisão de Código
Repositorio de Artefatos
Construção
Gestão de Mudança
Controle de Versão
Controle de Versão
Integração Contínua
Automação de Teste
IDE
maven
egit
Qualidade
AS
subversive
67. Inspeção contínua
● Análise estática automatizada de código
○ Disparada pelo Jenkins
○ Java, C/C++, C#, PHP, Javascript, XML, etc.
● Dezenas de métricas de qualidade
○ Complexidade, documentação, cobertura de testes, duplicação
de código, coding standards, etc.
○ Métrica fora dos limites aceitáveis quebra a build.
● Apresentação multidimensional dos resultados
○ Hotspots, tendências, issue drilldown, timeline, etc.
73. Por que coletar métricas?
● É preciso medir pra saber o que melhorar
○ Sonar is a quality profiler
● É preciso medir pra poder convencer
● “Teoria da Janela Quebrada”
● “É melhor prevenir do que remediar”
● Planejar e priorizar
● Controlar o débito técnico