공부/소프트웨어공학

[소프트웨어공학] 애자일(Agile)이란?

돌멩이수프 2024. 3. 25. 15:07
728x90

 

Agile Process, Agile Software Development, Agile Methodology ... 부르는 이름도 많은 애자일!

 

"고객에게 가치가 있는 software를 일찍, 지속적으로 전달하여 고객을 만족시켜라."

 

 

애자일은 software를 개발하는 방식 중 하나다. 이전에 설명한 폭포수 방식과 개념적으로 반대되는 방식이다.

폭포수가 일방적으로 완벽히 정해진 스케줄을 그대로 따르며 선형적으로 진행하는 방식이었다면 애자일은 작은 iteration(또는 sprint, 주기)마다 제품을 만들고 고객과 끊임없이 소통하며 더 나은 production을 제작하는 방식이다.

IID(Iterative and Incremental Development) 방식 채용!

 

작업 우선순위가 중요하며 시간이 지날수록 production의 가치는 올라가는 동시에 위험요소는 내려간다.(시간이 지날수록 위험 요소가 올라갔던 폭포수와 다른 점)

 

 

Self-organizing

팀은 작고 단단하게 작동한다. 

Cross-functional

작은 팀 안에 모든 기술력을 지니고 있어야 한다.

 

Iterative and Incremental Development(IID) 반복적이고 점진적인 개발 방법

➡ 매 iteration마다 실행 가능한 production이 나온다. 

 

 

1️⃣ Individuals and interactions

2️⃣ Working software

3️⃣ Customer collaboration

4️⃣ Responding to change

 

 

📛 단점 📛

- 예측 가능성이 부족하다. 

- 고객 의존성이 높다.

- Scope creep

728x90