Lacuna de complexidade dos sistemas de software: práticas atuais e uma estratégia para o futuro

Lacuna de complexidade dos sistemas de software: práticas atuais e uma estratégia para o futuro

Na última década, as organizações estão a enfrentar um difícil desafio: a importância primordial dos sistemas de informação e o papel preponderante que o software tem nos mesmos

A sua dimensão e complexidade, cada vez maiores, estão a dificultar de forma muito significativa a capacidade das organizações para gerir eficazmente os seus recursos humanos e os investimentos em tecnologias, existentes e futuras, bem como em tomar decisões corretas relacionadas às questões tecnológicas em tempo útil, que não venham a comprometer modelos de negócio, a capacidade de resposta face à concorrência e o time-to-market associado a essas mesmas respostas.

Estamos a entrar num ponto crítico a esse respeito, uma vez que os sistemas de software se tornaram tão grandes e, em muitos casos, tão complexos que, apesar de toda a nova tecnologia existente, os custos de manutenção e a evolução dos mesmos, que continuam a aumentar. Para além disso, esses sistemas complexos estão também mais sujeitos a erros, não são tão confiáveis e muito mais difíceis de proteger e de manter seguros.

Tradicionalmente, as organizações têm adotado duas abordagens principais para lidar com essa complexidade e abordar o que muitas vezes é conhecido como a “lacuna de complexidade”, ou seja, a complexidade cada vez maior do sistema de software e tecnologia versus a capacidade de gestão organizacional e as estruturas de gestão para lidar com tais níveis de complexidade. A primeira abordagem é tentar reduzir a complexidade dos sistemas, por exemplo, dando destaque a arquiteturas empresariais e de sistemas bem projetadas, bem compartimentadas, padronizando tecnologias e interfaces, adotando estratégias de design “dividir e conquistar”, como camadas, microsserviços, modularização e padrões. A segunda abordagem, que é complementar à primeira, é tentar melhorar a eficácia e a eficiência das estruturas de gestão, por exemplo, através da implementação de estruturas como Serviços de TI e Gestão de Programas / Portfólios e adotando novos modelos de processos, como o desenvolvimento de software em modelo Agile.

Estas duas abordagens, que são interdependentes e complementares, certamente produziram resultados positivos nos esforços de gestão da complexidade em TI de muitas organizações. No entanto, acredito que essas abordagens, por si só, não são suficientes. Em vez disso, elas devem ser complementadas com uma terceira abordagem, tantas vezes subestimada: o aumento e sistematização da capacidade cognitiva coletiva da organização, necessária em todos os níveis de desenvolvimento de sistemas, operações e tomada de decisão na gestão.

Aumentar a capacidade cognitiva de uma organização implica claramente a capacidade de capturar, assimilar, estruturar, documentar e processar uma magnitude de informações relacionadas à tecnologia e ter quadros mentais e estruturas compartilhadas bem organizadas e bem alinhadas, que permitem o raciocínio coletivo e individual adequado. Para além disso, implica também conhecimento coletivo sistematizado, semântica comum e capacidades de aprendizagem em toda a organização.

Infelizmente, muitas organizações estão num estado muito embrionário: informações altamente fragmentadas e conhecimento disperso sobre os seus ativos de software; falta de documentação ou documentação desatualizada, despadronjzada, desestruturada, de difícil leitura e um número limitado de dados concretos e fatos objetivos para orientar a tomada de decisão e processo de desenvolvimento; abordagens fragmentadas; uso ad-hoc de conjuntos de ferramentas de desenvolvimento de software não integrado; pouca clareza no que diz respeito a conceitos relevantes de negócio; uso de terminologia desadequada entre equipas de negócio e de TI; e, por fim, uma cultura heroica e voluntarista no desenvolvimento de software.

Acredito que as organizações que desejam aumentar o seu nível de maturidade na gestão da crescente complexidade dos sistemas de software e que devem ter em consideração a terceira abordagem acima mencionada para dar resposta a este desafio.

Tags

RECOMENDADO PELOS LEITORES

REVISTA DIGITAL

IT INSIGHT Nº 48 Março 2024

IT INSIGHT Nº 48 Março 2024

NEWSLETTER

Receba todas as novidades na sua caixa de correio!

O nosso website usa cookies para garantir uma melhor experiência de utilização.