Equipe Central
Title
Equipe Central
Patlet
Mesmo quando um projeto InnerSource é amplamente necessário, as contribuições e uso podem ser prejudicados porque o projeto é difícil de trabalhar. Estabelecer uma equipe central dedicada a cuidar dos itens fundamentais do projeto. O trabalho deles permite que os contributors adicionem e usem recursos que oferecem valor para seus cenários.
Problema
É difícil contribuir para o projeto. Isso pode ser devido a coisas como:
Não é possível executar o projeto localmente.
Documentação insuficiente.
Código confuso.
Testes inadequados.
É difícil usar o projeto. Algumas possíveis causas:
Documentação ruim (novamente).
Bugs frequentes.
Configuração não intuitiva.
História
Existe um projeto central do qual todos dependem. Que ótimo candidato para InnerSource! Infelizmente, o projeto cresceu organicamente, com várias contribuições e adições feitas de forma descuidada. Agora é uma massa espessa e confusa de código que ninguém entende e todos têm medo de tocar. É claramente necessário uma revisão completa (por exemplo, refatoração, testes, documentação, etc.), mas mesmo que todos precisem e queiram que esse trabalho aconteça, ninguém tira tempo para fazê-lo.
Contexto
Muitas equipes precisam do projeto.
O projeto tem uma dívida técnica significativa.
Adoção e iteração lentas no projeto.
Não há um proprietário ou mantenedor que assuma a responsabilidade pelo ecossistema de projeto e contribuição como um todo.
Forças
Cada equipe contribuinte está ocupada e, portanto, prioriza o trabalho que resulta em um retorno imediato para si mesmos.
Conforme o projeto cresce, a tendência natural é que ele se torne mais difícil de usar e modificar.
Solução
Forme uma equipe central cujo trabalho é manter este projeto em um estado para que outros possam facilmente aderir e contribuir para ele. Esta equipe central faz o trabalho necessário para um ecossistema de uso e contribuição saudável. Este trabalho crítico tende a não ser priorizado como uma contribuição. Categorias desse tipo de trabalho incluem comunicação, ambiente local e infraestrutura de DevOps.
Aqui estão alguns exemplos específicos:
Bugs em produção
Documentação
Tutoriais e exemplos para integração de novos colaboradores
Testes automatizados
Integração e entrega contínua (CI/CD)
Ambiente local de desenvolvimento
Modularização
Versionamento
Monitoramento
Desbravamento de novas classes/categorias de funcionalidades.
Cada um desses itens é muito importante para um ecossistema de produto saudável, mas é improvável que seja priorizado como uma contribuição.
A equipe central pode ser composta por um pequeno número de pessoas em tempo integral ou parcial. A escolha depende da quantidade de trabalho necessário, da disponibilidade de recursos e da cultura da organização. A consideração mais importante é formar a equipe de forma que permita que a organização a capacite e a responsabilize da mesma maneira que qualquer outra equipe.
Uma boa maneira de lembrar constantemente a equipe central desse objetivo é pedir que eles relatem regularmente sobre:
número de equipes ativas que usam o projeto
número de contribuições fora das equipes para o projeto.
O foco contínuo nesses indicadores naturalmente levará a equipe central a priorizar geralmente o trabalho correto para criar um ecossistema InnerSource próspero em torno do projeto.
Contexto Resultante
O projeto é fácil de usar e contribuir.
Muitas equipes usam e contribuem para o projeto.
A equipe central tem o sucesso definido em termos da interação e resposta dos outros ao seu projeto.
Fundamentação
Separar uma equipe central e encarregá-la dessa forma ajuda a preencher as lacunas que um projeto de sucesso precisa, mas são deixadas para trás por contribuidores que estão perseguindo apenas sua própria agenda. A equipe central preenche essas lacunas e lubrifica as engrenagens para que o ecossistema de contribuição permaneça saudável.
Instâncias Conhecidas
Nike implementou esse padrão para gerenciar o esforço de InnerSource em torno de seus pipelines de CI/CD reutilizáveis.
Estado
Structured
Autores
Histórico de Tradução
Atualizado
Isto foi útil?