티스토리 뷰

728x90
반응형

목차

     

    흔히 애자일 방법론이라 불리는 애자일 프로세스는 특정한 하나의 방법론을 가리키는 것이 아니다.

     

    애자일(Agile = 기민한, 재빠른)한 개발을 하도록 도와주는 다양한 방법론 전체를 아우르는 단어라고 보는 게 정확하다.

     

    이에 대해서는 위키백과에 너무도 상세하게 정리가 되어있으므로, 나는 필요한 부분만 정리하는 걸 목표로.

     

    Background

     

    애자일 프로세스의 등장 배경에는 기존에 사용되던 폭포수 방법론에 대한 회의가 있다.

     

    다른 말로는 소프트웨어 개발과 다른 공학의 프로세스 사이의 큰 차이점에 대한 인지가 있다고 볼 수도 있다.

     

    소프트웨어 개발은 유동적이고, 개방적이며, 고객의 요구사항은 자주 바뀌어 예측 가능하지가 않다.

     

    따라서 제한된 시간과 비용 안에서 불완전한 정보와 예측 불가능한 변경사항만을 가진다는 전제 하에

     

    가능한 합리적인 답을 내도록 하는 것이 애자일 프로세스의 목적이라고 할 수 있다.

     

    Overview

     

    철저하고 견고한 계획 수립이 불가능하다면 어떤 방식을 취해야 할까?

     

    애자일 프로세스는 위와 같이 지나치게 많은 계획과 그 반동인 아무 계획도 없는 개발 사이에서 타협점을 제시한다.

     

    그 타협점이란 보통은 문서 기반의 개발(Document-Oriented)이 아닌 코드 중심의 개발(Code-Oriented)이며,

     

    짧은 주기를 가진 프로세스를 반복해서, 실질적인 코딩을 통해 해결하는 것을 가리킨다.

     

    출처: https://www.mk.co.kr/economy/view/2018/718895

     

    그 핵심은 앞날을 예측해 철저한 계획을 수립 후 순차적으로 개발하는 예측형 스타일이 아닌,

     

    빠른 주기로 프로토 타입을 완성해 고객의 요구를 반영하고 수정하는 적응형 스타일이라 할 수 있다.

     

    이에 대한 기술적인 해결책이 바로 객체지향 프로그래밍으로, 객체 간의 결합을 느슨하게 만들어 필요한 부분을 먼저 개발하는 것이다.

     

    기존의 폭포수 모델, 혹은 계획 기반 개발은 중간에 조금이라도 틀어지게 되면 반복적인 철야와 지연,

     

    심하면 고객의 요구사항을 위해 처음부터 다시 개발하는 일이 생길 수 있지만

     

    애자일 프로세스를 적절히 이용하면 그런 상황을 미연에 방지할 수도 있다.

     

    Methods

     

    애자일 프로세스에는 대략 다음과 같은 것들이 있다.

     

    • 익스트림 프로그래밍(XP) - 고객과 함께 2주간의 일정으로 반복 및 테스트 주도 개발(TDD)
    • 스크럼(Scrum) - 한 달마다 프로토타입을 제공하는 스프린트를 중심으로 한 개발
    • 크리스털 패밀리
    • Feature-Driven-Development - Feature마다 2주의 반복 개발
    • Adaptive Software Development - 빠른 적응을 가치로 하는 합동 애플리케이션 개발
    • 익스트림 모델링 - UML을 사용한 모델링 중심 방법론

     

    Manifesto

     

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

    우리는 소프트웨어를 개발하고, 또 다른 사람의 개발을 도와주면서 소프트웨어 개발의 더 나은 방법들을 찾아가고 있다.

    이 작업을 통해 우리는 다음을 가치 있게 여기게 되었다:

     

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

     

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

     

    출처: http://agilemanifesto.org/iso/ko/manifesto.html

     

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

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

    agilemanifesto.org

    반응형
    댓글
    공지사항
    최근에 올라온 글
    최근에 달린 댓글
    Total
    Today
    Yesterday
    링크
    «   2025/01   »
    1 2 3 4
    5 6 7 8 9 10 11
    12 13 14 15 16 17 18
    19 20 21 22 23 24 25
    26 27 28 29 30 31
    글 보관함