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

Software Engineering Commons™

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

Faculty Publications

Discipline
Institution
Keyword
Publication Year

Articles 1 - 19 of 19

Full-Text Articles in Software Engineering

Better Digital Contracts With Prosocial Friction-In-Design, Brett Frischmann, Moshe Y. Vardi Oct 2025

Better Digital Contracts With Prosocial Friction-In-Design, Brett Frischmann, Moshe Y. Vardi

Faculty Publications

Contract law is supposed to enable people to reach genuine agreements and cooperate. If this ideal was ever a reality, the rise of mass market contracts and boil­erplate rendered it pure fiction. Modern consumer contracts are incomprehensible to most people. No one reads them anyway.

Digital contracting involves design features that amplify traditional boilerplate harms and create others. For example, digital contracting is too cheap; low marginal costs lead to overexpansion in scale and scope. To make matters worse, the loss of autonomy from repeat engagement with digital contracting systems is pernicious. People become increasingly predictable and programmable as digital …


Deconstructing The Software Factory: A Practical Application Of Interorganizational Network Analysis, Zachary O. Ryan, Mark Reith, Clay Koschnick Oct 2023

Deconstructing The Software Factory: A Practical Application Of Interorganizational Network Analysis, Zachary O. Ryan, Mark Reith, Clay Koschnick

Faculty Publications

Over the past 5 years, the number of DoD software organizations that employ nontraditional organizational structures has increased. These organizations, commonly referred to as software factories, often employ the network-based organizational structures found within high-technology industries. This article details ways in which network analysis techniques can be used to create a big picture view of these nontraditional organizations. Drawing on methodologies employed by network researchers, the authors develop and present an interorganizational analysis process that highlights a program's social and economic structures. Following the case history approach, they demonstrate the applicability of this approach by analyzing an emergent DoD software …


Evaluating A Large Language Model’S Ability To Solve Programming Exercises From An Introductory Bioinformatics Course, Stephen R. Piccolo, Paul Denny, Andrew Luxton-Reilly, Samuel H. Payne, Perry G. Ridge Sep 2023

Evaluating A Large Language Model’S Ability To Solve Programming Exercises From An Introductory Bioinformatics Course, Stephen R. Piccolo, Paul Denny, Andrew Luxton-Reilly, Samuel H. Payne, Perry G. Ridge

Faculty Publications

Life scientists frequently write computer code when doing research. Computer programming can aid researchers in performing tasks that are not supported by existing tools. Programming can also help researchers to implement analytical logic in a way that documents their steps and thus enables others to repeat those steps. Many educational resources are available to teach computer programming, but this skill remains challenging for many researchers and students to master. Artificial-intelligence tools like OpenAI’s ChatGPT are able to interpret human-language requests to generate code. Accordingly, we evaluated the extent to which this technology might be used to perform programming tasks described …


The Characteristics Of Successful Military It Projects: A Cross-Country Empirical Study, Helene Berg, Jonathan D. Ritschel Jul 2023

The Characteristics Of Successful Military It Projects: A Cross-Country Empirical Study, Helene Berg, Jonathan D. Ritschel

Faculty Publications

In the armed forces, successful digitalization is crucial to ensure effective operations. Much of the existing literature on project factors during the planning and execution phases of public IT projects do not focus specifically on military sector projects. Therefore, the paper aims to provide empirical insights into the characteristics of successful military IT projects. Data from such projects in NATO countries and agencies were collected through interviews and project documents. The findings relating to the main variable of interest, “delivery of client benefit,” supported previous findings on IT project performance. Medium-sized projects performed better than small and large projects, and …


Accelerating A Software Defined Satnav Receiver Using Multiple Parallel Processing Schemes, Logan Reich, Sanjeev Gunawardena, Michael Braasch Jan 2023

Accelerating A Software Defined Satnav Receiver Using Multiple Parallel Processing Schemes, Logan Reich, Sanjeev Gunawardena, Michael Braasch

Faculty Publications

Excerpt: Satnav SDRs present many benefits in terms of flexibility and configurability. However, due to the high bandwidth signals involved in satnav SDR processing, the software must be highly optimized for the host platform in order to achieve acceptable runtimes. Modules such as sample decoding, carrier replica generation, carrier wipeoff, and correlation are computationally intensive components that benefit from accelerations.


Agile Software Development: Creating A Cost Of Delay Framework For Air Force Software Factories, J. Goljan, Jonathan D. Ritschel, Scott Drylie, Edward D. White Jan 2021

Agile Software Development: Creating A Cost Of Delay Framework For Air Force Software Factories, J. Goljan, Jonathan D. Ritschel, Scott Drylie, Edward D. White

Faculty Publications

The Air Force software development environment is experiencing a paradigm shift. The 2019 Defense Innovation Board concluded that speed and cycle time must become the most important software metrics if the US military is to maintain its advantage over adversaries.1 This article proposes utilizing a cost-o­f-d­elay (CoD) framework to prioritize projects toward optimizing readiness. Cost-­of-d­elay is defined as the economic impact resulting from a delaying product delivery or, said another way, opportunity cost. In principle, CoD assesses the negative impacts resulting from changes to the priority of a project.


Using Taint Analysis And Reinforcement Learning (Tarl) To Repair Autonomous Robot Software, Damian Lyons, Saba Zahra May 2020

Using Taint Analysis And Reinforcement Learning (Tarl) To Repair Autonomous Robot Software, Damian Lyons, Saba Zahra

Faculty Publications

It is important to be able to establish formal performance bounds for autonomous systems. However, formal verification techniques require a model of the environment in which the system operates; a challenge for autonomous systems, especially those expected to operate over longer timescales. This paper describes work in progress to automate the monitor and repair of ROS-based autonomous robot software written for an a-priori partially known and possibly incorrect environment model. A taint analysis method is used to automatically extract the data-flow sequence from input topic to publish topic, and instrument that code. A unique reinforcement learning approximation of MDP utility …


Metrics To Meet Security & Privacy Requirements With Agile Software Development Methods In A Regulated Environment, Torrey J. Wagner, Thomas C. Ford Feb 2020

Metrics To Meet Security & Privacy Requirements With Agile Software Development Methods In A Regulated Environment, Torrey J. Wagner, Thomas C. Ford

Faculty Publications

This work examines metrics that can be used to measure the ability of agile software development methods to meet security and privacy requirements of communications applications. Many implementations of communication protocols, including those in vehicular networks, occur within regulated environments where agile development methods are traditionally discouraged. We propose a framework and metrics to measure adherence to security, quality and software effectiveness regulations if developers desire the cost and schedule benefits of agile methods. After providing an overview of specific challenges that a regulated environment imposes on communications software development, we proceed to examine the 12 agile principles and how …


Ion Software-Defined Radio Metadata Standard Final Report, Sanjeev Gunawardena, Alexander Rugamer, Muhammad Subhan Hameed, Markel Arizabaleta, Thomas Pany, Javier Arribas Sep 2019

Ion Software-Defined Radio Metadata Standard Final Report, Sanjeev Gunawardena, Alexander Rugamer, Muhammad Subhan Hameed, Markel Arizabaleta, Thomas Pany, Javier Arribas

Faculty Publications

The ION GNSS SDR Metadata Standard describes the formatting and other essential PNT-related parameters of sampled data streams and files. This allows processors to seamlessly consume such data without the need to input these parameters manually. The technical development phase of the initial version of the standard has now been deemed complete and is currently undergoing the last remaining procedural steps towards adoption as a formal standard by the Institute of Navigation. This paper reports on the activities of the working group since September 2018 and summarizes the final products of the standard. It also reports on examples of early …


Towards Lakosian Multilingual Software Design Principles, Damian Lyons, Saba Zahra, Thomas Marshall Jul 2019

Towards Lakosian Multilingual Software Design Principles, Damian Lyons, Saba Zahra, Thomas Marshall

Faculty Publications

Large software systems often comprise programs written in different programming languages. In the case when cross-language interoperability is accomplished with a Foreign Function Interface (FFI), for example pybind11, Boost.Python, Emscripten, PyV8, or JNI, among many others, common software engineering tools, such as call-graph analysis, are obstructed by the opacity of the FFI. This complicates debugging and fosters potential inefficiency and security problems. One contributing issue is that there is little rigorous software design advice for multilingual software. In this paper, we present our progress towards a more rigorous design approach to multilingual software. The approach is based on the existing …


Developmental Test And Requirements Best Practices Of Successful Information Systems Efforts Using Agile Methods, Jeremy D. Kramer, Torrey J. Wagner Jan 2019

Developmental Test And Requirements Best Practices Of Successful Information Systems Efforts Using Agile Methods, Jeremy D. Kramer, Torrey J. Wagner

Faculty Publications

This article provides insights into the current state of developmental testing (DT) and requirements management in Department of Defense information systems employing Agile development. The authors describe the study methodology and provide an overview of Agile development and testing. Insights are described for requirements, detailed planning, test execution, and reporting. This work articulates best practices related to DT and requirements management strategies for programs employing modernized Software Development Life Cycle practices.


Lightweight Call-Graph Construction For Multilingual Software Analysis, Anne-Marie Bogar, Damian Lyons, David Baird Jul 2018

Lightweight Call-Graph Construction For Multilingual Software Analysis, Anne-Marie Bogar, Damian Lyons, David Baird

Faculty Publications

Analysis of multilingual codebases is a topic of increasing importance. In prior work, we have proposed the MLSA (MultiLingual Software Analysis) architecture, an approach to the lightweight analysis of multilingual codebases, and have shown how it can be used to address the challenge of constructing a single call graph from multilingual software with mutual calls. This paper addresses the challenge of constructing monolingual call graphs in a lightweight manner (consistent with the objective of MLSA) which nonetheless yields sufficient information for resolving language interoperability calls. A novel approach is proposed which leverages information from …


Lightweight Multilingual Software Analysis, Damian Lyons, Anne Marie Bogar, David Baird Jul 2018

Lightweight Multilingual Software Analysis, Damian Lyons, Anne Marie Bogar, David Baird

Faculty Publications

Large software systems can often be multilingual – that is, software systems are written in more than one language. However, many popular software engineering tools are monolingual by nature. Nonetheless, companies are faced with the need to manage their large, multilingual codebases to address issues with security, efficiency, and quality metrics. This paper presents a novel lightweight approach to multilingual software analysis – MLSA. The approach is modular and focused on efficient static analysis computation for large codebases. One topic is addressed in detail – the generation of multilingual call graphs to identify language boundary problems in multilingual code. The …


Lightweight Multilingual Software Analysis, Damian Lyons, Anne Marie Bogar, David Baird Jul 2018

Lightweight Multilingual Software Analysis, Damian Lyons, Anne Marie Bogar, David Baird

Faculty Publications

Developer preferences, language capabilities and the persistence of older languages contribute to the trend that large software codebases are often multilingual – that is, written in more than one computer language. While developers can leverage monolingual software development tools to build software components, companies are faced with the problem of managing the resultant large, multilingual codebases to address issues with security, efficiency, and quality metrics. The key challenge is to address the opaque nature of the language interoperability interface: one language calling procedures in a second (which may call a third, or even back to the first), resulting in a …


Automated Software Testing In The Dod: Current Practices And Opportunities For Improvement, Darryl K. Ahner, James Wisnowski, James R. Simpson Sep 2017

Automated Software Testing In The Dod: Current Practices And Opportunities For Improvement, Darryl K. Ahner, James Wisnowski, James R. Simpson

Faculty Publications

The concept of automating the testing of software-intensive systems has been around for decades, but the practice of automating testing is scarce in many industries, especially in the government defense sector. A one-year project initiated by the Office of the Secretary of Defense (OSD), Scientific Test and Analysis Techniques Center of Excellence (STAT COE) and sponsored by Navy OPNAV N94 set out to:

  • study the degree to which the Department of Defense (DoD) has adopted automated software testing (AST);
  • share the best software practices used by industry; and
  • develop and distribute an AST implementation guide intended for program management and …


Impact Of Reviewer Social Interaction On Online Consumer Review Fraud Detection, Kunal Goswami, Younghee Park, Chungsik Song Jan 2017

Impact Of Reviewer Social Interaction On Online Consumer Review Fraud Detection, Kunal Goswami, Younghee Park, Chungsik Song

Faculty Publications

Background Online consumer reviews have become a baseline for new consumers to try out a business or a new product. The reviews provide a quick look into the application and experience of the business/product and market it to new customers. However, some businesses or reviewers use these reviews to spread fake information about the business/product. The fake information can be used to promote a relatively average product/business or can be used to malign their competition. This activity is known as reviewer fraud or opinion spam. The paper proposes a feature set, capturing the user social interaction behavior to identify fraud. …


A Trust-Aware System For Personalized User Recommendations In Social Networks, Magdalini Eirinaki, Malamati Louta, Iraklis Varlamis Apr 2014

A Trust-Aware System For Personalized User Recommendations In Social Networks, Magdalini Eirinaki, Malamati Louta, Iraklis Varlamis

Faculty Publications

Social network analysis has recently gained a lot of interest because of the advent and the increasing popularity of social media, such as blogs, social networking applications, microblogging, or customer review sites. In this environment, trust is becoming an essential quality among user interactions and the recommendation for useful content and trustful users is crucial for all the members of the network. In this paper, we introduce a framework for handling trust in social networks, which is based on a reputation mechanism that captures the implicit and explicit connections between the network members, analyzes the semantics and dynamics of these …


Eliciting A Sensemaking Process From Verbal Protocols Of Reverse Engineers, Adam R. Bryant, Robert F. Mills, Gilbert L. Peterson, Michael R. Grimaila Aug 2012

Eliciting A Sensemaking Process From Verbal Protocols Of Reverse Engineers, Adam R. Bryant, Robert F. Mills, Gilbert L. Peterson, Michael R. Grimaila

Faculty Publications

A process of sensemaking in reverse engineering was elicited from verbal protocols of reverse engineers as they investigated the assembly code of executable programs. Four participants were observed during task performance and verbal protocols were collected and analyzed from two of the participants to determine their problem-solving states and characterize likely transitions between those states. From this analysis, a high-level process of sensemaking is described which represents hypothesis generation and information-seeking behaviors in reverse engineering within a framework of goal-directed planning. Future work in validation and application of the process is discussed.


Six Copyright Theories For The Protection Of Computer Object Programs, I. Trotter Hardy Oct 1984

Six Copyright Theories For The Protection Of Computer Object Programs, I. Trotter Hardy

Faculty Publications

No abstract provided.