Software Engineering

'Software Engineering' 카테고리의 모든 글

총 9개의 글
시간순 정렬
AI 라이브러리의 숨은 손길, 오픈소스 프로젝트와 커뮤니티를 형성하다

AI 라이브러리의 숨은 손길, 오픈소스 프로젝트와 커뮤니티를 형성하다

이 논문은 오픈 소스 소프트웨어(OSS) 프로젝트에서 인공지능(AI) 라이브러리의 채택과 그 영향을 조사한다. 특히, Java와 Python 기반 OSS에서 AI 라이브러리의 사용 범위를 분석하고 이를 통해 개발 활동, 협업, 그리고 소프트웨어 복잡성과 유지보수에 미치는 영향을 평가한다. 본 연구는 157,700개의 가능 저장소에 대한 대규모 분석을 수행하여 AI 라이브러리 채택의 범위와 그 결과를 제공하며, 이는 소프트웨어 엔지니어링과 OSS 커뮤니티에 중요한 통찰력을 제공한다.

paper AI 요약
DynaFix  실행 수준 동적 정보로 주도되는 반복적 자동 프로그램 수정

DynaFix 실행 수준 동적 정보로 주도되는 반복적 자동 프로그램 수정

소프트웨어 시스템은 현대 사회의 거의 모든 중요한 분야에서 핵심적인 역할을 합니다. 이들 시스템이 복잡해질수록 버그가 늘어나게 되며, 이를 해결하기 위한 프로그램 수정 기술이 필요하게 됩니다. 최근에는 LLM(Large Language Model) 기반의 자동 패치 생성 방법이 연구되고 있으나, 이러한 접근법들은 정적 코드 정보에 크게 의존하여 동적인 실행 정보를 충분히 활용하지 못합니다. 본 논문에서는 DynaFix라는 새로운 방법론을 제시하며, 이는 비침습적인 바이트코드 악기화 기술인 ByteTrace를 이용해 프로그램의 실행 중 발생하는 동적 정보를 수집하고 이를 반복적인 수정 과정에 활용합니다.

paper AI 요약
LLM 기반 자동차 시스템의 안전성 및 보안 설계

LLM 기반 자동차 시스템의 안전성 및 보안 설계

이 논문은 자동차 산업의 혁신에서 가장 중요하게 여겨지는 기능적 안전성과 사이버 보안을 유지하면서 고급 차량 기능의 신속한 프로토타입, 검증 및 배포에 중점을 둔다. 특히 복잡해지고 있는 소프트웨어 정의 차량(SDV)에서 이러한 중요성이 더욱 부각된다. 대규모 언어 모델(LLMs)은 자연어 요구사항에서 구조를 추출하고 초기 행동 모델을 생성하여 이 과정을 가속화할 수 있는 새로운 기회를 제공한다. 그러나 LLMs가 무분별하게 사용될 경우, 정확성과 안전한 동작, 타이밍 결정론, 보안 포지셔닝에 대한 보장이 부족하다는 문제점이 있다. 따라서 이러한 간극을 메우기 위해 기능적 안전성 및 보안 분석을 지원하기 위한 이벤트 체인(Event Chain) 기반의 LLM 가이드 워크플로를 제안한다. 이 방법은 자동차 시스템에서 안전 메커니즘과 타이밍 요구사항을 구성하는 인과적, 시간적, 데이터 흐름 관계를 구조화된 표현으로 제공하며, LLM의 출력을 제약하고 안전하지 않거나 검증되지 않은 동작이 생성되는 것을 방지한다. 또한 이 프레임워크 내에서는 LLM이 전문적인 도메인 지식이 필요한 작업들을 자동화하는 데 도움을 주며, 텍스트 요구사항에서 후보 안전 메커니즘을 도출하거나 기능적 의도와 차량 신호 사양(VSS)을 정렬하고 잠재적인 위험 또는 비안전 상호작용을 식별한다. 뿐만 아니라 검색 강화 생성(RAG)은 LLM의 추론 범위를 인정된 VSS 카탈로그, 안전 매뉴얼 및 아키텍처 설명과 같은 신뢰할 수 있는 데이터 소스로 제한하여 환영 신호나 평가되지 않은 데이터 경로를 줄인다. 이를 통해 자동으로 생성된 모델은 안전 및 사이버 보안 심사에 필요한 권위있는 출처와의 추적 가능성을 유지한다. 이벤트 체인 모델과 LLM 간의 시너지는 기능적 안전성(예 시간 예산 위반, 인과 체인 파괴, 누락된 안전 반응) 및 사이버 보안(예 무단 신호 경로, 일관되지 않은 신뢰 경계 또는 예상치 못한 제어 영향력)에 대한 자동 사전 분석을 가능하게 한다. 코드가 타겟 플랫폼으로 배포되기 전에 ISO 26262 파트 6(소프트웨어 아키텍처 제약 조건) 및 ISO 21434(안전한 신호 및 인터페이스 처리)와 일치하는 일관성 검사를 수행한다. 결과적으로 LLM 생성 아티팩트는 더 신뢰할 수 있으며, 기존 안전 공학 워크플로에 직접 통합될 수 있다. 이러한 제안된 파이프라인은 자동차 코드의 안전 및 보안 분석 절차를 자동화하려는 시도로서 초기 디자인 단계에서의 노력 감소와 동시에 현대적인 안전 및 사이버 보안 요구사항을 충족하는 엄격함을 유지한다. 이를 증명하기 위해 우리는 물리적 테스트벤치와 시뮬레이션 플랫폼 기반의 ADAS 시나리오에 이 워크플로를 적용한다.

paper AI 요약
No Image

Python의 CWE 예측을 위한 LLM과 SAST 도구의 적응적 계층 평가

본 연구는 대형 언어 모델(LLMs)이 생성한 코드에서 취약점을 감지하는 데 있어 정적 분석 도구(SAST)와 LLMs의 성능을 비교하고, 이를 기반으로 반복적인 피드백 루프를 설계하기 위한 벤치마크인 **ALPHA**를 제시합니다. 이 연구는 취약점 탐지를 위해 사용되는 도구 선택에 대한 실질적인 근거를 제공하며, Python 함수 수준에서 CWE 분류의 정확성을 평가합니다.

paper AI 요약
RovoDev 코드 검토자  아틀라시안에서의 대규모 온라인 LLM 기반 코드 검토 자동화 평가

RovoDev 코드 검토자 아틀라시안에서의 대규모 온라인 LLM 기반 코드 검토 자동화 평가

코드 리뷰는 현대 소프트웨어 엔지니어링의 핵심이며, 품질 보장을 위해 중요합니다. 그러나 프로젝트가 복잡해짐에 따라 수동 코드 리뷰는 시간과 자원을 많이 필요로 하게 되며, 이는 개발 과정에서 병목 현상을 일으킬 수 있습니다. 대형 언어 모델(Large Language Models)을 사용하여 코드 리뷰의 일부를 자동화함으로써 이러한 문제를 해결할 수 있습니다. RovoDev 코드 리뷰어는 데이터 보안, 실용적인 가이드라인 제공, 새로운 프로젝트에 대한 컨텍스트 인식 능력 등 다양한 기능을 갖춘 자동화 도구입니다.

paper AI 요약
기계를 위한 코드, 인간만을 위한 것이 아니라  코드 헬스 메트릭으로 AI 친화성을 측정하기

기계를 위한 코드, 인간만을 위한 것이 아니라 코드 헬스 메트릭으로 AI 친화성을 측정하기

AI가 코드를 이해하고 개선하는 데 있어, 인간이 읽기 쉬운 코드는 어떻게 도움을 줄 수 있을까? 본 논문은 CodeHealth 지표를 사용하여 AI 친화적인 코드 디자인이 더 나은 결과를 내는지 분석한다. 또한, Perplexity와 Source Lines of Code(SLOC)와 비교해보며, 인간이 이해하기 쉬운 코드가 실제로 AI에게도 더 친근한지 확인한다.

paper AI 요약
대형 언어 모델로 자동 이슈 할당 혁신

대형 언어 모델로 자동 이슈 할당 혁신

본 논문에서는 소프트웨어 개발 프로젝트에서 이슈 할당의 중요성과 그 과정에 대한 문제점을 다룹니다. 특히 수동 할당이 비효율적이며, 시간을 많이 잡아먹는다는 점을 강조합니다. 이를 해결하기 위해 LLM 기반의 자동화된 이슈 할당 방법론인 LIA(Large Language Model-based Issue Assignment)를 소개하며, 이 방법론은 텍스트 기반과 그래프 기반 방법론들의 한계점을 극복할 수 있는 가능성을 제시합니다. 본 연구에서는 두 개의 대규모 오픈소스 프로젝트 데이터셋(EclipseJDT와 Mozilla)을 사용하여 LIA가 기존 방법론들보다 우수한 성능을 보이는 것을 입증하였습니다. ###

paper AI 요약
인라인 코더  리포지토리 수준의 코드 생성 혁신

인라인 코더 리포지토리 수준의 코드 생성 혁신

이 논문에서는 코드 생성 대형 언어 모델(LLM)의 발전에 따라, 저장소 수준의 코드 생성에 대한 관심을 살펴보고 있습니다. 저장소 수준의 코드 생성은 기능 수준 생성과 달리 전체 저장소를 고려해야 하며, 프로그래밍 관례와 API 사용 및 함수 간 복잡한 종속성을 이해해야 합니다. 본 논문에서는 이를 지원하기 위한 새로운 프레임워크인 **InlineCoder**를 제안합니다.

paper AI 요약

검색 시작

검색어를 입력하세요

↑↓
ESC
⌘K 단축키