사용자 삽입 이미지

In English...(show)


사용자 삽입 이미지

지속적인 통합(Continuous Integration, CI)이란 주제에는 항상 관심이 많았습니다. 현재 팀에서도 나름대로 지속적인 통합을 잘 활용하고 있다고 생각했는데, 이 책을 읽어보니 개선할 점이 많더군요.

다음과 두 가지 사항이 도움이 되었습니다.

  • CI 빌드 시에 꼭 모든 것을 하려고 해서는 안된다. 빌드 시간이 10분을 넘기기 시작하면 사람들이 CI에 반감을 가질 수 있다. 오래 걸리는 작업은 별도 주기의 빌드(일일 빌드 등)에서 수행하라.
  • 정적 코드 분석 툴 및 동적 분석 툴을 통해 테스트를 보완하라.

정적 코드 분석은 코드 중복 체크나 가능한 오류 사항 및 코딩 규칙 위반 사항 점검에 유용합니다. 동적 분석은 테스트 코드의 커버리지(coverage)를 검사합니다. 아쉽게도 C++ 언어용으로는 쓸만한 공짜 분석 도구들이 눈에 뜨이지 않더군요. 이 책을 통해서 알게된 SourceMonitorSimian이 C++을 지원합니다.

SourceMonitor는 코드의 복잡도를 분석해주는 도구입니다. 복잡도가 높을수록 버그그 파고들 구멍이 많은 것이니 리팩토링 시 그러한 부분들에 먼저 주목하면 좋겠지요. Simian은 코드 유사성 검사 도구로 'Don't Repeat Yourself' 원칙이 위배되는 copy & paste 코드가 몰래 추가되는 일을 막아줍니다. 이 두 도구에 대한 간단한 설정 방법이 제 위키에 나와 있습니다.

혹시 공짜 C++ 코드 커버리지 분석 도구 알고 계신 분 있나요?

지속적인 통합: 소프트웨어 품질을 높이고 위험을 줄이기 상세보기
폴 M. 듀발 지음 | 위키북스 펴냄
이 책은 개발조직의 성공을 위한 '지속적인 통합'에 대해 이야기한다. 저자는 일일 빌드가 참신한 생각이었던 때를 지나 지속적인 통합을 하는 수준에 이르렀고, 이제는 지속적인 통합을 하느냐의 여부가 제대로 일하는 개발 조직을 가늠하는 잣대가 됐다고 주장한다. 그리고 이 책을 통해 소프트웨어의 품질은 높이고 위험은 줄이는 지속적인 통합의 개념과 실천방법을 자세히 설명한다. 또한 CI 시스템이 수행하는 데이터베이스

이올린에 북마크하기(0) 이올린에 추천하기(0)
크리에이티브 커먼즈 라이선스
Creative Commons License
RSS This posting was useful? Then subscribe to "gl3d.net"!
RSS 글이 유익하셨다면 gl3d.net을 구독하세요.

Trackback Address :: http://gl3d.net/trackback/58

댓글을 달아 주세요

  1. jacking 2008/06/05 21:06 Address Modify/Delete Reply

    VS 2005 이상, MSDN 라이센스로 사용하고 계실것 같은데 그렇다면 팀슈트 버전을 사용해 보세요. 기능 중에 '코드분석' 이라는 것이 있는데 꽤 쓸만합니다.

  2. BlogIcon all2one 2008/06/11 11:09 Address Modify/Delete Reply

    네 아쉽게도 저희는 team suite 라이센스가 아니라... ㅠㅠ 그리고 가능하면 공짜 툴이 좋은데 ㅎㅎ