개발 Dev

애자일 소프트웨어 개발(agile software development)이란?

Tap to restart 2021. 1. 26. 12:00
반응형

애자일agile 뜻은?

agile은 사전을 찾아보면 '민첩한, 명민한, 기민한, 재빠른'의 뜻을 가진 형용사이다. 영영사전에 나온 뜻은 'moving quickly and lightly'이다.

 

애자일 소프트웨어 개발이란?

가볍고 빠르게 개발하자는 의미라고 볼 수 있다.

가장 정확한 것은 애자일 소프트웨어 개발 선언문을 봐야 알 수 있다.


Manifesto for Agile Software Development

We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

That is, while there is value in the items on
the right, we value the items on the left more.

(출처: Manifesto for Agile Software Development)

 

 

애자일 소프트웨어 개발 선언

우리는 소프트웨어를 개발하고, 또 다른 사람의 개발을
도와주면서 소프트웨어 개발의 더 나은 방법들을 찾아가고
있다. 이 작업을 통해 우리는 다음을 가치 있게 여기게 되었다:

공정과 도구보다 개인과 상호작용
포괄적인 문서보다 작동하는 소프트웨어
계약 협상보다 고객과의 협력
계획을 따르기보다 변화에 대응하기를

가치 있게 여긴다. 이 말은, 왼쪽에 있는 것들도 가치가 있지만,
우리는 오른쪽에 있는 것들에 더 높은 가치를 둔다는 것이다.

(출처: 애자일 소프트웨어 개발 선언)


Principles behind the Agile Manifesto


We follow these principles:

Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.

Welcome changing requirements, even late in
development. Agile processes harness change for
the customer's competitive advantage.

Deliver working software frequently, from a
couple of weeks to a couple of months, with a
preference to the shorter timescale.

Business people and developers must work
together daily throughout the project.

Build projects around motivated individuals.
Give them the environment and support they need,
and trust them to get the job done.

The most efficient and effective method of
conveying information to and within a development
team is face-to-face conversation.

Working software is the primary measure of progress.

Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.

Continuous attention to technical excellence
and good design enhances agility.

Simplicity--the art of maximizing the amount
of work not done--is essential.

The best architectures, requirements, and designs
emerge from self-organizing teams.

At regular intervals, the team reflects on how
to become more effective, then tunes and adjusts
its behavior accordingly. 

(출처: Principles behind the Agile Manifesto)

 

애자일 선언 이면의 원칙


우리는 다음 원칙을 따른다:

우리의 최우선 순위는, 가치 있는 소프트웨어를
일찍 그리고 지속적으로 전달해서 고객을 만족시키는 것이다.

비록 개발의 후반부일지라도 요구사항 변경을 환영하라.
애자일 프로세스들은 변화를 활용해 고객의 경쟁력에 도움이
되게 한다.

작동하는 소프트웨어를 자주 전달하라. 두어 주에서
두어 개월의 간격으로 하되 더 짧은 기간을 선호하라.

비즈니스 쪽의 사람들과 개발자들은 프로젝트 전체에
걸쳐 날마다 함께 일해야 한다.

동기가 부여된 개인들 중심으로 프로젝트를 구성하라.
그들이 필요로 하는 환경과 지원을 주고 그들이 일을
끝내리라고 신뢰하라.

개발팀으로, 또 개발팀 내부에서 정보를 전하는 가장
효율적이고 효과적인 방법은 면대면 대화이다.

작동하는 소프트웨어가 진척의 주된 척도이다.

애자일 프로세스들은 지속 가능한 개발을 장려한다.
스폰서, 개발자, 사용자는 일정한 속도를 계속 유지
할 수 있어야 한다.

기술적 탁월성과 좋은 설계에 대한
지속적 관심이 기민함을 높인다.

단순성이 -- 안 하는 일의 양을
최대화하는 기술이 -- 필수적이다.

최고의 아키텍처, 요구사항, 설계는
자기 조직적인 팀에서 창발한다.

팀은 정기적으로 어떻게 더 효과적이 될지
숙고하고, 이에 따라 팀의 행동을 조율하고 조정한다. 

(출처: 애자일 선언 이면의 원칙)


대략 요약하면 작동하는 소프트웨어 제작 → 고객의 피드백 의견 수렴 → 작동하는 소프트웨어 제작을 반복하면서 소프트웨어를 제작하는 방법론이라고 볼 수 있다. 특징은 문서보다는 실제 개발, 코딩을 중시한다는 점이다.

 

반응형