Dining Hall Web Application

133853-Thumbnail Image.png
Description
For my thesis project, I have developed a cash register web application for the Arizona State University Barrett Dining Hall. I previously worked at the Barrett Dining Hall, and I would occasionally step in as a cashier. This work is

For my thesis project, I have developed a cash register web application for the Arizona State University Barrett Dining Hall. I previously worked at the Barrett Dining Hall, and I would occasionally step in as a cashier. This work is how I came to be familiar with the system and all its inefficiencies. The system requires multiple user inputs to implement even the most basic of tasks, is not user-friendly, and therefore very prone to error. In the event that multiple incorrect inputs are entered, the software will freeze, and the user will have to turn off the computer and turn it back on. In theory, this application is an improvement over the software system that is currently in place in that the user interface has been specifically designed to be user-friendly. This application reduces the number of required user inputs by automating certain tasks (such as pricing and determining the meal period), thereby reducing the chance of user error. It is also an improvement in that it allows students to log in to the system to view how many meals they have left, how much M&G is in their account, and how many guest passes they have left. This functionality is extremely important because this is a feature that is not currently in place, and is something that students have actively complained about. Currently, if students want to check on their meal plan, they have to either physically go to a dining hall and ask the cashier, or call a toll-free number. The two technologies used to develop this application are C# and XML. These technologies were chosen because I wanted to learn something new for this project to broaden my knowledge. I also happened to be taking a class at the start of this project that utilized C# and XML for Web Applications, and it seemed like the perfect opportunity to transfer over the skills I had been learning.
Date Created
2018-05
Agent

Design and Implementation of an Electronic Preventative Maintenance System for Autonomous Vehicles

135340-Thumbnail Image.png
Description
Preventive maintenance is a practice that has become popular in recent years, largely due to the increased dependency on electronics and other mechanical systems in modern technologies. The main idea of preventive maintenance is to take care of maintenance-type issues

Preventive maintenance is a practice that has become popular in recent years, largely due to the increased dependency on electronics and other mechanical systems in modern technologies. The main idea of preventive maintenance is to take care of maintenance-type issues before they fully appear or cause disruption of processes and daily operations. One of the most important parts is being able to predict and foreshadow failures in the system, in order to make sure that those are fixed before they turn into large issues. One specific area where preventive maintenance is a very big part of daily activity is the automotive industry. Automobile owners are encouraged to take their cars in for maintenance on a routine schedule (based on mileage or time), or when their car signals that there is an issue (low oil levels for example). Although this level of maintenance is enough when people are in charge of cars, the rise of autonomous vehicles, specifically self-driving cars, changes that. Now instead of a human being able to look at a car and diagnose any issues, the car needs to be able to do this itself. The objective of this project was to create such a system. The Electronics Preventive Maintenance System is an internal system that is designed to meet all these criteria and more. The EPMS system is comprised of a central computer which monitors all major electronic components in an autonomous vehicle through the use of standard off-the-shelf sensors. The central computer compiles the sensor data, and is able to sort and analyze the readings. The filtered data is run through several mathematical models, each of which diagnoses issues in different parts of the vehicle. The data for each component in the vehicle is compared to pre-set operating conditions. These operating conditions are set in order to encompass all normal ranges of output. If the sensor data is outside the margins, the warning and deviation are recorded and a severity level is calculated. In addition to the individual focus, there's also a vehicle-wide model, which predicts how necessary maintenance is for the vehicle. All of these results are analyzed by a simple heuristic algorithm and a decision is made for the vehicle's health status, which is sent out to the Fleet Management System. This system allows for accurate, effortless monitoring of all parts of an autonomous vehicle as well as predictive modeling that allows the system to determine maintenance needs. With this system, human inspectors are no longer necessary for a fleet of autonomous vehicles. Instead, the Fleet Management System is able to oversee inspections, and the system operator is able to set parameters to decide when to send cars for maintenance. All the models used for the sensor and component analysis are tailored specifically to the vehicle. The models and operating margins are created using empirical data collected during normal testing operations. The system is modular and can be used in a variety of different vehicle platforms, including underwater autonomous vehicles and aerial vehicles.
Date Created
2016-05
Agent

Automated Testing of Web Services

135246-Thumbnail Image.png
Description
The areas of cloud computing and web services have grown rapidly in recent years, resulting in software that is more interconnected and and widely used than ever before. As a result of this proliferation, there needs to be a way

The areas of cloud computing and web services have grown rapidly in recent years, resulting in software that is more interconnected and and widely used than ever before. As a result of this proliferation, there needs to be a way to assess the quality of these web services in order to ensure their reliability and accuracy. This project explores different ways in which services can be tested and evaluated through the design of various testing techniques and their implementations in a web application, which can be used by students or developers to test their web services.
Date Created
2016-05
Agent

Tenga: A Case Study on Building Web Applications

135236-Thumbnail Image.png
Description
Tenga is an e-commerce demo web application for students studying Distributed Software Development and Software Integration and Engineering at Arizona State University (ASU). The application, written in C#, aims to empower students to understand how complex systems are build. Complementing

Tenga is an e-commerce demo web application for students studying Distributed Software Development and Software Integration and Engineering at Arizona State University (ASU). The application, written in C#, aims to empower students to understand how complex systems are build. Complementing the two courses taught at ASU, it seeks to demonstrate how the concepts taught in the two classes can be applied to the real world. In addition to the practical software development process, Tenga also bring in the topics that students are inexperienced with such as recommendation systems and ranking algorithms. Tenga is going to be used in classrooms to help students to learn fundamental issues in Web software development and software integration and to understand tools and skill sets required to built a web application.
Date Created
2016-05
Agent

Developing an HTML5 Autonomous Robot Web Simulator

134769-Thumbnail Image.png
Description
In order to adequately introduce students to computer science and robotics in an exciting and engaging manner certain teaching techniques should be used. In recent years some of the most popular paradigms are Visual Programming Languages. Visual Programming Languages are

In order to adequately introduce students to computer science and robotics in an exciting and engaging manner certain teaching techniques should be used. In recent years some of the most popular paradigms are Visual Programming Languages. Visual Programming Languages are meant to introduce problem solving skills and basic programming constructs inherent to all modern day languages by allowing users to write programs visually as opposed to textually. By bypassing the need to learn syntax students can focus on the thinking behind developing an algorithm and see immediate results that help generate excitement for the field and reduce disinterest due to startup complexity and burnout. The Introduction to Engineering course at Arizona State University supports this approach by teaching students the basics of autonomous maze traversing algorithms and using ASU VIPLE, a Visual Programming Language developed to connect with and direct real-world robots. However, some startup time is needed to learn how to interface with these robots using ASU VIPLE. That is why the HTML5 Autonomous Robot Web Simulator was created -- by encouraging students to use the simulator the problem solving behind autonomous maze traversing algorithms can be introduced more quickly and with immediate affirmation. Our goal was to improve this simulator and add features so that the simulator could be accessed and used for a more wide variety of introductory Computer Science lessons. Features scattered across past implementations of robotic simulators were aggregated in a cross platform solution. Upon initial development, a classroom test group revealed usability concerns and a demonstration of students' mental models. Mean time for task completion was 8.1min - compared to 2min for the authors. The simulator was updated in response to test group feedback and new instructor requirements. The new implementation reduces programming overhead while maintaining a learning environment with support for even the most complex applications.
Date Created
2016-12
Agent

LOYALS: WEB ACHIEVEMENTS FOR EVALUATING CUSTOMER TRENDS AND LOYALTY

137679-Thumbnail Image.png
Description
Gamification is the process of adding game mechanics to non game activities, thus creating a more engaging environment. Loyals provides a gamification API which can be consumed to add Loyals (achievements) to any website, application, or mobile app. Loyals are

Gamification is the process of adding game mechanics to non game activities, thus creating a more engaging environment. Loyals provides a gamification API which can be consumed to add Loyals (achievements) to any website, application, or mobile app. Loyals are used in two major ways: (1) to create an interactive environment where users are rewarded for completing tasks and (2) as contextual information useful for analyzing user interaction with the application. The interactive environment inspires users to continue using an application while the contextual information can be used for improving the application to draw in new loyal visitors, ad targeting, creating user profiles, and much more.
Date Created
2013-05
Agent

Distributed Systems Management Based on CIM Schema

137558-Thumbnail Image.png
Description
Our goals in our project are to enable management of distributed systems from one central location, record system logs and audit system based on these logs, and to demonstrate feasibility of platform-independent management of distributed systems based on CIM schema.

Our goals in our project are to enable management of distributed systems from one central location, record system logs and audit system based on these logs, and to demonstrate feasibility of platform-independent management of distributed systems based on CIM schema. In order to achieve these goals, we will have to overcome research challenges such as identifying meaningful CIM classes and attributes that could help to achieve this goal, how to gather managed objects of these CIM classes to collect such attributes on a given platform, and to research whether a platform's implementation of CIM is complete or incomplete so as to decide which platform would be the best to implement our solution. Even if a platform's implementation of CIM is incomplete, would we be able to create our own solution to a missing attribute and perhaps provide our own extension of the implementation? One major practical accomplishment will include developing a tool to allow distributed systems management regardless of a target system's platform. However, our research accomplishments will include having found the CIM classes that would be advantageous for system management and determining which platform would be best to work with managed objects of these classes.
Date Created
2013-05
Agent

Evaluating Enjoyment of Game Mechanics

136654-Thumbnail Image.png
Description
Many psychology-rooted studies into the games industry seek to identify emotions players experience during gameplay. However, there is a need to extend this kind of research beyond the realm of emotion into more long-term concepts, like satisfaction. This experiment tested

Many psychology-rooted studies into the games industry seek to identify emotions players experience during gameplay. However, there is a need to extend this kind of research beyond the realm of emotion into more long-term concepts, like satisfaction. This experiment tested whether a specific game mechanic was enjoyable. Other literature has established a way to describe and quantify enjoyability. Using a survey based on that work, this study evaluated the addition of a 'gel gun' to a platforming game. The fun was found to significantly increase players' affective experiences, concentration, and sense of control, all being components of an enjoyable experience. It also exposed some conflicts within the survey that merit investigation. It was concluded that the 'gel gun' feature increased gameplay enjoyability without significantly diminishing any other enjoyable factors. Future work may explore the connections between this feature and specific elements of enjoyment.
Date Created
2014-12
Agent

Cloud Solutions for 3D Modeling

136572-Thumbnail Image.png
Description
Cloud computing and web services enable the creation of applications that are faster and more interconnected than traditional applications. This project explores the possible ways in which cloud computing and web services can be used to extend already existing applications

Cloud computing and web services enable the creation of applications that are faster and more interconnected than traditional applications. This project explores the possible ways in which cloud computing and web services can be used to extend already existing applications by developing a data storage web service for 3D modeling applications. The implementation of the service is described, and several example applications are shown that utilize the service. Additionally, related web based applications are discussed along with their influence on the project. The project shows the benefits that cloud-based web services can bring to 3D modeling applications, such as improved collaboration and more comprehensive history tracking.
Date Created
2015-05
Agent

Implementing ASU-VPL as an Open Robotics Platform Tool for Education

135981-Thumbnail Image.png
Description
Education in computer science is a difficult endeavor, with learning a new programing language being a barrier to entry, especially for college freshman and high school students. Learning a first programming language requires understanding the syntax of the language, the

Education in computer science is a difficult endeavor, with learning a new programing language being a barrier to entry, especially for college freshman and high school students. Learning a first programming language requires understanding the syntax of the language, the algorithms to use, and any additional complexities the language carries. Often times this becomes a deterrent from learning computer science at all. Especially in high school, students may not want to spend a year or more simply learning the syntax of a programming language. In order to overcome these issues, as well as to mitigate the issues caused by Microsoft discontinuing their Visual Programming Language (VPL), we have decided to implement a new VPL, ASU-VPL, based on Microsoft's VPL. ASU-VPL provides an environment where users can focus on algorithms and worry less about syntactic issues. ASU-VPL was built with the concepts of Robot as a Service and workflow based development in mind. As such, ASU-VPL is designed with the intention of allowing web services to be added to the toolbox (e.g. WSDL and REST services). ASU-VPL has strong support for multithreaded operations, including event driven development, and is built with Microsoft VPL users in mind. It provides support for many different robots, including Lego's third generation robots, i.e. EV3, and any open platform robots. To demonstrate the capabilities of ASU-VPL, this paper details the creation of an Intel Edison based robot and the use of ASU-VPL for programming both the Intel based robot and an EV3 robot. This paper will also discuss differences between ASU-VPL and Microsoft VPL as well as differences between developing for the EV3 and for an open platform robot.
Date Created
2015-12
Agent