프로젝트

일반

사용자정보

애자일(AGILE) » 이력 » 버전 1

이태훈, 2022/05/03 02:15

1 1 이태훈
h1. 애자일(AGILE)
2
3
* 애자일 방법론은 소프트웨어 개발 방법에 있어서 아무런 계획이 없는 개발 방법과 계획이 지나치게 많은 개발 방법들 사이에서 타협점을 찾고자 하는 방법론입니다. 애자일 방법론과 다른 고전적인 방법론(폭포수, 나선 모형)과 구별되는 가장 큰 차이점은 lessdocument-oriented, 즉 문서를 통한 개발 방법이 아니라, code-oriented, 실질적인 코딩을 통한 방법론이라는 점입니다. 애자일 개발 프로세스는 어느 특정 개발 방법론을 가리키는 말은 아닙니다. "애자일(Agile = 민첩한, 좋은것을 빠르고 낭비없게 만드는 것) 개발을 가능하게 해 주는 다양한 방법론 전체를 일컫는 말입니다.
4
5
h3. 애자일에서의 일의 단위
6
7
* Theme > Epic > Story(기본단위) > Task(티켓 할당 단위)
8
9
# Theme : 프로젝트 목표
10
# Epic : 프로젝트에 필요한 기능 정리(Story를 모아서 Epic을 구성)
11
# Story : 프로그램을 사용할 때 고객의 행동 정의
12
# Task : 고객이 행동을 할 수 있도록 실제 개발 되어야 하는 단위
13
14
h3. 애자일 방법론의 진행 과정
15
16
# [[계획 및 분석]]
17
# [[설계]]
18
# [[개발]]
19
# [[프로그램 테스트]]
20
# [[검토]]
21
22
* 위 5단계를 요구 사항의 우선 순위에 따라 반복 진행합니다.
23
24
h3. 애자일 방법론의 특징
25
26
* 고객과 개발자의 지속적인 소통을 통하여 변화하는 요구 사항을 신속하게 수용합니다.
27
* 개발자 개인의 가치보다는 팀의 목적을 우선시하며 고객의 의견을 가장 우선시합니다.
28
* 팀원들과 주기적인 회의 및 제품 시현을 통해 문제에 대응합니다.
29
* 프로젝트를 진행하면서 프로그램을 시행해보고 고객으로부터 피드백을 받을 수 있습니다.
30
* 내부 구조 형성을 통한 비용 절감에 힘쓰는 동시에 프로그램 품질 향상을 위해 노력합니다.
31
32
h3. 애자일 방법론의 장점
33
34
# 프로젝트 계획에 걸리는 시간을 최소화 할 수 있습니다.
35
# 점진적으로 테스트를 할 수 있어서 버그를 쉽고 빠르게 발견할 수 있습니다.
36
# 계획 혹은 기능에 대한 수정과 변경에 유연합니다.
37
# 고객 요구 사항에 대한 즉각적인 피드백에 유연하며, 프로토타입 모델을 빠르게 출시할 수 있습니다.
38
# 빠듯한 기한의 프로젝트를 빠르게 출시할 수 있습니다.
39
40
h3. 애자일 방법론의 단점
41
42
# 확정되지 않은 계획 및 요구 사항으로 인한 반복적인 유지 보수 작업이 많습니다.
43
# 고객의 요구 사항 및 계획이 크게 변경될 경우 모델이 무너질 수 있습니다.
44
# 개인이 아닌 팀이 중심이 되다 보니 공통으로 해야 할 작업이 많을 수 있습니다.(회의, 로그 등)
45
# 반복적인 업무로 속도는 빠를 수 있으나 미흡한 기능들에 대한 대처가 필요합니다.
46
# 확정되지 않은 계획으로 개발 진행 시 이해하지 못하고 진행하는 부분이 많을 수 있습니다.
47
48
h3. 애자일 방법론의 종류
49
50
* [[스크럼(Scrum)]]
51
* [[칸반(Kanban)]]
52
* [[익스트림 프로그래밍(Extreme Programming, XP)]]