IBM®
메인 컨텐츠로 가기
    Korea [국가변경]    이용약관
 
 
   
        제품    서비스 & 솔루션    고객지원 & 다운로드    회원 서비스    
한국 developerWorks   >  기획 기사  > developerworks

‘행위의 중복’을 없애는, 사람을 위한 자동화



필자 | 강규영, 엔씨소프트 오픈마루 스튜디오 웹서비스 개발팀 alankang@openmaru.com

2007년 10월 30일
2008년 02월 04일 업데이트

어느 정도 경험이 있는 개발자라면, 혹은 마틴 파울러의 "리팩토링"을 읽어본 개발자라면, 소스 코드 중복이 왜 문제이며 중복을 어떻게 하면 효과적으로 제거할 수 있는지 잘 알고 있을 것입니다. 하지만 제거해야 할 중복은 소스 코드에만 있는 것이 아닙니다.

소프트웨어를 빌드할 때마다 반복적으로 입력하는 명령어들, 코드를 수정한 후 수동으로 수행하는 반복적 테스트, 주기적으로 작성하는 각종 리포트 등은 소스 코드 중복은 아니지만 "행위의 중복"이며 제거해야 할 대상입니다.

이 연재는 다양한 자동화 기법을 통해 이러한 "행위의 중복"을 제거하는 효과적이고 검증된 방법들을 상세히 설명합니다. 이를 통해 반복적이고 지루한 작업은 컴퓨터에 떠넘기고, 여러분은 더 창의적이고 가치 있는 일에 집중할 수 있게 될 것입니다.

  • 1편: 빌드 스크립트에서 나는 “악취(smell)” 제거하기 (한글)

  • 빌드 스크립트에 대하여 "악취(bad smells)" 개념을 적용하고 아홉 가지 꼭 피해야 할 악취들을 소개합니다.

  • 2편: 연속 테스팅 (한글)

  • 연속 테스팅(continuous testing)을 소개합니다. 연속 테스팅이란 저장소의 코드가 바뀔 때마다 자동으로 테스트를 수행하게 하는 방식으로, 코드 수정에 대한 피드백 주기를 크게 줄여줄 수 있습니다.

  • 3편: Eclipse 플러그인으로 코드 품질 높이기 (한글)

  • 코딩 표준, 코드 중복, 코드 커버리지, 의존성 분석, 복잡성 감시 등 이른바 "5대 코드 분석 영역"을 설명하고, 다양한 정적 코드 분석 플러그인을 통해 이러한 분석을 자동으로 수행하는 방법을 소개합니다.

  • 4편: Continuous Integration 서버 선택하기 (한글)

  • 지속적 통합(continuous integration)을 위한 오픈 소스 소프트웨어들을 소개하고 각각의 특징을 분석합니다. 지속적 통합은 앞서 소개된 연속 테스팅 등과 함께 행위의 중복을 제거하고 피드백 주기를 줄이기 위해 필수적인 실천법(practice) 중 하나입니다.

  • 5편: Continuous Inspection (한글)

  • 앞서 소개한 코드 분석 기법들을 통해 자동으로 코드 검사를 수행하여, 이를 통해 짝 프로그래밍, 주간 코드 리뷰 등을 통해 얻을 수 있는 유용함을 얻을 수 있는 방법을 소개합니다. 저자는 한편, 모든 수동 소스 검사를 자동화할 수는 없고 다만 수동 소스 검사 과정을 더 효율화한다는 개념으로 접근해야 한다는 것을 강조합니다.

  • 6편: 지속적인 피드백 (한글)

  • 다양한 소프트웨어, 하드웨어 장치를 통해 자동화 결과에 대한 피드백을 받는 방법을 소개합니다. 저자가 강조하는 것은 이 연재에서 소개되는 모든 장치를 적용하는 것이 아니라 상황에 맞는 적절한 장치를 선택적으로 적용해야 한다는 점입니다.

  • 7편: 아키텍처 건전성 (한글)

  • 아키텍처 수준에서의 디자인 문제를 정량적으로 측정하는 방법, 앞서 소개한 정적 소스 분석 도구들을 이용하여 이러한 검사를 자동으로 수행하는 방법, 그리고 디자인 문제가 발생하면 빌드 프로세스가 멈추도록 하는 방법 등을 소개합니다.

  • 8편: Raven으로 자바 프로젝트 구현하기 (한글)

  • Ruby를 기반으로 구현된 빌드 플랫폼인 Raven을 사용하여 빌드 스크립트 내에서 Ruby의 힘과 유연성을 확인해 봅시다.

  • 9편: Continuous Integration 반패턴(anti-pattern) (한글)

  • 자동화 전문가이자, Continuous Integration: Improving Software Quality and Reducing Risk 의 공동 저자인 Paul Duvall이 CI 반패턴(anti-pattern)을 설명하고, 이를 피하는 방법을 설명합니다.

  • 10편: 자동화를 통한 빠른 개발 (한글)

  • 자동화를 활용하여 다른 환경에 소프트웨어를 빠르게 옮길 수 있습니다.



위로


문서 옵션

JavaScript가 필요한 문서 옵션은 디스플레이되지 않습니다.

사이트 여행

dW 커뮤니티
포럼 | 블로그 | Spaces
dW Student Community

로컬 컨텐츠

행사 및 세미나

개발자 입문 | IBM Software 입문

튜토리얼 및 교육

TOP 10 인기자료

SW 다운로드

RSS 피드

뉴스레터
 
  
자바스크립트가 작동이 중지되었습니다. 이 기능을 수행하시려면 브라우저에서 자바스크립스트를 작동시켜 주시거나 이곳을 클릭해주세요.
Special offers
SOA Series
WebSphere Download
db2expressC
기획 기사 시리즈

    IBM 소개 개인정보 보호정책 문의