The Capstone Experience provides the educational capstone for all students majoring in computer science at Michigan State University. Teams of students build software projects for corporate clients. For information on becoming a project sponsor, see Project Sponsorship or contact Dr. Wayne Dyksen. The following were the project sponsors and projects for Fall 2017:
Amazon: Faia: Fashion Artificial Intelligence Assistant
Amazon is the largest online retailer in the world, selling a wide variety of products and services including a complete line of clothing and apparel.
Today, nearly 25% of millennials buy most of their clothing and apparel online. Paid subscription services provide personal fashion assistants who select and send clothing to their customers based on the customers’ style preferences.
Our Fashion Artificial Intelligence Assistant, Faia, competes directly with this trending market by providing the same service for free through texting.
For example, an Amazon customer might text Faia “Find me a shirt I’d like.” She responds by texting choices of shirts that complement that customer’s personal fashion style. Faia also texts shirts that are bought by others with similar tastes.
As customers text with Faia, they tell her what they like and dislike. Over time, using artificial intelligence, Faia learns more and more about each customer’s personal style preferences so she can provide better and better recommendations for clothing and apparel.
Customers text with Faia for an easy and complete shopping experience from getting recommendations to rating clothing to adding things to their Amazon shopping cart.
Our Fashion Artificial Intelligence Assistant web signup page is written using PHP and hosted on EC2. Faia is built using Amazon Lex and is powered by Python AWS Lambda functions
Auto-Owners Insurance: House of Hazards
With over 100 years of experience, Auto-Owners Insurance is a Fortune 500 company with more than 6,200 independent insurance agencies in 26 states and a written premium of almost $6 billion.
Our House of Hazards is a competitive virtual reality game that is designed to teach Auto-Owners’ associates about just that, home safety. Associates learn in an enjoyable, immersive and interactive way while getting a realistic experience.
Using an Oculus Rift Headset, Touch controllers and sensors, a player explores a virtual furnished home. A player is tasked with identifying potential hazards to the occupants and to the property itself. Players are educated about home safety with a simulation of a realistic everyday home.
Our game features three difficulty levels. In the easiest level, hazards are easy to find and numerous. In harder levels, hazards are harder to find, and identifying harmless items as hazardous results in the loss of points.
To give our game a competitive feel, the scores are recorded and displayed on a leaderboard.
Our House of Hazards game is played on a Microsoft Windows PC with the Oculus Rift Headset, Touch controllers and sensors. The Oculus Rift hardware communicates the input to our game, which is implemented using the Unity game engine.
Avata Intelligence: Security Analytics Suite: Configuration Setup Tool
Founded in 2013, Avata Intelligence leads the security industry in artificial intelligence (AI) and advanced analytics solutions including AVA, an intuitive AI application, which is used in a variety of sectors including public safety and defense.
For example, AVA can be used to analyze past crime records to predict when and where future crimes are likely to occur. With this knowledge, law enforcement can patrol exactly when and where crimes are most likely to occur, thereby increasing safety and security.
Our Configuration Setup Tool is a web app used by Avata engineers to aid in the onboarding process of new clients, specifically targeting police and law enforcement agencies.
Previously, in order to onboard a new client, an Avata engineer would obtain information about them by manually reading through PDF files and printouts and then writing computer scripts to enter this information into a database.
Our Configuration Setup Tool provides an intuitive user interface to streamline the new-client onboarding process. Our app automatically generates the appropriate MySQL or MsSQL script needed by an engineer to add a new client into the Avata client database.
By automating the onboarding process, Avata is reducing their time and cost spent on customer acquisition.
Ford Motor Company: Ford Smart Parking
Ford Motor Company is a Fortune 500 automotive company headquartered in Dearborn, Michigan, employing 201,000 employees worldwide and selling 6.65 million vehicles in 2016.
Often times while driving around crowded places you do not know where there is open parking. You waste time and gas looking for parking spaces, which leads to arriving late to meetings and unpleasant moods.
Our Ford Smart Parking app allows pedestrians to report open spots and it then enables drivers to find those spots. This helps drivers save time and gas when parking in crowded places whether on college campuses or at work.
When a pedestrian sees an open spot, they open the app to login and fill out a short survey to report the spot. Drivers can login and press a button which shows them the nearest parking space available.
Our Ford Smart Parking app is mirrored on Ford’s SYNC onboard vehicle system so that a driver of a Ford vehicle can find a parking space using their car’s touch screen.
In addition to finding a place to park, users can place virtual Ford vehicles into their home garage to see if they will fit.
Our Ford Smart Parking app, written in Java, runs on Android devices. Parking spots are stored in a Fire- base database. Virtual vehicles are displayed using the Google Tango and Android APIs.
General Motors: Automated Workplace Safety System
General Motors is one of the world’s foremost designers and manufacturers of cars and trucks sold in more than 125 countries. Headquartered in Detroit, GM operates almost 400 facilities on six continents around the world.
Among GM’s facilities are its many factories that build and assemble cars and trucks. In order to ensure the safety and well- being of those who work in these factories, GM provides a variety of personal protective equipment (PPE) including helmets, goggles and vests.
Our Automated Workplace Safety System determines if workers are missing any of their PPE by analyzing the video from cameras stationed at factory entrances. Our system uses object detection models to identify the workers and their PPE as they pass by.
If a worker is determined to be missing any of their PPE, a text message is sent to their safety manager, and a violation incident is recorded in a database.
Safety managers use our companion web app to display statistics and graphs of the PPE violation incidents, which can be sorted by camera, time or PPE. In addition, managers use our web app to indicate shift changes, and to add and remove cameras.
Humana promotes health and wellness by offering many innovative products and services to a diverse customer base. Humana takes pride in providing personalized plans for each of its members.
One of these tools is our MyHumanaBot, which provides a natural, in-person conversational experience. Users ask MyHumanaBot questions just as they might ask a Humana customer service agent. MyHumanaBot responds with accurate answers, quickly and efficiently.
For example, after logging into the Humana web portal, members can ask specific questions about their account such as “What are my current health insurance plans?” or “What’s the status of my most recent claim?”
Users can ask more general questions such as “Can you help me find a doctor?” to which MyHumanaBot may respond “Sure, what kind of doctor are you looking for?”
Conversations are saved and viewed using our companion administrative web portal, which is used by Humana associates for continuous improvement of MyHumanaBot.
Our MyHumanaBot uses Microsoft’s Bot Framework written in C# along with Dialogflow for natural language processing. All components are hosted on Microsoft Azure.
Meijer: Meijer Fresh-ipes
Committed to providing customers with new and innovative shopping experiences, Meijer is one of the largest supercenter chains with 237 stores located throughout the Midwest.
As items are purchased, Fresh-ipes adds them to a customer’s virtual pantry that tracks their availability as ingredients for recipes. Stock of pantry items is adjusted automatically when used in recipes or manually by the customer.
Fresh-ipes offers intelligent recipe recommendations based on ingredients that are available in a customer’s virtual pantry. Customers add recipes to their planned meals or favorite recipes. When preparing meals, customers view recipe directions on their mobile device or Amazon Echo Show.
Fresh-ipes provides customers with purchase recommendations based on planned meals and low ingredient stock in their virtual pantry. Customers add items to their shopping list manually and from items recommended by our app. Additionally, Fresh-ipes offers the options for curbside pickup or delivery.
Our Fresh-ipes app encourages customers to shop at Meijer by making meal planning and shopping easier and simpler.
Android, iOS and Amazon Echo Show apps make requests to the .NET Core Web API and SQL Server database hosted in a Microsoft Azure Cloud environment. These requests integrate with the Yummly API to provide recipe recommendations.
Michigan State University: SEA: Spartan Experience App
The nation’s pioneer land-grant university, Michigan State University (MSU) is one of the top research universities in the world. With over 50,000 students, MSU is home to nationally ranked and recognized academic, residential college and service-learning programs.
Looking for a bite to eat? SEA shows categorized menus within each dining hall, including dietary restrictions.
Not sure where your first class is? Use our app to search for building locations and get directions.
Visiting and not sure where to park? SEA gives parking locations as well as navigation to get to them.
Wondering when the next football game is? Our app notifies users of current and upcoming events and keeps them connected with a live Twitter feed.
SEA’s personalized home view provides relevant and contextual information based on the user’s location and time of day. Users see nearby dining halls and are alerted to upcoming events. A countdown timer helps students avoid being late to their next class.
Our SEA: Spartan Experience App is developed with Swift for iOS platforms and Java for Android platforms. The AWS Lambda API is written in Python and uses PostgreSQL as the underlying database.
Microsoft: Enhance Company Portal with Graph
Headquartered in Redmond, Washington, Microsoft is a long-time technology leader and innovator. For decades, they have provided enterprises with a comprehensive body of technological solutions created to drive productivity.
More and more, people are using their personal mobile devices to do work that was once done only in the office. This not only enhances work flexibility and productivity, but it also lowers company hardware costs. However, accessing sensitive company data on a personal device poses a potential significant security risk.
Our Enhanced Company Portal with Graph is an Android app that enables employees to access company resources safely and securely using their personal mobile devices.
Our app uses Microsoft Graph to provide users with a single endpoint for information and resources across all Microsoft programs, applications and platforms within their organization.
After using our app to enroll their personal devices, employees can access valuable company resources, data and applications directly on their personal devices. In addition, users can contact their company’s IT department directly from within our app to open and resolve service tickets quickly and efficiently.
To provide for safety and security, once a user’s mobile devices are enrolled, their enterprise IT team can ensure that employee devices are compliant with the company’s security policies.
Our application is written in Java using Android Studio.
Mozilla Corporation: Taking Firefix Screenshots Testing Suite to 11
Mozilla is a global, nonprofit organization dedicated to improving the World Wide Web. Mozilla’s international community of developers creates open source software such as Firefox, which is one of the most widely used browsers today.
Mozilla’s Firefox Screenshots Testing Suite detects inadvertent changes and alerts developers by taking a screenshot of a development version of Firefox, comparing it to a known “good” screenshot, and highlighting any differences.
Our improvements to the Firefox Screenshots Testing Suite make it more reliable and efficient. The tool now automatically crops screenshots to relevant areas, reducing false positives. Additionally, the tool takes a more varied sample of the Firefox user interface. Finally, better communication now exists between the screenshot testing suite and other quality assurance tools.
Our combined improvements make the Firefox Screenshots Testing Suite a more important piece of Firefox’s overall quality assurance process.
MSU Federal Credit Union: Digital Banking with Chatbots
Founded in 1937, Michigan State University Federal Credit Union offers financial services to members of the Michigan State University and Oakland University communities. With 250,000 members and over $3.7 billion in assets, MSUFCU is the largest university-based credit union in the world.
Currently, Credit Union members can speak to a customer service representative over the phone or through live chat on the MSUFCU website. Members can also log on to the Credit Union’s website or mobile phone apps to view their accounts.
Our Digital Banking with Chatbots system enhances this customer support by allowing members to complete common tasks 24 hours a day with no wait time. The system also increases accessibility by expanding to three new platforms: Facebook Messenger, Google Assistant and Amazon Alexa.
The chatbot system allows for natural conversation. Members can check account balances, transfer funds, reset passwords and perform other tasks just as easily as they would speak to a teller at an MSUFCU branch.
These chatbot conversations can be initiated through the existing web chat, on Facebook, and even through voice controls with Google Assistant and Amazon Alexa. If a member needs more help, the chatbot connects them to a live representative.
The natural language processing (NLP) services are Dialogflow and Amazon Lex. Each communication platform connects to the NLP service and to a SQLite database through a custom API. The API, fulfillment application and web application are written in Node.js.
The Phoenix Group: OPEN v2.0: Smart Order Picking
The Phoenix Group (TPG), founded in 2001, is the largest independent Point of Sale (POS) distributor in the industry. Leveraging distribution agreements with every major manufacturer, TPG supplies banks and independent sales organizations with POS equipment and services.
TPG POS systems are custom-configured for each of its many customers. TPG technicians traverse through their large warehouse to pick up the parts and pieces needed to build each customized POS device. Maximizing warehouse order-picking efficiency is a high priority to meet increasing order volumes.
Our OPEN v2.0: Smart Order Picking app adds intelligent interactive order-picking features to TPG’s proprietary logistics app OPEN. Our new features guide order pickers along the fastest route to fulfill an order and track inventory in real time.
Our app displays a warehouse map, which indicates the current location of the tablet, the items that must be picked for an order, and the fastest route to retrieve them all. Inventory is updated immediately when an item is picked so that warehouse stock is continuously up to date.
Our OPEN v2.0: Smart Order Picking features increase the speed that orders can be fulfilled and decrease the frequency of error throughout the process.
OPEN v2.0 is a Windows Presentation Foundation (WPF) application written in C#. It communicates with a backend API written in Node.js. An array of Bluetooth Low Energy Beacons broadcasts signals, which are used to determine location within the warehouse.
Rook Security: Cloud Security Event Processing
Rook Security is a managed threat response force that is dedicated to providing global IT security solutions that anticipate, manage and eliminate threats.
Our Cloud Security Event Processing and Alerting Platform analyzes log information from a client’s computer network looking for security-related events. Rook receives millions of these events that must be parsed and correlated into discrete incidents.
Our system provides a web interface that enables Rook engineers to edit existing correlation rules and to examine how these new rules perform, making it easier and more efficient to onboard new clients.
In addition, our system leverages Amazon Web Services (AWS) to create a reliable serverless architecture. Manageable from Rook’s Force web platform, our AWS system scales easily and quickly with on-demand computing to accommodate a growing base of clients and sudden surges of incoming network events.
Our Cloud Security Event Processing and Alerting Platform is identical in functionality to Rook’s previous version thereby keeping all of the same protections and making for a seamless transition for Rook’s analysts and customers alike.
Spectrum Health: Spectrum Health Symptom Checker
Spectrum Health is an integrated, not-for-profit health system based in Grand Rapids, Michigan that provides high quality healthcare through 12 hospitals and more than 140 service sites in West Michigan. Priority Health, its award-winning health plan, serves over 788,000 members across the U.S. and ensures that patients can affordably access quality care.
Our Symptom Checker is a feature within the application that recommends a healthcare service to patients based on the symptoms they are experiencing.
After a patient submits how they are feeling, they are presented a list of conditions commonly associated with their symptoms. After choosing which condition they feel fits them the best, the patient is given the option to schedule an appointment using MedNow, visit an Urgent Care center, or seek emergency care at a Spectrum Health Emergency Room.
Our other features added to the Spectrum Health mobile app include the ability for users to pay medical bills through Spectrum Health’s secure Pay My Bill service, get in touch with providers through a Contact Us page, and view job opportunities through the Careers portal.
Our Symptom Checker and other features are written in Swift 4 for iOS devices and Java for Android devices. C# and ASP.NET Core 2.0 are used to implement our natural language processing RESTful API.
Symantec: Secure Application Layer API Proxy
Symantec Corporation is a global leader in the cybersecurity industry, unifying cloud and on-premises security to protect users, information, messaging and the web.
As companies move their critical data from behind their own firewalls to running in the cloud, they must add additional layers of security to protect their data. One layer added is that of Symantec’s VIP, which is a popular multi-factor authentication tool used during the login process.
When a company purchases VIP, they are given access to a web interface that enables the company to integrate and secure their services. To access the VIP web interface, software developers currently must form web requests–that is, messages sent over the internet–using a traditional web messaging protocol called Simple Object Access Protocol (SOAP).
Our Secure Application Layer API Proxy simplifies access to the existing SOAP web interface by introducing a more modern one. We leverage a more efficient, flexible and easier to use protocol called Representational State Transfer (REST). Our proxy accepts REST-style web requests and converts them to a SOAP format for VIP. Once the proxy receives a SOAP response back from Symantec’s already existing systems, it sends that response back to the user in a REST format. Most importantly, our service preserves the superior level of security that VIP guarantees its customers throughout this process.
Our Secure Application Layer API Proxy is written in C# using the .NET framework and uses signed JSON Web Tokens (JWT) for secure communication between the proxy and end user.
TechSmith: TechSmith Director
TechSmith helps people easily create visual content such as images and video, to communicate more effectively. Our products, including Snagit and Camtasia, are used by more than 30 million users worldwide, and growing.
Due to the complexity of many video editing platforms, video creation is difficult for the average person. There are often countless menus, buttons and settings that require time and experience to learn and understand.
Our TechSmith Director strips the need for a complicated interface by interpreting the user’s spoken commands to create a video. Users dictate commands to Director and let the software handle the tedious work. The user further edits their video project using simple drag and drop functionality.
For example, a user may create a video by saying things like “I’d like a beach background for my video” followed by “Let’s place a dog with a frisbee on the beach.” Animations may be added simply by saying “I’d like the dog to walk across the beach.” Users also search for audio clips in the same way.
Video projects are saved so users may view and edit them later. Multiple projects are stored and managed through a single user interface.
TWO MEN AND A TRUCK: Online Moving Estimator
TWO MEN AND A TRUCK is the fastest-growing franchised moving company in the country with more than 400 locations in 42 states and 4 countries.
While TWO MEN AND A TRUCK customers can request to receive a moving estimate online, if the customer’s home is over 2,000 square feet, an in-home consultation may be required, which takes time both for TWO MEN AND A TRUCK and its customers.
Our three new features for TWO MEN AND A TRUCK’s Online Moving Estimator make the estimation process faster and more convenient for both parties.
First, our online video chat service enables a customer to connect with a TWO MEN AND A TRUCK agent who completes the estimate remotely through video conferencing.
Secondly, our web app allows TWO MEN AND A TRUCK to select from a queue of waiting customers or schedule a video conference consultation at a later time.
Finally, our mobile apps remove the need for an agent to be involved and allow a customer to complete an estimate on their own time by using image recognition. Customers take pictures throughout their house or apartment, confirm objects in each image, and then submit a final list to obtain their estimate.
Union Pacific: Railbuilder: The Great Race to Promontory
Headquartered in Omaha, Nebraska, Union Pacific is a leading transportation company with over 8,500 locomotives running on 32,100 miles of track across 23 states.
Union Pacific provides a variety of training software for its crews. For their simulation training to be effective, it must include realistic three-dimensional (3D) environments with appropriate topography, soils, water and vegetation.
Our application, RailBuilder: The Great Race to Promontory, enables users to generate accurate 3D terrain maps of the United States easily and quickly. Our companion railroad game showcases our terrain building capabilities.
Players easily create, name and save maps of any part of the continental US using our Map Creator editor. The resulting 3D maps include all of the appropriate topography, soils, water and vegetation depending on the area selected.
Once a map is created, our game places two rail stations on the map. A player must then connect the stations by building a railroad between them. RailBuilder is easy for anyone to learn how to play and provides a challenge for even the most experienced veterans.
RailBuilder is a standalone app that runs on any Windows computer. All maps are saved locally so each player enjoys a unique experience.
RailBuilder is written in C# using the Unity3D game engine. Our backend uses integration from Google Maps and the United States Geological Survey.
Urban Science: VDA: Virtual Dealership Adviser
Urban Science is an internationally renowned solutions company with a passion for solving data- driven problems. Headquartered in Detroit, Urban Science specializes in providing science-based solutions for the automotive, health and retail industries.
Within the automotive industry, Urban Science provides deep-data insights that dealerships use to improve their business. These dealerships frequently encounter the challenge of facing numerous metrics to analyze, making it difficult to determine which areas of their business need the greatest improvement.
Our Virtual Dealership Adviser targets these areas by allowing dealership employees to ask specific or general questions on how to improve segments of their business. For example, a user may ask: “How can I improve my SUV sales?”
Users choose between areas of improvement relevant to their question or those that offer the most room for improvement overall. Actionable solutions related to their area of improvement are then presented to the user, such as “optimize inventory mix to meet consumer demand” or “leverage sales leads to find additional interest in your area.”
Using our intuitive interface, dealership employees can find quick, data-driven solutions, allowing them to respond effectively to their market.
Our Virtual Dealership Adviser is accessible through Android, iOS and web browsers. Our databases are hosted in Amazon Web Services. Microsoft Azure is used for hosting and language processing services.
Yello: Automatic Resume Verification
Founded in 2008, Yello provides talent acquisition software that helps companies fill their most challenging job openings by hiring the right talent at the right time. Currently, Yello supports 20% of the Fortune 500 companies.
According to the Harvard Business Review, 80% of employee turnover is due to bad hiring decisions. In addition, it costs companies, on average, one-third of a new hire’s annual salary to replace them.
Our Automatic Resume Verification software helps Yello’s client-partners identify and recruit the best candidates by automatically verifying a candidate’s resume credentials.
Institutions such as universities or companies use one of our web apps to upload a prospective candidate’s credentials including things like academic degrees and employment dates. Each credential uploaded is assigned a unique transaction ID which is then given to the candidate.
A candidate uses our second web app to upload their resume along with their transaction IDs. By providing the transaction IDs along with the resume, our system is able to verify the candidate’s credentials automatically.
Candidate credentials are stored using a custom blockchain, which ensures scalability and security.
Our Automatic Resume Verification web apps are built with Ruby on Rails and hosted on an Amazon AWS EC2 instance. The blockchain is implemented in Python 3.6 and stored in a MySQL server.