Abstract
In order to analyze the similarity of the source code object material, the source code on both sides must be able to be compiled and executed. In particular, in the case of hardware-integrated software, it is necessary to check whether the hardware interface matches. However, currently, the source code is provided in an incomplete state which is not original of source code used in developing steps. The complainant confirms that the executing characteristics are similar to their own in the expression and function of the output, and request an evaluation. When a source code compilation error occurs during the evaluation process, the experts draw a flowchart of the source code and applies the method of tracing the code flow for each function as indirect method. However, this method is indirect and the subjective judgment is applied, so there is concern about the contention of objectivity in the similarity evaluation result. In this paper, the problems of unverified source code similarity analysis and improvement directions are dealt with, through the analysis cases of source code disputes applied to embedded systems.
소스코드 감정목적물의 유사성을 판단하는 경우, 양측의 비교대상 소스코드는 컴파일과 실행이 가능 해야 한다. 또한 시스템 소스의 경우에는 하드웨어와의 인터페이스가 일치하는지 확인이 되어야 한다, 그러나 현실적으로 분쟁당사자의 소스코드가 완전하지 않은 상태로 제공되는 경우가 발생하고 있다. 분쟁을 제기하는 측에서는 동작 특성이 자사의 기능과 유사하고, 출력되는 표현과 기능이 유사한 이유로 소스코드의 핵심부분이 유사한 것으로 판단하고, 감정을 요청하고 있다. 분석과정에서 소스코드의 컴파일 오류 발생 시, 감정인은 소스코드의 흐름도를 작성하고, 함수별 코드의 흐름을 추적하는 방법을 적용하게 된다. 그러나 이 방법은 간접적이고, 감정인의 주관적인 판단이 적용되어 유사성 분석결과에 객관성에 대한 다툼이 우려된다. 본 연구에서는 임베디드 시스템에 적용된 소스코드분쟁의 감정사례를 통해 검증되지 않은 소스코드 유사성 도출의 문제점과 개선 방향을 다룬다.