¿Cómo se podría diferenciar entre desarrollar un prototipo y crear una versión beta en el desarrollo de software?

Por lo general, se crea un prototipo para el desarrollo del concepto y el diseño visual, mientras que estas cosas ya deberían decidirse en la versión beta.

Los prototipos son representaciones de software que se pueden crear en pocas horas. Se muestran a clientes, partes interesadas o usuarios y se pueden revisar completamente después de la presentación / prueba. En un proceso de desarrollo iterativo, se crean varios prototipos que se aproximan al producto final que luego se implementa (por ejemplo, como una versión beta). Por lo tanto, no es raro que el software implementado se vea completamente diferente a los prototipos de una etapa inicial.

En contraste, la versión beta es un programa funcional que requiere codificación. Como esto lleva mucho más tiempo que crear un prototipo, la versión beta viene después de la etapa de creación de prototipos. En este punto, el programa debería estar terminado en su mayor parte, solo se esperan cambios menores. Además, las versiones beta generalmente se muestran a un grupo más grande de usuarios, más como presentar el programa nuevo / revisado para publicitarlo y obtener comentarios de la comunidad. Los prototipos en contraste se utilizan para probar el concepto con pocos usuarios, por lo que en caso de que sean necesarias adaptaciones mayores, muchos usuarios potenciales aún no lo juzgan.

Las otras respuestas hablan sobre los prototipos de front-end, pero a veces también prototipos de back-end. Tal vez necesite una API que pueda manejar una gran cantidad de tráfico, por lo que creará un prototipo que realice algunas operaciones arbitrarias y luego lo golpeará con varios cientos (o varios miles) de solicitudes por minuto para ver cómo funciona. Puede usar prototipos para probar sus decisiones de hardware, o las decisiones de su plataforma, o sus decisiones de software, o las tres.

La mayoría de los desarrolladores trabajan localmente o en servidores de desarrollo con tráfico mínimo y operaciones en segundo plano. Pero el software de producción vive en un entorno diferente. Por lo tanto, en las aplicaciones que esperan operaciones de alto tráfico o uso intensivo de recursos, es útil demostrar que las decisiones tecnológicas que se toman en realidad pueden mantenerse bajo estrés a nivel de producción. Es vergonzoso escribir un programa que funcione maravillosamente en desarrollo con solo 20-30 usuarios, pero se bloquea una vez que lo envías a un servidor de producción.

También he escrito muchos prototipos para probar que el hardware específico en el que se ejecutará el programa es capaz de hacer lo que se requiere, como operar bajo varias temperaturas, bajo estrés físico, o que los sensores o pantallas pueden responder de manera oportuna .

Simplemente, el código prototipo es solo un código escrito como prueba de concepto, pero nunca abandona la empresa, y a menudo nunca abandona la computadora del desarrollador. Considere el código prototipo como un “experimento científico”.

Una versión beta pasa por todas las pruebas y “aros” por los que pasará una versión lanzada, con la excepción de que se está lanzando a unos pocos clientes seleccionados (tanto internos como externos a la compañía) con el propósito explícito de “campo probar “el código antes de que se publique una versión de lanzamiento real.

Los prototipos no suelen utilizarse para un uso más amplio. Cuando un cliente solicita un prototipo, quiere ver cómo se vería la aplicación. Quieren “tocarlo”, ver cómo se sentiría usarlo. Después de jugar con el prototipo, se implementaría la aplicación real (o no, si el prototipo mostraba algunos problemas o simplemente demostraba que la idea de la aplicación no valía la pena).

La versión beta de la aplicación es, por el contrario, una aplicación completamente funcional, creada para los usuarios. La versión beta es completamente funcional (con un conjunto básico de características) y puede lanzarse a las tiendas de aplicaciones. Luego, dependiendo de la usabilidad y los comentarios de los usuarios, la versión beta se puede desarrollar aún más para convertirse en un producto de alto valor.

En cuanto a los ejemplos, imagina una nueva aplicación de redes sociales, el próximo “asesino de Facebook”.
El prototipo sería un conjunto de pantallas, incluso tal vez sin hacer nada, solo un vistazo.
Si todos están satisfechos con lo que obtuvieron, se crearía la versión beta: la aplicación de red social completamente funcional, con todas las características estándar (publicación, me gusta, compartir, etc.) y una o dos características asesinas (cualesquiera que sean).
Esta aplicación se lanza para los usuarios que comienzan a usarla y dejan comentarios, mientras la aplicación continúa siendo desarrollada y mejorada.

Esta es una pregunta interesante. Un prototipo en mi mente nunca debe convertirse en un producto. Podría, con una gran cantidad de código de refactorización y limpieza, pero está destinado a ser una prueba de concepto, es decir, demostrar “se puede hacer”. El desarrollo de un software en el que quiere trabajar durante años generalmente pasa por la etapa alfa, la etapa beta y la etapa de producción. Esto puede ir acompañado de una versión semántica en la que nada bajo 1.0 NO se considera listo para la producción y cualquier desarrollo futuro en el producto toma la forma de parche, 0.0.x, adición de características 0.xo cambio importante x.0.0 que rompe la interfaz. Sin embargo, en el mundo real he visto prototipos convertirse en código de producción con resultados diferentes. Entonces beta = desarrollo real, prototipo = código de juguete, generalmente …

Los términos diferentes significan mucho diferente en un contexto diferente. Lo que entiendo por experiencia es que el prototipo es más como una prueba de concepto. Realizamos prototipos rápidos para mostrar a los casos una idea de negocio. Principalmente dirigido a las personas con cargo al presupuesto.

La versión Beta es un software que funciona en producción. Las versiones beta están dirigidas a un grupo selecto de usuarios finales para usarlo y probarlo. En algún momento, las empresas lanzan productos en versión beta para ver cómo se utilizan las características y dónde radica el alcance de la mejora.

El prototipo se utiliza para demostrar que una idea, técnica o concepto es factible y viable. Podría hacer un programa Prototype para probar las velocidades de transferencia para ver si una red es lo suficientemente rápida como para transmitir videos. Un prototipo suele ser un programa de descarte que no continúa.

Una versión beta es una versión inicial de un producto con planes para sacar el producto de la versión beta y convertirlo en un producto de consumo completo. A menudo advierte al usuario que tiene errores y no está completamente desarrollado.

El prototipo solo necesita algunas páginas, no es necesario implementar la lógica interna.

Para mostrar qué tipo de negocio quiere lograr su software.

La versión beta significa que el software está casi listo.

Tal vez hay algunos errores. Pero la mayoría de las funciones ya se implementan.

Así que lanza la versión beta para permitir que las personas prueben en circunstancias reales.

More Interesting

Acabo de dejar mi trabajo de desarrollador de software para tratar de convertirme en cantante. Mis amigos y padres no me apoyan. ¿Qué tengo que hacer?

¿Por qué MS Windows no tiene más soporte para desarrolladores?

¿Cómo obtiene un desarrollador externo los derechos sobre el código fuente de un software abandonado, si el desarrollador original está muerto?

Cómo recopilar los requisitos del cliente para el desarrollo de software

¿Cuál será el futuro de un desarrollador de software?

¿Qué compañía es la mejor para una versión más fresca, Accenture, Infosys o GlobalLogic? ¿Cómo se decide si será un desarrollador de software o un probador?

¿Por qué los servicios de desarrollo de software offshore han ganado popularidad en estos días?

En el desarrollo de software, ¿cómo es posible dar una cotización fija basada únicamente en el documento de especificaciones / requisitos técnicos?

Cómo ganar dinero con mi software, he desarrollado un software que NO es más complicado pero que es realmente necesario en las empresas.

¿Por qué hay cada vez más desarrolladores de software que pierden sus trabajos cuando envejecen?

¿Alguna vez encontraré un trabajo como ingeniero de software, programador, desarrollador o ingeniero informático?

¿Qué estrategias utilizas para dar nombres significativos mientras codificas?

Cómo entrevistar a un desarrollador de software senior, específicamente Java

Readify, Kiandra o Thoughtworks: ¿en cuál es mejor trabajar para un apasionado desarrollador australiano de .NET con sede en Melbourne?

¿Las nuevas empresas y los desarrolladores experimentados usarán Swift de Apple?