2001년에 소프트웨어 개발자 그룹이 공동으로 작성, 소프트웨어 개발에서의 효율성과 유연성을 강조하는 철학적 원칙과 가치를 명시한 문서로, 정해진 틀에 맞춰서 개발하는 것이 아니라 그때 그때 융통성 있게 대응하며 최선의 결과물을 내는 것을 목표로 하는 것이다.
애자일 선언의 4가지 핵심 가치
- 프로세스와 도구보다 개인과 상호작용을 중시합니다.
개발의 핵심은 사람이며, 도구와 프로세스는 이를 돕기 위한 수단일 뿐입니다. - 포괄적인 문서화보다 작동하는 소프트웨어를 중시합니다.
문서화보다 중요한 것은 실제로 잘 작동하는 소프트웨어입니다. - 계약 협상보다 고객과의 협력을 중시합니다.
고객과의 협력 및 소통을 통해 더 나은 결과를 도출합니다. - 계획을 따르기보다 변화에 대응하는 것을 중시합니다.
변화는 필연적이므로, 계획을 고수하기보다 변화에 유연하게 대처하는 것이 중요합니다.
이는 전통적으로 사용되어진, 계획과 산출물을 중시하는 V모델이나 폭포수모델 등과는 정 반대되는 개념이라고 볼 수 있다. 즉 상황에 따라 유연하게 대처하여 최선의 결과물을 내자! 가 핵심이다.
이런 유연한 대응에 잘맞는 것이 객체지향적 언어라고 생각한다. 객체지향적으로 잘 설계된 프로그램은 변경 및 확장이 빠르고 자유롭기 때문이다. 특히 요즘같이 빠르게 변화하는 시대에 고객의 요구도 빠르게 변화할 것이다. 이에 맞추어 대응하기에는 객체지향적언어가 알맞고, 그렇기에 객체지향언어가 많이 사용되어지는 이유가 아닐까? 하는 생각이 든다.
'CS > 소프트웨어공학' 카테고리의 다른 글
[디자인패턴] 싱글톤 Singleton (0) | 2024.11.12 |
---|---|
디자인 패턴 (Design Pattern)이란? (0) | 2024.04.17 |