[정보처리기사] 애자일 방법론

Andy·2021년 6월 18일
0

정보처리기사

목록 보기
1/1

애자일이란?

절차보다 사람이 중심이 된다.
변화에 유연하고 신속하게 반응한다.
즉시 피드백을 받아 유동적으로 개발 할 수 있다.

애자일 방법론 유형에는 대표적으로 3가지가 있다.

익스트림프로그래밍(XP)

XP의 5가지 가치

  • 용기 : 용기를 가지고 자신감 있게 개발
  • 단순성 : 필요한 것만 하여 단순화한다.
  • 의사소통: 주체간의 원활한 의사소통이 가능하다.
  • 피드백: 신속한 피드백을 할 수 있다.
  • 존중: 팀원 간의 상호 존중이 필요하다.

XP 12가지 실천사항(기본원리)

  • 짝 프로그래밍 : 개발자 둘이서 짝으로 코딩을 한다.
  • 공동코드 소유 : 모든 코드는 개발자들이 공동으로 소유하며 누구든지 수정할 수 있다.
  • 지속적인 통합 : 매번 여러 번씩 소프트웨어를 통합하고 빌드한다.
  • 작은 릴리즈 : 작은 시스템을 먼저 만들고, 짧은 단위로 업데이트한다.
  • 메타포어 : 공통적인 이름이 체계를 갖고 공통적인 시스템 서술서를 통하여, 개발자와 고객간의 의사소통을 돕는다.
  • 계획 세우기 : 고객이 원하는 비즈니스 가치를 정의하고 개발자가 필요한 것은 무엇이며 어떤부분에서 지연될 수 있는지를 알려주어야 한다.
  • 간단한 디자인 : 요구상항에 적합하고 가장 단순화한 시스템을 설계해야 한다.
  • 리펙토링 : 프로그램의 기능을 바꾸지 않으면서 중복제거, 단순화 등을 위해 시스템을 재구성한다.
  • 코드 표준 : 효과적인 공동 작업을 위해서는 모든 코드에 대한 코딩 표준을 정의해야 한다.
  • 고객 상주 : 의사소통을 향상하기 위하여 개발자들의 질문에 즉각 대답 가능한 고객을 프로젝트에 풀타임으로 상주시켜야 한다.
  • 40시간 작업: 주 40시간 이상을 일하지 말아야한다. (효율성을 위하여)

스크럼(Scrum)

스크럼은 프로젝트 관리를 위해 상호, 점진적이 개발 방법론이며 매일 정해진 시간, 장소에서 짧은 시간의 개발을 하는 팀을 위한 프로젝트 관리 중심의 개발 방법론이다.

스크럼 주요 진행 과정

제품 백로그 -> 스프린트 -> 스프린트 계획회의 -> 스프린트 백로그 -> 일일 스크럼 회의 -> 실행 가능한 제품 개발

스크럼 용어개념

  • 제품 백로그 : 개발한 제품에 대한 요구 사항 목록이다.
  • 스프린트 : 반복적인 개발 주기, 2~4주 정도의 짧은 개발기간으로 개발 품질을 향상한다.
  • 일일 스크럼 회의 : 매일 15분 정도 진행되는 스크럼 회의
  • 스크럼 마스터 : 스크럼 프로젝트의 리더, 스크럼 진행 중 문제들을 인지하고 해결하는 역할
  • 스프린트 회고 : 스프린트 주기를 되돌아보며 정해 놓은 규칙을 잘 지켰는지 확인하고 개선점을 확인 및 기록하는 것을 말한다. 스프린트가 끝난 시점이나 일정 주기로 시행한다.
  • 번 다운 차트 : 남아 있는 백로그 대비 시간을 그래픽적으로 표현한 차트이다.

린(LEAN)

도요타의 린 시스템 품질 기법을 소프트웨어 개발에 적용한 것, 낭비 요소를 제거하여 품질을 향상한다. JIT(just in time), 칸반(kanban)보드를 사용한다.

7가지 원칙

  • 낭비의 제거: 불필요한 코드나 기능 불분명한 요구사항 등 품질의 영향을 미치지 않는 것들을 제거한다.
  • 품질 내재화 : 개발 초기부터 품질을 향상하도록 모듈화 한다.
  • 지식의 창출 : 학습을 하고 지식을 창출한다.
  • 늦은 확정 : 중요한 문제에 대한 의사결정을 최대한 미룬다.
  • 빠른 인도 : 최대한 빨리 결과물을 인도한다.
  • 사람 존중
  • 전체 최적화 : 요구사항 수집부터 제품을 릴리스하는 시점까지 모든 프로세스를 최적화 한다.
profile
Junior Software Developer

0개의 댓글