Etapas del desarrollo del firmware

Imagen: escenario NEQ

NEQ
Sin equipo. Tenemos un SDK para la plataforma, pero no tenemos hardware específico para continuar con el desarrollo, puedes donarlo a nuestros chicos de I+D (especialmente placas antiguas que pasaron el EOL y ya no se pueden comprar).

Imagen: etapa de I+D

R&D
La etapa de Investigación y Desarrollo, cuando ya tenemos el SDK de la plataforma y tal vez incluso las placas de hardware, pero estamos empezando a trastear con la plataforma, estudiando sus detalles y características. Todavía queda mucho trabajo por delante.

Imagen: etapa HLP

HLP
Se busca ayudante. Tenemos el hardware, tenemos el SDK, las cosas básicas se aprenden y se hacen. Pero estamos estancados. Aquí es donde buscamos ayuda de desarrolladores integrados con experiencia para superar los obstáculos y pasar a la siguiente etapa.

Imagen: escenario WIP

WIP
Trabajo en progreso. Aprendimos mucho sobre el hardware de la plataforma y el código base, preparamos la primera compilación binaria pública y estamos esperando que los primeros usuarios la prueben en sus placas y brinden comentarios para ayudarnos a seguir adelante.

Imagen: MVP del escenario

MVP
Un producto mínimo viable. El sistema básico está construido, la plataforma puede producir vídeo, al menos en el canal principal, pero por falta de recursos humanos el desarrollo se retrasa o se detiene. Una inyección financiera podría llevar el desarrollo a la etapa final.

Imagen: escenario HECHO

DONE
¡Hecho y hecho! El gestor de arranque arranca, se carga Linux y el transmisor puede transmitir vídeo y producir instantáneas. Puede tener una plataforma de trabajo abierta para realizar modificaciones y realizar más mejoras. Sin embargo, todavía esperamos comentarios y parches de ustedes.

Ciclo de vida de desarrollo típico

Después de adquirir un SDK para un nuevo SoC, agregamos el SoC a la tabla de hardware compatible. Asignamos el estado NEQ (Sin equipo), si no tenemos módulos de hardware específicos, o el estado HLP (Se necesita ayuda), si tenemos el hardware pero estamos buscando un desarrollador que lidere el desarrollo de ese SoC. Esto se considera un inicio oficial del desarrollo.

No hay razón para tener SoC en la tabla sin tener su SDK.

A medida que avanza el trabajo en el SoC, su estado cambia gradualmente. Primero a RND, luego a WIP, luego a MVP y, finalmente, a DONE.