Publication Date


Document Type

Student Project

First Advisor

Decker, Geoffrey

Degree Name

B.S. (Bachelor of Science)


Department of Computer Science


In the U.S, approximately 20 million individuals (8% of the population) are partly or completely visually impaired. This disability makes some everyday tasks such as reading, writing, shopping, traveling, etc., difficult. But, with the advancement of technology over the past few decades, design products and software have been created that help level the playing field for those in need. The only hurdle that still exists today is the cost and availability of these products, leaving many affected individuals with very little or no assistance in their everyday lives. This project was inspired by my grandmother’s disability. She was born with a degenerative eye disease called retinitis pigmentosa, a disease that continues to slowly decrease her level of vision making mundane tasks harder. Fortunately, I have been able to live within a few blocks of her my entire life, and I have always been her shopping assistant. But what about those who are not as lucky? This sparked the idea of Shop and Speak, a mobile application written in Java using Android Studios. This app converts verbal commands from a user and scans the UPCs or Daily Value Charts of different items to gather more information about a product they may want to buy. The information about these items will be stored in a DB2 database on the Marist mainframe, which will be accessed by Shop and Speak using SQL queries to the database. The mobile device in use and the DB2 database will communicate through a mobile-to-mainframe connection using Java Database Connectivity, or JDBC. This is a crucial aspect of the overall project since there is currently very little interaction with the mainframe outside of the business world. By using low-level languages like 370 Assembler and COBOL, I hope to minimize the need for interpretation during compilation, which could potentially result in faster query times. I began this project by making a prototype of the android app with very little functionality, but enough for me to start to understand how mobile development works and what design would work the best. This is what led to the ‘Black-on-White’ color scheme, after discussing with my grandma and some of her friends who are also visually impaired, I wanted to get a gauge for what colors on a digital screen would be the easiest for them see in the case that they didn’t want to use the text to speech features. While I was making great progress in completing the architecture of the app and the functionality of the Text-to-Speech and Speech-to-Text functionality, these were some of the less complex functions of the project, the mainframe connection was my biggest concern since this is not a common practice in today’s tech-stack. As I completed the functionality of the application and had everything polished, I began to create a Db2 database scheme. This took a little bit of back and forth till I finally was authorized on Marist’s mainframe; But I was finally able to make edits and I began to create my database and fill it with test data. This is when the challenges started to arise, I now had to connect my application to the mainframe. I struggled with this for weeks, attempting several different networking setups to see if I could get any success. I reverted to a backup plan of creating a cloud database, but it never worked properly either, so I had to figure out how to make my original plan work! I collaborated with Prof. Decker to find some more individuals via LinkedIn who work professionally with Db2, and I finally had a breakthrough and got the connection working. This was the biggest hurdle I had to jump and once I finally cleared it, I had to create my proper connection security using an API (Application Programming Interface) to talk to the database from the app in order to secure all my login information. This went without much trouble, and I was on the road to cleaning up the application interface to make it user friendly. Which took me a week or so to debug and perfect. In conclusion, this project has a lot of potential to be grown and scaled to a large level that could change the way people live their daily lives. Assisting others has always been a passion of mine, and I never could imagine where the world of Technology would take me and how I could begin to help others in a whole new way. This was one of the most fun projects I have ever worked on and I’m so happy that I was able to complete the project as expected and on time. Overall, the main scope of helping others with the development of technology while also tying legacy systems into the mix and showing their power and potential. The mainframe is looked down on in today’s day and age without realizing the amount of strength they still harness as well as the huge dependency many companies foreign and domestic have on these systems. Creating a friendly way for visually impaired people to shop while also creating a bridge between new and old technology was a perfect way to display my skills, I’ve built with the education of the Northern Illinois Computer Science Department


Source Code for the Project: