Skip to content

1. 교정 유지보수

Namju Kim edited this page May 29, 2024 · 6 revisions

SonarCloud를 이용한 정적 코드 분석

1. SonarCloud란?

SonarCloud는 정적 코드 분석 도구로, 코드의 품질을 종합적으로 측정하고 개선하는 데 사용됩니다. 이 도구는 코드의 취약점, 버그, 코드 중복, 코드 표준 준수 여부 등을 분석하여 개발자에게 피드백을 제공합니다. SonarCloud는 클라우드 기반 서비스로, 다양한 프로그래밍 언어와 빌드 도구를 지원하며, CI/CD 파이프라인에 통합하여 지속적인 코드 품질 관리를 가능하게 합니다.

2. 초기 분석 결과

아래 이미지는 SonarCloud에서 초기 분석한 결과입니다.

  • Security 이슈: 6개
  • Security Hotspot: 2개
  • Reliability 이슈: 47개
  • Maintainability 이슈: 106개
  • Test Coverage: 0%

이 결과는 코드베이스에 보안 취약점, 신뢰성 문제, 유지보수성 문제 등이 존재하며, 테스트 커버리지가 전혀 없다는 것을 나타냅니다. 이러한 문제들은 코드의 안정성, 보안성, 유지보수성을 저하시킬 수 있으므로, 이를 개선하기 위한 조치가 필요합니다.

3. 코드 품질 개선

SonarCloud에서 제공하는 피드백을 활용하여 코드 품질을 개선하기 위해 다음과 같은 방법을 사용할 수 있습니다:

  • 코드 리팩토링: 코드 중복을 제거하고, 코드 복잡도를 줄이며, 가독성을 향상시킵니다.
  • 보안 이슈 해결: 발견된 보안 취약점을 분석하고 수정하여 보안성을 강화합니다.
  • 코드 표준 준수: 코드 표준을 준수하여 일관된 코드 스타일과 품질을 유지합니다.
  • 테스트 커버리지 향상: 단위 테스트, 통합 테스트 등을 추가하여 테스트 커버리지를 높입니다. 이는 코드의 안정성을 높이고, 새로운 변경 사항이 기존 기능에 미치는 영향을 최소화합니다.

4. 교정 유지보수 결과

SonarCloud를 이용하여 교정 유지보수를 진행한 결과, 코드 품질이 크게 개선되었습니다. 구체적인 결과는 다음과 같습니다:

  • Security 이슈: 6개 -> 1개
  • Reliability 이슈: 47개 -> 9개
  • Maintainability 이슈: 106개 -> 22개
  • Test Coverage: 0% -> 23.7%

New Code 기준

Overall 기준

Issues 기준

Test Coverage 기준

Duplications 기준

위 결과들은 교정 유지보수를 통해 코드 품질이 전반적으로 개선된 것을 보여줍니다.

  • Security 이슈의 경우, 6개에서 1개로 크게 감소하여 보안성이 향상되었습니다.
  • Reliability 이슈는 47개에서 9개로 줄어들어 코드의 신뢰성이 높아졌습니다.
  • Maintainability 이슈는 106개에서 22개로 감소하여 코드의 유지보수성이 크게 개선되었습니다.
  • Test Coverage는 0%에서 23.7%로 증가하여 테스트 커버리지가 향상되었고, 이는 코드의 품질과 안정성을 높이는 중요한 요소입니다.

결론적으로, SonarCloud를 활용한 교정 유지보수는 코드 품질을 효과적으로 개선할 수 있는 강력한 도구임을 확인할 수 있었습니다. 이러한 지속적인 코드 품질 관리와 개선 활동을 통해, 개발자는 보다 안정적이고 신뢰할 수 있는 소프트웨어를 제공할 수 있습니다.

Clone this wiki locally