IA para un código de mayor calidad

Número Mágico de Miller: el número de objetos que una persona promedio puede tener en la memoria de trabajo

Seguro que hasta 4 o 5 maestros lo has visto sin pensar, pero más de 7, seguro que has tenido que pararte a contar. Pues bien esto es lo mejor que eres para afrontar lo que se llama el Número Mágico de Miller: el número de objetos que una persona promedio puede tener en la memoria de trabajo, que está establecido en 7 con un margen de 2 arriaba o abajo. Es decir ya más de 7 elementos nos cuesta mucho memorizar o gestionar.

Esto mismo nos pasa con el software, por esto, para evitar la complejidad añadida y la viscosidad del software, se suele MODULARIZAR todo. Por ejemplo: recomendar no superar un máximo número de líneas de código en bloques de software, ya sea en una función, un método en una clase en POO o en un párrafo de COBOL, etc.

El número de lineas de código máximo, existen varias métricas, pero todas rondan al rededor de entre 10 a 25 líneas de código, dependiendo aquí de diversos factores como el lenguaje o la complejidad necesaria del código. Por ejemplo yo en COBOL, no estructuro un párrafo, con más lineas, que las que puedo ver en pantalla de un vistazo, si puedo evitarlo.

¿Como me puede ayudar la IA en esto?

Pues bien ahora que sabemos esto y lo tenemos en cuenta, procuraremos no tener métodos o funciones o párrafos con muchas lineas, para ser un buen programador. Pero bien, ¿que pasa si nos encontramos ya con un programa con cientos de lineas de código en un solo método o en un solo párrafo y comprobamos que se podría modularizar?. Pues aquí es donde la IA nos puede ayudar, pasandole dicho código y pidiendo que lo modularice por nosotros.

Las pruebas que he realizado han sido satisfactorias y con el tiempo lo serán más. (pronto os pondré un vídeo de ejemplo en este artículo).

Un analista tiene que enfrentarse muchas veces a software programado por otras personas o equipos e incluso por otras empresas y con bastante antiguedad o poca calidad y este es un recurso valioso para poder afrontar este trabajo cuando te encuentras con un software no modularizado como es devido.