Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 •...

37

Transcript of Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 •...

Page 1: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리
Page 2: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Waterfall to Agile박재석대표 / ㈜투씨드

Page 3: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

About Waterfall

• Waterfall의특성

• 절차지향적흐름과이에따른 System 구성

• 각영역의전문성에보다초점을두고단계/순차/체계적진행

• 프로젝트의진행과정을세분화하여관리의용이성을제공

• 목표물이과정의후반부에가시화되는특성

Page 4: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

우리가해냈어!!!! ………

이상과현실의괴리…

Page 5: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• 현실적인상황과의괴리로인한문제들발생

• 잦은요구사항의변경또는명확하지않은요구사항

• 같은단어다른의미

• 각단계영역별분리로인한빠른대응의어려움

• 사용자피드백에의한개선이어려움

Why?

Page 6: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• 어떠한것들을검토하고어떻게개선해야하는지??

• 현행업무진행형태에대한고찰

• 순차적방식의개선? 다른방법론의적용?

• 업무환경및문화에대한개선방향?

• 개선에따르는조직개편및비용은?

What?

Page 7: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Culture System

Human

Goal?

Page 8: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• 계획기반의기존방법론에대한대안

• 절차와도구를넘어선개성과화합

• 종합적인문서화를넘어선동작하는소프트웨어

• 계약과협상을넘어선고객과의협력

• 계획준수를넘어서변화에의대응

eXtreme Programming

Scrum

Feature Driven

Test Driven

Adaptive Software Development

About Agile

Page 9: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Waterfall

• 현업, 개발, 운영이모두분리

• 협업의경우개별방안에의해진행

• 요구사항, 산출물, 소스각각분리

• 빅뱅형태의대규모배포를진행

• 다양한개별업무시스템사용

Agile

• 현업, 개발, 운영의유기적인협업

• 협업환경을기본으로최대한공유

• 요구사항부터산출물까지모두연결

• 잦은배포를통한 Risk 감소

• 통합및최대한자동화된협업환경

Waterfall vs Agile

Page 10: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

팀장님은그저나에게 Agile을잘하라고하셨지…….그런데나는누구….여긴..어디? 홀호렇ㄹ핧라ㅓ

이또한현실은…

Page 11: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• System을구성하기위해검토해야할요소

• 경험적프로세스제어모델의반영

• 요구사항–설계–Backlog–개발산출물–배포에이르는통합연계환경

• 각업무간협업및공유가가능한환경

• 잦은변화에대해민첩하고원활한대응이가능한구성

Agile을활용하기위한 System 구성

Page 12: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• Agile을추구하지만추종하지않는형태

• 현실과이상의괴리를최소화할수있는합의점을도출

• 기존자산과의원활한융합

• 빅뱅형태의개선보다는물스미듯점진적인개선

• System의구성방안

How?

Page 13: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

통합 IT 업무 관리

협업관리

코드리뷰요구관리

산출물관리

버전관리Process관리

빌드/배포관리지표관리

Agile 기반의 ALM

Page 14: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Atlassian을통한 Agile구성

Page 15: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

각기능별 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

확장성

E x t e n s i o n

Atlassian for Agile

Page 16: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• 요구사항및 Spec에대한상세관리

• 일정과회의록/산출물등업무공유

• 전체업무및지식에대한공유의공간

• 그룹/주제별커뮤니케이션

• 언제어디서나상호의견을교환하고이력을관리

• 알림을통해진행되는업무의흐름을공유

• 통합연계를통한전체흐름에적극적참여

요구사항및협업관리

Page 17: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• Scrum / Kanban과같은 Agile Practice를위한 Backlog 관리

• Epic – Story – Task로이어지는상세업무 log 관리

• 필요한업무 Flow를구성하고 Tracking을통한가시화

• 결함을관리하고이에대한세부내용의연계및관리

• ALM의기본 Hub로써전체업무흐름을관리

Backlog 및결함관리

Page 18: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• Git 기반의강력한버전관리

• 변경통제및공유

• 다양한방식의 Code 관리

• Code 검색/리뷰등을통해 Code 품질관리

• 지속적인 Build/배포

• 잦은 Build/배포를통한결함최소화

• 손쉽고원활한통합자동화환경구성

소스관리와 Build/배포

Page 19: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• Atlassian을활용한 Agile Practice 적용

• 요구정의및 Epic – User story - Task에이르는 Backlog 관리

• Daily standup meeting 등진행회의/협의에대한이력관리

• 협업을통해업무이력을관리하고지식을공유

• 진행이력기반의회고를통해점진적인개선진행

Atlassian for Agile Practice

Page 20: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

① Backlog 관리

• 요구사항의정의및이를통한 Backlog 산출이력관리

• Epic의정의및 Story와 Task의실행 Process 관리

• Scrum / Kanban 등업무특성에따른관리형태구성

• 전체흐름에대한상호연계및추적환경구성

Atlassian for Agile Practice

Page 21: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

② 이력관리

• 모든회의에대한이력을관리

• 협의를통한변경을추적관리하고상호연계를통해사유추적

• 공유된일정및기능상세등의지식정보를기반으로회의/협의

• 요청부터진행상세변경에이르는요건변경에대한이력관리

Atlassian for Agile Practice

Page 22: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

③ 협업관리

• 업무관련지식공유

• 전체진행개요및상세를공유

• 주제별/ 그룹별채팅을시작으로실제업무진행및결과까지연계

• 알림메일대신메신저형태의실시간자동알림

Atlassian for Agile Practice

Page 23: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

④ 회고및개선

• 진행결과에따른회고및이에대한이력관리

• 문제에대한공유를통해반복적인실패를예방

• 업무이외의시스템및프로세스에대해서도회고및개선

• Module 단위의시스템구성을통해단계적적용방안가능

Atlassian for Agile Practice

Page 24: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

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

적용사례 (Project)

Page 25: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

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

적용사례 (Operation)

Page 26: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

• Atlassian을활용한 Process 진행예제시연

• Process에 Agile Practice를적용한형태에대한예시

• 운영개발과프로젝트개발각각의특성에맞추어변경방안제시

• 상세데모진행및내용은부스에서시연및설명제공

Demo

Page 27: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Scenario#1. 운영개발 Process

- 현업으로부터전달받은내용을개발하고적용하는과정

1.요구사항 정의

- 요건 정의 및 협업

2.개발 요건 정의

- 개발 계획 수립

3.개발 진행 (Kanban)

- 개발 Process

3.빌드/테스트/배포

- 개발 적용 Process

현업/운영팀 개발 PM/PL 개발담당자 운영담당자

Demo

Page 28: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#1. 운영자로부터개발팀에요건접수처리과정

Demo Detail – Scenario#1

Page 29: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#2. 요청받은개발건에대한진행

Demo Detail – Scenario#1

Page 30: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#3. 개발건에대한변경반영및 Build

Demo Detail – Scenario#1

Page 31: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#4. Jira 변경처리완료및배포

Demo Detail – Scenario#1

Page 32: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Scenario #2. 프로젝트개발 Process

- 요건을설계하고이를토대로개발하여전체제품을구성하는과정

1.요구사항 정의

- 요건 정의

2.개발 요건 정의

- 개발 Backlog 수립

3.개발 진행 (Scrum)

- 개발 Process

3.빌드/테스트/배포

- Sprint 진행/완료

고객 개발 PM/PL 개발담당자 현업/운영

Demo

Page 33: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#1. 고객으로부터받은요구사항정의및개발요건정의, 할당

Demo Detail – Scenario#2

Page 34: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#2. 요청받은개발건에대한진행(Sprint) 및산출물관리

Demo Detail – Scenario#2

Page 35: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#3. 개발건에대한변경반영및 Build

Demo Detail – Scenario#2

Page 36: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

Step#4. 개발완료 (Sprint 종료) 및회고

Demo Detail – Scenario#2

Page 37: Waterfall to Agile · 2017-10-16 · Waterfall • 현업, 개발, 운영이모두분리 • 협업의경우개별방안에의해진행 • 요구사항, 산출물, 소스각각분리

감사합니다.