애자일 스프린트, QA는 어떻게 일할까? (사용자 스토리부터 테스트까지)

많은 IT 기업이 ‘애자일’ 방식으로 일하고, ‘스프린트’라는 2주 정도의 짧은 단위로 움직입니다. 개발자와 기획자는 할 일이 비교적 명확해 보이는데, QA는 이 빠른 개발 주기 안에서 정확히 무엇을, 어떤 순서로 해야 할까요?

이번 글에서는 ‘애자일 스프린트’라는 실제 업무 환경을 바탕으로, QA의 역할과 업무 흐름을 단계별로 알아보겠습니다.

Q. 모든 일의 시작, ‘사용자 스토리’란 무엇인가요?

‘사용자 스토리(User Story)’는 애자일 개발에서 사용하는 ‘요구사항’의 한 형태입니다. 복잡한 기능 명세서 대신, ‘사용자’ 입장에서 원하는 ‘기능’과 그 ‘이유(가치)’를 간결한 문장으로 표현한 것입니다.

  • 기본 템플릿:
    • [사용자 유형]으로서, [원하는 기능]을 할 수 있다. 왜냐하면 [얻는 가치] 때문이다.
  • 예시:
    • “로그인한 사용자로서, 장바구니에 담은 상품을 삭제할 수 있다. 왜냐하면 잘못 담은 상품을 쉽게 뺄 수 있어야 하기 때문이다.”

Q. ‘사용자 스토리’를 받으면 QA는 무엇부터 해야 하나요?

‘인수 기준(Acceptance Criteria)’을 확인하고 질문하는 것부터 시작합니다.

  • 인수 기준이란?
    • 해당 사용자 스토리가 ‘완성’되었다고 팀 모두가 동의할 수 있는 구체적인 조건들의 목록입니다. 개발의 목표점이자, 테스트의 기준점이 됩니다.
  • QA의 역할:
    • QA는 이 인수 기준을 보며 숨겨진 조건이나 예외 케이스를 날카롭게 질문해야 합니다.
    • “삭제 버튼을 누르면, 정말로 삭제할 것인지 확인하는 팝업이 뜨나요?”
    • “장바구니가 비어있을 때 삭제 버튼은 어떻게 보이나요?”
    • “삭제 후 장바구니 총금액은 바로 업데이트되나요?”
    • 이처럼 QA의 질문을 통해 ‘인수 기준’을 구체적이고 풍부하게 만드는 것이 ‘QA 역할’의 가장 중요한 시작입니다.

Q. 스프린트가 시작되면 테스트는 언제, 어떻게 진행하나요?

애자일에서는 개발과 테스트가 거의 동시에 진행됩니다.

  • 1. 테스트 설계 (개발 진행 중):
    • 개발자가 코딩하는 동안, QA는 확정된 ‘인수 기준’을 바탕으로 테스트 케이스를 미리 설계하고 작성합니다. 개발이 끝나기를 기다리지 않습니다.
  • 2. 기능 테스트 (개발 완료 후):
    • 개발자가 특정 기능 개발을 완료하고 테스트 환경에 배포하면, QA는 즉시 작성해 둔 테스트 케이스를 기반으로 테스트를 실행합니다.
  • 3. 버그 리포팅 및 소통:
    • 버그가 발견되면, 즉시 JIRA 등에 상세히 등록하고 개발자에게 공유합니다. 이를 통해 ‘스프린트’ 기간 내에 버그가 빠르게 수정될 수 있도록 합니다.
  • 4. 회귀 테스트:
    • 스프린트 막바지에는, 새로 추가된 기능이 기존의 다른 기능에 나쁜 영향을 주지 않았는지 확인하기 위해 핵심 기능에 대한 회귀 테스트를 수행합니다.

결론: QA는 ‘팀의 품질 내비게이터’

애자일 스프린트에서 QA는 더 이상 개발의 마지막 단계에만 관여하는 사람이 아닙니다. 요구사항을 분석하는 가장 첫 단계부터 참여하여, 잠재적인 위험을 미리 알리고 테스트의 기준을 명확하게 만드는 ‘품질 내비게이터’의 역할을 수행합니다.

이처럼 개발 전 과정에 깊이 참여하여 빠른 피드백 루프를 만들고, 팀 전체의 품질에 대한 인식을 높이는 것이 현대적인 애자일 환경에서 QA가 갖춰야 할 핵심적인 역할이자 역량입니다.

댓글 남기기