정말이지.. 한동안 잊고 살았던 애자일방법론.. 책한두권으로 끝낼수 없고, 문화안에 정착되지 않으면 알수없는것이기도 하다.
13년... 다음에 입사한 후 운좋게도 개발문화, 애자일방법론에 관심이 많은 친구들이 있어 자연스럽게 내몸에도 흡수하게된 개발문화다. 어쩌다 보니 지금은 내가그런걸 알았었나 싶을정도가 되었지만 ㅎㅎ
애자일이라 쓰고 무한수정이라 읽는다. 어디서 오다가다 본 문장인데 아직도 기억이 나네 ㅎㅎ
통계를 통해 사용자의 반응을 보고, 수정이 필요한 항목을 분석해, 수정이 필요하다 판된되는 항목을 애자일 모델에 적용해 스크럼을 짜고 스프린트를 보완해 가기.
공통플랫폼을 제공하고 지원하는 소속이라 사용하게될 개발자들에게 실제 좋을거 같은 , 괜찮을거 같은 기능들을 제공했다. 공통플랫폼조직이라 어찌보면.. 생각보다 수월했던거 같고..
보완된 항목에 대해서도 마찬가지로 전후 비교를 하고, 분석해 더 유의미한 결과를 도출하게 되는 과정에 도달하는것.. 아 보기만 해도 이상적이다 ㅎㅎ 하지만 더 유의미한 결과를 도출하게 되는 과정은 매우 중요하다고 생각하다.
짧은 이터레이션을 가져가기 위해서 가장 중요한것은 테스트.. 테스트..
기술/비지니스 중심의 테스트가 가능하게 하기위해, 단위테스트가 왜 중요한지, 지속적인 통합 빌드가 왜 중요한지..
Fit / TDD / BDD / crossCheck / ruby라이브러리 Watir / selenuum / canoo webTest /
이쯤에서 애자일모델을 되새겨봐야겠다. 끝~ 정리해놓은 글이 없어.. 다른 글을 참고.. http://wingsh.tistory.com/122
Agile 방법론의 종류
- XP
· 테스트 강조, 용기/의사소통/피드백, 단순성, 12개 실천항목, 1~3주 반복
- SCRUM
· 프로젝트를 sprint(30일 단위 반복)로 분리
· 팀은 매일 Scrum(15분 정도) 미팅
· Iteration 계획과 Tracking에 중점
- DSDM
· 기능모델, 설계와 구현, 수행
· 3단계 사이클(2~6주)로 구성
- FDD
· 짧은 iteration(2주), 5단계 프로세스 (전체 모델 개발, 특성 list 생성, 계획, 설계, 구축)
· 설계, 구축 프로세스를 반복
- Crystal
· 프로젝트 상황에 다양한 방법론 적용
· Tailoring하는 원칙 제공
초기에 미리 정의된 요구사항
미리 요구사항을 파악하고 프로젝트 전체에 대한 분석이 가능
큰 릴리즈
정형화된 프로세스에 따라 주기 별 릴리스, 업데이트가 비교적 느림
계획중심
프로젝트에 대하여 완벽한 계획을 수립하고 진행
적은 의사소통
문서중심의 방법론으로 문서에 근거하여 프로젝트를 수행: 문서 중심
단계별 개발
초석부터 차근차근 단계를 거쳐 튼튼한 기반의 개발 (하드웨어 적합)
단계별 산출물 전달
계획 중심적 방법론으로 정해진 단계가 완성됨에 따른 산출물 점검
마지막 통합
초기 계획이 완전하다는 가정하에 중간 통합 없이 최종 프로세스 수행 후 통합 후 문제점 도출 및 해결
프로젝트 과정에 걸쳐 생기는 요구사항
미리 모든 요구사항을 알 수 없다는 가정하에 시간적 변화를 인지하고 지속적으로 요구사항을 수렴
작고 빠른 릴리즈
고객이 원하는 것을 파악하여 가능한 빨리 니즈를 충족 시키는 것을 중요시
학습 중심
최소한의 지식으로 시작하여 단계를 거듭, 학습
많은 의사소통
프로젝트 팀 간, 고객 간의 많은 의사소통으로 진행되는 프로젝트: 사람 중심
기능별 개발
고객의 니즈를 빠르게 반영하여 개발하는 과정을 짧은 주기로 반복
지속적인 산출물 전달
프로젝트 진행 중 잦은 산출물 공유로 수정사항에 빠르게 대처
잦은 통합
기능별 완료 시기에 맞춰 잦은 통합과 문제점 도출 및 해결.. 잦은 개발 테스트주기/ 지속적인 통합및 검증