Core Concepts
생명의학 연구에 사용되는 소프트웨어 패키지들은 복잡한 의존성 네트워크를 형성하고 있으며, 이 중 일부 핵심 패키지들은 사용자에게 잘 알려지지 않은 채 중요한 역할을 하고 있다.
Abstract
이 연구는 생명의학 논문에서 언급된 오픈 소스 소프트웨어 패키지들의 의존성 관계를 분석하였다. 주요 내용은 다음과 같다:
생명의학 논문에서 언급된 소프트웨어 패키지들을 PyPI, CRAN, Bioconductor 등 3개 생태계에서 수집하고 이들의 의존성 관계를 네트워크로 구축하였다.
네트워크 중심성 지표인 Katz 중심성을 활용하여 핵심 패키지를 식별하였다.
대부분의 패키지는 사용 빈도와 중심성이 낮은 "다수" 영역에 속하지만, 일부 "네브래스카" 패키지들은 사용 빈도는 낮지만 중심성이 높아 중요한 역할을 하고 있음을 확인하였다.
생명의학 소프트웨어 의존성 네트워크에서는 순환 구조가 발견되지 않아, 일반 소프트웨어 생태계에 비해 더 견고한 구조를 가지고 있음을 시사한다.
Stats
생명의학 논문에서 가장 많이 언급된 소프트웨어 패키지는 CRAN의 ggplot2, PyPI의 tophat, Bioconductor의 limma 등이다.
전체 소프트웨어 패키지 중 약 10%가 의존성 순환 구조에 포함되어 있다.
생명의학 논문에서 언급된 소프트웨어 패키지와 그 의존성 네트워크에서는 순환 구조가 발견되지 않았다.
Quotes
"모든 현대 인프라는 2003년부터 네브래스카의 어떤 무명의 사람이 무보수로 유지해온 프로젝트에 의존하고 있다."
"이러한 중요한 소프트웨어 조각들은 알려지지 않아 그들이 받아야 할 인정과 공헌을 받지 못하고 있다."