O desenvolvimento de software geralmente visa alinhar as especificações com a implementação.
Por esta razão, os sistemas são projetados para cumprir as especificações e, em seguida, implementados com base nesses designs. Subsequentemente, os testes confirmam que a implementação atende às especificações; se houver uma discrepância, a implementação é corrigida e, se as especificações forem ambíguas, são clarificadas.
Isso pode ser denominado Engenharia Baseada em Especificação e Implementação.
Em contraste, ao discutir software hoje, a experiência do utilizador é cada vez mais enfatizada.
Além disso, é o comportamento do software, e não a sua mera implementação, que realmente molda a experiência do utilizador.
Portanto, fora do framework de especificação e implementação, existem a experiência e o comportamento.
Consequentemente, acredito que vale a pena explorar o conceito de Engenharia de Experiência e Comportamento, que se baseia na experiência e no comportamento.
Liquidware
A Engenharia de Experiência e Comportamento é uma abordagem impraticável com os métodos tradicionais de desenvolvimento de software.
Isto deve-se ao facto de exigir a melhoria da experiência do utilizador sem limites rígidos ou divisões funcionais nas especificações. Poderão mesmo existir casos em que um pedido casual do utilizador para uma melhoria na experiência exigiria o descarte de todo o software previamente desenvolvido.
Por outro lado, numa era em que a automação do desenvolvimento de software baseada em agentes por IA generativa é comum, a reconstrução de sistemas de software inteiros torna-se aceitável.
Além disso, nessa era, é concebível que entremos na era do Liquidware, onde os desenvolvedores lançam software equipado com um chatbot de engenheiro de IA, permitindo aos utilizadores modificar a interface do utilizador para se adequar às suas preferências individuais.
Liquidware significa software que é mais flexível do que o software convencional, adaptando-se perfeitamente a cada utilizador.
Com esta era de desenvolvimento automatizado e Liquidware, o paradigma de engenharia de especificação e implementação tornar-se-á obsoleto.
Em vez disso, faremos a transição para o paradigma da Engenharia de Experiência e Comportamento.
O que é Comportamento?
Simplificando, comportamento é um estado que muda ao longo do tempo.
E testar o comportamento nada mais é do que testar este estado que varia no tempo.
Além disso, testar o comportamento não se trata de confirmar o alinhamento com as especificações que definem como os estados fazem a transição. Pelo contrário, o comportamento é testado pela qualidade da experiência do utilizador.
Naturalmente, se houver bugs que levem o sistema a realizar operações não intencionais por parte do utilizador ou do desenvolvedor, isso prejudica significativamente a experiência do utilizador. Portanto, o teste de comportamento também inclui a verificação da conformidade funcional e da validade.
Assim, após o cumprimento destes requisitos funcionais básicos, o comportamento é testado pela sua alta qualidade, sob a perspetiva da experiência do utilizador.
A Experiência Suprema
Para os humanos, a experiência de utilizador suprema é o controlo do próprio corpo quando em boa saúde.
Considere o seguinte: todos os dias, controlamos um corpo que pesa dezenas de quilogramas — um sistema complexo repleto de limitações e restrições — para nos envolvermos em atividades com propósito.
Se tentássemos controlar um sistema tão pesado, complexo e altamente restrito para realizar as atividades desejadas, a experiência seria tipicamente bastante fraca.
No entanto, desde que não estejamos doentes, movemos este corpo pesado, complexo e restrito com tanta facilidade como se não tivesse peso algum. Operamo-lo sem hesitação, como se fosse um mecanismo muito simples, e mal notamos as suas limitações ou restrições, como se não existissem.
Esta é a experiência suprema.
Ao perseguir um comportamento de alta qualidade, é possível proporcionar uma experiência a par da de controlar o próprio corpo.
Por outras palavras, mesmo que um sistema seja lento a processar, complexo na funcionalidade e sujeito a muitas limitações e restrições, poderia tornar-se Liquidware totalmente livre de stresse.
Conclusão
O Liquidware supremo oferecerá uma experiência semelhante à dos nossos próprios corpos.
Tal Liquidware tornar-se-á, para nós, como uma parte do nosso ser físico.
Cada vez que o Liquidware supremo aumentar em número ou as suas capacidades forem aprimoradas, sentir-se-á como se os nossos corpos estivessem a ser estendidos.