Cheolmin Shin • Process Innovation Team Manager • Mirero Inc.
http://deprogworks.blogspot.kr • feminie@gmail.com
소프트웨어 공학 국제표준
SEMAT Essence를 칸반으로 구현
세상에 존재하는 수많은 방법론들…
Waterfall model Scrum
정보공학 방법론, CBD방법론, …
TDD, BDD, FDD, …
각 회사가 커스터마이징해서 만든 방법론들
Waterfall model Scrum
정보공학 방법론, CBD방법론, …
TDD, BDD, FDD, …
각 회사가 커스터마이징해서 만든 방법론들
하나의 공통 개념으로 표현할 수 있을까?
무모해 보이는 목표에 도전한 사람들이 있었으니…
http://semat.org
http://www.omg.org/spec/Essence
추진단체
대표 인물 :
이바 야콥슨
(Ivar Jacobson)
Major contributor
• Unified Modeling
Language(UML)
• Object-Oriented Software
Engineering (OOSE)
• Unified Process (UP)
• Aspect-Oriented software
development (AOP)
• Essence
국제표준
(OMG)
소프트웨어 공학은 지금 미성숙한 실천법(practice)에 의해 중대한 저해(gravely hampered)를 받고 있다.
예를 들어 구체적으로 아래의 항목과 같다.
- 개념의 유행이 엔지니어링(공학 및 기술활동)의 한 분야라기 보다 패션업계와 비슷함.
- 확실히 널리 수용된 이론적 기초가 결여되어 있음.
- 매우 많은 방법론(methods)과 그 파생들. 또한 그것들 사이의 차이를 거의 이해할 수 없는 상태로 작위적으로 강조되고 있음.
- 신뢰할 수 있는 실험적 평가(experimental evaluation)와 타당성 확인(validation)이 결여되어 있음.
- 산업계의 실천법(industry practice)과 학계의 연구(academic research)와의 괴리가 존재함.
우리들은, 견고한 이론 및 검증된 원칙과 베스트 프랙티스에 기초하여 소프트웨어 공학을 재건(refound)하고자 한다.
그 방법은 이하의 특징을 가지고 있다.
널리 합의된 요소들로부터 특정용도에 확장 가능한 핵심(Kernel)을 가져,
기술의 문제와 사람의 문제 양쪽을 모두 포용할 수 있고,
산업계, 학계, 연구자 그리고 사용자들에게 지지를 받는,
(새로운) 요구사항들과 기술(technology)의 변화에도 대응가능하며,
(표준으로서) 따를 수 있도록 하는 확장성을 제공한다.
Call for Action
http://semat.org/ko/call-for-action
Essence
Essence Method Architecture
기본 용어 정의
핵심개념 정의
프랙티스 정의
방법론 정의
SW시스템을 사용하는 고객
SW 스펙과 개발하는 시스템
SW시스템을 개발하는
팀, 수행하는 작업, 일하는 방법
Essence Kernel
필수 객체요소
(Alpha)
필수 활동요소
(Activity
Spaces)
역할요소
Essence Kernel
적용 패턴
Essence Kernel
무엇이
이루어지는가?
What
어떻게
할 것인가?
How
어떤 역량이
필요한가?
어떤 것만
골라서 사용할
것인가?
Overview
Alphas - 무엇이 이루어지는가?
달리말하면 - 개발 성공을 위해 챙겨야 할 핵심 사항 영어의 압박…
Alphas - 무엇이 이루어지는가?
달리말하면 - 개발 성공을 위해 챙겨야 할 핵심 사항
Activity Spaces – 어떻게 할 것인가?
달리말하면 - 핵심사항을 챙기기 위해 해야하는 행동
Patterns – 어떤 것만 골라서 사용할 것인가?
Competency –어떤 역량이 필요한가?
방법론 만들기
Practice Pool
프로젝트의 성향에 맞춰 개발하는 상황을 표현 가능
Waterfall
Method(단계) – Alpha 표현
Method(단계) – Alpha 표현
어려우시죠?
에센스(본질, 정수)을 얻기가 어디 쉬운일이겠습니까?
Alphas Drill down
Alphas Drill down
또 영어의 압박…
Alphas Drill down
Thanks to KOSTA
알파 부분을 한국어로 번역하여 카드형태로 제공
(아직은 비매품)
(원래 목적은 교육생 대상으로 Essence 를 숙지시키기 위한 용도로 제공)
Thanks to KOSTA
카드놀이 가능!
(실제로 해보면 재밌습니다)
Essence Tools
EssWork
Alpha State Explorer App (iPad)
SEMAT Accelerator
Essencia (서비스오픈 6/25)
http://essencia.live
협업시에는
도구가
필요!
아니면, 화이트보드+자석??
Scrum by Essence
Essence @ JIRA
Motivated by Alpha State Explorer App
JIRA Agile
칸반으로 구현
깃발을 통해 현재 진행상태를 한눈에 확인 (RealTime)
표시순서를 고정시켜서 drag&drop을 막음
7가지 알파를 이슈타입으로 정의
JIRA Workflow
JIRA Agile Kanban Column Management
이슈타입은 7가지 알파에 맞춰 7개를 생성
워크플로우는 1개만 만들어서 공통으로 사용
(칸반의 컬럼에서 각 알파의 열로 들어가도록 하기 위함)
JIRA Agile Kanban Swimlane
[Milestone 상태] 커스텀 필드 생성필요
[Milestone 상태] Trick
Create화면에서는 보여주고 Edit화면에서는 안보이게 설정
관리자만 생성 일반유저는 편집 only
Project Essence Board 운영 프로세스
새 개발프로젝트 Kickoff
관리자 :
Essence Board 생성 후 개발팀에
제공
•템플릿에서 fork
(structure plugin사용:다수의 이슈 아이템
을 한번에 복제가능)
개발팀 :
Essence Board 최신으로 유지
•체크리스트 진행
•진행 상세내용 작성
•산출물 링크
QA :
각 State 완료조건 충족되면 상태
완료 처리
•깃발표시(State완료)
PMO :
프로젝트 진행상황 확인
Agile & Essence
알파 상태카드를 유저 스토리와 비슷하게 활용가능
Project 포털
개발자
QA
PM
UX Designer
고객
고객
이해관계자
요구사항
이슈
팀
할일
산출물(문서, 코드)
방법
진행상태
운영환경
장애대응
유지보수
…
원하는 정보를 단 하나의 프로젝트 포털을 통해 접근
(일일이 찾아다니지 않아도 됨)
Wrap up
좋은 점
마음놓고 따라할 수 있는
믿을만한 도구
(국제표준)
맞는지 틀리는지
또는
부족한 부분이 있는지 검증할 기준이 됨
다양한 방법론을 공통의 언어로 표현 후
서로 비교하는 것이 가능
Future work
계획대비 실적과 지연여부가
표현이 안됨 (Project관리관점)
실제상황에 맞게
체크리스트를 추가해야 함
Activity Space도
JIRA에 구현필요
실제 적용사례 확보 필요
여러분과 함께 Essence 바다에 뛰어들고 싶습니다!
Cheolmin Shin • Process Innovation Team Manager • Mirero Inc.
http://deprogworks.blogspot.kr • feminie@gmail.com
Thank you!

[AUG] 소프트웨어 공학 국제표준 SEMAT Essence를 칸반으로 구현

  • 1.
    Cheolmin Shin •Process Innovation Team Manager • Mirero Inc. http://deprogworks.blogspot.kr • feminie@gmail.com 소프트웨어 공학 국제표준 SEMAT Essence를 칸반으로 구현
  • 2.
    세상에 존재하는 수많은방법론들… Waterfall model Scrum 정보공학 방법론, CBD방법론, … TDD, BDD, FDD, … 각 회사가 커스터마이징해서 만든 방법론들
  • 3.
    Waterfall model Scrum 정보공학방법론, CBD방법론, … TDD, BDD, FDD, … 각 회사가 커스터마이징해서 만든 방법론들 하나의 공통 개념으로 표현할 수 있을까?
  • 4.
    무모해 보이는 목표에도전한 사람들이 있었으니… http://semat.org http://www.omg.org/spec/Essence 추진단체 대표 인물 : 이바 야콥슨 (Ivar Jacobson) Major contributor • Unified Modeling Language(UML) • Object-Oriented Software Engineering (OOSE) • Unified Process (UP) • Aspect-Oriented software development (AOP) • Essence 국제표준 (OMG)
  • 5.
    소프트웨어 공학은 지금미성숙한 실천법(practice)에 의해 중대한 저해(gravely hampered)를 받고 있다. 예를 들어 구체적으로 아래의 항목과 같다. - 개념의 유행이 엔지니어링(공학 및 기술활동)의 한 분야라기 보다 패션업계와 비슷함. - 확실히 널리 수용된 이론적 기초가 결여되어 있음. - 매우 많은 방법론(methods)과 그 파생들. 또한 그것들 사이의 차이를 거의 이해할 수 없는 상태로 작위적으로 강조되고 있음. - 신뢰할 수 있는 실험적 평가(experimental evaluation)와 타당성 확인(validation)이 결여되어 있음. - 산업계의 실천법(industry practice)과 학계의 연구(academic research)와의 괴리가 존재함. 우리들은, 견고한 이론 및 검증된 원칙과 베스트 프랙티스에 기초하여 소프트웨어 공학을 재건(refound)하고자 한다. 그 방법은 이하의 특징을 가지고 있다. 널리 합의된 요소들로부터 특정용도에 확장 가능한 핵심(Kernel)을 가져, 기술의 문제와 사람의 문제 양쪽을 모두 포용할 수 있고, 산업계, 학계, 연구자 그리고 사용자들에게 지지를 받는, (새로운) 요구사항들과 기술(technology)의 변화에도 대응가능하며, (표준으로서) 따를 수 있도록 하는 확장성을 제공한다. Call for Action http://semat.org/ko/call-for-action
  • 6.
  • 7.
    Essence Method Architecture 기본용어 정의 핵심개념 정의 프랙티스 정의 방법론 정의
  • 8.
    SW시스템을 사용하는 고객 SW스펙과 개발하는 시스템 SW시스템을 개발하는 팀, 수행하는 작업, 일하는 방법 Essence Kernel
  • 9.
  • 10.
    Essence Kernel 무엇이 이루어지는가? What 어떻게 할 것인가? How 어떤역량이 필요한가? 어떤 것만 골라서 사용할 것인가?
  • 11.
  • 12.
    Alphas - 무엇이이루어지는가? 달리말하면 - 개발 성공을 위해 챙겨야 할 핵심 사항 영어의 압박…
  • 13.
    Alphas - 무엇이이루어지는가? 달리말하면 - 개발 성공을 위해 챙겨야 할 핵심 사항
  • 14.
    Activity Spaces –어떻게 할 것인가? 달리말하면 - 핵심사항을 챙기기 위해 해야하는 행동
  • 15.
    Patterns – 어떤것만 골라서 사용할 것인가?
  • 16.
  • 17.
  • 18.
    Practice Pool 프로젝트의 성향에맞춰 개발하는 상황을 표현 가능
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
    Alphas Drill down 또영어의 압박…
  • 24.
  • 25.
    Thanks to KOSTA 알파부분을 한국어로 번역하여 카드형태로 제공 (아직은 비매품) (원래 목적은 교육생 대상으로 Essence 를 숙지시키기 위한 용도로 제공)
  • 26.
    Thanks to KOSTA 카드놀이가능! (실제로 해보면 재밌습니다)
  • 27.
    Essence Tools EssWork Alpha StateExplorer App (iPad) SEMAT Accelerator Essencia (서비스오픈 6/25) http://essencia.live 협업시에는 도구가 필요! 아니면, 화이트보드+자석??
  • 28.
  • 36.
  • 37.
    Motivated by AlphaState Explorer App
  • 38.
  • 39.
    깃발을 통해 현재진행상태를 한눈에 확인 (RealTime) 표시순서를 고정시켜서 drag&drop을 막음
  • 40.
  • 41.
    JIRA Workflow JIRA AgileKanban Column Management 이슈타입은 7가지 알파에 맞춰 7개를 생성 워크플로우는 1개만 만들어서 공통으로 사용 (칸반의 컬럼에서 각 알파의 열로 들어가도록 하기 위함)
  • 42.
    JIRA Agile KanbanSwimlane [Milestone 상태] 커스텀 필드 생성필요
  • 43.
    [Milestone 상태] Trick Create화면에서는보여주고 Edit화면에서는 안보이게 설정 관리자만 생성 일반유저는 편집 only
  • 44.
    Project Essence Board운영 프로세스 새 개발프로젝트 Kickoff 관리자 : Essence Board 생성 후 개발팀에 제공 •템플릿에서 fork (structure plugin사용:다수의 이슈 아이템 을 한번에 복제가능) 개발팀 : Essence Board 최신으로 유지 •체크리스트 진행 •진행 상세내용 작성 •산출물 링크 QA : 각 State 완료조건 충족되면 상태 완료 처리 •깃발표시(State완료) PMO : 프로젝트 진행상황 확인
  • 45.
    Agile & Essence 알파상태카드를 유저 스토리와 비슷하게 활용가능
  • 46.
    Project 포털 개발자 QA PM UX Designer 고객 고객 이해관계자 요구사항 이슈 팀 할일 산출물(문서,코드) 방법 진행상태 운영환경 장애대응 유지보수 … 원하는 정보를 단 하나의 프로젝트 포털을 통해 접근 (일일이 찾아다니지 않아도 됨)
  • 47.
  • 48.
    좋은 점 마음놓고 따라할수 있는 믿을만한 도구 (국제표준) 맞는지 틀리는지 또는 부족한 부분이 있는지 검증할 기준이 됨 다양한 방법론을 공통의 언어로 표현 후 서로 비교하는 것이 가능 Future work 계획대비 실적과 지연여부가 표현이 안됨 (Project관리관점) 실제상황에 맞게 체크리스트를 추가해야 함 Activity Space도 JIRA에 구현필요 실제 적용사례 확보 필요
  • 49.
    여러분과 함께 Essence바다에 뛰어들고 싶습니다!
  • 50.
    Cheolmin Shin •Process Innovation Team Manager • Mirero Inc. http://deprogworks.blogspot.kr • feminie@gmail.com Thank you!