1. 스크럼 기법
- 팀이 중심이 되어 개발의 효능을 높인다
- 팀원 스스로가 스크럼 팀 구성
- 개발 작업에 관한 모든 것을 스스로 해야함
- 스프린트는 2-4주 정도의 기간으로 진행
1-1) 제품 책임자 (PO: Product Owner)
- 이해관계자들 중 제품에 대한 이해도가 높고, 요구사항을 책임지고 의사결정함
- 주로 개발 의뢰자, 사용자가 담당
- 요구사항이 담긴 *백로그(backlog) 작성, 백로그 우선순위 지정
- *백로그: 제품 개발에 필요한 요구사항을 모두 모아 우선순위를 부여해 놓은 목록
1-2) 스크럼 마스터 (SM: Scrum Master)
- 스크럼 팀이 스크럼을 잘 수행할 수 있도록 객관적인 시각에서 조언해주는 가이드 역할
- 팀원을 통제하는 것이 목표가 아님
- 일일 스크럼 회의 주관
- 진행사항 점검, 장애요소 공론화하여 처리
1-3) 개발팀 (DT: Developer Team)
- 제품 책임자(PO) 와 스크럼 마스터(SM) 를 제외한 모든 팀원
- 최대인원 7-8명
- 백로에 *스토리를 추가하는 것 가능, 우선순위는 지정 못함
- *스토리: 백로그에 작성되는 요구사항
2) 스크럼 개발 프로세스
1. 제품 백로그 (Product Backlog)
- 요구사항 우서순위에 나열한 목록
- 사용자 스토리 기반 릴리즈 계획 수립 (Release Plan)
2. 스프린트 계획회의 (Sprint Planning Meeting)
3. 스프린트 (Sprint)
4. 일일 스크럼 회의 (Daily Scrum Meeting)
5. 스프린트 검토 회의 (Spring Reveiw)
6. 스프린트 회고 (Sprint Retrospective)
* 계스일검회
2. XP (eXtreme Programming)
- 요구사항에 유연하기 위해, 고객의 참여와 개발 과정의 반복을 극대화 하여 개발 생산성을 향상시키는 방법
2-1) XP 개발 프로세스
- 사용자 스토리 (User Story)
- 고객의 요구사항을 간단한 시나리오로 표현한 것
- 내용은 기능 단위로 구성, 필요한 경우 간단한 테스트 사항(Test Case)도 기재
- *릴리즈 계획 수립 (Release Planning)
- 몇 개의 스토리가 적용되어 부분적으로 기능이 완료된 제품을 제공하는 것
- 부분 혹은 전체 개발 완료 시점에 대한 일정 수립
- *릴리즈: 몇개의 요구사항이 적용되어 부분적으로 기능이 완료된 제품을 제공하는 것
- 스파이크 (Spike)
- 요구사항의 신뢰성을 높이고 기술 문제에 대한 위험을 감소시키기 위해 별도로 만드는 간단한 프로그래밍
- 처리할 문제 외의 다른 조건은 모두 무시하고 작성
- 주기(Iteration, 이터레이션)
- 하나의 릴리즈를 더 세분화 한 단위
- 승인검사 (Acceptance Test, 인수 테스트)
- 하나의 이터레이션 안에서 계획된 릴리즈 단위의 부분 완료 제품이 구현되면 수행하는 테스트
- 릴리즈를 소규모로 하게 되면, 고객의 반응을기능별로 확인할 수 있어, 고객의 요구사항에 좀 더 유연하게 대응 가능
- 소규모 릴리즈 (Small Release)
- 릴리즈를 소규모로 하게 되면 고객의 반응을 기능별로 할 수 있음
- 고객 요구사항에 좀 더 유연하게 대응
Q. XP의 5대 핵심가치
- 용기
- 단순성
- 의사소통
- 피드백
- 존중
- 용단의피존
Q. XP의 기본원리, 주요 실천 방법
- Whole Team (전체 팀)
- Small Releases (소규모 릴리즈)
- Test-Driven Development (테스트 주도 개발자)
- Continuous Intergration (계속적인 통합)
- Collective Ownership (공동 소유권)
- Pair Programming (짝 프로그래밍)
- Design Improvement (디자인 개선)
- Refactoring (리팩토링)
- 전소테 계공짝디리
'정보처리기사 (필기) > 1. 소프트웨어 설계' 카테고리의 다른 글
[정보처리기사] CBT 모의고사 202108~202203 개념 - 1과목 (0) | 2022.04.18 |
---|---|
[정보처리기사] 1-5. UML (Unified Modeling Language) (0) | 2022.04.16 |
[정보처리기사] 1-4. 요구사항 정의 (0) | 2022.04.16 |
[정보처리기사] 1-3. 개발 기술 환경 파악 (0) | 2022.04.12 |
[정보처리기사] 1-1. 소프트웨어 생명주기 (SDLC) (0) | 2022.04.11 |