Apple

Hoy día el software es mucho más complejo que hace años, nadie lo niega. Un sistema operativo como cualquiera de los que manejamos, ya sea macOS, iOS, Android, Windows, distribuciones varias de Linux o cualquier otro sistema o software tiene una complejidad infinitamente superior a la que el software tenía hace años. Eso obviamente, hace más complejo mantener la calidad del mismo y requiere procesos y tiempos mayores para garantizar que no habrá ningún problema o minimizar, al menos, su impacto.

Mucho trabajo que hacer para tan poco tiempo

Cuando Apple hacía software solo para un sistema (como macOS) y las novedades en ellos eran pocas versión a versión, los lanzamientos estaban más controlados. Pero en los últimos 10 años todo se ha descontrolado en cuanto a cantidad de sistemas y librerías que mantener. Los problemas de ingeniería del software se han agravado, no solo en funciones para usuarios, también en herramientas para desarrolladores. Si analizamos lo que ha sucedido este año con iOS 13 o lo que pasó hace dos años con la versión 11, es obvio que se hubieran necesitado más meses de trabajo y un proceso de QA (control de calidad) más eficiente para evitar los problemas que todos conocemos.La ingeniería del software son las técnicas de control y organización de la producción y mantenimiento del software y su ciclo de vida como producto.

En esta línea, los desarrolladores nos hemos visto afectados igualmente. Apple ha lanzado multitud de nuevas herramientas que, a pesar de lo increíbles y prácticas que son, es fácil encontrar en ellas pequeñas cosas donde se nota claramente que no se han implementado correctamente o probado de la forma necesaria, por falta de tiempo o un deficiente proceso de control de la calidad. Y también porque Apple (o cualquier otra compañía) ha de cumplir religiosamente determinadas fechas de lanzamiento (como la de su flamante nuevo iPhone anual) donde claramente al software no le da tiempo a estar preparado al 100%.

Según nos cuenta Mark Gurman en Bloomberg, Apple habría tenido una serie de reuniones internas con Craig Federighi, SVP de Ingeniería del Software en Apple, y una de sus personas de más confianza Stacey Lysik, Directora Senior, para buscar soluciones a esto. No solo para que la próxima versión iOS 14 venga mucho más limpia y carente de errores, principalmente para mejorar los procesos unidos a la ingeniería del software y la calidad del mismo.

Apple clasifica de forma interna los niveles de calidad de sus lanzamientos, y iOS 13 obtuvo una puntuación mucho más baja que su predecesora, iOS 12. Pero no les quedó más remedio que lanzarla por obligación de fechas con el marketing. Algo que el nuevo sistema pretende subsanar.

Internamente Apple tiene un sistema de clasificación y medición de la calidad de su software, en una escala de 1 a 100 conocido internamente como el test del «guante blanco». Cualquier lanzamiento que tenga más errores obtendría una puntuación por debajo de 60 mientras que los lanzamientos más estables estarían por encima de 80. Y ahora sabemos que iOS 13 obtuvo una puntuación en esta clasificación por debajo de la versión 12 que estaba mucho más pulida. Apple también marca con colores verde, amarillo y rojo las funciones para indicar su calidad durante el desarrollo. Y además para clasificar los fallos o bugs usan una escala de 0 a 5 en cada incidencia, donde 0 es un problema crítico a resolver y 5 una incidencia menor.

Número de versiones de cada versión mayor de iOS en los primeros dos meses tras su lanzamiento.

Número de versiones de cada versión mayor de iOS en los primeros dos meses tras su lanzamiento.

De hecho, según nos cuentan desde Bloomberg, el famoso lanzamiento de iOS 13.1 a finales de agosto vino provocado porque se dieron cuenta que no llegaban a la fecha de iOS 13 con la suficiente calidad, y decidieron dejar la versión con el nivel de calidad que tenía, y centrarse desde antes en la 13.1 con el objetivo de conseguir en esta versión el mismo nivel de puntuación que con iOS 12. Su única solución fue acabar la 13.1 lo antes posible y actualizar a todos lo antes posibles sabiendo que la 13.0 no tenía la suficiente calidad pero no les quedaba otra que lanzarla. Lanzada la 13.1, el objetivo era llegar a la 13.2 con un nivel superior a iOS 12. Pero por el camino se han dejado infinidad de pequeños bugs que han tenido que ir resolviéndose en versiones menores.

Crea una web o blog en WordPress.com

Subir ↑

Diseña un sitio como este con WordPress.com
Comenzar