Dando forma ao seu Framework
Você escolheu uma semente no início porque ela era a mais próxima. Em algum momento ela deixa de servir, e isso é esperado: um Framework (a estrutura) pode remodelar ou sobrepor qualquer parte dela sem bifurcar o padrão.
A ferramenta é o configure. Ele edita _eidos/Framework.md, cria pastas e
arquivos de shape, e reconcilia os Blueprints que já estão em disco.
O que ele muda, e o que não
Seção intitulada “O que ele muda, e o que não”O configure faz |
Use outra coisa para |
|---|---|
| Acrescentar ou mudar uma coleção | Escrever Blueprints → eidos |
| Acrescentar ou mudar um flavor | O index.md de uma coleção → index |
| Acrescentar, renomear ou aposentar uma propriedade personalizada, e preenchê-la retroativamente | Subidas de versão → migrate |
| Atualizar o índice Top-Level | As propriedades centrais do Eidos → migrate |
Acrescentar uma coleção
Seção intitulada “Acrescentar uma coleção”O caso comum: uma pasta decisions para ADRs, ou Roles como conteúdo em vez de
como configuração do agente.
Acrescentar uma significa responder cinco coisas, que são toda a entrevista do
configure:
- O nome dela, na convenção de nomes.
- Uma descrição de uma linha do que ela guarda.
- Os flavors dela: pelo menos um shape, com um marcado como padrão.
- Como o canvas a desenha:
file,cardoucard from ## Section. - Se ela agrupa os seus Blueprints em um nível, e nesse caso se uma propriedade nomeia o agrupamento.
Acrescentar um flavor
Seção intitulada “Acrescentar um flavor”Mais barato do que uma coleção, e normalmente a resposta certa quando os Blueprints de uma mesma coleção variam.
A convenção que o restringe: uma família de shapes por coleção, declarada como flavors. O que flexiona é quais seções aparecem e qual flavor um Blueprint usa, nunca a ordem ou os nomes delas dentro de um flavor. O shape nunca é bifurcado por categoria.
Então: uma variante mais leve da qual crescer, ou uma alternativa deliberada, é um flavor. “Specs de integração têm estas cinco seções diferentes” não é um flavor: isso é outra coleção, ou um sinal de que as seções deveriam ser opcionais dentro de um único shape.
Dois padrões que funcionam:
- Leve → completo.
microcresce atéfull. O leve mantém os inegociáveis (intenção, critérios, não-objetivos) e descarta o que pode esperar. - Variante deliberada. Dois flavors de peso igual para tipos de unidade genuinamente diferentes dentro da mesma coleção, sem que nenhum seja degrau para o outro.
Acrescentar uma propriedade
Seção intitulada “Acrescentar uma propriedade”O configure pressiona pelos quatro campos, porque uma propriedade a que falte
qualquer um deles é inútil:
| Campo | Por que é obrigatório |
|---|---|
| Name | A chave do frontmatter. |
| Type | Um entre Text, List, Number, Checkbox, Date, Date & time. |
| Applies To | all, ou uma lista. É o que impede que ela aterrisse onde não faz sentido. |
| Meaning | Para que serve. Sem isso, as pessoas a preenchem de forma inconsistente em um mês. |
Depois ele preenche retroativamente os Blueprints a que a propriedade se aplica, para que a raiz continue uniforme em vez de se dividir em eras de antes e depois.
Antes de acrescentar uma, verifique três coisas
Seção intitulada “Antes de acrescentar uma, verifique três coisas”Uma seção do corpo não seria melhor? Se ela quer mais estrutura do que um dos seis tipos, o lugar dela é o corpo. O padrão limita os tipos de propriedade a esses seis justamente para forçar esta pergunta.
É um rótulo leve ou é estrutural? Uma categoria que dirige visões e filtragem
é um rótulo leve: um valor fora da lista continua válido. Uma categoria que muda
quais seções um Blueprint tem é um flavor, e flavor é a propriedade que
carrega isso.
É acompanhamento de trabalho disfarçado? O padrão é absoluto aqui: nada de
sprint, estimate ou assignee. Trate com suspeita também qualquer coisa que
signifique “o quanto avançamos”: um progress, uma phase, uma target_date.
Conecte com o seu rastreador por meio de um link.
Aposentar uma propriedade
Seção intitulada “Aposentar uma propriedade”Também o configure. Aposentar é a metade negligenciada: uma raiz acumula
propriedades que ninguém preenche, e cada uma acrescenta ruído a cada Blueprint.
Se uma propriedade esteve em branco nos últimos vinte Blueprints, ela já não faz parte do seu contrato. Remova-a.
Ajustar um papel
Seção intitulada “Ajustar um papel”Os arquivos de papel são versionados e ajustáveis pelo time: edite-os diretamente. Se os seus desenvolvedores querem menos orientação, ou o seu papel de stakeholder está saindo técnico demais, mude o arquivo e todo mundo recebe.
Acrescente um papel acrescentando um arquivo. O elenco é do seu próprio Framework; os elencos das sementes são ilustrações, não um conjunto fechado. Mais →
Duas convenções a manter à vista enquanto remodela
Seção intitulada “Duas convenções a manter à vista enquanto remodela”Quando vale a pena publicar um Framework
Seção intitulada “Quando vale a pena publicar um Framework”Depois que o seu Framework se assentou, ele é forma sem conteúdo, o que o torna exatamente o artefato que você entrega a outro time. Isso é uma semente.
Se dois produtos da sua organização deveriam ser descritos do mesmo jeito, publique o Framework em vez de copiar uma raiz e apagar o conteúdo dela. Um Framework, quantas raízes você quiser.