150 likes | 308 Views
XP(eXtreme Programming) Part 1 : JUnit Son, Seung-Beom PLUS, a division of TSB. Revision History. Agenda. XP(eXtreme Progrmming) 란 ? XP 등장배경 XP í”„ë ‰í‹°ìŠ¤ XP 와 프로그래머 JUnit JUnit 실습. XP? 켄트벡ì—ì˜í•´ ì œì•ˆëœ ì†Œí”„íŠ¸ì›¨ì–´ 개발방법 ì• ìžì¼ê°œë°œí”„ë¡œì„¸ìŠ¤ì˜ ëŒ€í‘œì 개발방법 íí¬ìˆ˜ëª¨ë¸ê³¼ ê°™ì€ íƒ„íƒ„í•œ ê³„íš ê¸°ë°˜ 개발보다 ìœ ì—°ì„±ì„ ì¤‘ì‹œ.
E N D
XP(eXtreme Programming) Part 1 : JUnit Son, Seung-Beom PLUS, a division of TSB
Agenda XP(eXtreme Progrmming)란 ? XP 등장배경 XP 프렉티스 XP와 프로그래머 JUnit JUnit 실습
XP? • 켄트벡에의해 제안된 소프트웨어 개발방법 • 애자일개발프로세스의 대표적 개발방법 • 폭포수모델과 같은 탄탄한 계획 기반 개발보다 유연성을 중시 XP(eXtreme Programming)란?
전통적개발방법 • 폭포수 모델과 같은 계획 기반 개발 • 정형적 프로세스 제어모델 • 문서중시, 정확한 사양정의, 정확한 개발순서 • 쉬운 이해와 바람직한 기법이긴하나 변화에 취약 • 납기일 전 철야 • 철야에도 불구하고 납기일 지연 • 지연에 따른 비난과 스트레스가 개발자의 책임 • 결국 남품된 솔루션은 고객의 요구를 충족하지 못함 XP(eXtreme Programming) 등장배경
eXtreme Programming • 경험적 프로세스 제어모델 • 고객과 함께 2주 정도 반복개발 • 테스트중시 XP(eXtreme Programming) 등장배경
공통 프렉티스 • 반복 • 공통 용어 • 열린작업공간 • 빈번한 재검토 XP(eXtreme Programming) 프렉티스
개발 프렉티스 • TDD (Test Driven Development) • Pair Programming • Refactoring • 소스코드의 공동소유 • CI (Continuous Integration) XP(eXtreme Programming) 프렉티스
관리자 프렉티스 • 책임의 수용 • 개발자 지원 • 분기별 재검토 • 미러 • 적당한 페이스의 작업 XP(eXtreme Programming) 프렉티스
고객 프렉티스 • 스토리작성 • 릴리스계획 • 수주테스트 • 단기릴리스 XP(eXtreme Programming) 프렉티스
XP를 열광적으로 받아들인 주체는 프로그래머 • 문서보다는 소스코드를 중요시함 • 중장기적 계획을 따르기보다는 디테일하게 계획을 재검토하며 수정 • 프로그램코드와 테스트코드를 일체화 (TDD) • 프로그래머가 XP에 열광하는 이유는 프로그래머의 불안요소를 해결하기 위한 장치들이 구체적인 프렉티스로 준비되어있기 때문 XP(eXtreme Programming) 와 프로그래머
테스트를 자동화를 위한 프레임워크 • 테스트케이스는 개발자가 작성 • 한번 작성된 테스트코드로 반복해서 테스트가 가능 • 리펙토링의 필수요소 • www.junit.org • http://kentbeck.github.com/junit/javadoc/latest/ JUnit
DEMO JUnit 실습
Extreme Programming http://ja.wikipedia.org/wiki/%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%88%E3%83%AA%E3%83%BC%E3%83%A0%E3%83%BB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0 • Agile Software development • http://ko.wikipedia.org/wiki/%EC%95%A0%EC%9E%90%EC%9D%BC_%EA%B0%9C%EB%B0%9C_%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4 참고문서