Matching Items (42)
Filtering by

Clear all filters

156331-Thumbnail Image.png
Description
Graph theory is a critical component of computer science and software engineering, with algorithms concerning graph traversal and comprehension powering much of the largest problems in both industry and research. Engineers and researchers often have an accurate view of their target graph, however they struggle to implement a correct, and

Graph theory is a critical component of computer science and software engineering, with algorithms concerning graph traversal and comprehension powering much of the largest problems in both industry and research. Engineers and researchers often have an accurate view of their target graph, however they struggle to implement a correct, and efficient, search over that graph.

To facilitate rapid, correct, efficient, and intuitive development of graph based solutions we propose a new programming language construct - the search statement. Given a supra-root node, a procedure which determines the children of a given parent node, and optional definitions of the fail-fast acceptance or rejection of a solution, the search statement can conduct a search over any graph or network. Structurally, this statement is modelled after the common switch statement and is put into a largely imperative/procedural context to allow for immediate and intuitive development by most programmers. The Go programming language has been used as a foundation and proof-of-concept of the search statement. A Go compiler is provided which implements this construct.
ContributorsHenderson, Christopher (Author) / Bansal, Ajay (Thesis advisor) / Lindquist, Timothy (Committee member) / Acuna, Ruben (Committee member) / Arizona State University (Publisher)
Created2018
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
136179-Thumbnail Image.png
Description
CourseKarma is a web application that engages students in their own learning through peer-driven social networking. The influence of technology on students is advancing faster than the school system, and a major gap still lingers between traditional learning techniques and the fast-paced, online culture of today's generation. CourseKarma enriches the

CourseKarma is a web application that engages students in their own learning through peer-driven social networking. The influence of technology on students is advancing faster than the school system, and a major gap still lingers between traditional learning techniques and the fast-paced, online culture of today's generation. CourseKarma enriches the educational experience of today's student by creating a space for collaborative inquiry as well as illuminating the opportunities of self and group learning through online collaboration. The features of CourseKarma foster this student-driven environment. The main focus is on a news-feed and Question and Answer component that provides a space for students to share instant updates as well ask and answer questions of the community. The community can be as broad as the entire ASU student body, as specific as students in BIO155, or even more targeted via specific subjects and or skills. CourseKarma also provides reputation points, which are the sum of all of their votes received, identifying the individual's level and or ranking in each subject or class. This not only gamifies the usual day-to-day learning environment, but it also provides an in-depth analysis of the individual's skills, accomplishments, and knowledge. The community is also able to input and utilize course and professor descriptions/feedback. This will be in a review format providing the students an opportunity to share and give feedback on their experience as well as providing incoming students the opportunity to be prepared for their future classes. All of the student's contributions and collaborative activity within CourseKarma is displayed on their personal profile creating a timeline of their academic achievements. The application was created using modern web programming technologies such as AngualrJS, Javascript, jQuery, Bootstrap, HTML5, CSS3 for the styling and front-end development, Mustache.js for client side templating, and Firebase AngularFire as the back-end and NoSQL database. Other technologies such as Pivitol Tracker was used for project management and user story generation, as well as, Github for version control management and repository creation. Object-oreinted programming concepts were heavily present in the creation of the various data structures, as well as, a voting algorithm was used to manage voting of specific posts. Down the road, CourseKarma could even be a necessary add-on within LinkedIn or Facebook that provides a quick yet extremely in-depth look at an individuals' education, skills, and potential to learn \u2014 based all on their actual contribution to their academic community rather than just a text they wrote up.
ContributorsCho, Sungjae (Author) / Mayron, Liam (Thesis director) / Lobock, Alan (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor) / School of Arts, Media and Engineering (Contributor)
Created2015-05
136360-Thumbnail Image.png
Description
The modern web presents an opportunity for educators and researchers to create tools that are highly accessible. Because of the near-ubiquity of modern web browsers, developers who hope to create educational and analytical tools can reach a large au- dience by creating web applications. Using JavaScript, HTML, and other modern

The modern web presents an opportunity for educators and researchers to create tools that are highly accessible. Because of the near-ubiquity of modern web browsers, developers who hope to create educational and analytical tools can reach a large au- dience by creating web applications. Using JavaScript, HTML, and other modern web development technologies, Genie was developed as a simulator to help educators in biology, genetics, and evolution classrooms teach their students about population genetics. Because Genie was designed for the modern web, it is highly accessible to both educators and students, who can access the web application using any modern web browser on virtually any device. Genie demonstrates the efficacy of web devel- opment technologies for demonstrating and simulating complex processes, and it will be a unique educational tool for educators who teach population genetics.
ContributorsRoos, Benjamin Hirsch (Author) / Cartwright, Reed (Thesis director) / Wilson Sayres, Melissa (Committee member) / Mayron, Liam (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2015-05
133194-Thumbnail Image.png
Description
Even in the largest public university in the country, computer related degrees such as Computer Science, Computer Systems Engineering and Software Engineering have low enrollment rates and high dropout rates. This is interesting because the careers that require these degrees are marketed as the highest paying and most powerful. The

Even in the largest public university in the country, computer related degrees such as Computer Science, Computer Systems Engineering and Software Engineering have low enrollment rates and high dropout rates. This is interesting because the careers that require these degrees are marketed as the highest paying and most powerful. The goal of this project was to find out what the students of Arizona State University (ASU) thought about these majors and why they did or did not pick them. A total of 206 students were surveyed from a variety of sources including upper level classes, lower level classes and Barrett, the Honors College. Survey questions asked why the students picked their current major, if they had a previous major and why did they switch, and if the students had considered one of the three computer related degrees. Almost all questions were open ended, meaning the students did not have multiple choice answers and instead could write as short or as long of a response as needed. Responses were grouped based on a set of initial hypotheses and any emerging trends. These groups were displayed in several different bar graphs broken down by gender, grade level and category of student (stayed in a computer related degree, left one, joined one or picked a non-computer related degree). Trends included students of all grade levels picking their major because they were passionate or interested in the subject. This may suggest that college students are set in their path and will not switch majors easily. Students also reported seeing computer related degrees as too difficult and intimidating. However, given the low (when compared to all of ASU) number of students surveyed, the conclusions and trends given cannot be representative of ASU as a whole. Rather, they are just representative of this sample population. Further work on this study, if time permitted, would be to try to survey more students and question some of the trends established to find more specific answers.
ContributorsMeza, Edward L (Author) / Meuth, Ryan (Thesis director) / Miller, Phillip (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2018-12
137392-Thumbnail Image.png
Description
Despite the advancement of online tools for activities related to the core experience of taking classes on a college campus, there has been a relatively small amount of research into implementing online tools for ancillary academic resources (e.g. tutoring centers, review sessions, etc.). Previous work and a study conducted for

Despite the advancement of online tools for activities related to the core experience of taking classes on a college campus, there has been a relatively small amount of research into implementing online tools for ancillary academic resources (e.g. tutoring centers, review sessions, etc.). Previous work and a study conducted for this paper indicates that there is value in creating these online tools but that there is value in maintaining an in-person component to these services. Based on this, a system which provides personalized, easily-accessible, simple access to these services is proposed. Designs for user-centered online-tools that provides access to and interaction with tutoring centers and review sessions are described and prototypes are developed to demonstrate the application of design principles for online tools for academic services.
ContributorsBerk, Nicholas Robert (Author) / Balasooriya, Janaka (Thesis director) / Eaton, John (Committee member) / Walker, Erin (Committee member) / Barrett, The Honors College (Contributor) / Computer Science and Engineering Program (Contributor)
Created2013-12
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
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 meant to introduce problem solving skills and basic programming constructs

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.
ContributorsRodewald, Spencer (Co-author, Co-author) / Patel, Ankit (Co-author) / Chen, Yinong (Thesis director) / Chattin, Linda (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2016-12
134533-Thumbnail Image.png
Description
Learning to program is no easy task, and many students experience their first programming during their university education. Unfortunately, programming classes have a large number of students enrolled, so it is nearly impossible for professors to associate with the students at an individual level and provide the personal attention each

Learning to program is no easy task, and many students experience their first programming during their university education. Unfortunately, programming classes have a large number of students enrolled, so it is nearly impossible for professors to associate with the students at an individual level and provide the personal attention each student needs. This project aims to provide professors with a tool to quickly respond to the current understanding of the students. This web-based application gives professors the control to quickly ask Java programming questions, and the ability to see the aggregate data on how many of the students have successfully completed the assigned questions. With this system, the students are provided with extra programming practice in a controlled environment, and if there is an error in their program, the system will provide feedback describing what the error means and what steps the student can take to fix it.
ContributorsVillela, Daniel Linus (Author) / Kobayashi, Yoshihiro (Thesis director) / Nelson, Brian (Committee member) / Hsiao, Sharon (Committee member) / Computing and Informatics Program (Contributor) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2017-05
133334-Thumbnail Image.png
Description
Engineering an object means engineering the process that creates the object. Today, software can make the task of tracking these processes robust and straightforward. When engineering requirements are strict and strenuous, software custom-built for such processes can prove essential. The work for this project was developing ICDB, an inventory control

Engineering an object means engineering the process that creates the object. Today, software can make the task of tracking these processes robust and straightforward. When engineering requirements are strict and strenuous, software custom-built for such processes can prove essential. The work for this project was developing ICDB, an inventory control and build management system created for spacecraft engineers at ASU to record each step of their engineering processes. In-house development means ICDB is more precisely designed around its users' functionality and cost requirements than most off-the-shelf commercial offerings. By placing a complex relational database behind an intuitive web application, ICDB enables organizations and their users to create and store parts libraries, assembly designs, purchasing and location records for inventory items, and more.
ContributorsNoss, Karl Friederich (Author) / Davulcu, Hasan (Thesis director) / Rios, Ken (Committee member) / Computer Science and Engineering Program (Contributor) / Barrett, The Honors College (Contributor)
Created2018-05