Open Access. Powered by Scholars. Published by Universities.®

Physical Sciences and Mathematics Commons

Open Access. Powered by Scholars. Published by Universities.®

Articles 1 - 11 of 11

Full-Text Articles in Physical Sciences and Mathematics

Watching The Watchmen: An Ethical Evaluation Of The Behavior Of Modern Software Applications, Joshua Graves Dec 2022

Watching The Watchmen: An Ethical Evaluation Of The Behavior Of Modern Software Applications, Joshua Graves

University Honors Program Senior Projects

Software has become a ubiquitous element of modern life around the world. An unprecedented amount of power is bestowed upon the companies that own and operate that software. The obvious question arises: “Do these companies operate in an ethical manner regarding their software?” We derive an ethical code via synthesizing the ethical codes of both the IEEE and the ACM, disregarding principles that cannot be examined by an outside observer. We utilize this ethical code to examine five leaders in the software industry, namely Facebook, Google, Microsoft, Twitter, and Amazon. For each company, we examine four incidents in which they …


How Developers Engineer Test Cases: An Observational Study, Maurício Aniche, Christoph Treude, Andy Zaidman Dec 2022

How Developers Engineer Test Cases: An Observational Study, Maurício Aniche, Christoph Treude, Andy Zaidman

Research Collection School Of Computing and Information Systems

One of the main challenges that developers face when testing their systems lies in engineering test cases that are good enough to reveal bugs. And while our body of knowledge on software testing and automated test case generation is already quite significant, in practice, developers are still the ones responsible for engineering test cases manually. Therefore, understanding the developers’ thought- and decision-making processes while engineering test cases is a fundamental step in making developers better at testing software. In this paper, we observe 13 developers thinking-aloud while testing different real-world open-source methods, and use these observations to explain how developers …


Challenges For Inclusion In Software Engineering: The Case Of The Emerging Papua New Guinean Society, Raula Kula, Christoph Treude, Hideaki Hata, Sebastian Baltes, Igor Steinmacher, Marco Gerosa, Winifred Kula Amini Jun 2022

Challenges For Inclusion In Software Engineering: The Case Of The Emerging Papua New Guinean Society, Raula Kula, Christoph Treude, Hideaki Hata, Sebastian Baltes, Igor Steinmacher, Marco Gerosa, Winifred Kula Amini

Research Collection School Of Computing and Information Systems

Software plays a central role in modern societies, with its high economic value and potential for advancing societal change. In this paper, we characterise challenges and opportunities for a country progressing towards entering the global software industry, focusing on Papua New Guinea (PNG). By hosting a Software Engineering workshop, we conducted a qualitative study by recording talks (n=3), employing a questionnaire (n=52), and administering an in-depth focus group session with local actors (n=5). Based on a thematic analysis, we identified challenges as barriers and opportunities for the PNG software engineering community. We also discuss the state of practices and how …


Rasm: Compiling Racket To Webassembly, Grant Matejka Jun 2022

Rasm: Compiling Racket To Webassembly, Grant Matejka

Master's Theses

WebAssembly is an instruction set designed for a stack based virtual machine, with an emphasis on speed, portability and security. As the use cases for WebAssembly grow, so does the desire to target WebAssembly in compilation. In this thesis we present Rasm, a Racket to WebAssembly compiler that compiles a select subset of the top forms of the Racket programming language to WebAssembly. We also present our early findings in our work towards adding a WebAssembly backend to the Chez Scheme compiler that is the backend of Racket. We address initial concerns and roadblocks in adopting a WebAssembly backend and …


Analysis Of The Effectiveness Of Different Techniques For Creating Cross-Platform Compatible Software, Michael Westberg May 2022

Analysis Of The Effectiveness Of Different Techniques For Creating Cross-Platform Compatible Software, Michael Westberg

Honors Theses

Creating cross-platform compatible software is a major issue in a world where users utilize a variety of devices and platforms. To ensure that a piece of software is accessible to as many users as possible, software must be cross-platform compatible. There are four main approaches that can be done to achieve this state of being cross-platform compatible, each with both advantages and disadvantages. These methods are: creating the software as separate binaries, using a scripting language with a cross-platform interpreter, compiling to an intermediate language, and creating the software as a web application. This paper will discuss how each of …


Interactive Sc Historical Map Application By Capistonsker, Joseph Cammarata, James Davis, Matt Duggan, Lauren Hodges, Ian Urton Apr 2022

Interactive Sc Historical Map Application By Capistonsker, Joseph Cammarata, James Davis, Matt Duggan, Lauren Hodges, Ian Urton

Senior Theses

The Interactive SC Historical Map Application by CapiStonsker, hereby known as CapiStonsker, is an android application that creates a comprehensive user experience for individuals and groups to engage with their local Columbia history. Users of this application can discover local historical landmarks by scrolling through the interactive map on the home screen, searching for markers by name using the search bar, filtering by county, or scrolling through a list of markers sorted by proximity. If a marker catches a user's attention, he or she can tap it to learn more information, get directions, or save it for later by adding …


Model-Based Testing Of Smart Home Systems Using Efsm, Cefsm, And Fsmapp, Afnan Mohammed Albahli Jan 2022

Model-Based Testing Of Smart Home Systems Using Efsm, Cefsm, And Fsmapp, Afnan Mohammed Albahli

Electronic Theses and Dissertations

Smart Home Systems (SHS) are some of the most popular Internet of Things (IoT) applications. In 2021, there were 52.22 million smart homes in the United States and they are expected to grow to 77.1 million in 2025 [71]. According to MediaPost [74], 69 percent of American households have at least one smart home device. The number of smart home systems poses a challenge for software testers to find the right approach to test these systems. This dissertation employs Extended Finite State Machines (EFSMs) [6, 24, 105], Communicating Extended Finite State Machines (EFSMs) [68] and FSMApp [10] to generate reusable …


Efficacy Of Reported Issue Times As A Means For Effort Estimation, Paul Phillip Maclean Jan 2022

Efficacy Of Reported Issue Times As A Means For Effort Estimation, Paul Phillip Maclean

Graduate Theses, Dissertations, and Problem Reports

Software effort is a measure of manpower dedicated to developing and maintaining and software. Effort estimation can help project managers monitor their software, teams, and timelines. Conversely, improper effort estimation can result in budget overruns, delays, lost contracts, and accumulated Technical Debt (TD). Issue Tracking Systems (ITS) have become mainstream project management tools, with over 65,000 companies using Jira alone. ITS are an untapped resource for issue resolution effort research. Related work investigates issue effort for specific issue types, usually Bugs or similar. They model their developer-documented issue resolution times using features from the issues themselves. This thesis explores a …


Estimating Efforts For Various Activities In Agile Software Development: An Empirical Study, Lan Cao Jan 2022

Estimating Efforts For Various Activities In Agile Software Development: An Empirical Study, Lan Cao

Information Technology & Decision Sciences Faculty Publications

Effort estimation is an important practice in agile software development. The agile community believes that developers’ estimates get more accurate over time due to the cumulative effect of learning from short and frequent feedback. However, there is no empirical evidence of an improvement in estimation accuracy over time, nor have prior studies examined effort estimation in different development activities, which are associated with substantial costs. This study fills the knowledge gap in the field of software estimation in agile software development by investigating estimations across time and different development activities based on data collected from a large agile project. This …


Just-In-Time Defect Identification And Localization: A Two-Phase Framework, Meng Yan, Xin Xia, Yuanrui Fan, Ahmed E. Hassan, David Lo, Shanping Li Jan 2022

Just-In-Time Defect Identification And Localization: A Two-Phase Framework, Meng Yan, Xin Xia, Yuanrui Fan, Ahmed E. Hassan, David Lo, Shanping Li

Research Collection School Of Computing and Information Systems

Defect localization aims to locate buggy program elements (e.g., buggy files, methods or lines of code) based on defect symptoms, e.g., bug reports or program spectrum. However, when we receive the defect symptoms, the defect has been exposed and negative impacts have been introduced. Thus, one challenging task is: whether we can locate buggy program prior to appearance of the defect symptom at an early time (e.g., when buggy program elements are being checked-in). We refer to this type of defect localization as “Just-In-Time (JIT) Defect localization”. Although many prior studies have proposed various JIT defect identification methods to identify …


Fourth-Dimensional Education In Virtual Reality, Jesse P. Hamlin-Navias Jan 2022

Fourth-Dimensional Education In Virtual Reality, Jesse P. Hamlin-Navias

Senior Projects Spring 2022

This project was driven by an interest in mathematics, visualization, and the budding field of virtual reality. The project aimed to create virtual reality software to allow users to interact and play with three-dimensional representations of four-dimensional objects. The chosen representation was a perspective projection. Much like three-dimensional shapes cast two-dimensional shadows, four-dimensional shapes cast three-dimensional shadows. Users of the software developed in this project could interact and experiment with these three-dimensional shadows using hand controlled inputs. The hypothesis put forward is that virtual reality is currently the best medium to teach three-dimensional and four-dimensional geometry.