목록 보기
World Quality Report(2022-23) 소개 (1)
기타

World Quality Report(2022-23) 소개 (1)

SK C&C
SK C&C
2022년 11월 16일

연이은 전사 대상 PJT 성능테스트 지원 대응으로 머릿속이 바쁘던 와중에, 다음 PJT로 들어가기 전 2주간 생각할 시간이 생겼습니다. 이때다 싶어, 따끈따끈한 올해의 World Quality Report 2022-23을 가져와서 한번 살펴보고, 주요 내용들을 여기 Tech Blog에 요약해 보고자 합니다. World Quality Report 소개 2년전 Tech Blog를 통해 “Global QA & Testing 관련 기술 동향 분석”이란 글에서 World Quality Report를 소개해 드린 적이 있습니다. Performance Engineering영역을 포함하는 넓은 범위를 다루고 있으며, Quality & Testing영역 전반에 대해 분석하고 있는 연례 보고서라 할 수 있습니다. Source: https://www.microfocus.com/en-us/assets/application-delivery-management/world-quality-report-2022-23 이 보고서의 발간 주체인 Capgemini(cf. 프랑스 파리에 본사를 둔 다국적 정보기술IT 서비스 및 컨설팅 기업), Sogeti(cf. Capgemini의 기술 및 엔지니어링 서비스 회사로, 15개국 약 300개 지점에 25,000여명의 직원을 둔 IT컨설팅 기업), 그리고 Micro Foucs가 함께 매년 World Quality Report를 각 사별 웹사이트에서 무료로 제공하고 있습니다. 특히, 전세계 1,750명의 CIO와 Senior Tech Leaders들을 대상으로한 설문조사를 기반으로 동향 보고서가 작성되고 있기 때문에, Global시장의 현재 흐름을 이해하고, 앞으로의 방향성을 찾아가는데 있어 도움을 줄 수 있는 자료라고 생각합니다. Source: https://www.sogeti.com/explore/reports/world-quality-report-2021-22/ 이번 글에서는, 2년전 우리가 살펴보았던 Quality & Testing관련 기술동향 대비, 올해에는 어떠한 부분들에 대해 더 강조점을 두고 있는지 살펴볼 수 있도록, 주요 내용 위주로 두개의 글로 나누어 요약해보고자 합니다. 전체 원문이 필요하신 경우, 위의 Micro Focus 링크를 참조하셔서 직접 다운로드 받으실 수 있습니다. 이제 함께 Global 기술동향을 살펴보러 가실까요! 1. Executive Summary A NEW REALISM COVID-19 Pandemic 이후로, 우리는 기술적인 진보를 향한 엄청난 추진력들에 대해 목격한 바 있습니다. 지난 2년 동안은, 그 어느때보다도 빠른 Digital Platform의 개발, 애플리케이션 환경의 현대화(Modernization of the Application Landscape), Cloud로의 전환, 그리고 Data분석 및 관리기술에 대한 투자 등을 그 특징으로 들 수 있습니다. Machine Learning, AI Technology, 그리고 End-to-End Automation의 발전이 이러한 모든 개발과정을 지원하고 있습니다. 한편, 오늘날의 조직들은 COVID Pandemic보다 새롭고 잠재적인 도전(ex. 지정학적 불안정 요인, 공급망 붕괴, Domain별 숙련된 전문인력의 심각한 부족, 치솟고 있는 전세계 인플레이션 현상, 잠재적인 경제 불황, 환경 및 사회 이슈 등)에 직면해 있습니다. 변화가 우리에게 미치는 영향은 점점 커지고 있으며, 그 변화의 속도 또한 이전보다 더 빨라지고 있습니다. 이 모든 혼란 속에서도 한가지는 분명합니다. 성공을 유지하기 위해서는, 조직들은 변화에 대해 민감하게 대응해야 합니다. 또한, 고객의 Value를 창출하는데 있어 더욱 집중해야 합니다. 지속적인 변화가 요구됩니다. Value 창출 자체가 목표가 되어야 합니다. Agile Development 및 Digital Transformation은 IT의 지속적인 투자를 위한 Key Driver입니다. 이러한 모든 개발활동들은, IT Quality 및 S/W Testing의 지속적인 발전에 있어, 직접적인 영향을 끼치고 있습니다. “The closer you look, the more you see”는 올해 World Quality Report의 테마입니다. 적절한 자동화 도구 및 자원에 대해 심층적으로 조사하고 활용함으로써, 우리는 IT솔루션이 고객에게 Benefit을 제공하고, 가치있는 성과를 달성할 수 있도록 지원하고 있는지를 파악할 수 있게 됩니다. 이것은 우리에게 있어 Quality Engineering의 본질이기도 합니다. 올해의 조사 결과에서, QA조직은 기존의 순수 S/W Testing에서 실제 Quality Engineering으로, Quality Assurance Function의 발전 및 전환이 그 어느때보다 필요하다는 사실을 분명히 보여주고 있습니다. 지역, 기술, Domain에 걸친 Subject Matter Experts(SMEs)들의 분석 참여 결과와, 조직별로 선별된 그룹들을 대상으로 진행된 심층 인터뷰 결과에서 이 사실을 뒷받침해주고 있습니다. 고객경험, 적기출시(Time to Market), 보안 및 비용문제는 Quality Assurance에서 핵심적인 목표가 되고 있습니다. 실제로, 많은 조직들이 개발에서 단순히 적기출시의 개선만을 추구하던 방향에서, 빠르게 품질 결과를 얻는(Quality Outcomes at Speed) 방향으로 전환해 가고 있습니다. 어떤 조직들은 역할을 Agile Quality Engineering에서 Site Reliability Engineering으로 전환하는 경우도 있습니다. Quality Expert & Team은 Agile Transformation과정에서 핵심적인 역할을 수행하고 있습니다. 심층 인터뷰 과정에서 한 조직은 이렇게 답변했습니다: “DevOps Transformation은 더 빨라져야 합니다. 그리고, 개발과 운영 사이에서 중심이 되는 이 작업을 수행하기에 적합한 위치에 있는 Quality Team이 주도적으로 리딩해 나가야 합니다.” Quality Assurance에서 Quality Engineering으로 전환하기 위한, 6개의 필수적인 축(Six Essential Pillars)은 다음과 같습니다: 여러 Agile Team 전반에 걸친 품질활동에 대해, 적절한 조정(Orchestration of Quality Activities)이 필요합니다. QA의 역할을 Feature Team내에 포함하는 것이 증가 추세에 있지만, DevOps Team 지원을 위한 Quality Function이나 Quality Support Team 또한 명확히 증가하고 있습니다. 계획, 설계, 실행 및 지속적인 품질 모니터링에 이르기까지, 모든 Testing 유형 및 단계에 걸쳐 Quality 및 Test Activity들이 완벽하게 자동화되어야 합니다. 이러한 End-to-End Quality Automation은, IT개발 프로세스와 완전히 통합되어야 합니다. Smarter Quality Technologies를 활용하여, Quality Expert가 프로세스 초기부터 품질에 대해 올바른 전략적 결정을 내릴 수 있도록 지원해야 합니다. Test Infrastructure 및 Test Data Provisioning에 보다 관심을 기울여야 합니다. 잠재적인 품질 위반에 즉각적으로 대응할 수 있도록, 품질지표의 올바른 정의, 추적 및 모니터링이 필요합니다. Business 프로세스 및 고객을 위한 Value 성과를 보장하기 위해, Quality Team의 Technological Skill 및 Domain Skill Level을 높여야 합니다. Quality Expert는 Testing 및 Engineering Skill에서부터 영역별 Business 전문 지식까지 Skill을 더욱 발전시키고, 자동화 도구 및 기술 플랫폼에 대한 지식을 늘려야 합니다. 이 외에도, 최근 World Quality Report의 설문조사 결과에서는, Quality Engineering에 잠재적인 영향을 주고 있는 2가지의 새로운 영역을 보여주고 있습니다. Sustainable IT가 올해 처음으로 World Quality Report의 설문조사 대상에 포함되어 진행되었습니다. 애플리케이션의 품질이 Sustainable IT와 직접적인 관계가 있다는 것에 대해서는 모두가 명확한 이해를 가지고 있지만, 많은 조직들에게는 여전히 새로운 주제로서 남아 있습니다. Sustainable Application을 위한 품질 속성이 무엇이며, 어떻게 이것을 효과적으로 측정하고 모니터링해야 하는지에 대해서는, 여전히 우리 대부분이 확인해야 할 사항입니다. 환경의식(Environmental Consciousness)은 이제 전략적인 측면에서도 필수적인 사항이며, Quality Team이 고려해야 할 추가적인 동인(Additional Driver)이자 주제가 될 것입니다. VSM(Value Stream Management)은 올해 설문조사에서 다루고 있는 또다른 새로운 영역입니다. 이 개념은 여러 분야에서 입지를 굳히고 있습니다. 여기에서 우리는 Business와 IT를 대상으로 S/W를 개발하고 제공하는 활동의 Value에 대해 관리, 통제 및 시각화하는 것을 목표로 하는 조직들을 볼 수 있습니다. 매우 유망한 시각화 도구들은, Quality Team의 순수한 기술적 검증영역에서부터, Business Value에 대한 성과를 보증하는데까지 도움이 될 수 있는 잠재력을 가지고 있습니다. 하지만 이러한 여정에 대해, 대부분의 조직들이 아직 시작하지도 않고 있다는 점이 이번 조사에서 드러나고 있습니다. 2. KEY RECOMMENDATIONS 1) Agile Quality Orchestration Enterprise System을 포함한 Agile Development Program의 필수적인 부분으로서 Quality Engineer가 참여해야 합니다. Agile환경에서 Quality Engineers가 Technical Skill과 Business Skills을 적절히 제공하는 역량을 갖추는 것은 매우 중요합니다. 개발주기 전체에 대한 품질 지표를 반영하고 있는 측정항목(Metrics)들을 추적하고 모니터링해야 합니다. 예를 들어, “배포실패(Failed Deployments)”라는 측정지표는, Quality Across Team에게 전체를 보는 시각을 제공해줄 수 있습니다. 2) Quality Automation 요구사항과 스토리에 대해, 자동화 기반 접근법을 적용시켜야 합니다. ROI로 정당화하기 보다는, 고객 및 Business에 최선의 Benefit을 제공하는 것에 초점을 맞추어야 합니다. 하나의 도구로 모든 것을 수행할 수는 없습니다. 업무별로 최고의 도구를 선정하고, 하나의 도구가 모든 일을 하지 않도록 해야 합니다. 3) Quality infrastructure testing and provisioning Heterogeneous Software Delivery Pipelines을 구축하기 위해, Value Stream을 하나의 플랫폼으로 결합해야 합니다. Cloud의 강력한 기능을 사용하여, Legacy Environment를 신속하게 구축해야 합니다. Cloud 및 Infrastructure Testing을 통해, 애플리케이션의 신뢰성(Reliability)을 새로운 차원으로 강화해야 합니다. 4) Test Data provisioning and data validation Non-Production Workload를 Cloud로 이동시키고 있는, 많은 조직들의 추세를 따라가야 합니다. Cloud Testing을 전체 S/W개발주기의 한 부분으로 통합해야 합니다. 자동화 기반 데이터 프로비저닝(Data Provisioning) 증가 및 합성데이터 생성(Synthetic Data Generation)방식의 성장에 따른 이점을 활용해야 합니다. 용어 참고. What is test data provisioning? “테스트 데이터 프로비저닝은 질서있고, 안전하게 자동화된 방식으로, 사용자가 테스트 데이터에 접근하고 사용할 수 있도록 하는 프로세스입니다.” (“Test data provisioning is the process of making test data accessible and available to users in an orderly, secure and preferably automated way.”) Source: https://www.datprof.com/test-data-provisioning/ 5) Quality and Sustainable IT 기존의 Quality Frameworks 및 자동화 도구를 개선/활용하여, Sustainable Design Principles을 달성해 가야 합니다. (ex. Architecture는 얼마나 모듈화되어 있고 재사용 가능한지, Programming Language Resource는 얼마나 집약적인지, Interfaces와 API Call수를 최적화할 수 있는지 등) Transaction Level에서 환경 측면의 영향도(Environmental Impacts)에 대한 측정을 지원하기 위해, 애플리케이션 성능 모니터링 자동화도구를 커스터마이징해야 합니다. “Green Quality Gates”을 구축하는 범위로까지 확장할 수 있도록, Sustainable IT의 사회적, 환경적, 경제적, 그리고 인간적 측면에 대해 측정하고, 통제하고, 정량화할 수 있는 일관된 프레임워크를 확보하기 위해, Sustainable IT를 위한 전략의 중심에 품질을 가져와야 합니다. 6) Quality engineering for emerging technology trends 조직들은 다음과 같이 자문해 볼 필요가 있습니다.: Blockchain, Web 3.0 및 Cybersecurity관련 Quality Engineering Skills을 구축하는 것이, 해당 기술 구현의 성공에 중요할까요? Physical 및 Digital World 사이의 원활한 사용자 경험을 테스트하려면, 어떤 역량이 필요할까요? 신기술의 성공적인 구현 및 확장을 지원하기 위해, Prototype단계에서부터 필요한 Quality Engineering전략에는 무엇이 있을까요? 7) Value stream management Business Owner 및 Project Owner와 함께, Testing 및 Quality 활동에서 기대되는 Value 성과에 대해 확실하게 정의되어야 합니다. 각 PJT들이 Business 목표에 연동되는, 구체적이고 측정가능한 Value Indicator를 정의하고, Quality 및 Test 결과가 Value Indicator에 연결되어 연관성을 가지고 있는지 확인해야 합니다. 이해관계자와 Team 구성원들이 Value Indicator의 진척 및 개발을 지속적으로 관찰할 수 있도록, Value Dashboard를 구현해야 합니다. 3. CURRENT TRENDS IN QUALITY ENGINEERING & TESTING 1) Quality Orchestration in Agile Enterprises Agile 및 DevOps는 오랫동안 존재해 왔으며, 여전히 진화하고 있습니다. 이에 대한 채택은 매년 증가하고 있으며, 고품질 S/W가 제공되는 방식의 발전에 기여하고 있습니다. 지난 10년 동안 Agile Practice는 성숙되어 왔으며, 더 새로운 Practice, Technology, Trend에 초점을 맞춰오면서 상당한 발전이 있었습니다. 이번 장에서는 이러한 동향들에 대해 살펴보겠습니다. Agile quality at pace Agile개발은 Business Needs를 신속하게 반영하기 위해, 모든 팀원들의 협업 노력을 통해, 유연성과 속도를 갖추게 하는 접근 방식이 필요합니다. Agile에서 QA(Quality Assurance)는 유연성을 가지고 더 빠른 속도로 이동하면서도, 애플리케이션의 품질과 신뢰성을 동시에 보장하기 위해 매우 중요한 요소입니다. Agile QA는 Agile Enterprise의 가장 중요한 두 가지 품질 목표인 탁월한 고객 경험 및 Business성과를 보장하는 데 도움을 줍니다. 따라서, Agile QA는 Agile S/W 개발 프로세스의 필수적인 부분이 되어야 합니다. Agile기반 기업들의 Quality Orchestration작업들은 계속적으로 상승하는 추세를 보이고 있습니다. Agile 및 DevOps가 채택되기 시작하면서, Quality Engineer의 Team구성 및 Skillset 측면에서 발전이 이루어지고 있습니다. Agile Program에서는, Test Lifecycle 자동화, Agile team들간의 End-to-End Testing, Test환경 및 Data의 유연하고 간편한 Provisioning, Service Virtualization, CI/CD 통합과 같은 Quality Assurance Practice들이 보편적으로 잘 활용되고 있습니다. 이번 설문 조사에 따르면, Agile구현을 위한 주요 성공요인에는 인재 및 기술의 가용성, Business Focus 및 우선순위에 대한 이해, 조직 변화관리에 대한 경영진의 약속(Commitment) 및 지원 등이 포함됩니다. Agile improves lead time to deliver, enables high quality software, and allows frequent deployments Agile 및 DevOps는 다양한 방식으로 조직에 영향을 미치고 있습니다. 설문 조사 결과에 따르면, Agile 접근방식이 Time to Market, S/W Quality 및 예측 가능성을 크게 향상시킴으로써, 고객 경험의 개선을 이끌어내고 있음을 알 수 있습니다. The “safe” bet for enterprise systems 최근부터 Enterprise System의 세계에서도 Agile Process의 채택이 시작되고 있습니다. Enterprise System은 복잡하고 핵심적인 비즈니스 프로세스를 실행하는 관계로, Agile Adoption Journey에 뒤늦게 참여했습니다. 올해 우리는 Enterprise System에서 활용되고 있는 가장 지배적인 Quality 및 Test Approach가 무엇인지에 대해 조사했습니다. 대부분의 팀(65%)은 자동화를 위해 Package-specific Tool을 사용하고 있고, 63%의 팀은 Sprint 인증을 위해 Pre-built Test Case Repository를 사용하고 있으며, 61%의 팀은 CI/CD 파이프라인에서 Testing을 Automatic Quality Gate와 통합하고 있습니다. Quality engineers are an integral part of Agile teams 올해의 Data는 Agile Scrum Team내에 소속된 Quality Engineer의 존재감이 증가하고 있음을 보여주고 있습니다. 대부분의 IT 조직들이 평균적으로 Agile Team내에 30% 미만의 Quality Engineer를 보유하고 있음을 보여줍니다. 조직의 28%가 최대 36-45%의 Quality Engineer를 보유하고 있는 반면, 조직의 20%는 Agile Team내에서 16-25%의 Quality Engineer를 보유하고 있습니다. What should organizations focus on? Agile Quality Methods, Processes 및 Orchestration과 관련하여, 다음과 같은 6가지 권장사항이 있습니다: Agile 개발 프로그램의 일부로서 Quality Engineer가 참여해야 합니다. Technical Skill 및 Business Skill이 적절히 혼합된 역량은, Agile에 속한 Quality Engineer에게 있어 매우 중요합니다. SEDT Role이 일반적이 되면서, Business Domain Knowledge는 필수적인 Skill이 되었습니다. Continuous Testing자동화를 통해, CI/CD 프로세스 전반에 걸친 End-to-end Test Automation이 확장되고, 코드 품질이 개선됩니다. 이를 통해, Product Quality를 향상시키는 동시에, 품질 비용을 절감할 수 있습니다. Automa

댓글 0

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...