Foundations of Software Engineering (FSE) 2024
Most modern software products incorporate open source components, which requires compliance with each
component's licenses. As noncompliance can lead to significant repercussions, organizations often seek advice
from legal practitioners to maintain license compliance, address licensing issues, and manage the risks of
noncompliance. While legal practitioners play a critical role in the process, little is known in the software
engineering community about their experiences within the open source license compliance ecosystem. To fill
this knowledge gap, a joint team of software engineering and legal researchers designed and conducted a survey
with 30 legal practitioners and related occupations and then held 16 follow-up interviews. We identified different
aspects of OSS license compliance from the perspective of legal practitioners, resulting in 14 key findings
in three main areas of interest: the general ecosystem of compliance, the specific compliance practices of legal
practitioners, and the challenges that legal practitioners face. We discuss the implications of our findings.
International Conference on Software Engineering (ICSE) 2024
Software Bills of Materials (SBOMs) have emerged as tools to facilitate the management
of software dependencies, vulnerabilities, licenses, and the supply chain.
Significant effort has been devoted to increasing SBOM awareness and developing
SBOM formats and tools. Despite this effort, recent studies have shown that SBOMs
are still an early technology not adequately adopted in practice yet, mainly due to
limited SBOM tooling and lack of industry consensus on SBOM content, tool usage,
and practical benefits. Expanding on previous research, this thesis reports a
comprehensive study that first investigates the current challenges stakeholders encounter
when creating and using SBOMs. The study surveyed 138 practitioners belonging to
five groups of stakeholders (practitioners familiar with SBOMs, members of critical
open source projects, AI/ML practitioners, experts of cyber-physical systems, and
legal professionals), using differentiated questionnaires. We interviewed eight survey
respondents to gather further insights about their experience. We identified fourteen
major challenges facing the creation and use of SBOMs, including those related to
the material included in SBOMs, deficiencies in SBOM tools, SBOM maintenance
and verification, and domain-specific challenges. We propose and discuss six actionable
solutions to the identified challenges and present the major avenues for future
research and development. We hope these solutions can be adopted by the community
to improve SBOM formats, tools, and adoption, and thus, enable the full
potential of SBOMs.
Washington and Lee Library - 2020
Video game maps can become dull with repeated play-throughs and handcrafting
a variety of maps can be a tedious and time consuming process. This is especially true for games
of the Metroidvania genre, games which focus on exploration. If there was a way to adequately automate
the creation of levels, then in theory, the games would have enhanced replay value. Previous researchers
have used artificial intelligence and genetic programming techniques to engineer new mappings. But, is it
possible to procedurally generate levels using graph theory and without using training examples or simply
placing pre-built assets? In this paper we propose a system to model Metroidvania maps as directional graph
structures. The system uses an algorithm that crafts graphs meeting all of the constraints necessary for level
generation. These generated graphs are verified as winnable with the keys assigned to appropriate nodes. Once
the graph has been created and validated it is rendered into a 2-D level using pygame. During the rendering
process, the game demo constructs the walls and platforms essential to the game. We were able to procedurally
generate Metroidvania levels of varying sizes and gating techniques using this sequence of steps.