프로그램 버전 부여에 관한 고찰 > 자유게시판

자유게시판

프로그램 버전 부여에 관한 고찰 정보

정보 프로그램 버전 부여에 관한 고찰

본문

프로그램들을 보면 버전이 있습니다.
ver1, ver2, ver3.... 이렇게 나가면 될껄 왜 4.01.02.2364 이런 방식으로 쓸까요?
 
자리수에 따른 유형을 분석해보겠습니다.
 
[유형1]
1, 2, 3 ...
이런 순으로 버전을 붙이는 사람은 프로그램밍 경험이 적은사람 또는 '나는 천재라서 완벽한 프로그램만 만든다'는 개념의 소유자이죠.
프로그램을 만들다 보면 여러 버그를 고치거나 새로운 기능을 추가 할 수도 있습니다.
하루에도 수십번 고칠경우도 있습니다.
만약 이런 패턴으로 버전을 먹인다면 그누보드345346, 고스트3289634, 한글9347239 ..... 이런것도 나옵니다.
 
[유형2]
1.01, 2.35, 6.74 ...
이런 순으로 버전을 붙이는 사람은
1. 어느정도 프로그래밍을 해본 학생
2. 유지보수 적당히 조금만 하다가 끝내겠다.
3. 프로그램이 너무 단순해서 별로 고칠게 없다.
이정도 입니다.
 
[유형3]
2.63.25, 4.01.64, 9.23.01 ...
이런 순으로 버전을 붙이는 사람은 프로그래밍 경험이 많은 사람입니다.
이런 세부화된 버전 표기 방식은 무분별한 대표숫자(첫째자리)변경을 방지합니다.
그누보드를 예를 들어보죠
현재 버전이 4.06.09 입니다.
그누보드를 사람들이 부를때 통칭 그누보드3, 그누보드4... 이렇게 분류하죠.
여러 상용프로그램들도 버전은 1~10정도입니다.
즉 대표적인 버전은 첫째자리부분입니다.
자리수에 따라 이렇게 나눕니다.
 
xx.00.00 - 프로그램의 핵심 엔진이 변경되었을경우
00.xx.00 - 기능이 첨가되었을경우
00.00.xx - 버그수정의 경우
 
프로그래밍의 세계에서 통상적인 개념으로 이렇게 분류합니다.
따른 개념으로  분류하는 사람들도 물론 있겠죠.
 
[유형4]
3.63.15.5743, 8.24.01.0203 ...
이 방식은 프로그램의 알고리즘이 매우 복잡하고 스케일이 큰 경우 또는 기업의 입장일경우 사용합니다.
유형3으로도 부족해 하나의 구분을 더 넣고 거기다가 2자리도 아닌 4자리로 정한것은 그만큼 수정이 잦다는것을 의미합니다.
소스가 길어지면 수정할곳도 당연히 비례해서 늘어납니다.
즉, 기능개선없이 버그수정만 9999번을 할수 있다는 생각에 4자리로 늘린것이죠.
10000번의 경우 프로그래머는 눈물을 머금고 상위의 자리수를 하나 올립니다. ^^
또한 상용버전의 경우 기능개선보단 버그수정이 우선입니다.
돈을 주고 팔았는데 프로그램에 문제가 있다면 정말 큰일납니다.
기능개선의 경우 개발자의 의무는 아닙니다.
판매금액은 현재의 기능에 대한 요금입니다.
기능개선패치는 일종의 서비스(보너스)이죠.
하지만 버그는 소비자 입장에서는 용서할 수 없는 문제입니다.
내가 구입한 프로그램이 문제없이 잘 동작한다는 믿음을 당연히 가지고 구입합니다.
따라서 개발자는 버그수정에 민감하게 되고 그만큼 버그수정횟수는 늘어납니다.
일반적으로 우리들이 부르는 빌드버전.....이 5743또는 0203 경우입니다.
추천
0

댓글 2개

^^ 재미있게 읽었습니다.
일반적으로 어느정도쯤 되면 귀찮아서 버전도 프로그램에게 맡기는 경우가 있습니다.
MS 툴의 경우 컴파일 횟수를 뒷쪽에 붙쳐 줍니다.

그래서.. 뒷쪽에 번호들은 컴파일한 횟수의 넘버링입니다.
계속 테스트할수록.. 번호가 증가되는것이죠.
그래서 빌드버전..<--- 컴파일 횟수의 다른의미적 말입니다.

결론적으로 php쪽의 소스형태랑은 좀 거리가 있는 말이였습니다. ^^;;

그리고 요즘은.. 2000 / 2003 / 2005 등으로.. 년도를 붙이거나 날짜를 붙이는게 유행인듯 합니다. ^^
전체 196,490 |RSS
자유게시판 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT