Matching Items (24)
134157-Thumbnail Image.png
Description
This paper details the specification and implementation of a single-machine blockchain simulator. It also includes a brief introduction on the history & underlying concepts of blockchain, with explanations on features such as decentralization, openness, trustlessness, and consensus. The introduction features a brief overview of public interest and current implementations of

This paper details the specification and implementation of a single-machine blockchain simulator. It also includes a brief introduction on the history & underlying concepts of blockchain, with explanations on features such as decentralization, openness, trustlessness, and consensus. The introduction features a brief overview of public interest and current implementations of blockchain before stating potential use cases for blockchain simulation software. The paper then gives a brief literature review of blockchain's role, both as a disruptive technology and a foundational technology. The literature review also addresses the potential and difficulties regarding the use of blockchain in Internet of Things (IoT) networks, and also describes the limitations of blockchain in general regarding computational intensity, storage capacity, and network architecture. Next, the paper gives the specification for a generic blockchain structure, with summaries on the behaviors and purposes of transactions, blocks, nodes, miners, public & private key cryptography, signature validation, and hashing. Finally, the author gives an overview of their specific implementation of the blockchain using C/C++ and OpenSSL. The overview includes a brief description of all the classes and data structures involved in the implementation, including their function and behavior. While the implementation meets the requirements set forward in the specification, the results are more qualitative and intuitive, as time constraints did not allow for quantitative measurements of the network simulation. The paper concludes by discussing potential applications for the simulator, and the possibility for future hardware implementations of blockchain.
ContributorsRauschenbach, Timothy Rex (Author) / Vrudhula, Sarma (Thesis director) / Nakamura, Mutsumi (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2017-12
135380-Thumbnail Image.png
Description
Bioscience High School, a small magnet high school located in Downtown Phoenix and a STEAM (Science, Technology, Engineering, Arts, Math) focused school, has been pushing to establish a computer science curriculum for all of their students from freshman to senior year. The school's Mision (Mission and Vision) is to: "..provide

Bioscience High School, a small magnet high school located in Downtown Phoenix and a STEAM (Science, Technology, Engineering, Arts, Math) focused school, has been pushing to establish a computer science curriculum for all of their students from freshman to senior year. The school's Mision (Mission and Vision) is to: "..provide a rigorous, collaborative, and relevant academic program emphasizing an innovative, problem-based curriculum that develops literacy in the sciences, mathematics, and the arts, thus cultivating critical thinkers, creative problem-solvers, and compassionate citizens, who are able to thrive in our increasingly complex and technological communities." Computational thinking is an important part in developing a future problem solver Bioscience High School is looking to produce. Bioscience High School is unique in the fact that every student has a computer available for him or her to use. Therefore, it makes complete sense for the school to add computer science to their curriculum because one of the school's goals is to be able to utilize their resources to their full potential. However, the school's attempt at computer science integration falls short due to the lack of expertise amongst the math and science teachers. The lack of training and support has postponed the development of the program and they are desperately in need of someone with expertise in the field to help reboot the program. As a result, I've decided to create a course that is focused on teaching students the concepts of computational thinking and its application through Scratch and Arduino programming.
ContributorsLiu, Deming (Author) / Meuth, Ryan (Thesis director) / Nakamura, Mutsumi (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-05
136804-Thumbnail Image.png
Description
The quality of user interface designs largely depends on the aptitude of the designer. The ability to generate mental abstract models and characterize a target user audience helps greatly when conceiving a design. The dry cleaning point-of-sale industry lacks quality user interface designs. These impaired interfaces were compared with textbook

The quality of user interface designs largely depends on the aptitude of the designer. The ability to generate mental abstract models and characterize a target user audience helps greatly when conceiving a design. The dry cleaning point-of-sale industry lacks quality user interface designs. These impaired interfaces were compared with textbook design techniques to discover how applicable published interface design concepts are in practice. Four variations of a software package were deployed to end users. Each variation contained different design techniques. Surveyed users responded positively to interface design practices that were consistent and easy to learn. This followed textbook expectations. Users however responded poorly to customization options, an important feature according to textbook material. The study made conservative changes to the four interface variations provided to end-users. A more liberal approach may have yielded additional results.
ContributorsSmith, Andrew David (Author) / Nakamura, Mutsumi (Thesis director) / Gottesman, Aaron (Committee member) / Barrett, The Honors College (Contributor) / Electrical Engineering Program (Contributor)
Created2014-05
136617-Thumbnail Image.png
Description
We created an Android application, Impromp2, which allows users to search for and save events of interest to them in the Phoenix area. The backend, built on the Parse platform, gathers events daily using Web services and stores them in a database. Impromp2 was designed to improve upon similarly-purposed apps

We created an Android application, Impromp2, which allows users to search for and save events of interest to them in the Phoenix area. The backend, built on the Parse platform, gathers events daily using Web services and stores them in a database. Impromp2 was designed to improve upon similarly-purposed apps available for Android devices in several key ways, especially in user interface design and data interaction capability. This is a full-stack software project that explores databases and their performance considerations, Web services, user interface design, and the challenges of app development for a mobile platform.
ContributorsNorth, Joseph Robert (Author) / Balasooriya, Janaka (Thesis director) / Nakamura, Mutsumi (Committee member) / Faucon, Philippe (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor) / School of Mathematical and Statistical Sciences (Contributor)
Created2015-05
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 how I came to be familiar with the system and

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.
ContributorsLewis, Q. Mariha Paishance (Author) / Chen, Yinong (Thesis director) / Nakamura, Mutsumi (Committee member) / School of International Letters and Cultures (Contributor) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2018-05
137462-Thumbnail Image.png
Description
Web-application development constantly changes \u2014 new programming languages, testing tools and programming methodologies are often proposed. The focus of this project is on the tool Selenium and the fairly new technique known as High Volume Automated Testing (HVAT). Both of these techniques were used to test the Just-in-Time Teaching and

Web-application development constantly changes \u2014 new programming languages, testing tools and programming methodologies are often proposed. The focus of this project is on the tool Selenium and the fairly new technique known as High Volume Automated Testing (HVAT). Both of these techniques were used to test the Just-in-Time Teaching and Learning Classroom Management System software. Selenium was used with a black-box testing technique and HVAT was employed in a white-box testing technique. Two of the major functionalities of this software were examined, which include the login and the professor functionality. The results of the black-box testing technique showed parts of the login component contain bugs, but the professor component is clean. HVAT white-box testing revealed error free implementation on the code level. We present an analysis on a new technique for HVAT testing with Selenium.
ContributorsEjaz, Samira (Author) / Balasooriya, Janaka (Thesis director) / Nakamura, Mutsumi (Committee member) / Wilkerson, Kelly (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2013-05
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 the two courses taught at ASU, it seeks to demonstrate

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.
ContributorsKawanzaruwa, Allen Tom (Author) / Chen, Yinong (Thesis director) / Nakamura, Mutsumi (Committee member) / Computer Science and Engineering Program (Contributor) / School of Mathematical and Statistical Sciences (Contributor) / Barrett, The Honors College (Contributor)
Created2016-05
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 to assess the quality of these web services in order

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.
ContributorsHilliker, Mark Paul (Author) / Chen, Yinong (Thesis director) / Nakamura, Mutsumi (Committee member) / Computer Science and Engineering Program (Contributor) / School of Mathematical and Statistical Sciences (Contributor) / Barrett, The Honors College (Contributor)
Created2016-05
135251-Thumbnail Image.png
Description
Many systems in the world \u2014 such as cellular networks, the post service, or transportation pathways \u2014 can be modeled as networks or graphs. The practical applications of graph algorithms generally seek to achieve some goal while minimizing some cost such as money or distance. While the minimum linear arrangement

Many systems in the world \u2014 such as cellular networks, the post service, or transportation pathways \u2014 can be modeled as networks or graphs. The practical applications of graph algorithms generally seek to achieve some goal while minimizing some cost such as money or distance. While the minimum linear arrangement (MLA) problem has been widely-studied amongst graph ordering and embedding problems, there have been no developments into versions of the problem involving degree higher than 2. An application of our problem can be seen in overlay networks in telecommunications. An overlay network is a virtual network that is built on top of another network. It is a logical network where the links between nodes represent the physical paths connecting the nodes in the underlying infrastructure. The underlying physical network may be incomplete, but as long as it is connected, we can build a complete overlay network on top of it. Since some nodes may be overloaded by traffic, we can reduce the strain on the overlay network by limiting the communication between nodes. Some edges, however, may have more importance than others so we must be careful about our selection of which nodes are allowed to communicate with each other. The balance of reducing the degree of the network while maximizing communication forms the basis of our d-degree minimum arrangement problem. In this thesis we will look at several approaches to solving the generalized d-degree minimum arrangement d-MA problem where we embed a graph onto a subgraph of a given degree. We first look into the requirements and challenges of solving the d-MA problem. We will then present a polynomial-time heuristic and compare its performance with the optimal solution derived from integer linear programming. We will show that a simple (d-1)-ary tree construction provides the optimal structure for uniform graphs with large requests sets. Finally, we will present experimental data gathered from running simulations on a variety of graphs to evaluate the efficiency of our heuristic and tree construction.
ContributorsWang, Xiao (Author) / Richa, Andrea (Thesis director) / Nakamura, Mutsumi (Committee member) / School of Mathematical and Statistical Sciences (Contributor) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-05
132957-Thumbnail Image.png
Description
This thesis dives into the world of machine learning by attempting to create an application that will accurately predict whether or not a sneaker will resell at a profit. To begin this study, I first researched different machine learning algorithms to determine which would be best for this project. After

This thesis dives into the world of machine learning by attempting to create an application that will accurately predict whether or not a sneaker will resell at a profit. To begin this study, I first researched different machine learning algorithms to determine which would be best for this project. After ultimately deciding on using an artificial neural network, I then moved on to collecting data, using StockX and Twitter. StockX is a platform where individuals can post and resell shoes, while also providing statistics and analytics about each pair of shoes. I used StockX to retrieve data about the actual shoe, which involved retrieving data for the network feature variables: gender, brand, and retail price. Additionally, I also retrieved the data for the average deadstock price for each shoe, which describes what the mean price of new, unworn shoes are selling for on StockX. This data was used with the retail price data to determine whether or not a shoe has been, on average, selling for a profit. I used Twitter’s API to retrieve links to different shoes on StockX along with retrieving the number of favorites and retweets each of those links had. These metrics were used to account for ‘hype’ of the shoe, with shoes traditionally being more profitable the larger the hype surrounding them. After preprocessing the data, I trained the model using a randomized 80% of the data. On average, the model had about a 65-70% accuracy range when tested with the remaining 20% of the data. Once the model was optimized, I saved it and uploaded it to a web application that took in user input for the five feature variables, tested the datapoint using the model, and outputted the confidence in whether or not the shoe would generate a profit.
From a technical perspective, I used Python for the whole project, while also using HTML/CSS for the front-end of the application. As for key packages, I used Keras, an open source neural network library to build the model; data preprocessing was done using sklearn’s various subpackages. All charts and graphs were done using data visualization libraries matplotlib and seaborn. These charts provided insight as to what the final dataset looked like. They showed how the brand distribution is relatively close to what it should be, while the gender distribution was heavily skewed. Future work on this project would involve expanding the dataset, automating the entirety of the data retrieval process, and finally deploying the project on the cloud for users everywhere to use the application.
ContributorsShah, Shail (Author) / Meuth, Ryan (Thesis director) / Nakamura, Mutsumi (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2019-05