티스토리 뷰

카테고리 없음

애자일 개발 방법론

최초의 펭귄 2018. 5. 22. 17:30

안녕하세요. 오늘은 애자일이란는 개발 방법론에 대해 알아보는 시간에 가져보겠습니다.
다양한 곳의 내용을 조합, 각색, 정리하였으며 조사한 사이트의 링크는 글 하단에 남기겠습니다.

애자일 개발 방법론이란?

사용자의 요구사항을 받에 이를 통해 계획을 정하고 개발을 진행하였던 기존의 방법론과 다르게
앞을 예측하여 계획, 설계를 진행하지 않으며 요구사항에 명시된 다양한 기능을 일정한 주기를 가지고 끊임없이 프로토 타입을 만들며 이를 통해 사용자의 피드백을 받아 하나의 커다란 소프트웨어를 만드는 개발 방법론 입니다.

개발 배경

소프트웨어 개발은 다른 공학적인 프로세스와는 큰 차이가 있음을 인지하는 곳에서 부터 시작되었습니다.
소프트웨어 개발은 고객에 요구에서부터 시작되며 고객은 자신의 요구를 잘 표현하지 못합니다.
그렇기에 고객의 요구는 끊임없이 수정, 삭제, 추가 됩니다.

여기서 기존의 공학적인 프로세스 즉 폭포수 개발 방식은
요구사항 분석 -> 설계 -> 개발 -> 테스트 -> 배포 로 구성됩니다.

폭포수 개발 방식은 요구사항 분석 단계에서 고객의 모든 요구를 추출하여야 하며 요구사항 분석에서 실수나 오차가 발생하면 이 후의 모든 작업에서 문제가 발생하게 되고 결국 소프트웨어는 실패하게 됩니다.

"소프트웨어의 모든 것은 변한다. 요구사항은 변한다. 설계도 변한다. 비지니스도 변한다. 기술도 변한다. 팀도 변한다. 팀 구성원도 변한다. 변화는 반드시 일어나기 때문에, 문제가 되는 것은 변화가 아니다. 변화를 극복하지 못하는 우리의 무능력이 문제다."
켄트백

요구사항 분석 단계에서 모든 요구사항을 추출하는 방식 대신
다양한 변화 즉 요구사항 변화에 맞추어 소프트웨어가 유연하게, 민첩하게 변화하는 개발 방식인
애자일 개발 방법론이 나오게 되었습니다.

특징

애자일 개발 방법론(애자일)은 짧은 주기로 고객에게 보여줄 수 있는 프로토타입을 개발하며,
프로토타입을 이용하여 고객의 요구사항에 대한 커뮤니케이션과 피드백을 진행합니다.
프로토타입은 소프트웨어를 가시화 하기에 고객이 생각하는 요구사항을 쉽게 얻을 수 있으며
현재의 진행상황까지 쉽게 알려 줄 수 있는 장점이 있습니다.
고객의 피드백을 바탕으로 기존의 요구사항을 수정, 삭제, 추가하며 수정된 요구사항을
다시 주기에 맞추어 개발하고 다시 프로토타입을 제작합니다.

애자일은 각 주기에 맞추어 기능 하나 하나 조각내어 개발하는 방법론이 아닌
각 주기마다 개발한 기능이 동작하는 하나의 소프트웨어(프로토타입)을 만들어야 합니다.

주기마다 요구사항을 구현한 프로토타입을 제작하며 이를 통해 사용자의 원하는 요구로
요구사항을 개선시키는 개발 방법론입니다.

마치며

애자일의 세부방법론은 다음 시간에 소개하겠습니다.
제가 참조했던 사이트는 다음과 같습니다.
애자일의 정의 - 위키, 애자일 개발 배경, 특징 - Brunch insuk
윗 글의 질문은 하단에 달아주세요!

감사합니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday