3. About Waterfall
• Waterfall의 특성
• 절차 지향적 흐름과 이에 따른 System 구성
• 각 영역의 전문성에 보다 초점을 두고 단계/순차/체계적 진행
• 프로젝트의 진행 과정을 세분화하여 관리의 용이성을 제공
• 목표물이 과정의 후반부에 가시화 되는 특성
8. • 계획 기반의 기존 방법론에 대한 대안
About Agile
• 절차와 도구를 넘어선 개성과 화합
• 종합적인 문서화를 넘어선 동작하는 소프트웨어
• 계약과 협상을 넘어선 고객과의 협력
• 계획 준수를 넘어서 변화에의 대응
eXtreme Programming
Scrum
Feature Driven
Test Driven
Adaptive Software Development
9. Waterfall vs Agile
Waterfall
• 현업, 개발, 운영이 모두 분리
• 협업의 경우 개별 방안에 의해 진행
• 요구사항, 산출물, 소스 각각 분리
• 빅뱅 형태의 대규모 배포를 진행
• 다양한 개별 업무 시스템 사용
Agile
• 현업, 개발, 운영의 유기적인 협업
• 협업 환경을 기본으로 최대한 공유
• 요구사항부터 산출물까지 모두 연결
• 잦은 배포를 통한 Risk 감소
• 통합 및 최대한 자동화 된 협업 환경
10. 이 또한 현실은…
팀장님은 그저 나에게 Agile을 잘 하라고 하셨지…….
그런데 나는 누구….여긴..어디? 홀호렇ㄹ핧라ㅓ
11. Agile을 활용하기 위한 System 구성
• System을 구성하기 위해 검토해야 할 요소
• 경험적 프로세스 제어 모델의 반영
• 요구사항–설계–Backlog–개발 산출물–배포에 이르는 통합 연계 환경
• 각 업무 간 협업 및 공유가 가능한 환경
• 잦은 변화에 대해 민첩하고 원활한 대응이 가능한 구성
12. How?
• Agile을 추구하지만 추종하지 않는 형태
• 현실과 이상의 괴리를 최소화 할 수 있는 합의점을 도출
• 기존 자산과의 원활한 융합
• 빅뱅형태의 개선보다는 물 스미듯 점진적인 개선
• System의 구성 방안
13. Agile 기반의 ALM
통합 IT 업무 관리
협업관리
코드리뷰요구관리
산출물관리
버전관리Process관리
빌드/배포관리지표관리
15. Atlassian for Agile
각 기능 별 Module
Module 구성
업무 전반의 공유
협업 관리
C o l l a b o r a t i o n
Configuration
신속한 변경
C o n f i g u r a t i o n
다양한 Add-on
확장성
16. 요구사항 및 협업 관리
• 요구사항 및 Spec에 대한 상세 관리
• 일정과 회의록/산출물 등 업무 공유
• 전체 업무 및 지식에 대한 공유의 공간
• 그룹/주제 별 커뮤니케이션
• 언제 어디서나 상호 의견을
교환하고 이력을 관리
• 알림을 통해 진행되는 업무
의 흐름을 공유
• 통합 연계를 통한 전체 흐름
에 적극적 참여
17. Backlog 및 결함 관리
• Scrum / Kanban과 같은 Agile Practice를 위한 Backlog 관리
• Epic – Story – Task로 이어지는 상세 업무 log 관리
• 필요한 업무 Flow를 구성하고 Tracking을 통한 가시화
• 결함을 관리하고 이에 대한 세부 내용의 연계 및 관리
• ALM의 기본 Hub로써 전체 업무 흐름을 관리
18. 소스 관리와 Build/배포
• Git 기반의 강력한 버전관리
• 변경 통제 및 공유
• 다양한 방식의 Code 관리
• Code 검색/리뷰 등을 통해 Code 품질 관리
• 지속적인 Build/배포
• 잦은 Build/배포를 통한 결함
최소화
• 손쉽고 원활한 통합 자동화
환경 구성
19. Atlassian for Agile Practice
• Atlassian을 활용한 Agile Practice 적용
• 요구 정의 및 Epic – User story - Task에 이르는 Backlog 관리
• Daily standup meeting 등 진행 회의/협의에 대한 이력 관리
• 협업을 통해 업무 이력을 관리하고 지식을 공유
• 진행 이력 기반의 회고를 통해 점진적인 개선 진행
20. Atlassian for Agile Practice
① Backlog 관리
• 요구사항의 정의 및 이를 통한 Backlog 산출 이력 관리
• Epic의 정의 및 Story와 Task의 실행 Process 관리
• Scrum / Kanban 등 업무 특성에 따른 관리형태 구성
• 전체 흐름에 대한 상호 연계 및 추적 환경 구성
21. Atlassian for Agile Practice
② 이력 관리
• 모든 회의에 대한 이력을 관리
• 협의를 통한 변경을 추적 관리하고 상호 연계를 통해 사유 추적
• 공유 된 일정 및 기능 상세 등의 지식 정보를 기반으로 회의/협의
• 요청부터 진행 상세 변경에 이르는 요건 변경에 대한 이력 관리
22. Atlassian for Agile Practice
③ 협업 관리
• 업무 관련 지식 공유
• 전체 진행 개요 및 상세를 공유
• 주제 별/ 그룹 별 채팅을 시작으로 실제 업무 진행 및 결과까지 연계
• 알림 메일 대신 메신저 형태의 실시간 자동 알림
23. Atlassian for Agile Practice
④ 회고 및 개선
• 진행 결과에 따른 회고 및 이에 대한 이력 관리
• 문제에 대한 공유를 통해 반복적인 실패를 예방
• 업무 이외의 시스템 및 프로세스에 대해서도 회고 및 개선
• Module 단위의 시스템 구성을 통해 단계적 적용 방안 가능
24. 적용사례 (Project)
Configure
요구사항 정의
Project 정의,개요,가이드
개발/환경 가이드
회의록 / 산출물
WBS
기능명세
테스트/배포 일정
지표/보고서
Main Task (Story)
Defect
배포
Issue
Sub Task (Task)
기타 Workflow
Version 관리
CI/자동화 관리
배포/이행 관리
Documents
Document
Feature
UX/Process
Source 검색
Code review
1단계
업무 분석 및 Sprint 적용
2단계
Process 고도화 및 기능 개선
3단계
지속적인 프로세스 개선
Step
25. 적용사례 (Operation)
Configure
기능 요구 정의
업무 정의,개요,가이드
개발/환경 가이드
회의록 / 산출물
일정 정의
테스트 시나리오
테스트/배포 일정
지표/보고서
Main Task (Story)
Defect
배포
Issue
Sub Task (Task)
기타 Workflow
Source 검색
Code review
정적 분석
J Unit 테스트
Version 관리
CI/자동화 관리
배포/이행 관리
기존 System
ITSM (결재)
영향도 분석
Dev framework
요구사항 관리(TBD)
System 연계 – SSO / Middle ware / Service 등
Feature set
Use case / Mock Up
요구사항 Feature 관리
테스트 관리
테스트 시나리오
테스트 진행관리
통합 연계 관리
통합 연동 관리
통합 관리 지표 구성
협업 관리
그룹 채팅
1단계
기존 환경 분석 및 협업 구성
2단계
자동화 및 연계
3단계
통합 및 지속적인 개선
Step
26. Demo
• Atlassian을 활용한 Process 진행 예제 시연
• Process에 Agile Practice를 적용한 형태에 대한 예시
• 운영 개발과 프로젝트 개발 각각의 특성에 맞추어 변경 방안 제시
• 상세 내용은 부스에서 추가 설명 제공
27. Demo
Scenario#1. 운영 개발 Process
- 현업으로 부터 전달받은 내용을 개발하고 적용하는 과정
1.요구사항 정의
- 요건 정의 및 협업
2.개발 요건 정의
- 개발 계획 수립
3.개발 진행 (Kanban)
- 개발 Process
3.빌드/테스트/배포
- 개발 적용 Process
현업/운영팀 개발 PM/PL 개발 담당자 운영 담당자
28. Demo Detail – Scenario#1
Step#1. 운영자로부터 개발 팀에 요건 접수 처리 과정
32. Demo
Scenario #2. 프로젝트 개발 Process
- 요건을 설계하고 이를 토대로 개발하여 전체 제품을 구성하는 과정
1.요구사항 정의
- 요건 정의
2.개발 요건 정의
- 개발 Backlog 수립
3.개발 진행 (Scrum)
- 개발 Process
3.빌드/테스트/배포
- Sprint 진행/완료
고객 개발 PM/PL 개발 담당자 현업/운영
33. Demo Detail – Scenario#2
Step#1. 고객으로 부터 받은 요구사항 정의 및 개발 요건 정의, 할당
34. Demo Detail – Scenario#2
Step#2. 요청받은 개발 건에 대한 진행(Sprint) 및 산출물 관리
35. Demo Detail – Scenario#2
Step#3. 개발 건에 대한 변경 반영 및 Build
36. Demo Detail – Scenario#2
Step#4. 개발 완료 (Sprint 종료) 및 회고