Sobre as melhores práticas para organizações dentro de uma empresa
Há várias opções para estruturar as organizações da sua empresa. Cada abordagem tem prós e contras, e a melhor estrutura para sua empresa depende das características e necessidades dela, incluindo restrições de tamanho e segurança.
No entanto, também recomendamos alinhar sua estratégia com a cultura que você deseja criar, não com a cultura que você tem atualmente. Se você quer avançar em termos de colaboração e produção interna, estruture suas ferramentas de modo a conseguir isso. Assim, suas ferramentas poderão ajudar você na mudança cultural, em vez de funcionarem como obstáculos.
Sobre o número organizacional
Em geral, o GitHub recomenda minimizar o número de organizações criadas. Ter menos organizações incentiva maior colaboração e produção interna, o que aumenta a eficiência. Na verdade, muitas empresas são melhor atendidas por uma só organização, pelos motivos a seguir.
- É mais fácil encontrar recursos em uma só organização, pois há apenas um local em que pesquisar.
- É mais fácil se comunicar em uma só organização, pois @-mentions só funciona entre membros da mesma organização.
- Fazer parte de uma só organização grande em que qualquer pessoa e qualquer coisa é acessível, promove a colaboração e a lealdade, enquanto estar separado em organizações menores pode tornar as equipes mais isoladas.
Os proprietários da organização sempre têm acesso a todos os repositórios pertencentes a ela. Se a sua empresa for grande o suficiente para que nenhum proprietário sozinho tenha acesso a todos os repositórios, considere criar várias organizações.
O principal benefício da criação de várias organizações é a capacidade de definir políticas, configurações e requisitos separados para cada uma delas. Por exemplo, cada organização pode ter uma configuração SAML diferente.
Evite criar uma relação um-para-um entre organizações e entidades estruturais da sua empresa, como equipes individuais ou unidades de negócios. Em vez disso, agrupe entidades estruturais que podem compartilhar políticas, configurações e requisitos em uma só organização. Essa abordagem maximiza a colaboração ao atender aos seus requisitos regulatórios.
É sempre mais fácil adicionar organizações do que removê-las, portanto, recomendamos começar com um pequeno número de organizações para ter mais flexibilidade no futuro. Depois de desenvolver mais experiência sobre o que funciona bem para sua empresa, você poderá criar organizações adicionais se surgir a necessidade.
Remover organizações é muito mais difícil e muitas vezes exige migrações e uma redução da flexibilidade com que as equipes já se acostumaram. Muitos clientes passaram a se arrepender de criar um grande número de organizações depois de experimentarem o processo desafiador e demorado de reduzir o número delas.
É recomendável criar e impor regras fixas e transparentes para criar uma organização na sua empresa. Isso facilitará que todos entendam a finalidade de cada organização e quais ativos estão localizados onde.
Sobre a estrutura organizacional
Há cinco arquétipos principais para a estrutura organizacional. Os arquétipos são definidos por duas decisões:
- Se deve usar uma só ou várias organizações
- Se todos os membros devem conceder acesso a todos os repositórios ou usar equipes para gerenciar o acesso ao repositório de modo mais granular
Para obter mais informações sobre equipes, confira "Sobre equipes".
Organização única com acesso direto ao repositório
A estrutura organizacional mais simples é uma só organização, em que os membros recebem acesso a todos os repositórios diretamente por meio da associação à organização. As equipes podem ser usadas para coordenação e comunicação, mas não para gerenciar o acesso ao repositório.
Essa estrutura funciona melhor para pequenas empresas, como startups, em que todos colaboram em tudo. Também pode funcionar para empresas de médio porte, se houver um alto nível de confiança entre os membros.
Para usar esse arquétipo, defina as permissões de base para a organização como "Gravação" ou "Leitura". Para obter mais informações, confira "Definindo permissões base para uma organização".
Organização única com equipes para acessar ao repositório
Se a sua empresa precisar controlar o acesso ao repositório de modo mais granular, você poderá definir as permissões básicas para sua organização como "Nenhum" e, em seguida, conceder a cada equipe acesso apenas a repositórios específicos.
Essa estrutura funciona melhor para empresas de médio porte ou para pequenas empresas com menor nível de confiança. Para empresas menores com alto nível de confiança, onde todos colaboram em tudo, administrar equipes pode não valer a pena pelo alto investimento de tempo.
Várias organizações com acesso direto ao repositório
Para empresas maiores, o gerenciamento do acesso ao repositório com uma só organização pode se tornar confuso, mesmo com o emprego de equipes. Esse arquétipo utiliza várias organizações para gerenciar o acesso ao repositório. Os membros de cada organização têm acesso a todos os repositórios dela.
Essa estrutura funciona melhor para empresas que são grandes o suficiente para ter diferentes grupos que não precisam trabalhar juntos. Essa estrutura não será tão útil se a colaboração entre as unidades de negócios for muito importante.
Para usar esse arquétipo, crie uma organização para cada grupo que possa compartilhar políticas, configurações e requisitos, conforme descrito acima, e defina as permissões de base de cada organização como "Gravação" ou "Leitura".
Várias organizações com equipes para acessar ao repositório
Empresas muito grandes podem exigir um controle mais granular sobre o acesso ao repositório, mesmo quanto têm várias organizações. Nesse caso, você pode usar equipes para conceder a cada grupo acesso somente a repositórios específicos.
Para usar esse arquétipo, crie uma organização para cada grupo que possa compartilhar políticas, configurações e requisitos, conforme descrito acima, defina a permissão de base para cada organização como "Nenhum" e dê a cada equipe acesso somente a repositórios específicos.
Várias organizações com diferentes métodos de acesso
Se você quiser os benefícios de colaboração de uma só organização com acesso direto ao repositório, mas tiver um pequeno número de repositórios muito sensíveis para acesso global, considere usar várias organizações com uma combinação de métodos de acesso.
Para usar esse arquétipo, crie uma organização para todos os seus funcionários e a maioria dos seus repositórios. Conceda a todos os membros acesso a todos os repositórios nesta organização definindo as permissões de base da organização como "Gravação" ou "Leitura".
Em seguida, crie uma segunda organização especificamente para repositórios mais confidenciais. Nesta organização, defina as permissões de base como "Nenhum", adicione apenas as pessoas que precisam acessar os repositórios confidenciais e gerencie o acesso aos repositórios por meio da associação a equipes.
Leitura adicional
- Organize seus especialistas com equipes ad hoc no blog do GitHub
- "Melhores práticas para organizações"