Application Lifecycle Management Atlassian 으로전체 ALM 사이클을구성해볼까요?
ALM 은무엇인가요? ALM(Application Lifecycle Management) 은어플리케이션제품이기획되어개발, 유지및운영, 폐기까지전체수명주기를분야별체계적인공학방법통해성공적으로이뤄질수있게모니터링하고문제를제어함으로써관리함. 어플리케이션 A 지속적인모니터링및제어 기획, 요구사항 시장조사 고객니즈식별 요구사항정의 산출물 기획및 Vision 문서 Market 요구사항문서 UI 요구사항문서 설계, 개발, 배포 아키텍처, 설계 개발, 코드형상, 테스트 빌드, 배포 산출물 아키텍처문서, 설계문서 코드문서 사용자가이드문서 유지, 운영, 폐기 변경및문제관리 설계, 개발, 형상, 테스트 빌드, 배포 산출물 고객요청, Bug 수정 Design, Code, User Document Update
ALM 은무엇이좋은가요? 비즈니스와의통합개발품질향상민첩한고객대응체계적인관리 비즈니스니즈를개발에정확히반영하고요구사항의부재문제최소화 개발품질향상으로고객으로부터발견되는버그최소화를통한비용절감 유지보수및운영의문제를빠르게처리함으로써고객만족도증대 체계적인관리및도구구축을통한품질확보, 생산성향상, 비용절감극대화
ALM 도입은어려워요. 범위가방대하다. 요구사항부터릴리즈까지한번에방대한범위가변경된다. 실용적인가? 정말우리를위한것인가? 우리에게도움이되는가? 인력은충분한가? 수행인력은충분한가? 여러조직과잘통합되는가? 지속적인가이드는? 내재화를위한지속적인가이드는누가하는가?
Agile ALM 이해결해줍니다. 점진적인 ALM 도입애자일프렉티스개발품질강화협업과대화중심 조직에게변화를최소할수있는영역부터도입하고단계적으로확장 실제적으로도움, 쉬운사용, 간결함에도움되는 Agile Practice 적용 개발단계에서품질활동강화를통해이후단계에서발견되는문제최소화 정보를집중화하고조직이빠르고쉽게대화와협업을할수있는체계
Agile ALM 은무엇이다른가요? 요구사항관리 User Stories 아키텍처디자인 Simple 디자인 개발 Quality Gate 빌드관리 지속적인통합 테스팅 Test Automation 릴리즈배포관리 Deploy Automation 프로젝트관리 Scrum 유지보수 Kanban
Atlassian 으로 ALM 솔루션을 Issue Data Requirement Requirement Document Project Report Reliability & Security Maintainability Design Design Document Code Document Coverage & Duplication Complexity & Size Risk Issue Daily 2nd Build Document Automation Unit Test Automation Test Planning Test Report Performance Test UI Test Manager Static Analysis Test Monitoring & Control Test Cases Unit Test Code Commit Push Gate Keeper Continuous Quality Management Pull Request Git Daily Build Server Test Result OK? YES Merge Daily Build Artifact Sanity Test Build Verification No Release Build Release Build Artifact Release Verification Test Fail : Commit Reject Release QA Validation
요구사항관리 Epic 과 Story 로해결할수있습니다.
요구사항관리는 User Story 와 Epic 으로 사용자스토리는시스템의고객혹은사용자들이원하는시스템의능력을사용자의관점에서작성한기능에대한짧고간단한설명이다. < 사용자 > 는 < 목적 > 을위해 < 기능 > 을할수있어야한다. Epic User story User story User story Description Test Method Story Point Priority
문서는 Confluence, 관리는 Jira 에서 Space Epic Page Story Text Epic Page Story Text Story Text Story Text Story Text Story Text Project Epic Issue Epic Issue Story Issue Story Issue Story Issue Story Issue Story Issue Story Issue
프로세스는 Confluence 와 Jira 에서 Epic 작성및리뷰 Epic 페이지생성 Story 작성 Story 리뷰 Epic 생성 Story 생성 Story 릴리즈 Generation Generation Epic 생성 Story 생성 스프린트계획 Sub-Task 생성
복잡한프로젝트관리 애자일스크럼으로해결하세요.
복잡한프로젝트관리는스크럼으로 제품백로그스프린트계획스크럼반보드스프린트리뷰 어플리케이션제품개발을위한 User Story, 버그, 업무 특정스프린트동안수행할백로그를할당, 추정계획 스프린트동안에수행업무를카드형식으로보드에가시화 스프린트종료후리뷰및회고를통해지향점확인
아키텍처와디자인은 심플하게시작하세요.
요구사항과디자인추적은 Jira 이슈링크로 Requirement Issue Design Issue Usecase Diagram Requirement Issue Requirement Issue Design Link Design Issue Design Issue Link Class Diagram Sequence Diagram Requirement Issue Design Issue Process Diagram
Confluence 에서최신디자인을관리하세요. Business Process Diagram Usecase Diagram Sequence Diagram Class Diagram Deployment Diagram State Machine Diagram Package Diagram UI Design
품질관리 조기에품질을잡으세요.
조직품질요구사항점검은품질게이트 Quality Gatekeeper 는조직의품질게이트 ( 품질요구사항 ) 을설정하고품질게이트를통과하지못한코드는중앙저장소에반영되지못하게하는품질보장하는게이트입니다. Build Verification 통합문제를확인하기위해빌드검증수행 Peer Code Review 코드문제를파악하기위해동료와코드리뷰수행 Code Inspection SonarQube 를활용하여코드인스펙션수행 Unit Testing 전체적인테스트통과여부를확인하는단위테스트수행
모든것은자동으로진행됩니다. 5. Pull Request 6. Code Inspection Developer 1. Push changes to dev branch 3. Build verification & Unit test 4. Static analysis result Reviewer 7. Code Review & Code Merge 2. Trigger build
지속적인통합과배포 매일빌드하고배포하세요.
매일매일빌드하세요. 빌드검증코드품질검증문서생성자동화배포자동화 클린빌드를통해매일새벽소스코드의통합 ( 빌드 ) 에문제를확인함 전체소스코드에대한정적분석 ( 코딩룰, 잠재버그, 취약점등 ) 을수행 Doxygen, JavaDoc 등과함께코드문서, 설계문서등을자동으로생성 테스트서버, 산출물관리서버등에빌드산출물을자동배포수행
배포자동화를위한전략은 Dev Server Test Server Staging Server Production Server Commit Build Automation Daily Build Automation with trigger Release Build Automation with trigger Automation Automation
요구사항관리 아키텍처디자인 개발 빌드관리 테스팅 릴리즈배포관리 프로젝트관리 유지보수
감사합니다.