2015년 9월 19일 토요일

요약기반 대규모 소스 코드 유사성 평가

소프트웨어의 개발이 활발해짐에 따라 소스코드 복제 , 도용이 증가하고 있으며 , 이로 인한 분쟁도 증가하고 있습니다 . 따라서 소스코드 복제에 대한 유사도 검사 또한 매우 중요시되고 있습니다 . 개발 시간 단축 , 성능 향상을 위해 소스코드 복제가 일어나고 다른 기업 , 개인 간의 분쟁을 유도하게 됩니다 . 분쟁을 결정짓거나 사전에 방지하기 위해 소프트웨어 유사도 검사가 필요합니다 .
유사성을 측정하는 기존의 도구는 대부분 텍스트 / 토큰 비교 [1, 2, 3, 4] 방법을 사용합니다 . 텍스트 / 토큰 비교는 소스코드의 텍스트나 토큰을 나열하여 비교하는 방법으로 다른 비교 방법에 비해 수행속도가 빠르다는 장점이 있습니다 . 하지만 기존의 툴들은 불필요한 소스 코드에 대해서 잘못된 유사성을 감정하는 한계가 있습니다 . 예를 들어 프로그램 개발 툴에 의해 자동으로 삽입된 소스코드 , 주석 , 변수 선언문의 위치 등은 유사도 측정에 있어 방해요소가 될 수 있습니다 . 대규모 소프트웨어의 소스코드를 그대로 비교하면 수행시간의 증가로 인해 기존 툴에 직접 사용하기에는 어려움이 있습니다 . 또한 소스코드를 도용 시 소스코드를 의도적으로 변형을 하게 되면 복제한 소스코드이지만 검출도구에서는 유사하지 않다고 판단 할 수 있습니다 .


  1. 대규모 소프트웨어의 유사도 검사 방법
  2. 소스코드 요약 기법과 유사도 비교 방법
  3. 대규모 소프트웨어의 유사성 비교

사용자 경험 (UX) 과 품질 관리 (QA) 에 따른 사용성 확보

- Key Message -
SW 사용성 (usability) 은 SW 사용자 입장에서 원하는 기능과 서비스를 손쉽게 찾아서 활용할 수 있도록 기능을 제공하는지를 의미합니다 . 최근 들어 SW 사용성은 SW 가치의 중심축 역할을 함에 따라 애자일 개발에서는 전체 개발팀이 제품의 사용성을 함께 고려하는 것이 중요합니다 . 따라서 여기서는 사용자 경험 (UX) 와 품질 관리 (QA) 측면에서 사용성 확보를 위한 기획 - 개발 - 테스팅 - 배포 등의 단계별 고려사항을 제시합니다 .

애자일 개발의 네 가지 단계별 고려사항
 1. 기획 (Research)
 2. 개발 (Development)
 3. 테스팅 (Testing)
 4. 배포 (Release)

자세히 보기 →

최적의 클라우드 테스팅 툴을 찾아내는 4가지 Tip

- Key Message -
최근 SW 개발에 있어 클라우드 기반의 테스팅 툴은 이동성 , 확장성 , 유연한 가격정책에 의해 점차 부각되고 있습니다 . 이에 따라 클라우드 테스팅 툴에 대한 투자 이전에 고려해야 할 네 가지 팁을 제공하여 , 각 프로젝트 환경에 적합한 최적의 테스팅 툴을 확보할 수 있도록 도움을 주고자 합니다 .

클라우드 기반의 테스팅 툴은 이동성 , 확장성 , 유연한 가격 모델과 같은 이점을 제공하면서 소프트웨어 개발 산업을 이끌어 왔습니다.
테스트 전문조직들 또한 이러한 흐름에 편승하고 있으나 , 클라우드 테스팅 툴에 투자하기 전에 고려해야 할 네 가지 팁을 살펴보는 것이 유익합니다.

클라우드 테스팅 툴을 찾아내는 4가지 Tip
 1. 위험요소와 문제점 인식하기
 2. 최적의 서비스 선택하기
 3. 퍼블릭 클라우드 또는 프라이빗 클라우드 서비스 선택하기
 4. SLA 이해하기

클라우드 테스팅 툴 7선






























자세히 보기 →