2009. 11. 11. 21:18

[지속적인 통합] 지속적인 통합(CI)을 고려하시는 분께 추천합니다

지속적인 통합지속적인 통합 - 10점
폴 M. 듀발 외 지음, 최재훈 옮김/위키북스
지속적인 통합을 고려하고 계신다면 한 번 읽어보시길 권합니다. 지속적인 통합의 범위와 장점을 이해함으로써 더 나은 프로젝트를 만들 수 있습니다.

Chapter1 시작하기

데이터베이스 통합, 테스트, 검사, 배포, 피드백을 자동화하고 지속적으로 수행함으로써, CI 시스템은 프로젝트에서 흔히 발생하는 일반적인 위험 요소를 줄여줍니다. 또 이렇게 함으로써 프로젝트 수행에 대한 자신감을 키워주며, 의사소통이 더 잘 이뤄지게 해줍니다.

이렇게 반복 가능한 프로세스는 개발 생명 주기를 통틀어 발생할 법한 위험을 경감시키는 데 도움이 될 수 있습니다.

Chapter2 지속적인 통합 도입하기

지속적인 통합 실천 방법
실천 방법 설명
코드를 자주 커밋하세요 적어도 하루에 한 번은 버전 관리 저장소에 코드를 커밋하세요
깨진 코드를 커밋해선 안됩니다 다른 코드와 함께 컴파일되지 않거나 테스트를 깨먹는 코드를 커밋하지 마세요
빌드가 깨지면 즉시 고치세요 팀의 책임일지라도, 최근에 코드를 커밋한 개발자가 깨진 빌드를 고치는 일에 관여해야 합니다
자동화된 개발자 테스트를 작성하세요 소프트웨어가 작동하는지 자동화된 개발자 테스트를 사용해 검증하세요. 자동화된 빌드와 함께 개발자 테스트를 돌리고, 지속적인 통합을 이용해 개발자 테스트를 돌리세요
테스트와 검사는 모두 통과해야 합니다 버전 관리 저장소에 코드를 커밋하기에 앞서 90%나 95%가 아닌 모든 테스트가 통과해야 합니다
개인 빌드를 돌리세요 통합 빌드가 실패하지 않도록, 저장소에서 가장 최근의 변경 사항을 가져오고, 로컬에서 개인 시스템 빌드라 알려진 완전한 통합 빌드를 돌리세요
깨진 코드는 가져오지 마세요 빌드가 실패했는데, 저장소에서 코드를 가져오면 시간을 낭비하게 될 겁니다. 코드가 바뀌길 기다리거나, 개발자가 빌드 실패를 고치는 일을 돕고 나서 최신 코드를 가져오세요

Chapter3 지속적인 통합을 이용해 위험 줄이기

CI가 도움이 될 만한 위험 요소 및 완화 방법
 위험 요소  완화 방법
 배포 가능한 소프트웨어의 부재 CI 시스템을 이용해 언제라도 배포 가능한 소프트웨어를 빌드하세요. 버전 관리 저장소에 소프트웨어 자산을 모두 올려놓고, 되풀이할 수 있는 빌드 프로세스를 구축하세요. 
 뒤늦은 결함 발견 소프트웨어가 변경될 때마다 개발자 테스트를 포함해 빌드하세요. 그러면 소프트웨어 생명 주기상 이른 시기에 결함을 발견할 수 있답니다.
 프로젝트 가시성의 부재 빌드를 주기적으로 돌려서 소프트웨어의 건강 상태를 항상 파악하세요. 지속적인 통합을 효과적으로 적용하면 프로젝트의 상태를 궁금해하지 않아도 됩니다.
 저품질의 소프트웨어 소프트웨어가 변경될 때마다 테스트와 검사를 돌리세요. 소프르웨어의 복잡도, 중복, 설계, 코드 적용범위 등과 같은 요소를 알게 되어 코드 베이스에 발생할지 모르는 잠재적 결함을 발견해낼 수 있습니다. 


http://mindasom.tistory.com2009-11-11T12:17:220.31010