19
“NHN 의 의의의의 의의 (CI)” NHN 의의의의의의 의의의 , 의의의

Deview nhn애자일개발 ci

Embed Size (px)

Citation preview

Page 1: Deview nhn애자일개발 ci

“NHN 의 지속적인 통합

(CI)”NHN 생산성혁신랩 윤준호 , 한우람

Page 2: Deview nhn애자일개발 ci

NHN 에서 SW 개발 도구란 ?

• 기계가 할 수 있는 일을 왜 사람이 하지 ?

• 없어서 못해 ? 그럼 만들어 !!• 공개해서 누이 좋고 매부 좋고

Page 3: Deview nhn애자일개발 ci

NHN 개발자 센터

아무 거나 집어 쓰기 !

Page 4: Deview nhn애자일개발 ci

NHN 개발자 센터

여기서 잠깐 !! 오픈소스 개발자 대모집

요 프로젝트

Page 5: Deview nhn애자일개발 ci

Break Window Theory

Page 6: Deview nhn애자일개발 ci

Continuous Integration(CI)

Developer 1

SVNRepository

Developer 2

Developer 3

CI Server Test WebServer

commit

commit

commit

polling

BuildTestAnalysisReporting…

Deploy

Feed

back

Page 7: Deview nhn애자일개발 ci

JENKINS - HUDSON

Page 8: Deview nhn애자일개발 ci

JENKINS - HUDSON

Page 9: Deview nhn애자일개발 ci

딸랑 빌드만 ?

• 다음은 반드시 ..–테스트

커버리지–정적 분석 –코딩 스타일–테스트 실행

• 다음은 깍두기– 복잡도– 코드 리뷰– 중복 코드

Quality Practice

Page 10: Deview nhn애자일개발 ci

QP on CI• CI 실행 결과를

대시 보드로 종합

Page 11: Deview nhn애자일개발 ci

얼마나 사용하나요 ?

10 - 30200 - 2000

Highly Active and almost World Best

Page 12: Deview nhn애자일개발 ci

개발자가 볼 때 ..

벌겨 벗겨진 듯 한 느낌

Page 13: Deview nhn애자일개발 ci

반발 vs 대응• 내재화가 더 중요하다 . 숫자가 왜

중요하나 ?• 현실적으로 테스트 커버리지 높이기

힘들다 !• 수치 목표 달성하려면 개발 일정 못

맞춘다 .• Top-Down 이 왠 말인가 ! 변화는

Bottom-Up 으로 !!

• 목적과 목표를 혼동하지 말자 !• 테스트가 불가능한 코드를 만들지

마라 . 샘플을 보여주마 .• 코드 품질을 보장하는 다른 수치를 정의해서 가져와 보라 .• 아니다 . 변화는 모든 방향으로 이루어져 져야 한다 .

Page 14: Deview nhn애자일개발 ci

관리자가 볼때스티브 좁스 입니다 .

사과 컴퓨터사 프로젝트를

한눈에 다 보고 싶은데 ..

Page 15: Deview nhn애자일개발 ci

NHN 의 CI 거버넌스

Quality Dashboard

Page 16: Deview nhn애자일개발 ci

전사적인 적용 - 좌절과 극복• 난 내 빌드 스크립트가 어떻게 도는지

몰라요 .• 정적 분석 / 커버리지 / 복잡도가

뭥미 ?• 망고폰 프로젝트에는 어떻게

적용해요 ?• 난 요로코롬 생긴 리포트를 보고

싶어요 .

3 년간의 훈련 / 지침서 / 플러그인 / 지속적인 점검

Page 17: Deview nhn애자일개발 ci

그래서 어떻게 되었는데

무엇보다 모든 사람이 CI 를 당연하게 여긴 점

Page 18: Deview nhn애자일개발 ci

NHN CI 적용 성공 방정식조직장의 끝없는 관심 =

Push친절한 가이드 = Direc-

tion끝없는 기술 지원 =

Support

Page 19: Deview nhn애자일개발 ci

커밍 수운 !!• WE WILL OPEN ALL!!

• 좀 더 깊은 내용에 관심 있으신 분들은–공개 세미나 참석 .(11 월 초 , 강남역

토즈 )