Please enable JavaScript.
Coggle requires JavaScript to display documents.
Qué es un principio ágil? (Por qué el software se descompone? (En el…
Qué es un principio ágil?
Olor del diseño: Durante la realización de un proyecto podemos tener clara la imagen de como queremos que este salga, sin embargo en el desarrollo de este podemos notar inconvenientes que nos arruinen el trabajo y se tenga que hacer un rediseño. Los rediseños pocas veces tienen éxito
Usted puede notar que un software se está descomponiendo cuando empieza a mostrar los siguientes olores:
Viscosidad:
Un proyecto viscoso es aquel en donde el diseño (métodos, etc) es difícil de preservar. Aquel proyecto donde sus cambios lleven un largo proceso y que incluso no se mantenga el diseño que se tenia. Debemos crear sistemas donde el ambiente del proyecto sea fácil de preservar.
Fragilidad:
Esto significa que un software es frágil cuando un simple cambio puede generar problemas en varios lugares. Esto puede ser un problema para el equipo que está en la realización del proyecto pues arreglar este tipo de problemas puede generar otros.
Complejidad innecesaria:
Se refiere a cuando un diseño contiene elementos que son muy poco útiles. Esto pasa mayor mente cuando los desarrolladores quieren anticipar cambios futuros y dejar su código bien flexible. Por desgracia el resultado es lo contrario, pues se construyen cosas que jamás serán utilizadas.
Rigidez:
Se refiere a cuando un Software presenta dificultad a cambios, incluso en cosas pequeñas. Se dice que un diseño es rigido cuando con un simple cambio provoca otra serie de cambios en otros modulos diferentes.
Opacidad:
El diseño tiende a ser difícil de entender. Un código puede ser limpio y expresivo o puede ser opaco y enredado. Por ejemplo, un código viejo que es muy usado tiende a ser opaco al pasar de los años.
Repetición innecesaria:
Esto sucede cuando en un diseño se tiende a utilizar el copy/paste para no escribir un código de nuevo. Por ejemplo en la realización de un código podemos ver que este conlleva un proceso parecido a uno que ya hemos programado así que tendemos copiar el anterior, pegarlo y hacer los cambios correspondientes para que sirva con el problema actual, esto puede resultar desastroso
Inmovilidad:
Un diseño es inmóvil cuando contiene partes que podrían ser útiles para otros programas pero involucra mucho esfuerzo y riesgo separar esas partes del sistema.
Por qué el software se descompone?
En el desarrollo del proyecto, los requerimientos pueden cambiar y no estamos preparados para anticiparlos.
A veces se necesitan hacer cambios rápidos que cambian completamente el diseño con el que estábamos familiarizados.
Debemos encontrar la manera de que nuestros proyectos estén preparados para cambios en un futuro y así practicar para que estos no se pudran en algún momento.
Conclusiones:
El diseño es un proceso, no un evento.
La dedicación es la mejor manera de mantener un diseño limpio, simple y expresivo la mayoría de las veces.
Practicar e implementar estructuras para la legibilidad del software.
Ejemplo "The copy program"
El programa fue generado para la realización de una tarea concreta. Después de un tiempo este tuvo que sufrir cambios para realizar otras tareas aparte. El programa se tuvo que trabajar bien y analizar cuales eran las consecuencias de cambiar el código inicial y como puede este quedar para que en un futuro sea más fácil cambiarlo.
Detectar, diagnosticar y resolver el problema son los pasos que se debe llevar a cabo para el cambio de un código. Dedicación para que al final quede un buen diseño