Cómo los equipos de SWE de Apple gestionan las nuevas características del sistema operativo antes del lanzamiento

Cómo los equipos de SWE de Apple gestionan las nuevas características del sistema operativo antes del lanzamiento

Livability: la aplicación interna utilizada por los ingenieros de Apple para gestionar nuevas funciones

En el mundo de la tecnología, la innovación es constante y las empresas necesitan herramientas poderosas para mantenerse a la vanguardia. En el caso de Apple, los ingenieros internos confían en una aplicación dedicada para ver, gestionar y activar funciones en desarrollo y elementos de la interfaz de usuario dentro de las versiones previas de los nuevos sistemas operativos. Esta aplicación es conocida como Livability y aquí te contamos qué es y qué puede hacer.

**Livability: una aplicación esencial para el desarrollo interno**

Livability es una aplicación fundamental que permite a los ingenieros de software de Apple hacer un seguimiento de las funciones individuales del sistema operativo y de los dispositivos de prueba en su totalidad. Se puede encontrar en las compilaciones de InternalUI de iOS, una variante especial del sistema operativo del iPhone que se utiliza internamente para el desarrollo de software.

La aplicación en sí es un componente central de los sistemas operativos prelanzamiento de Apple. Con Livability, los equipos de desarrollo de software e ingeniería de Apple pueden activar, desactivar y depurar las próximas funciones para asegurarse de que funcionen correctamente antes de su lanzamiento inevitable al público en general.

Según fuentes familiarizadas con el tema, AppleInsider ha recibido información sobre la funcionalidad principal de la aplicación Livability, así como sobre las opciones y configuraciones específicas que contiene.

**Configuraciones y funciones disponibles en la aplicación Livability**

Livability proporciona a los empleados de Apple la siguiente información y configuraciones relacionadas con los dispositivos de desarrollo:

– Información esencial del dispositivo (número de serie, modelo de hardware, nombre en clave)
– Información sobre la fusión: desarrollo o producción
– Detalles sobre las perfiles de VPN y MDM actualmente instalados
– Opciones para actualizaciones de software, copias de seguridad, argumentos de arranque personalizados y ajuste del estado de transporte
– Visor de Feature Flags: permite a los usuarios gestionar y ver funciones individuales o grupos de funciones
– Centro de Comandos: ofrece a los empleados una forma de realizar cambios en varios dispositivos de desarrollo simultáneamente

**Información y configuraciones del dispositivo dentro de Livability**

La aplicación Livability contiene una visión general de la información esencial y opciones para los dispositivos de desarrollo. A través de la aplicación, sus usuarios pueden ver los números de serie, nombres en clave, modelos de hardware y nombres comerciales de los dispositivos de desarrollo, entre otras cosas.

La aplicación también contiene información sobre la fusión de dispositivos, una característica clave del hardware de todos los dispositivos de Apple. Los dispositivos que Apple vende a sus clientes están «fusionados en producción», lo que significa que tienen importantes medidas de seguridad a nivel de hardware, lo que impide que el dispositivo ejecute ciertos tipos de código.

Los dispositivos «fusionados en desarrollo» son lo opuesto a esto. Las unidades de prototipo tipo Pre-PVT, como los dispositivos EVT o DVT, en la mayoría de los casos están fusionados en desarrollo, lo que significa que es posible utilizar el estándar de prueba JTAG a través de cables especializados.

Apple utiliza tanto dispositivos fusionados en desarrollo como en producción para probar diferentes cosas, por eso Livability tiene un indicador de esta característica clave de hardware.

La aplicación también permite a los empleados especificar si su dispositivo es un dispositivo «de transporte», es decir, el dispositivo que utilizan diariamente. Según personas familiarizadas con la aplicación, esta información es principalmente útil para los equipos de ingeniería de Apple.

Además de esto, Livability cuenta con opciones para establecer argumentos de arranque personalizados para el kernel del sistema operativo. Con esta función, el usuario puede forzar al dispositivo a arrancar en modo detallado o en un menú de diagnóstico especial, entre otras cosas.

**Sistema de gestión de funciones de Livability**

Livability proporciona a los equipos de desarrollo de software de Apple una visión general completa de todas las funciones disponibles en el sistema operativo instalado en ese momento. La aplicación muestra y organiza los Feature Flags, que son interruptores que se pueden utilizar para desactivar o activar funciones de software.

Los Feature Flags están organizados principalmente por fecha. Al hablar con personas familiarizadas con el desarrollo de los últimos sistemas operativos de Apple, hemos aprendido que los Feature Flags se dividen en las siguientes categorías para cada año:

Estas categorías indican la fecha prevista de lanzamiento de nuevas funciones del sistema operativo. Apple suele lanzar actualizaciones para sus últimos sistemas operativos a lo largo del año, y estas actualizaciones a menudo introducen nuevas funciones que fueron anunciadas o presentadas en un momento anterior.

Los sistemas operativos de uso interno de Apple pueden tener funciones, o código temprano para funciones, programadas para ser lanzadas años en el futuro. El mismo sistema operativo podría tener Feature Flags destinados a ser lanzados durante la WWDC 2024 y la WWDC 2026, por ejemplo.

Dentro de estas categorías basadas en el tiempo, los Feature Flags se dividen aún más según la aplicación o aspecto del sistema operativo que afectan. Esto significa que dentro de la WWDC 2024, por ejemplo, los empleados verían categorías como Notas, Música, Búsqueda de Spotlight, y así sucesivamente.

Las funciones individuales del sistema operativo, o funciones parte de una iniciativa más grande, a menudo se desarrollan bajo nombres en clave conocidos solo por algunos empleados de Apple. Si bien algunos nombres en clave pueden dar una indicación vaga del objetivo general de la función, el propósito exacto de las funciones con nombre en clave no se puede discernir sin personas que tengan conocimiento directo del asunto.

Greymatter, una referencia a un tipo de tejido dentro del cerebro humano, era el nombre en clave para Apple Intelligence. La nueva aplicación universal de calculadora de Apple fue nombrada GreyParrot, un guiño a la especie de loro gris africano, conocida por su alta inteligencia en comparación con otras especies de aves.

Las funciones también se clasifican según su estado de desarrollo actual, que cambia a medida que avanza el tiempo. Hay cuatro categorías que indican el grado de finalización:

– En Desarrollo
– Código Completo
– Listo para Vista Previa
– Función Completa

Dentro de Livability, es posible activar todas las funciones con un estado de desarrollo específico a través de una configuración de suscripción dedicada. Nos dijeron que los empleados de Apple podían usar esto, por ejemplo, para activar todas las funciones marcadas como «En Desarrollo».

La aplicación mostrará diferentes advertencias dependiendo de la categoría seleccionada. Estas advertencias sirven para informar a los usuarios de los posibles efectos que una nueva función puede tener en su máquina.

Generalmente, las funciones que no están marcadas como «Función Completa» no han sido completamente probadas y pueden estar incompletas de alguna manera. Las funciones etiquetadas como «En Desarrollo» podrían hacer que los dispositivos o aplicaciones específicas se comporten de manera inesperada.

En la práctica, esto significa que las funciones en desarrollo pueden impedir que las aplicaciones del sistema o los elementos de la interfaz de usuario funcionen correctamente, provocando que se bloqueen al iniciar. Alternativamente, a veces también pueden ocurrir errores visuales como texto, imágenes o interruptores mal colocados.

**¿Para qué se utiliza Livability?**

El visor de Feature Flags de Livability es útil en situaciones donde es necesario depurar. Si una nueva función causa problemas importantes, los ingenieros de Apple pueden desactivarla hasta que se haya solucionado, luego activarla más tarde para confirmar su funcionalidad.

Con la aplicación, los empleados de Apple pueden desactivar elementos sensibles de la interfaz de usuario para que no se expongan accidentalmente a personas no autorizadas. Un ejemplo de este caso de uso se vio en un mensaje emergente descubierto por usuarios de la plataforma de redes sociales X en junio de 2024.

En la WWDC 2024, Apple presentó una nueva interfaz de usuario para Apple Intelligence y Siri, pero mantuvo la interfaz de usuario desactivada en la versión beta para desarrolladores de iOS 18 lanzada el 10 de junio. Sin embargo, los usuarios encontraron rápidamente una forma de activarla, lo que llevó al descubrimiento accidental del mensaje emergente.

El mensaje advertía a los empleados que se habían habilitado elementos sensibles de la interfaz de usuario y sonidos y que no debían utilizarse dentro de 50 pies de personas no reveladas. También se incluían instrucciones sobre cómo desactivar los elementos sensibles de la interfaz de usuario.

Como se mencionó anteriormente, la aplicación también permite a los usuarios instalar actualizaciones de software y crear copias de seguridad, gestionar configuraciones de VPN y mucho más. Esto convierte a Livability en una aplicación de gestión de dispositivos completa para los equipos de software de Apple.

La información que adquirimos sobre la aplicación Livability proporciona información útil sobre el proceso de desarrollo de Apple, cómo los equipos de software gestionan y organizan nuevas funciones y cómo hacen un seguimiento de las unidades de desarrollo.



Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *