책소개
소프트웨어 품질이란 무엇인가? 오류 없는 소프트웨어를 만들려면 비용이 많이 드는가? 끊임없이 변하는 기획서를 어떻게 하면 효율적으로 관리할 수 있는가? 생산성은 측정하지 못하면 개선하지 못하는가? 이 책은 이런 질문에 대해 NHN에서는 어떤 고민을 하고, 품질을 향상시키려는 어떠한 활동을 했는지 그 경험을 담은 것이다.
NHN의 품질 혁신 활동(Quality Practice, QP)은 소프트웨어 개발의 특징과 오해에서 비롯되는 각종 문제를 해결하고 품질을 향상시키는 것을 목표로 NHN에서 수행하는 활동의 일환이다. 하지만 이 책에서 설명하는 원칙이나 기법이 소프트웨어 개발의 '모든' 문제를 해결할 수 있는 만능 치료약은 아니다. 그렇지만 이 책에서 설명하는 소프트웨어 개발의 문제점을 참고하면 각 조직에 맞는 품질 개선 방안을 찾는데 도움이 될 것이다.
목차
01장 NHN과 소프트웨어 품질
- 소프트웨어 개발의 특징과 오해
- NHN의 QP 이야기
02장 효과적인 명세 작성
- 바벨탑과 언어의 분열
- 예제를 이용한 명세 작성 기법
- 명세 작성 워크숍
- 자동화 도구 적용
03장 단계적 빌드
- 도입하기까지
- 단계적 빌드 프로세스
- 단계적 빌드에 필요한 것
- CI 서버가 보여주는 프로젝트 운영 패턴
04장 코딩 컨벤션
- 코딩 스타일을 점검하는 도구
- 지속적인 코딩 스타일 검사
- 코딩 컨벤션을 적용하고 나서
05장 코드 리뷰
- 코드 리뷰 수행 방식
- 코드 리뷰를 적용하고 나서
06장 코드 커버리지
- 도입하기까지
- 코드 커버리지를 측정하는 도구
- 지속적인 코드 커버리지 측정
- 코드 커버리지를 적용하고 나서
07장 정적 분석
- 도입하기까지
- 정적 분석을 수행하는 도구
- 지속적인 정적 분석
- 정적 분석을 적용하고 나서
08장 사이클로매틱 복잡도
- 도입하기까지
- CC2 계산 방법과 예제
- 복잡도를 측정하는 도구
- 지속적인 복잡도 측정
- 사이클로매틱 복잡도를 적용하고 나서
09장 중복 코드 분석
- 중복 코드를 분석하는 도구
- 지속적인 중복 코드 분석
10장 QP의 현재와 미래
- QP의 현재
- QP의 미래
- QP를 도입하고 싶다면
11장 NHN 테스트 자동화 프레임워크
- NHN 테스트 자동화 프레임워크 소개
- 모바일에서의 NTAF
- NTAF WebKit
부록
- 앤트 설치와 사용
- 메이븐 설치와 사용
- 허드슨 설치와 설정
- 테스트 코드 작성 팁
- 참고할 만한 사이트 정리