"Morte de Deus" ou o colapso de leis geralmente aceitas para formar equipes de TI e criar sistemas de TI no século 21

"Deus está morto", Gott ist tot (1881) Nietzsche é uma metáfora fundamental da filosofia pós-moderna.
A idéia principal é abandonar os padrões herdados de comportamento e as formas de perceber a realidade, que são a base, a composição textual e cultural do nosso "eu". Na filosofia, a formação desse conceito levou milhares de anos; no mundo da tecnologia da informação, cinquenta eram suficientes.

No passado recente, muitos processos eram manuais, e mentes questionadoras ordenaram e automatizaram. Para isso, métodos e ferramentas foram desenvolvidos, leis foram formuladas, centenas de livros foram escritos. Esses métodos e práticas foram bastante eficazes e deram frutos. Mas já no início do século XXI, a humanidade chegou à conclusão de que a maioria dos processos já está automatizada e, em um futuro próximo, será possível dizer que 100% dos processos serão atendidos por sistemas, de modo que a tarefa de criar inovações e novos sistemas está se tornando mais complicada. É necessário melhorar e otimizar sistemas e processos existentes e "bem construídos", e isso às vezes muda radicalmente as abordagens e práticas para alcançar um resultado, ou seja, aumentando sua velocidade, qualidade e eficiência.

Por muitos anos eu tenho usado leis e regras, que comentarei abaixo. Há análises interessantes de muitos deles: “As leis básicas da criação de equipes de desenvolvimento”, autores de livros e publicações geralmente se referem a eles, argumentando por uma decisão específica. Além disso, eu também gosto deles. Para minha prática, na maioria dos casos eles funcionaram, mas nos últimos anos muitas abordagens começaram a "escorregar", justamente pelas razões que descrevi acima.

Anton Semenchenko sistematizou bem as leis na apresentação "Leis para a criação de equipes de TI e as consequências das leis para projetos de TI" nos dedos ". Definitivamente, não tenho certeza sobre a fonte, por isso não estou me referindo a ela aqui, mas qualquer mecanismo de pesquisa mostrará o vídeo e os materiais de apresentação do autor no título do artigo. Gostei da estruturação do tempo dele, e vou usá-lo, de alguma forma ecoando com Anton.

Mais adiante, repetirei a lei para não enviar o leitor à Internet e compartilhar meus pensamentos sobre sua aplicação na situação atual.

Diferenciação e integração de sistemas de acordo com Herbert Spencer (1857)


Diferenciação - separação no processo de evolução de um sistema homogêneo (organismos biológicos, representantes de uma determinada profissão, etc.) em dois ou mais grupos que diferem em seus parâmetros. Além disso, essa fragmentação pode ter vários níveis hierárquicos. Há também um processo de integração reversa - a unificação de partes diferenciadas separadas em um todo - inclusive através da transição para um super-sistema.

A divisão em analistas, desenvolvedores, arquitetos, testadores e gerentes nas últimas duas décadas tornou possível unificar os processos de desenvolvimento de software e garantir a intercambiabilidade da equipe. Um transportador de produção foi criado, mas o preço dessa unificação é o seguinte: os desenvolvedores, muitas vezes compreendem mal a área de assunto, possuem habilidades limitadas limitadas por sua especialização; Os analistas não possuem as habilidades de desenvolvimento, suas definições de tarefas são adaptadas aos recursos de desenvolvimento e não formam e refletem os requisitos reais do cliente (empresa). Além disso, outros funcionários que também não estão envolvidos na declaração do problema e podem não entender a fonte dos requisitos do cliente, estão envolvidos nos testes e assim por diante. Isso tudo aumenta significativamente o custo de desenvolvimento, reduz a probabilidade de o cliente receber a solução certa pelo melhor preço. Obviamente, esse nem sempre é o caso, e exagerei um pouco para transmitir a idéia principal. No século passado (parece engraçado da boca de um mastodonte), uma pessoa combinou facilmente o papel de arquiteto, analista, desenvolvedor e testador, entendendo o que o cliente deseja e como ele pode ser implementado. O processo de criação de software não é paralelo em funções, mas em funcionalidade. O Agile está retornando a essa abordagem e as funções estão se unindo.

A lei geral da entropia de Clausius (1865)


Entropia é uma medida de desordem que aumenta com o tempo.
Muitas pessoas gostam de trazer essa lei e tirar conclusões significativas sobre os exemplos de equipes e projetos. Conclui-se que tudo naturalmente tende a desordem. Portanto, você precisa fazer um grande esforço para manter a ordem e a organização dos processos.

Isto não é verdade. Os conceitos originais são substituídos. A segunda lei da termodinâmica está associada ao processo de conversão de energia onde ela trabalha, e não às atividades humanas. Nos sistemas naturais, pelo contrário, tudo tende a pedidos automáticos. Este é o resultado da evolução. Olhe para a natureza, é harmoniosa e ordenada. A automação e a tecnologia da informação também são um processo evolutivo. O processo não pode ser caótico, há alguém que o simplificará ou o processo morrerá.

No total, sempre haverá um líder de grupo que o organiza e dirige. Portanto, a principal tarefa da sociedade é encontrar tais líderes, desenvolvê-los e fornecer-lhes um campo de atividade.

Leis de Parkinson (1955)


  • O trabalho preenche todo o tempo alocado para sua implementação. O gerente procura multiplicar subordinados, não rivais. Os gerentes criam o trabalho um do outro.
  • Os custos estão aumentando com a renda.
  • O crescimento leva à complexidade, e a complexidade é o fim do caminho.

Essas leis são aplicáveis ​​aos sistemas burocráticos; portanto, se você se livrar delas na TI, não haverá nenhum problema de fato. Nas startups, todos trabalham de forma harmoniosa, eficiente e focada no resultado. Não crie departamentos de TI, oriente monstros de TI. Somente um mercado aberto e a concorrência são os critérios para o sucesso do setor de TI.

Os sete mágicos de Miller (1956)


A memória humana de curto prazo, como regra, não consegue lembrar e repetir mais de 7 ± 2 elementos.

Com base nessa lei, seus seguidores limitam o número de equipes a não mais que 7-9 pessoas. Eu não gosto de psicólogos, como RH, então toda a pesquisa deles é uma busca e descrição de padrões onde eles estão ausentes.

Você pode encontrar muita literatura numerológica sobre esse tópico, mas isso não tem nada a ver com o número de pessoas na equipe. Eles devem ser exatamente quantos forem necessários para decompor e concluir a tarefa no prazo. Pode ser três pessoas, e talvez vinte pessoas.

Talvez em 1956 tenha sido difícil gerenciar 20 funcionários, mas em 2019 a tecnologia simplificou esse processo, então crie equipes de qualquer tamanho que possam ser gerenciadas por seu líder e levem ao resultado.

Direito de Conway (1968)


A lei afirma que as organizações que projetam sistemas os produzem copiando as estruturas de comunicação que foram desenvolvidas nessas organizações.
E o outro lado: as empresas que usam sistemas de software estão limitadas às estruturas de comunicação que copiam esse sistema.

No entanto, as organizações modernas não constroem seus negócios na estrutura organizacional, mas em processos de negócios que, por sua vez, mudam muito rapidamente e se adaptam a fatores externos. Os sistemas de TI e a estrutura da empresa tornaram-se dinâmicos e flexíveis para se adaptar a esses desafios. As organizações que não se adaptaram às mudanças de processo flexíveis desaparecerão gradualmente, incapazes de suportar a concorrência.

Princípio de Peter (1969)


Em um sistema hierárquico, cada indivíduo tende a subir ao nível de sua incompetência.

Sem dúvida, na vertical clássica, um funcionário passa para o seu nível de incompetência e para, mas as estruturas hierárquicas e as carreiras mostram suas limitações em comparação com estruturas organizacionais mais flexíveis, portanto, não crie monstros e "que a força venha com você".

Lei de Brooks (1975)


Ao adicionar recursos humanos, atrasamos a conclusão do projeto.

O argumento principal é que os novos membros da equipe precisam ser treinados, imersos, o que distrai os principais membros da equipe e, por outro lado, retarda o processo de desenvolvimento. Existe uma frase geralmente aceita de que a imersão de um novo funcionário leva, em média, seis meses, e somente após esse período ele começa a dar resultados específicos.

Mas isso também é falso, como verdadeiro. A lei funcionará se considerarmos uma equipe impraticável que não tem tempo para realizar as tarefas necessárias a tempo e a gerência investir recursos, assumindo que esse método trará resultados. Nas empresas modernas, compostas por profissionais motivados, com bons leads, funções corretamente divididas, proprietários de produtos competentes, um sistema estabelecido para adaptar novos funcionários, a adição ou substituição de novos membros da equipe é flexível e aumenta a eficiência e a velocidade do resultado. Obviamente, a expansão infinita da equipe é impossível e está associada apenas à capacidade de decompor as tarefas atuais. Em algum momento, o atraso acumulará granularidade mínima na paralelização de tarefas entre a equipe.

No total, podemos tirar a seguinte conclusão, na rua “certa”, com as abelhas “certas” sua expansão aumentará a quantidade de mel produzido.

Entropia de sistemas abertos por Herman Haken (1977)


O físico teórico alemão estudou sistemas abertos e seu desejo de auto-organização, a transformação do caos em ordem e sinergética.

A aplicação aplicada da teoria, como a de Clausius, foi considerada mais em física, nomeadamente elétrons, átomos, moléculas, nêutrons, fótons, mas como todo físico e matemático de sua alma é um filósofo, ele extrapolou sua teoria para pessoas e animais.

É difícil argumentar com a teoria da auto-organização, e eu concordo completamente com este postulado. Há mais na questão da aplicabilidade da teoria física aos processos sociais. Os sistemas abertos são, é claro, o principal caminho para sua eficácia em termos de flexibilidade de mudança.

Lei de Crescimento Orgânico de Christopher Alexander (1977)


A lei do crescimento orgânico foi formulada para arquitetura e baseia-se no uso de um metaplano de três partes em vez de um plano geral:
  • filosofia de crescimento gradual;
  • um conjunto de padrões ou diretrizes gerais de design que regem o crescimento;
  • influência local no design daqueles que ocupam o espaço.

Os objetos evoluem gradualmente e, através de inúmeras mudanças de luz, tornam-se comunidades interconectadas. Usando princípios gerais, eles mantêm harmonia externa, mas não se tornam os mesmos.

Parece sensato e, sem ambiguidade, você pode usar a abordagem no mundo das startups. O sonho do funcionário - o espaço do escritório é projetado em harmonia fundamental com a natureza do ser humano e permite que uma pessoa seja uma pessoa, enfatiza seu ser - ele se torna um indivíduo e um membro do grupo.

Mas nas grandes empresas, as coisas não são tão românticas, mas pragmáticas e econômicas. Todo mundo otimiza custos, usa terceirizados, de modo que uma equipe moderna é um grupo de pessoas geograficamente distribuídas, unidas por uma plataforma tecnológica na qual cada indivíduo pode estar em condições completamente diferentes. A filosofia de crescimento é determinada apenas pela disponibilidade de recursos para a formação de tais equipes e pela criação de condições para a aceitação do trabalho realizado por cada um de seus membros.

Lei de David Parnassus (1979)


Como regra, os sistemas de software não funcionam bem até serem usados ​​e mais de uma vez em condições de "combate".

Os adeptos de TI estão tentando aplicar quaisquer leis e conclusões relacionadas ao desenvolvimento de software em absolutamente qualquer área de suas vidas. Em termos de equipes, é algo parecido com isto: uma nova equipe formada por membros desconhecidos trabalhará com menos eficiência do que já funcionou. O triunfo da evidência. Um chef experiente é melhor que um novato. Um atleta profissional, melhor que um amador. O sentido prático dessas formulações está quase ausente.

Lei de Hofstadter (1980)


Sempre levará mais tempo do que o esperado, mesmo que você conheça a lei de Hofstadter.

A avaliação dos termos, custo do projeto, trabalho, tarefas é sempre um processo não trivial, no qual a precisão é determinada por acordo das partes. E ambas as partes que formulam os prazos e as que não concordam com eles terão razão. Em condições de mercado, uma estimativa dos termos é um contrato fixo entre o contratado e o cliente.

O Princípio da Janela Quebrada de Wilson Kelling (1982)


Se um copo é quebrado em um prédio e ninguém o substitui, depois de um tempo nenhuma janela permanecerá nesse prédio.

Do ponto de vista de equipes e organizações, a não conformidade dos participantes com as normas de comportamento aceitas leva outros a esquecerem as regras. No entanto, a afirmação cotidiana: "anarquia é a mãe da ordem", que muitos ouvem, apenas confirma uma das afirmações anteriores sobre o desejo dos sistemas de ordenar automaticamente. No lugar de normas rejeitadas, outras regras e leis surgem e o sistema se estabiliza. Se o edifício não precisar manter a ordem, no sentido geralmente aceito, ele não possui um mestre, então o conhecimento se tornará inutilizável, destruído, ou um novo proprietário deverá aparecer que restaurará e manterá a ordem nele.

Goll Law (1986)


Um sistema de trabalho complexo é invariavelmente derivado de um sistema de trabalho simples. Um sistema sofisticado projetado desde o início nunca funciona. E nenhuma melhoria fará com que funcione. Você deve começar com um sistema de trabalho simples.

Uma afirmação muito controversa aplicável às tecnologias e abordagens do século passado. Qualquer novo sistema moderno será complexo, pois nosso mundo se tornou tecnologicamente avançado. E muitos deles são criados a partir do zero. Como resultado, uma grande porcentagem de sistemas morre, mas alguns deles "disparam" e se tornam bem-sucedidos.

A Lei de Compensações Hierárquicas de Sedov (1988) e a lei de entropia de equipes de acordo com Nazaretyan (1991)


"O verdadeiro crescimento da diversidade ao mais alto nível é garantido por sua limitação efetiva nos níveis anteriores."

"Lei de Sedov" na redação de Nazarethan: em um sistema complexo hierarquicamente organizado, o crescimento da diversidade no nível superior é garantido pela restrição da diversidade nos níveis anteriores, e vice-versa, o crescimento da diversidade no nível inferior destrói o nível superior da organização, ou seja, o sistema em questão perece.

Há uma opinião de que o efeito da Lei de Sedov é limitado pela ordem natural de auto-organização dos sistemas, ou seja, de maneira a construí-los, quando as pessoas que asseguram a construção do sistema não fazem esforços focados para contornar a ação desta lei. Em outras palavras, o efeito da Lei de Sedov pode ser artificialmente limitado, embora não completamente interrompido. Além disso, há boas razões para acreditar que a Lei de Sedov não se aplica totalmente a sistemas de grandes dimensões.

Um entendimento clássico dessas leis significa que o desenvolvimento de funções e estruturas localizadas em níveis mais altos de sistemas só é possível com a restrição de estruturas do nível subjacente. Além disso, há um balanceamento dos componentes e do sistema como um todo. Mas, infelizmente, as abordagens clássicas para a criação de equipes, a condução de projetos está sendo revisada por muitas organizações em favor das abordagens ágeis, onde as restrições às estruturas de nível inferior são removidas e isso traz qualidade e eficácia aprimoradas, tanto no nível da equipe quanto em toda a estrutura.

Manifesto ágil (2001)


Pessoas e interação são mais importantes que processos e ferramentas
Um produto de trabalho é mais importante que a documentação abrangente
A colaboração com o cliente é mais importante do que negociar os termos do contrato
A preparação para a mudança é mais importante do que seguir o plano original.

E aqui tudo "não é glória para Deus". Ágil é como construir o comunismo. Se todos os participantes não tiverem fé, isso só piorará.

Número Dunbar (2010)


O número de Dunbar é um limite para o número de vínculos sociais permanentes que uma pessoa pode manter. Esse número é definido como 150 através da extrapolação de relacionamentos entre macacos e seres humanos.

Um exemplo comum que é dado é um círculo de amigos íntimos, unidades militares, que não tem muita conexão com o gerenciamento de equipes distribuídas usando plataformas de tecnologia. As redes sociais e o desenvolvimento de dispositivos móveis, plataformas questionam essa afirmação.

Kelly Laws (2015)


A escala do software sempre aumentará na proporção dos recursos disponíveis,

Dentro de cada grande projeto de desenvolvimento, há um pequeno projeto paralelo fora da tarefa principal.

Globalmente, no aparato burocrático, no governo, isso é certamente verdade. O sistema se carrega, justifica sua existência, cria um emprego, porque, no caso geral, não está focado no resultado final. Mas o mundo da TI é um mundo de realizações criativas, inovações e independência. Neste mundo, todos podem ser criadores; portanto, ao encontrar esses fenômenos definidos por esses postulados, é preciso livrar-se de qualquer uma de suas manifestações.

Total:


No estágio atual de desenvolvimento de métodos e tecnologias para a produção de sistemas de TI, todos os cânones e crenças anteriores podem ser negados, duvidam de sua eficácia, mas não se esqueça de procurar algo novo. Agora, de fato, a era do pós-modernismo está começando no mundo da criação de sistemas de informação.

Tente, experimente, assuma a responsabilidade, mude “imutável”, compartilhe experiências com outras pessoas e as gerações futuras usarão seu exemplo em uma nova inovação evolutiva.

Source: https://habr.com/ru/post/pt457282/


All Articles