domingo, 16 de febrero de 2014

Leyes de Lehman



Introducción.
Para proveer un buen mantenimiento, es necesario conocer el software y su código, cosa que se complica cuando se utiliza “código heredado”. Esto se refiere al código tomado de otro producto, pero que debido a los cambios y mantenimiento sufrido anteriormente, no es el código original y es más complicado entenderlo. Por esto, se desarrollaron las Leyes de Lehman, que se describirán a continuación y las cuales buscan resolver dichos problemas de código.
Las Leyes de Lehman.
Las Leyes de Lehman se derivan de los estudios realizados por el mismo Lehman, que se aplican invariablemente a todos los productos de software sobre los cambios que estos sufren. (Sommerville, 2005).
Son 8 leyes, de las cuales solo se explicarán y denominaran a detalle las 5 primeras, que por lo general son las más comunes y aplicables (Ruíz, 2000-2001), pero sin olvidar las últimas tres, que se agregaron tiempo después de haberse definido las primeras:
  • Cambio continuado. Se refiere a que el sistema está en constante cambio debido a que se pueden presentar nuevos requerimientos, se necesita solucionar los defectos que lleguen a presentarse, debe mejorarse la funcionalidad, eficiencia y seguridad.
  • Complejidad creciente. A medida que se realizan cambios, la estructura del sistema se vuelve mucho más compleja, provocando que en un futuro, cuando se quiera re-utilizar código, esta tarea se vuelva complicada.
  • Evolución prolongada del programa. El contexto en el que se desarrolla el sistema definirá que cambios realizar, en que momentos, los costes y como afectan al proceso de evolución, haciendo que la velocidad de los cambios a realizar sea gobernada por la efectividad y rapidez de la toma de decisiones de la organización.
  • Estabilidad organizacional. Es importante la buena comunicación entre cada integrante del equipo de desarrollo para lograr una eficiencia mutua que se verá reflejada a lo largo de la evolución del sistema.
  • Conservación de la familiaridad. A medida que se realicen cambios, todos aquellos que estén asociados al sistema, deberán conocer dichos cambios y su impacto en el comportamiento y funcionalidad del mismo, para así seguirlo desarrollando eficientemente, por lo que es preferible realizar pequeños cambios a uno grande, sabiendo que dichos cambios traerán consigo, indudablemente, nuevos defectos.
  • Crecimiento continuado. El crecimiento del sistema debe ser continuo para mostrarle mayor y mejor funcionalidad al usuario, que mantenga su interés por el sistema.
  • Decremento de la calidad. Para que la calidad de un sistema no decremente, éste debe adaptarse a los cambios que se presenten en su entorno, que puede referirse a actualizaciones de hardware y software como sistema operativo, librerías dependientes, etc.
  • Realimentación del sistema. El proceso de evolución del sistema y los cambios desarrollados toman como base la realimentación por parte de los usuarios realizada en diferentes niveles y de forma iterativa, para así satisfacer las necesidades que se presentan constantemente.
Conclusión.
Al analizar las Leyes de Lehman, podemos entender mucho mejor como y porque ocurren los cambios en el software provocando su evolución. Es importante considerarlas y tenerlas presentes porque proveen explicación a problemas que llegan a presentarse durante el desarrollo de un sistema.
Al entender lo que cada una dice, podemos tomar precauciones para no interferir en gran medida a ralentizar el proceso.
Referencias.
Ruíz, F. (2000-2001). Escuela Superior de Informática. Universidad de Castilla - La Mancha. Recuperado el 16 de Febrero de 2014, de Mantenimiento del Software.: http://alarcos.esi.uclm.es/per/fruiz/curs/mso/trans/s2.pdf
Sommerville, I. (2005). Ingeniería del Software. Madrid: Pearson Educación S.A.


Descargar "Leyes de Lehman".

No hay comentarios:

Publicar un comentario