Building custom apps on top of SAS Viya, Part One: Where's the value?


This series is geared towards walking you through a piece of the puzzle of operationalizing your analytics: securely integrating your custom applications into your SAS Viya platform. This is particularly useful after exposing your analytics as HTTP REST APIs, as we'll see an intentionally brief example of in this first post of the series. To get a better feel for the whole picture of operationalizing your analytics I would encourage taking a look at these resources and then reaching out to me to put you in touch with our team:

Fair warning: I get detailed here. This is a journey. I'm not trying to pitch the story for the next Netflix original, but I want to outline business challenges companies face and how they can utilize technology to solve these problems. The more background you have, the more the solution resonates.

Framing the use case

Credit: Just a Car Guy

I'll start here by sharing my experiences on a recent project where our team worked with a pre-owned auto mall to help them expose their analytics as HTTP REST APIs. My contributions typically provide the solutions of implementation details and security-related considerations, but I learned quite a bit about the value of building custom applications on top of SAS Viya through this project.

This customer, the pre-owned auto mall, was incorporated back in 1980-something when neon and hairspray were king and MTV actually played music videos. One of their key business process is purchasing used cars at auction and then bringing them back to their lots for resale to consumers. Their profits lie somewhere between the price they purchase each car for and what they can sell it for. Kurt, pictured at the auto lot, was the pre-owned auto mall's best salesman.  Over the years, Kurt learned which makes and models the business could get the best profit from, while also learning how to spot cars that might end up racking up too many unexpected costs. "Salt and sun damage will take a huge bite out of your commission" he's been known to tell the new guys. These days Kurt spends his days fishing in the middle of nowhere, happily retired. The pre-owned auto mall expressed that they still have a few folks on the team that really know a good buy when they see it, but more and more often they're losing money on deals. They've outlined that the new folks on the buying team just don't have the years of experience to know what they're getting into at auction.

As the customer describes it, sometimes a car will come up at auction that looks like it's in great shape; clean and well-kept, low miles, great trim packages, the works. Yet, unless the buyer really knows what to look for, like Kurt did, that good-looking deal might end up being a dud. While Kurt had experience under his belt to help his eye for problem spotting, the auto mall customer told us that keeping track of the good buys and bad buys is a major challenge. Years of experience and learning from all those lessons is the best yard stick for comparisons when trying to make a quick and good call when buying at the auctions.

Needing to modernize the business

Many of our customers are actively facing critical challenges to their way of doing business: retiring workforces taking years of institutional knowledge and experience with them, combine that with agile competitors and market disrupters entering the fray, our customers are stressed. Considering these issues, our team helped this customer to design a custom app that all their employees can use to help them make better decisions at auction, which helps the company better compete as well as also to cut down on poor "gut" decisions (costly ones at that). The goal of this custom app is to give the buyers at auction recommendations on which cars to bid on and how much is too much before overpaying.

Our team helped the auto mall develop the technical requirements for this custom app. The buyers will pull up the custom app up on their phone, enter in the details for the car they're thinking about making a bid on, and instantly get back a suggestion on whether or not they should bid at all and if so, a maximum bid amount as well as some other helpful information. The results are based on both institutional business logic as well as analytic models which are trained with the historical data from previous sales. The app allows the user to record how much each car up for auction sold for and its characteristics, which is done whether they won it or not, so the data can be fed back into the database to retrain and improve the analytic models over time.

How can the business improve?

After helping the pre-owned auto mall develop their requirements for the custom app, which helps them make data-driven decisions at auction, our team worked with the customer to develop the process for how the recommendations are generated. The solution we developed uses SAS Viya to create a decision flow to generate near-real time evaluations of used cars at auction using each car's specific details as inputs. Using analytical models with constructed business rules provided by the customer, SAS Viya provides a neatly wrapped decision module which adds a layer of intelligent decision-making that an analytical model on its own cannot provide.

Here's the fun part

During an auction, buyers for the customer do not have time to wait for some batch process to give recommendations or to log into SAS Viya in order to execute code manually without risking a lost opportunity for a good buy. Instead, we showed them that they can publish the decision flow as an HTTP REST API endpoint to the SAS Micro Analytic Service (MAS), a “compile-once, execute-many-times” service in SAS Viya. The custom app makes HTTP REST calls to the published endpoint providing the specific car details as the inputs. This instructs MAS to execute against a packaged version of that entire decision flow we outlined, and respond with real-time results to the client app.

The SAS decisioning process

The app is part of the SAS decisioning process, and evolves over time. As more sales are added to the database through the app, the solution automatically retrains the recommendation models. It yields more-accurate suggestions as the data changes and then republishes to MAS so the custom app can automatically take advantage of the updated models.

We should pause here and note that, while this example is for an application making REST calls to MAS, that is really the tip of the iceberg. One of the many great advantages to the modernization of the SAS platform with SAS Viya is the sheer number of underlying services that are now exposed as API endpoints for you to incorporate into your larger IT landscape and business processes. Check out to take a look.

What's next?

Next up is where I took over on this project; integrating the app into the customer's SAS Viya environment. In the next post in this series we'll work through how that integration works, followed by security-related decision points that need to be made when doing so, and then by some examples of each method.

For more information on the decision flow or operationalizing your analytics, reach out here and I'll put you in contact with our team.


About Author

Tara St. Clair

Principal Technical Architect, Field Innovation R&D

Tara develops SAS environments from architectural design, through deployment and security modelling, and ultimately onto administrating and consulting. These days she enjoys writing custom Python serverless functions to extend the value of SAS, integrating them into the platform, and sharing her findings along the way. When she's not doing any of those things, she's tending to her 50+ houseplants.

Leave A Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to Top