전반적으로 기업의 디지털 운영은 코드만큼 안정적입니다. 안정적인 코드 기반이 없으면 엔지니어링에서는 고객을 위해 새롭고 흥미로운 기능을 혁신하는 데 필요한 속도로 나아가는 것은 물론이고 새로운 기능에 대한 기본적인 요구도 충족할 시간이 없습니다. 엔지니어는 부정적인 고객 경험을 방지하기 위해 품질이 낮은 코드 문제를 해결하고 수정하는 데 시간을 할애합니다. 고품질 코드를 구현하는 것은 조직의 혁신과 성장 능력의 핵심입니다.
이 가이드에서는 코드 품질을 향상시키는 데 도움이 되는 특정 핵심 성과 지표와 프로세스를 식별합니다. 그 다음에는 릴리스 품질 가이드가 따르며, 이 가이드에 나와 있는 단계를 완료한 후에만 수행할 수 있습니다.
다음과 같은 경우에 이 가이드를 사용하기에 적합합니다.
- 현재 코드 품질을 측정하고 있지 않습니다.
- 코드 품질이 좋지 않은 것으로 인식됩니다.
- 개발자가 어디에서 시간을 보내고 있는지 알 수 없습니다.
- 귀하의 조직은 애플리케이션 결함으로 인해 너무 많은 중단을 겪고 있습니다.
핵심 성과 지표
이러한 KPI는 개발자가 시간을 보다 효율적으로 사용할 수 있도록 코드 결함의 원인과 개발자의 노력이 가장 많이 필요한 영역을 식별하는 데 도움이 됩니다. KPI는 또한 개발 속도가 코드 품질에 영향을 미치는지 이해하는 데 도움이 됩니다.
안정
속도
필요한 KPI 수집
가장 좋은 시작점은 핵심 성과 지표를 수집하는 것입니다. 이를 위해서는 소스 코드 저장소, 빌드/테스트 자동화 플랫폼 등 개발 프로세스를 지원하는 특정 기술 플랫폼을 알아야 합니다. 그런 다음 각 KPI의 속성을 추출하고 이를 New Relic으로 가져오는 방법을 식별해야 합니다.
위의 핵심 성과 지표 섹션에서 이 사용 사례에 필요한 KPI 및 최소 필수 속성을 찾을 수 있습니다. 일반적으로 개발 도구 체인의 API를 사용하여 KPI와 해당 속성을 추출한 다음 사용자 정의 이벤트 API 를 사용하여 New Relic에 제출합니다.
사용자 정의 통합 작업을 시작하기 전에 적용 가능한 기본 통합이 존재하는지 확인해야 합니다.
대시보드 구현
이 개선 프로세스에서 사용하는 기본 방법입니다. 현재 KPI를 보여주고 개선이 필요한 영역을 식별하는 데 도움이 됩니다. GitHub의 뉴렐릭 OMA 리소스 센터에서 샘플 대시보드를 찾을 수 있습니다.
대시보드에 표시되는 정보는 개발 도구 체인에 따라 다르므로 정확한 사양에 맞게 대시보드를 사용자 정의 해야 합니다.
개발 기준 수립
초기 활성화를 수행 하기 전에 기준선을 구성하는 데 충분한 데이터가 필요하므로 개발 활동 샘플로 구성된 기준선을 설정해야 합니다. 일반적으로 이는 최소 2주가 소요되지만 현재 개발 속도에 따라 최대 6주까지 걸릴 수 있습니다. 이를 수행하는 한 가지 쉬운 방법은 해당되는 경우 기본 수집 및 평가 주기를 애자일 스프린트에 맞추는 것입니다.
기준을 설정하는 동안 이벤트 데이터가 New Relic에 예상대로 누적되는지 정기적으로 확인해야 합니다.
팀과 만나기
기준선을 설정한 후에는 개발 팀과 기타 이해관계자에게 수집된 데이터와 앞으로 따르게 될 지속적인 개선 프로세스를 소개하게 됩니다.
이 프로세스는 세 가지 활동으로 구성됩니다.
Review the KPIs and trends
: 귀하와 이해관계자는 KPI를 살펴보고 추세를 파악하게 됩니다.
Identfy achievements, challenges, and opportunities
: 이 단계에서는 KPI가 개선되는 영역(성과)과 개선되지 않는 영역(도전과제)을 식별합니다. 그런 다음 KPI(기회)를 개선하기 위한 전략과 전술을 파악하고 이를 가장 잘 구현하는 방법을 알아봅니다.
Make technical recommendations
: 여기에서는 귀하와 관련 이해관계자가 개발 도구 체인 또는 옵저버빌리티 전략 변경과 같은 기술적 권장 사항을 식별하고 검토하게 됩니다.
개선 프로세스 시작
이 마지막 단계는 지속적인 개선 프로세스입니다. 이 단계에서는 팀과 만나 기준에 대한 진행 상황을 검토하고 전략을 조정하여 원하는 개선 사항을 제공하게 됩니다. 개선 프로세스의 각 주기는 개발 프로세스를 여러 번 반복한 후에 발생해야 합니다. 일반적으로 이러한 상황은 모든 Agile 스프린트의 중간 지점과 끝 부분에서 발생합니다.
이 단계에서 다음을 수행해야 합니다.
- 매주 KPI를 이해관계자에게 보고하여 팀이 작업 우선순위를 적절하게 지정하고 약속된 비즈니스 결과에 대한 진행 상황을 보여줄 수 있도록 하세요.
- 시간이 지남에 따라 주간 KPI를 기록하고 유지하여 새로운 기준을 설정하고 개선 속도를 보여줍니다.
위의 프로세스를 완료한 후에는 New Relic을 사용하여 릴리스 품질을 향상시킬 수 있습니다.