유사성평가

프로그램은 여러 가지 형태의 표현이 결합된 것으로 소스코드(source code), 목적코드(object code), 마이크로코드(micro code), 알고리즘(algorithm), 흐름도(flow chart), 스크립트(script) 등의 복합적인 형태로 구성되어 있습니다. 유사성 검토는 두 소프트웨어의 문언적 표현요소인 소스코드 간 유사한 정도를 산술적으로 나타낸 정량적 유사도를 중요한 근거 중 하나로서 실질적인 유사성 평가에 활용하고 있습니다.

유사성 평가를 통하여 컴퓨터프로그램의 소스코드 레벨에서의 유사도, 자료구조의 유사도, 데이터베이스 유사도, 디렉토리 및 주요파일 이름의 유사도 등 다양하게 선정된 항목의 유사도가 각각 백분율로 산출되며, 일반적으로 원본기준 방식을 적용합니다. 산출된 각각의 유사도에 전체 컴퓨터프로그램에서 해당 부분이 차지하는 중요도를 가중치로 반영하여 종합 유사도를 산출하고, 그 결과를 컴퓨터프로그램의 복제여부 판단의 근거로 제시하게 됩니다.

감정항목 산출

원본대비 비교본의 유사성 검토

각 항목별 중요도 및 가중치의 산출

양적 질적인 면을 고려한 유사성 평가

외부적 요소 및 공유영역에 있는 소스 제거

동일 기준의 하드웨어, 개발도구, 오픈소스 등을 제외

유사성(복제)도 계산 (소스코드 라인을 기준)

라인을 기준으로 판단 토큰 단위 기준으로 판단