Clear Measure ha usado Blazor para ayudar a ShoWorks a hospedar subastas en vivo
Cliente
ShoWorks
Productos y servicios
Blazor
Azure
SignalR
Azure DevOps
Visual Studio
Sector
Software y Consultoría
Escenario
Realización de eventos en directo de forma virtual
Tamaño de la organización
Pequeño (1-100 empleados)
País o región
Estados Unidos
Problema
Ampliar la plataforma SAAS existente para ofrecer alojamiento virtual de subastas de ganado y otras ferias que no pudieron realizarse de forma presencial debido al COVID-19.
Solución
Utilizar un enfoque de desarrollo dirigido por pruebas para implementar un patrón de bus para enviar comandos y consultar objetos desde los componentes de Blazor. Esto permitió que los procesos de venta y puja eficaces y en tiempo real ocurrieran total o parcialmente de forma virtual. Mediante la implementación de Blazor, ShoWorks Auction ha satisfecho la necesidad a corto plazo de realizar pujas no presenciales, permitiendo que las subastas continúen con más fuerza después de la pandemia de COVID-19.
Tiempo de implementación
5 semanas
ShoWorks es el software de administración de expositores y entradas más popular que usan las ferias estatales y del condado en Norteamérica. ShoWorks simplifica el procesamiento del registro, la evaluación, los pagos premium y las licitaciones para todos los tipos de entradas, incluidas las artes creativas y domésticas, los medios de comunicación, la ganadería y mucho más. Durante más de 20 años, ShoWorks ha atendido de forma confiable las necesidades de las oficinas de entrada y los expositores, tanto en línea como en los recintos feriales de Estados Unidos y Canadá.
Problema empresarial
En marzo de 2020, las ferias de Norteamérica se vieron interrumpidas debido a la COVID-19. Esto puso en peligro el negocio de miles de compradores que ya habían adquirido ganado para la cría y venta en sus respectivas subastas locales. Históricamente, las subastas son la mejor manera de que los expositores recuperen sus costos y consigan financiación adicional para comprar animales en el futuro e invertir en su educación futura. ShoWorks necesitaba desarrollar una solución de venta en línea que se integrase sin problemas con las funcionalidades de entrada y de back-office que ya tenían en su lugar. La solución se tenía que poner en marcha rápidamente, en solo unas pocas semanas. Al trabajar con arquitectos de Clear Measure, usaron .NET y Blazor Server para crear rápidamente una solución de lanzamiento poco después de identificar esta necesidad.
¿Por qué Blazor?
El equipo de ShoWorks consideró varias tecnologías de desarrollo modernas para este proyecto. La plataforma ShoWorks ha utilizado tecnologías de desarrollo de Microsoft durante décadas, por lo que era natural evaluar las tecnologías de Microsoft para el nuevo sistema de subastas. La solución debía ser receptiva y accesible tanto para los dispositivos de escritorio como para los móviles. El sistema también tendría que soportar el procesamiento transaccional y por lotes. El equipo prefería utilizar un lenguaje de programación y un conjunto de bibliotecas coherentes para que el mismo grupo de desarrolladores pudiera construir y mantener todos los componentes del sistema. Consideraron tecnologías SPA como Angular y React.
El equipo de ShoWorks eligió Blazor porque necesitaba un plazo de comercialización extremadamente rápido para hacer frente al entorno de subastas creado durante el Covid-19. Aunque Blazor era relativamente nuevo cuando se inició el proyecto, el equipo investigó la hoja de ruta, incluida la futura compatibilidad de Blazor con sistemas operativos de escritorio y móviles. El equipo actual tenía conocimientos de HTML, CSS, C# y JavaScript. Aunque hubiera sido posible realizar algunos componentes del front-end en JavaScript, la elección de .NET y Blazor para el front-end permitió consolidar el número de lenguajes utilizados. Esta elección ha resultado ser un acierto. Desde entonces, el sistema se ha actualizado a .NET 6 y ha crecido hasta tener once servicios independientes.
Además, el sistema ShoWorks reside en Azure, lo que hace que la estrecha integración con otras tecnologías .NET y la experiencia nativa en Azure sean una excelente elección. En su conjunto, el sistema usa las siguientes tecnologías:
- .NET 6
- Blazor Server
- Entity Framework
- SQL Server LocalDB
- Azure SQL DB
- Azure Blog Storage
- Azure Service Bus
- Azure AppService
- Azure Functions
- Azure Logic Apps
- Azure SignalR Service
- Azure Application Insights
\Elegimos Blazor porque necesitábamos un tiempo de comercialización extremadamente rápido. Debido a la ajustada integración con otras tecnologías .NET y a la experiencia nativa en Azure, donde reside el sistema completo de ShoWorks, fue una gran elección.
Estrategia de implementación
ShoWorks creó una aplicación fácilmente modificable mediante la implementación de un patrón de bus y el envío de comandos y objetos de consulta desde los componentes de Blazor. La aplicación se compiló con el desarrollo controlado por pruebas, otro motivo por el cual la velocidad de inicio es rápida. Usaron pruebas basadas en Selenium, que funcionan bien con Blazor. Al tener una estrategia de prueba completa, el equipo redujo el número de errores y pudo dedicar más tiempo a mejorar el software. ShoWorks compiló la aplicación pública mediante Blazor Server, pero planea cambiar a Blazor WebAssembly para transferir el consumo de procesamiento y memoria al dispositivo cliente para un mejor ahorro de costos en el futuro.
Al equipo de ShoWorks le gusta especialmente la capacidad de Blazor para integrarse con todas las partes del ecosistema web. Actualmente están aprovechando esto de dos maneras clave. Por un lado, el equipo planea implementar una aplicación de la bandeja del sistema de Windows 11 que utiliza Blazor dentro de WebView2. Este año llevarán esta capacidad aún más lejos, ya que planean desarrollar una nueva aplicación para smartphones de la feria del condado utilizando la próxima versión de .NET MAUI con Blazor.
Resultados de la implementación
Blazor permitió a ShoWorks organizar su primera subasta virtual en sólo cinco semanas. Esas semanas consistieron en dos semanas de planificación y arquitectura, y tres semanas de desarrollo. El ritmo de desarrollo fue más rápido que el de cualquier otra tecnología de desarrollo web que ShoWorks haya probado. Además, el conjunto de habilidades de .NET era perfectamente transferible, lo que permitió a ShoWorks implementar un número asombroso de características en menos tiempo del que habían imaginado.
La naturaleza en tiempo real de un evento de subasta supuso un reto aún más interesante. Dado que Blazor Server es stateful y se basa en la mensajería en tiempo real de SignalR, ShoWorks ha podido ofrecer modos de subasta virtual y en vivo, en los que el subastador puede venderle a los usuarios y llevar a cabo el proceso de puja en tiempo real.
Al equipo también le encanta poder usar C# para cada nivel de la aplicación en lugar de tener que cambiar de un tipo de entorno de desarrollo a otro en función de la parte de la aplicación en la que estén trabajando."
Más allá de la implementación y perspectivas de futuro
Al utilizar Blazor, el equipo de ShoWorks solo tuvo que usar un lenguaje para desarrollar toda su plataforma, lo que les permitió ahorrar tiempo y utilizar el mismo grupo de desarrolladores para crear y mantener todos los componentes de la solución.
Como resultado de su éxito con Blazor, ShoWorks ha organizado más subastas de exposiciones de ganado junior en línea que cualquier otra plataforma. Desde mayo de 2021, el sistema de ShoWorks ha procesado más de 200 millones de dólares en ofertas. ShoWorks Auction ha combinado las subastas en vivo y en directo con la habilitación en línea, incluida la señalización digital en el establo con tecnología de Blazor que muestra el lote actual, el precio, el ganador y los patrocinadores, al mismo tiempo que integra perfectamente el vídeo en directo.
Al abordar el problema planteado por COVID-19, la subasta de ShoWorks pudo desarrollar una experiencia de subasta que también remedió los problemas anteriores a COVID. En años anteriores, las subastas tenían dificultades para atraer a los compradores a la sala de subastas debido a la falta de flexibilidad de las subastas presenciales. A menudo, los compradores no podían asistir a los eventos porque estaban de vacaciones, trabajando o asistiendo a otras subastas en el mismo día/hora. Así, ShoWorks se consolidó como un elemento básico para futuras ferias al ofrecer la posibilidad de pujar sin presencia.
Las ferias que utilizan la plataforma ShoWorks afirman que su tiempo de trabajo administrativo se ha reducido en un 90 %, mientras que han recaudado un 20 % más de fondos. Algunas ferias que utilizan ShoWorks afirman haber recaudado más fondos por lote que en cualquier subasta anterior de su historia.
¿Listo para empezar?
Nuestro tutorial paso a paso le ayudará a ejecutar Blazor en su equipo.