목차
Part 01 NHN과 소프트웨어 품질
   소프트웨어 개발의 특징과 오해 ... 18
      소프트웨어 개발은 경험적 프로세스 ... 18
      소프트웨어 품질에 대한 정의 ... 20
      오류 없는 소프트웨어는 비용이 많이 든다? ... 21
      기획서는 불변의 진리? ... 24
      열 사람, 하나의 생각 ... 26
      기획자는 기획만, 개발자는 개발만, 테스터는 테스트만? ... 29
      생산성, 측정하지 못하면 개선하지 못한다? ... 30
   NHN의 QP 이야기 ... 34
      NHN의 프로세스 개선 전략 ... 34
      NHN의 개선 대상 항목과 방법 ... 35
      QP 준비와 적용 ... 37
      공감대 형성을 위한 QP 교육 ... 38
      QP 적용을 위한 조직 구성 ... 39
      조직별 QP 목표 수립 및 환경 구축 ... 41
      QP 적용 및 현황 모니터링 ... 41
      빌드 품질 측정 ... 45
      의사소통 채널 운영 및 이슈 관리 ... 46
      기술 지원 및 지원 도구 개발 ... 47
Part 02 효과적인 명세 작성
   바벨탑과 언어의 분열 ... 54
   예제를 이용한 명세 작성 기법 ... 56
      전통적인 명세 작성 예 ... 57
      예제를 통한 명세 작성 예 ... 58
   명세 작성 워크숍 ... 61
   자동화 도구 적용 ... 66
      테이블 작성 ... 66
      픽스처 개발 ... 69
      테스트 실행 ... 71
Part 03 단계적 빌드
   도입하기까지 ... 76
      단계적 빌드 대상을 선정하는 기준 ... 78
   단계적 빌드 프로세스 ... 79
   단계적 빌드에 필요한 것 ... 81
      형상 관리 시스템 ... 81
      빌드 자동화 스크립트 ... 83
      CI 서버 ... 84
   CI 서버가 보여주는 프로젝트 운영 패턴 ... 86
Part 04 코딩 컨벤션
   코딩 스타일을 점검하는 도구 ... 94
      Checkstyle ... 95
      N'SIQ CppStyIe ... 97
   지속적인 코딩 스타일 검사 ... 101
   코딩 컨벤션을 적용하고 나서 ... 104
Part 05 코드 리뷰
   코드 리뷰 수행 방식 ... 108
   코드 리뷰를 적용하고 나서 ... 111
Part 06 코드 커버리지
   도입하기까지 ... 116
   코드 커버리지를 측정하는 도구 ... 119
      Clover ... 122
      GCOV ... 124
      BuIIseyeCoverage ... 127
   지속적인 코드 커버리지 측정 ... 131
   코드 커버리지를 적용하고 나서 ... 134
Part 07 정적 분석
   도입하기까지 ... 138
   정적 분석을 수행하는 도구 ... 140
      CppCheck ... 140
      FindBugs ... 144
      PMD ... 150
   지속적인 정적 분석 ... 154
   정적 분석을 적용하고 나서 ... 157
Part 08 사이클로매틱 복잡도
   도입하기까지 ... 162
   CC2 계산 방법과 예제 ... 164
      CC2 계산 방법 ... 164
      CC2 계산 예제 ... 165
   복잡도를 측정하는 도구 ... 169
      N'SIQ Collector ... 169
   지속적인 복잡도 측정 ... 174
   사이클로매틱 복잡도를 적용하고 나서 ... 176
Part 09 중복 코드 분석
   중복 코드를 분석하는 도구 ... 180
      CPD ... 180
   지속적인 중복 코드 분석 ... 185
Part 10 QP의 현재와 미래
   QP의 현재 ... 190
      CI 서버를 구축해서 지속적이고 자동화된 테스트 수행 ... 192
      코드 품질 수치화와 가시성 향상 ... 193
      품질에 대해 능동적으로 태도 변화 ... 193
      QA 업무와 역할 변화 ... 194
   QP의 미래 ... 195
   QP를 도입하고 싶다면 ... 197
Part 11 NHN 테스트 자동화 프레임워크
   NHN 테스트 자동화 프레임워크 소재 ... 202
      NTAF의 구조 ... 202
      NTAF의 기능 ... 204
      NTAF의 사용 방법 ... 206
   모바일에서의 NTAF ... 210
      NTAF과 모바일 장비의 연동 구조 ... 212
      테스트 수행 과정 ... 214
      CI 서버와 연동 ... 218
      한계와 의의 ... 220
   NTAF WebKit ... 221
      NTAF WebKit의 구조 ... 222
      편리한 테스트 케이스 작성 ... 223
      테스트 케이스 패턴화와 재사용 ... 228
      테스트 확장 기능 ... 234
Part 12 부록
   앤트 설치와 사용 ... 238
      설치 ... 238
      빌드 스크립트 작성 ... 239
      빌드 스크립트 수행 ... 241
      단위 테스트 자동화 ... 242
   메이븐 설치와 사용 ... 245
      설치 ... 245
      프로젝트의 구조 ... 245
      프로젝트 생성 ... 246
      빌드 스크립트 작성 ... 248
      빌드 스크립트 수행 ... 250
      단위 테스트 자동화 ... 253
   허드슨 설치와 설정 ... 254
      설치 ... 254
      총 디렉터리 ... 256
      백업과 복구 ... 256
      기본 설정 ... 257
      프로젝트 등록 ... 259
      프로젝트 설정 ... 260
      강제 빌드 ... 266
      콘솔 로그 ... 266
      빌드 이력 ... 267
      빌드 결과 ... 267
      피드백 도구 연동 ... 269
   테스트 코드 작성 팁 ... 270
      웹 컨테이너에 의존적인 코드의 테스트 ... 271
      정적 메서드를 호출하는 코드의 테스트 ... 273
      싱글턴 클래스를 생성하는 코드의 테스트 ... 278
      데이터베이스를 호출하는 코드의 테스트 ... 281
   참고할 만한 사이트와 문헌 정리 ... 284
      참고 사이트 ... 284
      참고 문헌 ... 290
Index ... 292
닫기