버미

버전 표기 체계 정리 본문

SW Engineering

버전 표기 체계 정리

Bum_2 2024. 12. 11. 23:50

우리는 다양한 상용 서비스에서 버전 표기를 마주한다. .(마침표)로 구분된 숫자들은 어떤 것을 의미하는지, 소프트웨어 서비스의 버전 표기 체계에 대해서 정리해보자.


버전 표현식은 다음과 같다.

(Major 버전).(Minor 버전).(Patch 버전)

 

1. Major 버전 (주 버전)

호환성 깨짐이 있는 큰 변화가 있을 때 사용한다.

즉, 이전 버전과 호환되지 않거나, 기존 방식으로는 더 이상 동작하지 않을 수 있는 수준의 변화를 말한다.

그 예시는 아래와 같다.

  • 라이브러리를 제공하는 서비스에서 API의 시그니처가 변경됨
  • 파일 형식이 바뀌어 예전 버전과 호환되지 않는 경우 (JSON 기반이었다가 Protobuf나 JSON 스키마로 바뀌는 경우)
  • 보안 모델, 인증 로직이 완전히 바뀌는 경우

사용자는 문서나 가이드를 다시 봐야 하며, 코드를 일부 수정해야할 수도 있다.

 

2. Minor 버전 (부 버전)

이전 버전과 호환되는 선에서 새로운 기능이 추가되거나 개선되는 경우, 사용한다.

기존 기능을 그대로 두고 추가적인 옵션이나 도구를 제공하는 것이다.

그 예시는 아래와 같다.

  • API에 새로운 파라미터가 추가되었지만 기본값이 있어 기존 코드에 영향이 없음
  • 새로운 컴포넌트/모듈이 추가됨
  • 성능 향상이나 UX 개선

3. Patch 버전

버그 수정이나 아주 작은 기능 수정, 보안 패치가 되는 경우 사용한다.

그 예시는 아래와 같다.

  • 예외 상황, 오류 처리, 성능 버그, UI 미세 조정 등 문제만 고침

 

번호 표기 규칙

버전 번호는 Major, Minor, Patch 순으로 배포하며 이 숫자들은 앞에 0이 붙지 않는 자연수다.

버전이 업데이트 되면 그 하위 버전 숫자는 모두 0으로 초기화한다. 예를 들어, Major 버전이 업데이트 되었다면 Minor, Patch는 모두 0으로 초기화된다. Minor가 업데이트 되었다면 Patch 버전은 0으로 초기화된다.

'SW Engineering' 카테고리의 다른 글

OAuth 2.0  (0) 2025.07.26