Leis de Lehman
As oito leis de Lehman
Estas leis começaram a ser formuladas no começo dos anos 70, com a análise do processo de programação da IBM, neste período foram formuladas as três primeiras leis, na década seguinte foram apresentadas as duas seguintes e as três restantes vieram na década de 90. Estas leis se aplicam a qualquer software que resolva um problema ou implemente uma solução computacional no mundo real; estes sistemas são denominados “sistemas do tipo E”. A formulação das leis de Lehman foi baseada inicialmente na evolução de dois sistemas operacionais (IBM OS/360 e ICL VME Kernel), um sistema financeiro (Logica FW), um sistema de telecomunicações (Lucent) e um sistema de defesa (Matra BAE Dynamics), além de se basear como já foi dito, no processo de programação da IBM.
E-Type: Sistemas "E-type" estão embutidas no mundo real e tornam-se parte dele, assim, o modificando. Isto leva a um sistema de feedback onde o programa e seu ambiente evoluem em conjunto.
I - Mudança contínua
“Um sistema de informação que é usado deve ser continuamente adaptado, caso contrário se torna progressivamente menos satisfatório”.
Esta lei sugere que sistemas sofram de um processo parecido com o envelhecimento humano; este envelhecimento é resultado de inconsistências do software e do domínio em que este está inserido, já que este domínio faz parte do mundo real e está sempre em contínua evolução. A evolução deve ser feita baseada no retorno dos usuários e seu nível de satisfação, caso haja resistência em se evoluir o software, e conseqüentemente se adaptá-lo a realidade de seus usuários, seu nível de satisfação cairá com o tempo.
II - Complexidade crescente
“À medida que um programa é alterado, sua complexidade cresce a menos que um trabalho seja feito para mantê-la ou diminuí-la”.
Uma vez que a necessidade de adaptação cresce e mudanças são sucessivamente implementadas, interações e dependências entre os elementos do sistema crescem em