본문 바로가기

프로그래밍/CS

에자일(Agile) 방식

에자일(Agile) 방식

등장 배경

초기 소프트웨어 개발 방법은 계획 중심의 프로세스로 진행되었으나 90년대 이후 소프트웨어 분야가 넓어지면서 소프트웨어 사용자들이 일반 대중들로 바뀌기 시작하고, 소프트웨어 트랜드 또한 급격히 변화하면서 비즈니스 사이클이 짧아지고 SW개발의 불확실성이 높아지게 되었다.

이러한 상황에 따라 기존 계획 중심의 프로세스 방식을 개발 과정에 적용하는 것이 어려워졌고 이에 따라 새로운 SW 개발방법인 에자일 방식이 등장하였다,

애자일이란?

개발 과정에서의 협력피드백을 더 자주, 일찍, 잘 하는 것이다.

1. 협력

  • 소프트웨어를 개발하는 사람들 간의 협력
  • 스스로 느낀 통찰을 협력을 통해 타인에게 전달
  • 예상치 못한 팀의 기대 효과를 가져옴

2. 피드백

  • 학습의 가장 큰 전제조건. 내가 어떻게 했는지 확인하면서 학습을 진행해야 한다.
  • 소프트웨어의 불확실성이 높을수록 학습의 중요도가 높아진다.
  • 일을 잘하는 사람일수록 피드백을 찾는 능력이 뛰어나다.
  • 내부적으로는 내가 만든 것이 어떻게 됐는지 확인하고, 외부적으로는 내가 만든 것을 사용한 사람들의 피드백으로 새롭게 배우는 것

불확실성에 대한 대응

전통적인 방법론과 에자일 방법론은 불확실성에 대해 대응하는 방법이 다르다.

전통적 방법론(Waterfall)
: '그때 계획 세울 때 좀 더 잘 세워둘껄.. 
이런 리스크도 생각했어야 했는데ㅠ 일단 계속 진행하자'

애자일 방법론
: '이건 생각 못했네. 어쩔 수 없지. 다시 빨리 수정해보자'

에자일 방법론은 개발 과정에 있어서 시스템 변경사항을 유연하게 대응할 수 있도록 방법론을 제공한다.


출처 링크