Carnegie Mellon University

We live and work in complex, adaptive and evolving socio-technical systems. This expansive and interdependent web of technology and social interaction gives rise to a number of complex challenges from both technical and social perspectives. A simple example can be taken from social media: How do social networking platforms, like Facebook and Twitter, change in response to the ways in which users interact with them? In turn, how are social structures shaped through the technical structure of the platforms themselves?

The opportunities to examine the relationships between technology and the social consequences to which it gives rise is vast. And our research in Complex Socio-Technical Systems brings together a renowned set of cross-disciplinary faculty to address these questions using tools and methods drawn from network science, social network analysis, big data analytics, statistical analysis, and the social sciences.

Whether it is identifying potential coordination crises in software development projects, predicting the social impact of evolving technologies, or suggesting new product directions, our work brings greater understanding to the nebulous and nuanced relationship between technology and user.

 

Software is in everything. Software shapes the digital enviornment, which shapes how we find information, conduct commerce, share and socialize, do our work, and amuse ourselves.

Social cybersecurity: an emerging science

This paper introduces the emerging field of social cybersecurity, which addresses the challenges of combating online influence operations that threaten civil discourse and societal cohesion. By employing computational social science methods, including social network analysis, machine learning, and dynamic network analytics, researchers in this field can identify, counter, and measure the impact of online disinformation campaigns. The paper presents case studies that demonstrate the complexities of social manipulation, such as coordinated misinformation efforts and bot-driven campaigns. This foundational work in social cybersecurity underscores the importance of developing resilient digital infrastructures and informs ongoing research to protect democratic processes and public trust in an interconnected world.

Learn more

Adding Sparkle to Social Coding: An Empirical Study of Repository Badges in the npm Ecosystem

In fast-paced, reuse-heavy, and distributed software development, the transparency provided by social coding platforms like GitHub is essential for decision-making. Developers infer the quality of projects using visible cues, known as signals, from personal profiles and repository pages. This paper reports on a large-scale, mixed-methods empirical study of npm packages to explore the emerging phenomenon of repository badges, which maintainers use to signal underlying qualities about their projects. We investigate which qualities maintainers intend to signal and how well badges correlate with those qualities. After surveying developers, mining 294,941 repositories, and applying statistical modeling and time-series analyses, we find that non-trivial badges, which display build status, test coverage, and up-to-dateness of dependencies, are generally reliable signals that correlate with more tests, better pull requests, and fresher dependencies. Displaying such badges aligns with best practices, though the effects may not always persist.

Learn more

When and how to make breaking changes: Policies and practices in 18 open source software ecosystems

Open source software projects often rely on package management systems that help projects discover, incorporate, and maintain dependencies on other packages, maintained by other people. Such systems save a great deal of effort over adhoc ways of advertising, packaging, and transmitting useful libraries, but coordination among project teams is still needed when one package makes a breaking change affecting other packages. Ecosystems differ in their approaches to breaking changes, and there is no general theory to explain the relationships between features, behavioral norms, ecosystem outcomes, and motivating values. We address this through two empirical studies. In an interview case study we contrast Eclipse, NPM, and CRAN, demonstrating that these different norms for coordination of breaking changes shift the costs of using and maintaining the software among stakeholders, appropriate to each ecosystem’s mission. In a second study, we combine a survey, repository mining, and document analysis to broaden and systematize these observations across 18 ecosystems. We find that all ecosystems share values such as stability and compatibility, but differ in other values. Ecosystems’ practices often support their espoused values, but in surprisingly diverse ways. The data provides counterevidence against easy generalizations about why ecosystem communities do what they do.

Learn more

Community Code Engagements: Summer of Code & Hackathons for Community Building in Scientific Software

Community code engagements, such as Google Summer of Code (GSoC) and hackathons, are employed by scientific communities to develop new software features and foster community building. However, empirical evidence of their effectiveness is limited. This paper presents a qualitative study examining these engagements to understand the range of outcomes they produce and the practices that contribute to those outcomes. In GSoC, the expertise and vision of core community members drive project selection, and intensive mentoring builds strong relationships. Most GSoC projects result in stable software features. In hackathons, agenda-setting reveals community priorities, and social events among participants create weaker connections. Hackathons commonly produce prototypes instead of fully developed tools. The paper explores themes and tradeoffs that could guide the design of future community code engagements for more impactful results.

Learn more

Trust in Collaborative Automation in High Stakes Software Engineering Work: A Case Study at NASA

This paper investigates factors influencing software engineers' trust in an autonomous software tool used at NASA’s Jet Propulsion Laboratory for high-stakes space missions. Through a ten-week ethnographic case study, the researchers identify four key factors shaping trust: transparency, usability, social context, and organizational processes. By framing trust as a quality of the collaborative relationship between engineers and the tool, rather than trust in the tool alone, the study provides valuable insights into designing and deploying automation in critical environments. This research offers practical guidance for enhancing trust in autonomous systems within complex, high-stakes workflows.

Learn more

Missing Pieces: How Framing Uncertainty Impacts Longitudinal Trust in AI Decision Aids--A Gig Driver Case Study

This study examines how different framings of uncertainty affect gig drivers’ long-term trust in AI-driven decision aids, using a gig driving recommendation tool as a case study. Through a mixed-methods, longitudinal study, the authors tested varied presentations of income estimates to assess how drivers’ trust and reliance evolved. Findings reveal that trust is sensitive to factors like the perceived accuracy of income estimates and the granularity of predictions. The study provides insights into designing AI tools that support sustainable trust, particularly in uncertain, high-stakes environments like gig driving.

Learn more