1 min to read
Agile 이란?
Agile에 대한 이해
해당 글은 아래 블로그에서 참고 하였습니다.
https://brunch.co.kr/@insuk/5
애자일(agile :: 기민한, 재빠른, 민첩한) 이란?
- 애자일은 흔히들 “방법론” 이라고 이야기 한다. “방법론” 이라는 말은 처음 접할 때 쉽게 가슴에 와 닿는 용어는 아닌 듯 싶다. 그렇다면 “프로세스”는 어떤 가? 그저 그렇다. 그냠 쉽게 “일하는 방삭” 정도로 생각 해 보자.
- 폭포수 개발 방식(Waterfall model)
- 요구사항 분석 - 설계 - 개발 - 테스트 - 배포
- 현재 해결하고자 하는 문제점이 무엇인지 명확 하다면 해볼만한 방식
소프트웨어 개발 프로젝트 대부분은 힘들다
- 고객 요구사항 변경 문제로 인한 소프트웨어 개발 정체
- 대부분의 고객 들은 본인의 필요사항을 잘 어필하지 못한다.
- S/W 개발 부분에 대해 잘 알지 못하기 때문에 요구사항이 추상적 이다.
- 대한민국 S/W은 고객들이 생각하기에 공짜라는 생각이 강하기 때문에 레이아웃 이나 여러 기능 요구사항을 자주 번복 한다.
- 외국은 이러한 부분에 대해 비용이 발생하기 때문에 철저한 분석 하에 실행 된다.
위 같은 사항을 해결하기 위해 만들어진 “애자일 소프트웨어 개발 선언”
- 애자일 선언 본문 : http://agilemanifesto.org/iso/ko/manifesto.html
- JavaTest FrameWork인 JUnit으로 유명한 켄트백 아저씨의 저서 “익스트림 프로그래밍” 36P에는 아래의 내용이 수록되어 있다.
소프트웨어의 모든 것은 변한다. 요구사항은 변한다. 설계도 변한다. 비즈니스도 변한다. 기술도 변한다. 팀도 변한다. 팀 구성원도 변한다. 변화는 반드시 일어나기 때문에, 문제가 되는 것은 변화가 아니다. 그보다는 변화를 극복하지 못하는 우리의 무능력이 문제다.
그래서 애자일이 뭔데?
- 요구사항 증명 프로토타입 프로그램 개발 -> 고객 피드백 -> 다시 반영한 요구사항으로 프로토타입 프로그램 수정 -> 반복 -> 완성 -> 배포 -> 유지보수
- 전체 스케치에서 단계별로 세부사항을 애자일 스럽게 고객의 요구사항을 반영 하면서 스텝을 밟아가면 개발 중 애로사항을 최대한 줄일 수 있다.
애자일 실천을 위한 도구 스크럼(Scrum)
- 다른 도구에는 Kanban, eXtream Programmin(XP), Lean SW Devlopment 등이 존재한다.
- 애자일 방법론 적용을 잘 하기 위한 퍼실리테이터 역할을 하는 롤이 바로 스크럼 마스터 이다.
나의 생각
- 사실 위 글을 읽으면서 SW공학적인 여러 방면의 개발 방법론, SW 패턴 등 을 접하면서 아직 배워야 할 것이 많다 라고 요즘 더더욱 느끼는 나날 입니다. 단순히 개발 스킬 뿐만이 아닌 좀더 견문을 넓여 숲을 보아야 한다 생각합니다.
Comments