การกำหนด เลข version ของ software ช่วยให้เราสามารถ โฆษณาและอ้างอิงเวลาเกิดปัญหาของซอฟแวร์ได้ แต่ความจริงแล้ว มันซับซ้อนกว่านั้นมาก
การกำหนดเลข version ของซอฟแวร์ นั้นหลายคนมักจะกำหนดเพียงแค่ เลข major กับ minor เท่านั้นเช่น version 4.2 คือ ออกครั้งที่ 4 แก้ไข ครั้งที่ 2 เป็นต้น แต่ความจริงแล้วในการพัฒนาซอฟแวร์นั้น มีการทำแล้วทำอีกวนซ้ำไม่รู้กี่รอบ และอาจเกิดเหตุการณ์ที่ ของที่เคยใช้ได้กลายเป็นใช้ไม่ได้ แล้วส่งสัยว่า ใช้ test ด้วย version ใด และ source code เป็นอย่างไร ซึ่งการที่สามารถตามหา sourcecode ที่ถูกต้องได้ เป็นหัวใจในการค้นหาสาเหตุของปัญหาในเวลาจำกัดอย่างแท้จริง
source code version หรือที่เรียกว่าเลข revision จึงเป็นส่วนสำคัญที่จะขาดเสียมิได้ ในการใช้อ้างอิงเพื่อหาว่า source code ของ version ที่เราใช้เป็นอย่างไรกันแน่ แต่หน้าตาของ source code ก็ไม่ใช่ปัจจัยเดียวที่ทำให้ ซอฟแวร์แตกต่างกัน กระบวนการ build ตัว binary ก็สำคัญไม่ต่างกัน ตัวอย่างเช่น เรื่องของ library ที่ใช้ การที่ build source code เดิมแต่เปลี่ยน library ก็นำมาซึ่งการทำงานที่เปลี่ยแปลงไป ไม่มากก็น้อย การรู้ว่า การ build เป็นอย่างไร มีความสำคัญไม่ยิ่งหย่อนไปกว่ากัน
ตัวอย่างการกำหนดเลข version จึงควรประกอบด้วย
1. Major Number – บอกถึงความ compatible ของซอฟแวร์
2. Minor Number – บอกถึงความแตกต่างที่ไม่กระทบกับ compatibility
3. Build Number – บอกถึงความแตกต่างของครั้งที่ build ซึ่งอาจมีการเปลี่ยนแปลง build environment ในการ build ได้
4. Revision Number – บอกถึงความแตกต่างของ source code ที่นำมา build
link
– http://www.bitsntricks.com/software-versioning-and-release-numbers/