애자일 방법론

소프트웨어 개발방법에 있어 기존 문서를 통한 개발 방법(폭포수 모델, 나선 모형)이 아니라, 실질적인 코딩을 통한 방법론

기존 방법론이 계획을 통해 개발을 진행 하였다면 애자일 방법론은 앞을 예측하며 개발을 하지 않고, 

일정한 주기를 가지고 끊임없이 프로토 타입을 만들어내며 그때 그때 필요한 요구를 더해가며 소프트웨어를 개발해 나가는 방식


애자일 개발 프로세스

 특정 개발론이 아닌 애자일(Agile=기민한, 좋은것을 빠르고 낭비없게 만드는 것) 개발을 가능하게 해 주는 다양한 방법론 전체를 일컫는 말


애자일 개발 프로세스의 종류

  • 익스트림 프로그래밍(Extreme Programming, XP) - 이 방법은 고객과 함께 2주 정도의 반복개발을 하고, 테스트우선 개발(TDD)을 특징으로 하는 명시적인 기술과 방법을 가지고 있다.

  • 스크럼(scrum) - 30일마다 동작 가능한 제품을 제공하는 스프린트(Sprint)를 중심으로 하고 있다. 매일 정해진 시간에 정해진 장소에서 짧은시간의 개발을 하는 팀을 위한, 프로젝트 관리 중심의 방법론이다.

    • 스프린트(Sprint)

      • 반복적인 개발 주기 (회사에서 정하는 이터레이션이 개발 주기가 된다. 계획 회의 부터 제품 리뷰가 진행 되는 날짜 까지의 기간이 1스프린트 이다)

  • 크리스털 패밀리 - 이 방식은 프로젝트의 규모와 영향의 크기에 따라서 여러종류의 방법론을 제공한다. 그중에서 가장 소규모 팀에 적용하는 크리스털 클리어는 익스트림 프로그래밍 만큼 엄격하지도 않고 효율도 높지 않지만, 프로젝트에 적용하기 쉬운 방법론이다.

  • Feature-Driven Development - feature마다 2주정도의 반복 개발을 실시한다. Peter Coad가 제창하는 방법론으로써, UML을 이용한 설계 기법과도 밀접한 관련을 가진다.

  • Adaptive Software Development, ASD - 소프트웨어 개발을 혼란 자체로 규정하고, 혼란을 대전제로 그에 적응할 수 있는 소프트웨어 방법을 제시하기 위해 만들어진 방법론이다. 내용적으로는 다른 방법론들과 유사하지만, 합동 애플리케이션 개발(Joint Application Development, 사용자나 고객이 설계에 참가하는 개발 방법론)을 사용하고 있는 것이 조금 다르다.

  • 익스트림 모델링 - 익스트림 모델링은 UML을 이용한 모델링 중심 방법론이다. 다만, 여타 모델링 방법들과는 달리, 언제나 실행할 수 있고 검증할 수 있는 모델을 작성하는 공정을 반복해서, 최종적으로는 모델로부터 자동적으로 제품을 생성하게 한다.


애자일 선언문

  •  절차와 도구를넘어선 개성과 화합
  • 종합적인 문서화를 넘어선 동작하는 소프트웨어
  • 계약과 협상을 넘어선 고객과의 협력
  • 계획 준수를 넘어서 변화에의 대응
적용 대상
1. 별다른 계획 없이 마구잡이 소프트웨어 개발로 인해 팀 전체가 혼란에 빠져있을 때
2. 기존 전통방식으로 개발을 진행하여 오히려 해 당 프로세스업무가 너무큰 부담을 줄때


출처 - 위키백과
https://ko.wikipedia.org/wiki/%EC%95%A0%EC%9E%90%EC%9D%BC_%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4_%EA%B0%9C%EB%B0%9C


+ Recent posts