 |  |
|
난이도 : 초급 Scott W. Ambler, Practice Leader, Agile Development, Rational Methods Group, IBM
옮긴이: 박재호 이해영 dwkorea@kr.ibm.com
2008 년 6 월 17 일 애자일 모델러는 복잡한 소프트웨어를 개발하기 위해 전화번호부만큼 두꺼운 문서를 만들 필요가 없다고 믿습니다.
단순하게 말해, AM은 소프트웨어 모델링을 위한 가치, 원칙, 방법을 모아놓은 집합이며, 효율적이며 가벼운 방식으로 소프트웨어 개발 프로젝트에 적용할 수 있다. AM은 모델링에 있어 기민한 접근 방식을 따를 때, 다음과 같은 요소에 초점을 맞추도록 제안한다.
- 프로세스와 도구보다 팀 성원과 상호 작용을
- 꼼꼼한 문서보다 돌아가는 소프트웨어를
- 계약 협상보다 고객과 협력을
- 계획 고수보다 변화에 대응을
AM 목표는 다음과 같다.
-
효율적이며 경량 모델링 방법에 어울리는 가치, 원칙, 방법 집합을 실전에 투입하는 방법을 정의하고 보여준다.
AM의 비밀은 유스케이스 모델, 클래스 모델, 자료 모델, 사용자 인터페이스 모델과 같은 모델링 기법 자체에 있지 않고, 적용하는 방법에 있다.
-
XP와 같은 애자일 방식으로 소프트웨어 프로젝트에 모델링 기법을 적용하는 방법을 소개한다.
XPE(eXtreme Programming Explained)에서 켄트 벡은 다음과 같이 말했다. "우리는 아주 단순하게 시작해 끊임없이 시스템 설계를 개선할 것이다. 우리는 유용하다고 증명하지 못한 복잡성은 제거할 것이다." 몇몇 애자일 반대자의 주장과는 거꾸로, XP 접근 방식을 활용하면 모델링에 시간을 투자하는 셈이다. 물론 다른 선택의 여지가 없을 경우에. 종종 단순히 코드를 끄적이는 경우보다 생각을 정리하기 위해 원과 선을 그리고 문제를 해결하기 위해 여러 방법을 비교하는 과정에서 개발자 생산성은 획기적으로 높아진다.
-
UP(Unified Process)를 따르는 (애자일이 아닌) 프로젝트를 개선하기 위해 애자일 모델링 접근 방식과 소통한다.
UP를 위한 개선된 생명주기는 요구 사항, 비즈니스 모델링, 분석과 설계, 기반 구조 관리와 같은 여러 모델링 위주 작업 흐름을 포함한다. 여기서 액면대로 이런 기법을 적용하면 상당한 부담이 된다. AM은 UP 프로젝트(또는 유사 프로젝트)에 들어가는 모델링 노력을 효율적으로 개선하도록 돕는다.
핵심 AM은 단순히 경험이 풍부한 여러 소프트웨어 개발자가 공유하는 원칙과 가치를 반영한 방법 집합이라고 생각한다. 내 경험에 따르면, 이런 방법은 대다수 소프트웨어 개발 프로젝트에 적용이 가능하다. (물론 AM 목표 중 하나는 XP 접근 방법을 따를 경우 모델링 방법을 설명하는 데 있긴 하지만) AM이 기술하는 접근 방식을 활용하기 위해 (XP와 같은) 애자일 소프트웨어 프로세스를 따르는 프로젝트에만 적용할 필요가 없다. 프로젝트 팀은 AM에서 이익을 얻기 위해 AM이 추구하는 모든 방법, 원칙, 가치를 적용할 필요는 없다. 환경에 맞춘 독특한 필요성을 반영하기 위해 소프트웨어 프로세스를 다듬어야 한다고 굳게 믿어왔다. 물론 AM이 제공하는 모든 목표를 채택할 경우 XP와 같은 방법을 사용하면 좀 더 성공 확률이 높아지리라 생각한다.
참고자료
-
Agile Modeling (AM) 홈 페이지
-
애자일 소프트웨어 개발 선언문
-
The Object Primer 2nd Edition
. Ambler, S.W. 지음, New York: Cambridge University Press, (2001년).
-
Extreme Programming Explained: Embrace Change
by Beck, K. 지음, Reading, MA: Addison Wesley Longman, Inc., (2000년).(한국어판: "익스트림 프로그래밍, 제2판 : 변화를 포용하라", 인사이트 2006년 출간)
-
Planning Extreme Programming
Beck, K. Fowler, M. 지음, Addison Wesley Longman, Inc., (2001년).
-
eXtreme Programming (XP) 홈 페이지
-
Enhancing the Unified Process: Software Process For Large-Scale,
Mission-Critical Systems, a Ronin International white paper
필자소개  | |  | Scott W. Ambler는 IBM 메서드 그룹에서 애자일 개발 책임자를 맡고 있다. Ambler는 프로세스 문서를 만들고, 컨퍼런스에서 연설하며, 소프트웨어 프로세스 개선을 돕기 위해 전세계에 흩어진 IBM 고객과 더불어 일한다. Ambler는 여러 책을 저술했으며, 웹 사이트인 www.ambysoft.com에서 목록을 제공한다. Ambler는 Rational Thought Leader이며, 홈페이지는 여기를 참조하기 바란다. |
기사에 대한 평가
 |
| 이 문서 북마킹 하기
|
|  |