After having Kentico perform some work for us, we asked them to recommend a partner with which to continue working on our site. Kentico recommended 3 companies. Through the interview process, I got the best feeling about BizStream. It turned out to be the right choice for us.
We are extremely pleased with the outcome of the project. BizStream's work is impressive, especially knowing how challenging it can be to work with someone else's existing code. BizStream "went above and beyond, "delivering something to the end user.
I would definitely encourage others to go with BizStream for development work, especially Kentico development. I was super impressed with how knowledgeable Brian [McKeiver] is and how closely BizStream works with Kentico. BizStream support was also top notch. Brian was very responsive, as was the support team.
increase in active dealer logins
The goal of this project was to rebuild, enhance, and consolidate the public www.lmc.net and private member only portions of www.lmc.net/members applications into a single application using .Net and Kentico Xperience. The new solution needed to be cloud-based, provide an intuitive mobile friendly interface, have a fast and secure delivery of on-premise data, implemented using best practices, and be easily updatable for future versions of Kentico Xperience.
LMC needed to modernize the overall www.lmc.net framework and foundation. A major goal was to merge the public www.lmc.net site (written in a legacy technology) with the member focused authenticated dealer area of www.lmc.net/members into a single application.
LMC’s goals included:
- Have a cloud-based solution in Microsoft Azure that could scale to meet the needs to LMC’s 1,400 member organizations across the US.
- The new solution still needed to deeply integrate with on-premise data stores, applications, and authorization systems
- Be built in the latest Kentico version at the time, Kentico 11.0 EMS.
- Be built in the ASP.NET MVC development methodology.
- Easily upgradable Kentico Xperience implementation
- Increased application performance with fast information retrieval speed (specifically when using lists, search and filters)
- Easy to use User Experience especially in terms of navigation through the site(s)
- Rich product-centric search experience for logged in Dealers
- Fully responsive to work on mobile devices
- Meet ADA Compliance for WCAG 2.0 AA Accessibility standards
- Personalized information through role-based views (Owner, Buyer, Accounting).
There were many challenges for this project. The main one being how to provide a cloud-based solution that integrated securely with on-premise information. Originally LMC was unsure of how to bridge the gap to create a hybrid public cloud solution. LMC needed to provide a single set of endpoints that could surface data correctly while internally communicating with multiple servers, systems, and databases.
Right after that challenge was the fact that the pre-existing public and private sections of www.lmc.net were not unified in their technology and therefore hard to manage and update over time. This needed to be rectified in the new solution.
Some other challenges on the project were:
- Migrate away from legacy on-premise hosting infrastructure to allow for cost savings and other benefits of hosting the in the cloud.
- Migate away from an outdated technology stack of legacy builds of Microsoft SQL Server, Windows Server, and an older instance of Kentico Xperience.
- Provide a way for an internal data api to secure communicate with the outside world.
- LMC‘s content is meant for multiple audiences and roles. They needed a way to choose items, such as News articles, to show up in their public and/or private site, target that content to personalize the exerpience of their dealers, and make it easier to manage and deliver content to users.
- LMC needed a robust subscription feature where users could subscribe to different reports, news items, specials & promotions, pricing updates, etc. Based on their subscriptions, users would get automatically notified via email when new reports or content items are uploaded.
- Multiple user management. LMC wanted the ability to add, remove and edit users, as well as assign different roles and responsibilities based on each user.
- The User Manager feature, that allows for provisioning of external users without LMC involvement, proved to be a challenge due to the high level of customized admin rights.
- Customized list Generation for Manufacturer Specials. LMC needed the ability for users to be able to view and print customized specials based on their needs and wants. Viewing only the specials they have selected.
- Market Reports – LMC needed specific reports to be automatically named categorized into folders.
- Custom Directory – LMC wanted to offer users to view other manufactures contacts who are relevant to their business needs and part of the LMC network.
BizStream and LMC jointly developed a solution that leveraged many services and resources from Microsoft Azure and Kentico. The new solution uses the following Azure Services:
- Azure PaaS via Azure App Services, for delivery of the MVC live site and Kentico Xperience Admin tool. This also allows for very easy deployment because of the integration into Visual Studio.
- Azure SQL databases, for secure and scalable database hosting of the website.
- Azure REDIS cache, for session state management of the application to allow for scalability and performance.
- Azure BLOB Storage, for fast delivery of the Kentico Xperience Media Library assets
- Azure Monitoring, for keeping an eye on the performance and uptime of the site.
- Azure Dev Ops, for to measure load testing, handle automated builds, and handle automated deployments to both test and production targets.
Detailed Solutions include:
- BizStream implemented the MVC development methodology with Kentico Xperience to provide a future proof investment.
- LMC IT created a new API for surfacing internal data to the web from its on-premise data stores.
- Security for LMC API – LMC and BizStream leveraged the one-time password methodology standard.
- BizStream implemented logic on the front end utilizing Vue.js and a Hybrid SPA approach to handle the most dynamic aspects of the site. This includes the LMC Directory, Product grids, multiple Search and Filtering areas of the site. Admins can now easily add and remove users, assign different roles and responsibilities, etc.
- BizStream also used Vue.js to solve the need of LMC’s Customized List Generation for Manufacturer Specials feature.
- BizStream and LMC utilized File Transfer Reports and Microsoft SQL Server Reporting Services (SSRS reports) to create an integrated reporting experience.
- Kentico Smart Search was utilized to handle automatic filtering. When reports are sent by LMC users, they get dropped into folders and then automatically categorized and named.
- Kentico Scheduled Tasks were used so only users who subscribe to specific reports would receive the notifications.
- Microsoft Dynamics 365 CRM integration - BizStream helped LMC come to a solution that could create two-way synchronization between Kentico users and contacts that would also show up in Microsoft Dynamics 365 CRM with approvals from the stakeholder division.
- Integration with Vendor Database - LMC used an API that deployed to Azure to talk to their multiple internal systems to power much of the application. BizStream unified the data with the Kentico content tree.
- To handle LMC’s Claim Forms, BizStream customized the Kentico Forms engine to allow for multi-part forms that tied to both Kentico and LMC’s internal systems with validation of invoice numbers, attachments, etc.
- LMC uses Kentico Xperience Activity Tracking and Google Tag Manager to get insights on how the site is used.
- BizStream used the Kentico Continuous Integration feature that enables shared development teams to collaborate.
- Compare for Kentico, part of the Toolkit for Kentico, was used for synchronizing environment data.
The total length of the project was 16 months.