공부/정보처리기사 필기

[정보처리기사 필기 개념 정리] 애자일 방법론 vs 전통적 방법론

aSpring 2021. 5. 5. 14:32
728x90
728x90

2020.12.31 - [프로그래밍] - [자격증 - 정보처리기사] 2021년 정보처리기사 자격증 준비 총 정리

 

1. 애자일 방법론

- 기능 중심 개발 (모듈 중심XXXX)

- 유형 : 스크럼, 린, XP(익스트림 프로그래밍)

- 절차/도구 X개인 소통

짧은 작업 계획 -> 변화에 유연/신속 대응

- 소프트웨어가 잘 '실행'되는 데 가치

- 피드백 중요

 

애자일 선언문 : 개/변/동/고

- 개인과 상호작용(공정/도구 X)

- 변화에 대응(계획)

- 동작하는 소프트웨어(문서)

- 고객과 협력(협상)

 

유형 : XP, SCRUM, LEAN

XP : eXtreme Programming

- 의사소통 개선, 즉각적 피드백 -> 소프트웨어 품질↑

- 1~3주의 반복(Iteration) 개발 주기

- 5가지 가치 : 용/단/의/피/존


Courage
용기를 가지고 자신감 있게 개발
코드 작성 전 테스트, 빠르게 피드백, 부합하지 못한 코드를 리팩토링할 수 있는 용기!
순성
Simplicity
필요한 것만 하고
그 이상의 것들 하지 마!
사소통
Communication
개발자, 관리자, 고객 간 원활한 소통
드백
Feedback
의사소통에 대한 빠른 피드백

Respect
팀원 간 상호 존중

- 12가지 기본원리

짝 프로그래밍
Pair Programming
개발자 둘이 짝으로 코딩
공동 코드 소유
Collective Ownership
누구든지 언제라도 코드 수정 가능
지속적인 통합
CI : Continuous Integration
매일 여러번씩 통합, 빌드
계획 세우기
Planning Process
고객이 요구하는 비느지스 가지 청의
개발자가 필요한 것은 무엇이며
어떤 부분에서 지연될 수 있는지 알려주어야 함
작은 릴리즈
Small Release
작은 시스템을 먼저 만들고
짧은 단위로 업데이트
메타포어
Metaphor
공통적 이름체계, 시스템 서술서 -> 고객과 개발자 간 의사소통을 원활히
간단한 디자인
Simple Design
가장 단순한 시스템 설계
테스트 기반 개발
TDD : Test Driven Develop
테스트 먼저 수행 -> 통과할 수 있도록 실제 코드 작성
(선 테스트 후 코딩)
리팩토링
Refactoring
기능을 바꾸지 않으면서 -> 재구성(중복제거, 단순화 등)
40시간 작업
40-Hour Work
개발자가 피곤해서 실수하지 않도록 주 40시간 이상 일하면 안됨
고객 상주
On Site Customer
개발자의 질문에 고객이 즉각 대답할 수 있도록
고객을 프로젝트에 풀타임으로 상주시킴
코드 표준
Coding Standard
모든 코드에 대한 코딩 표준 정의 for 효과적인 공동 작업

 

SCRUM(스크럼)

- 매일 정해진 시간/장소에서 짧은 시간 개발 -> 팀 프로젝트 관리

Backlog 제품/프로젝트에 대한 요구사항
Sprint 2~4주의 짧은 개발 기간 -> 반복 -> 품질 향상
Scrum Meeting
= Daily Meeing
매일 15분 미팅 -> To-Do List 계획 수립
Scrum Master 프로젝트 리더
- 문제 인지/해결
Spring Retrospective(회고) 스프린트 주기를 되돌아보며
-> 규칙 준수 여부, 개선점 확인/기록
-> 일정 주기 또는 해당 스프린트가 끝난 시점에 시행
Burn Down Chart 남은 백로그(요구사항) 대비 시간을 표현한 차트(그래픽적)
수직축 : 백로그
수평축 : 시간

 

LEAN

- 도요타 린 시스템 품질기법 -> SW 개발 프로세스에 적용 : 낭비 요소 제거 -> 품질 향상

- JIT(Just In Time), 칸반(Kanban) 보드 사용

- 7가지 원칙 : 낭/품/지/확/인/사/전

비제거 질 내재화 식 창출 늦은 빠른 람 존중 체 최적화

 

<애자일 VS 전통적 방법론>

비교 대상 애자일 방법 전통적 방법론
계획 수립 유동적 범위 설정 확정적 범위 설정(변화X)
업무수행 중심 관리자 주도 -> 명령, 통제
개인 단위
개발/검증 반복 주기 단위로 개발, 검증 분석 -> 설계 -> 구현 -> 테스트
순차적 수행
팀관리 평가 -> 업무 몰입 개별 평가 -> 경쟁
문서화 문서화 < 코드 강조 상세한 문서화 강조
성공요소 고객 가치 전달 계획/일정 준수
유형 XP, SCRUM, LEAN 폭포수, 프로토타입, 나선형

 

728x90
728x90