Entenda
SonarCloud ou SonarQube? - Orientação sobre como escolher um para sua equipe

Tanto o SonarCloud quanto o SonarQube são ferramentas valiosas para ajudá-lo a escrever código limpo e de qualidade em seus projetos. Então, qual produto é melhor para você e sua equipe?

Neste artigo, detalharei alguns aspectos importantes de cada produto para que você possa tomar uma decisão informada antes de tentar. Em nossa jornada, abordaremos considerações relacionadas à instalação e execução juntamente com elementos relacionados a recursos disponíveis e extensibilidade. Também abordaremos o suporte a idiomas e o mecanismo de análise estática subjacente.

A base: análise de código estático para mais de 30 idiomas

Ambos os produtos cobrem essencialmente os mesmos idiomas (o SonarCloud não suporta PL/I, RPG ou VB6). Ambos compartilham o mesmo mecanismo de análise estática subjacente para detectar bugs, vulnerabilidades e code smells e gerar valiosas métricas de qualidade de código.

A distinção essencial: seu pipeline de desenvolvimento de software existente

Uma das principais diferenças diz respeito a como cada produto é hospedado e gerenciado. Se sua equipe, código e fluxo de trabalho são totalmente baseados em nuvem (por exemplo, GitHub.com+Travis), o SonarCloud é uma boa opção.

O SonarCloud integra-se prontamente com GitHub.com, Azure DevOps Services, Bitbucket.com e GitLab.com. O SonarCloud é hospedado pela SonarSource na AWS e é o caminho mais fácil para começar a escanear seu código em minutos. O SonarSource faz todo o trabalho pesado do SonarCloud para que você não precise se preocupar com instalação ou manutenção. Como uma oferta SaaS, o SonarCloud oferece acesso imediato a novos recursos e funcionalidades.

Para que você comece a trabalhar rapidamente, o SonarCloud apresenta análise automática para muitos idiomas populares. Esse recurso de verificação automática pode ser perfeito para equipes que desejam métricas de qualidade de código acionáveis ??sem o ônus da configuração da ferramenta. Para alguns casos de uso, definir totalmente a configuração de análise resultará em uma melhor experiência do desenvolvedor e 'desbloqueará' mais recursos do SonarCloud.

Por outro lado, o SonarQube, juntamente com um banco de dados suportado , é instalado em seus próprios servidores ou em um ambiente de nuvem autogerenciado. Depois de instalado, o SonarQube se integra prontamente à sua instância do GitHub , Azure DevOps , Bitbucket ou GitLab . Se você tem um ambiente híbrido onde armazena código na nuvem e conta com um pipeline de CI/CD gerenciado localmente, o SonarQube também pode se integrar com as versões em nuvem de todas essas ferramentas de gerenciamento de código.

Seguir a rota do SonarQube significa que você estará envolvido na instalação e manutenção do seu ambiente. Você também será responsável por instalar novas versões quando elas forem lançadas. Em média, há uma nova versão do SonarQube a cada dois meses. Não atualizar significa que você perderia novos recursos, funcionalidades e correções de bugs não bloqueadores. Já que estamos falando de versões, é importante observar que o SonarQube oferece uma versão LTS ( Long-Term Support ). A SonarSource lança um SonarQube LTS aproximadamente a cada 18 meses. Para o LTS, uma ênfase é colocada na estabilidade e confiabilidade e os bugs do bloqueador são transferidos para um lançamento pontual. 

Para casos de uso corporativo, explore o SonarQube

SonarQube Developer Edition e Enterprise Edition (EE) incluem alguns recursos corporativos adicionais que podem ser valiosos para o(s) caso(s) de uso específico(s) da sua organização. Essa funcionalidade se enquadra em cinco categorias principais: autenticação, governança, relatórios executivos, suporte a vários repositórios e extensibilidade.

Autenticação

Com o SonarCloud e todas as edições do SonarQube, você pode autenticar usando suas credenciais de plataforma DevOps existentes com GitHub, Bitbucket, Azure e GitLab. O SonarQube Developer Edition adiciona a capacidade de também autenticar usando ferramentas de terceiros que suportam os protocolos SAML, LDAP e SCIM.

Governança

O SonarQube Enterprise Edition inclui os recursos Aplicativos e Portfólios, que são contêineres visuais que permitem organizar projetos de uma maneira que rastreie seus objetivos de negócios. Os aplicativos permitem que você agregue todos os projetos enviados juntos em uma única visualização. Os portfólios são semelhantes e permitem agregar projetos em torno de objetivos organizacionais ou de negócios. Por exemplo, você pode criar um Portfólio para rastrear todos os seus projetos de front-end ou todos os projetos de uma equipe geográfica. Neste momento, a SonarCloud não oferece a funcionalidade de Aplicativos ou Portfólios.

Relatórios executivos

O SonarQube Enterprise Edition também inclui recursos de relatórios de nível executivo. Esses relatórios trabalham lado a lado com seus Portfólios para fornecer informações sobre as principais métricas, como confiabilidade, capacidade de manutenção e capacidade de liberação. Além disso, há relatórios de segurança incluindo cobertura para PCI DSS, OWASP ASVS, OWASP Top 10 e CWE Top 25.

No momento, o SonarCloud não inclui a funcionalidade de relatórios executivos. O SonarQube teve seu início há mais de uma década. À medida que o produto amadureceu, identificamos um caso de uso 'Enterprise' que é distinto do caso de uso de funcionalidade 'principal' centrado nos desenvolvedores. É comum que grandes organizações tenham um público 'não desenvolvedor' que exige medição de uma perspectiva e contexto mais amplos. Para satisfazer essa necessidade de relatórios e KPIs de negócios, adicionamos um conjunto de recursos de 'governança' ao SonarQube.

Para o SonarCloud, o foco principal está no fluxo de trabalho do desenvolvedor e em agregar valor à equipe de desenvolvimento em seu ambiente de plataforma DevOps existente (GitHub, Azure, Bitbucket, GitLab). Assim, o caso de uso 'Enterprise' não é atualmente abordado pelo SonarCloud.

Suporte a vários repositórios de código

Para organizações que exigem conectividade com várias instâncias de repositório de código, convém usar o SonarQube Enterprise Edition. Por exemplo, uma única instância do SonarQube Developer Edition pode conectar até 4 repositórios, desde que cada um seja uma ferramenta SCM diferente (ou seja, 1x GitHub, 1x Bitbucket, 1x GitLab e 1x Azure DevOps). Se você precisar se conectar a várias instâncias da plataforma DevOps, precisará do SonarQube Enterprise Edition.

No SonarCloud, você está limitado a vincular uma única ferramenta SCM e uma única 'organização' SCM. (Observe que o Bitbucket os chama de espaços de trabalho e o GitLab se refere a eles como grupos).

Uma nota sobre extensibilidade

Por fim, abordarei a extensibilidade. Existe uma extensa e robusta biblioteca de plugins SonarQube desenvolvidos e mantidos pela comunidade SonarSource. Esses plug-ins aprimoram a funcionalidade principal do SonarQube em torno de um ecossistema maior. Exemplos disso incluem suporte a linguagem de programação adicional, integração com mecanismos SCM menos convencionais e localização de idioma regional.

No momento, o SonarCloud não está aberto para contribuições de plugins de terceiros da comunidade. Mais uma vez, a razão para isso está no foco do produto. A visão do SonarCloud é fornecer uma ferramenta de código limpo para desenvolvedores com a plataforma DevOps integrando funcionalidades adicionais.

Dito de outra forma, entendemos que as plataformas DevOps tomam muito cuidado para criar uma valiosa experiência de fluxo de trabalho do desenvolvedor e a intenção do SonarCloud é aprimorar e aumentar esse valor. Abrir o SonarCloud para integrações de terceiros prejudicaria essa visão.

Envolvendo tudo

Em resumo, se sua equipe é totalmente baseada em nuvem, você não deseja problemas de manutenção e deseja acesso mais rápido a novos recursos, o SonarCloud é uma ótima escolha. Se você está bem com auto-hospedagem e manutenção ou vê valor nos recursos de gerenciamento, o SonarQube faria sentido para você.

Depois de escolher seu caminho, recomendo que você visite nossa página de resumo da solução para obter todos os detalhes sobre como começar.

O objetivo deste artigo não foi listar exaustivamente todas as diferenças do produto, pois cada ambiente é único. No entanto, agora você tem as informações relevantes para a maioria dos casos de uso. Se você tiver mais perguntas, encorajo-o a entrar em contato com nosso Fórum da comunidade . Se precisar de ajuda em relação ao uso comercial, envie uma pergunta para a equipe.

Obrigado pela leitura e boa codificação limpa!

FONTE: Blog Sonarqube

A Software.com.br é parceira da Sonarqube e também é referência em soluções de tecnologia para o mundo corporativo na América Latina. Através de parcerias com os principais fabricantes do mercado, a empresa atua em Transformação Digital, com consultores especializados em: Licenciamento de Software, Cibersegurança, DevOps, Infraestrutura e Data Analytics.

Veja mais sobre TeamViewer em nosso site: Software.com.br

Solicite um Orçamento


Você pode entrar em contato conosco para solicitar um orçamento.

Ao preencher os campos abaixo, você automaticamente concorda com nossos termos de uso e política de privacidade de dados. Saiba mais

Teremos muito prazer em atendê-lo!




Obrigado! Logo entraremos em contato!
Erro ao enviar mensagem.

Obrigado! Logo entraremos em contato!


Erro ao enviar mensagem.


Veja o Guia Software.com.br 2023

Nossos Clientes


Solicite um orçamento Solicite um orçamento

Usamos cookies para garantir que você obtenha a melhor experiência no nosso site. Ao clicar em "Aceitar", você concorda com o uso de TODOS os cookies Saiba mais

Aceitar