소프트웨어 엔지니어는 코딩 외에도 정보를 교환하고 동료와 공동 작업하는 데 많은 시간을 씁니다. 소프트웨어 엔지니어링의 협업 작업은 통신 엔진, 이슈 트래커, 코드 검토 플랫폼과 같은 특수 도구에 점점 더 의존하고 있습니다.
JetBrains 지능형 공동 작업 도구 연구소는 소프트웨어 엔지니어링 및 기타 크리에이티브 산업의 공동 작업 프로세스에 대한 심층적인 이해를 확보하고 공동 작업 도구 지원에 대한 새로운 접근방식을 마련하기 위해 최선을 다하고 있습니다.
공동 개발 활동을 추적하면 개발 프로세스를 지원하는 데 사용할 수 있는 풍부한 데이터를 얻게 됩니다. 개발 내역에서 귀중한 정보를 얻기 위한 방법으로 추천 시스템, 전문 지식 모델링, 분석 엔진 및 질문-답변 기법을 포함하는 다양한 접근 방식이 이용됩니다.
저희는 코드 변경 분석 및 개발자 커뮤니케이션 내역을 기반으로 한 스마트 기능을 도입해 코드 검토 도구를 개선합니다.
저희는 대규모 메신저 작업 공간에서 지식 획득과 검색 기능을 지원하는 기술과 도구를 구축하는 일을 합니다. 여기에는 추천 시스템과 질문-답변 기법이 포함됩니다.
저희는 소프트웨어 엔지니어의 공동 작업에서 발생하는 문제를 체계적으로 조사하고 도구를 사용하여 이러한 문제를 해결할 수 있는 가능한 방법을 연구합니다. 이 프로세스는 연구를 위한 귀중한 정보를 제공합니다.
저희는 실제 소프트웨어 엔지니어링 도구와 환경에서 테스트 생성 및 충돌 재현을 위한 확립된 기술을 적용하고 이러한 작업에 대규모 언어 모델을 사용하는 방안을 조사합니다.
JetBrains는 당사는 물론 외부에서 일구어낸 흥미로운 결과를 발표하는 공개 세미나와 리딩 클럽 미팅을 개최합니다.
미팅 그룹에 가입하여 예정된 세션에 대한 정보를 받아보세요.
발표하고 싶으세요? Vladimir 에게 이메일을 보내세요.
ASE 2023, 룩셈부르크
버스 팩터(BF)는 프로젝트의 지식 분포를 추적하는 메트릭으로, 프로젝트 중단을 초래하는 이탈 엔지니어의 최소 수입니다. 버스 팩터를 계산하기 위한 여러 알고리즘이 있지만 Git 기반 공급업체에서 호스팅되는 프로젝트에 대한 버스 팩터를 쉽게 계산하고 결과를 편리하게 분석할 수 있는 도구는 몇 가지뿐입니다.
트리맵 시각화, 시뮬레이션 모드 및 차트 에디터를 통해 버스 팩터 메트릭을 계산, 내보내기 및 탐색할 수 있는 인터페이스와 API를 제공하는 웹 애플리케이션인 Bus Factor Explorer를 소개합니다. 이 웹 앱은 GitHub에서 호스팅되는 저장소를 지원하고 인터페이스에서 저장소를 검색하고 동시에 많은 저장소를 처리하는 기능을 제공합니다. 이 도구를 사용하면 VCS 기록을 분석하여 개발자 교체 시 작동이 중단될 위험이 있는 파일과 하위 시스템을 식별할 수 있습니다.
애플리케이션과 해당 소스 코드는 GitHub(https://github.com/JetBrains-Research/bus-factor-explorer)에서 일반에게 제공됩니다. 데모 영상은 YouTube https://youtu.be/uIoV79N14z8에서 시청할 수 있습니다.
EASE 2023, 핀란드 오울루
인기 있는 최신 코드 검토 도구(예: Gerrit 및 GitHub)는 코드 검토 시 파일을 알파벳순으로 정렬합니다. 오픈소스 프로젝트에 대한 이전 연구에 따르면 코드 검토에서 변경된 파일의 위치가 검토 프로세스에 영향을 미치는 것으로 나타났습니다. 이 결과에 따르면 순서가 낮은 파일은 다른 파일보다 검토 작업이 적게 투여될 수 있으므로 파일 내 결함이 발견되지 않을 가능성이 더 높습니다. 이 문서에서는 잘 알려진 산업 프로젝트인 IntelliJ IDEA의 코드 검토에서 파일 순서가 미치는 영향을 살펴봅니다. 먼저, 대규모 독점 소프트웨어 프로젝트에 대한 선행 연구 결과를 확인합니다. 그런 다음, 기본적인 알파벳 순서에 대한 대안으로, 코드 차이에 따라 변경된 파일을 정렬하는 방법을 살펴봅니다. 이로부터 얻은 결과는 이전 연구의 관찰 내용과 부합합니다. 즉, 검토자가 코드 검토에서 더 높은 위치에 표시된 파일에 더 많은 코멘트를 남긴다는 사실을 발견했습니다. 또한, 이러한 결과는 데이터가 알파벳순으로 치우쳐 있더라도 코드 차이에 따라 변경된 파일을 정렬하면 코드 검토 시 더 많은 검토 작업이 필요한 문제 파일이 먼저 배치된다는 점에서 표준 알파벳순보다 더 효과적임을 보여줍니다. 이상의 결과는 코드 검토를 위한 다양한 순서 지정 방식을 탐구해야 할 필요성을 다시 한 번 부각시킵니다.