นี่เป็นวิธีที่ละเอียดมากในการกำหนดหมายเลขเวอร์ชัน:
N.x.K
ที่ไหนN
และK
เป็นจำนวนเต็ม 1.x.0
ตัวอย่าง: 5.x.1
, 10.x.33
, ใช้สำหรับเป็นสื่อกลางสร้าง
N.M.K
ที่N
, M
และK
เป็นจำนวนเต็ม 1.0.0
ตัวอย่าง: 5.3.1
, 10.22.33
, ที่ใช้สำหรับการเผยแพร่
N.x.x
ที่N
เป็นจำนวนเต็ม ตัวอย่าง: 1.x.x
. ใช้สำหรับสาขาการสนับสนุน
N.M.x
ที่ไหนN
และM
เป็นจำนวนเต็ม ตัวอย่าง: 1.0.x
. ใช้สำหรับสาขาปล่อย
นี่คือรูปภาพสำหรับภาพประกอบอย่างง่ายของวิธีการกำหนดหมายเลขเวอร์ชัน:
PA
หมายถึงpre-alpha
A
หมายถึงalpha
B
หมายถึงbeta
AR
หมายถึงalpha-release
BR
หมายถึงbeta-release
RC
หมายถึงrelease candidate
ST
หมายถึงเสถียร
ข้อดีของวิธีการกำหนดหมายเลขเวอร์ชันดังต่อไปนี้:
- เพราะมันหมายถึงเฉพาะของวงจรการพัฒนาซอฟต์แวร์เปรียว
- มันต้องใช้เวลาเป็นข้อมูลเฉพาะบัญชีของแหล่งที่มาของโครงสร้างพื้นที่เก็บข้อมูลรหัส
- มันอธิบายตัวเองสำหรับผู้ที่คุ้นเคยกับรูปแบบ ทุกรูปแบบแสดงถึงสิ่งประดิษฐ์ที่แตกต่างกัน รูปแบบดังกล่าวสามารถแยกวิเคราะห์ได้ง่ายและใช้เพื่อวัตถุประสงค์อื่นเช่นการติดตามปัญหา
- เวอร์ชันรูปแบบตั้งซึ่งขั้นพื้นฐานสำหรับวิธีการอธิบายเวอร์ชันที่สามารถใช้สำหรับตัวชี้วัดการชุมนุมและการวางแผน
- จะมุ่งเน้นแนวคิดของการครบกําหนดและระดับของคุณภาพ บ่อยครั้งที่มีการกำหนดหมายเลขเวอร์ชันดังกล่าวเป็น 1.0.0 โดยไม่จำเป็นมาก (เมื่อซอฟต์แวร์อยู่ในระดับลึก) วิธีการกำหนดหมายเลขเวอร์ชันที่นำเสนอช่วยให้สามารถสร้างวุฒิภาวะได้หลายระดับ ในกรณีที่ง่ายที่สุดจะมีเพียงสองระดับเท่านั้น: build กลาง (
N.x.K
) และปล่อย ( N.M.K
) การเปิดตัวหมายถึงชิ้นส่วนของซอฟต์แวร์ที่มีหมายเลขเวอร์ชันเต็ม ( N.M.K
) ได้ผ่านกระบวนการจัดการคุณภาพบางประเภทภายใน บริษัท ซัพพลายเออร์ / องค์กร / ทีม
- มันเป็นหลักฐานของลักษณะความคล่องตัวของการพัฒนาและการทดสอบ
- ส่งเสริมวิธีการแยกส่วนเพื่อโครงสร้างซอฟต์แวร์และสถาปัตยกรรม
นอกจากนี้ยังมีแผนภาพที่ซับซ้อนมากขึ้นซึ่งแสดงรายละเอียดวิธีการกำหนดเวอร์ชัน นอกจากนี้คุณอาจพบสไลด์นำเสนอที่มีประโยชน์ซึ่งอธิบายการเปลี่ยนไปใช้วิธีการกำหนดเวอร์ชันและแอปพลิเคชันSCMFViz ซึ่งแสดงหลักการพื้นฐานของวิธีการกำหนดหมายเลขเวอร์ชัน สไลด์การนำเสนอยังอธิบายว่าเหตุใดจึงสำคัญที่ต้องยึดแนวทางการกำหนดเวอร์ชันเดียวกันตลอดทั้งชีวิตของโครงการซอฟต์แวร์
โดยส่วนตัวแล้วทัศนคติของฉันที่มีต่อการใช้เวอร์ชันวันที่แทนที่จะเป็นตัวเลขเวอร์ชันจริงถือว่านักพัฒนาซอฟต์แวร์นั้นใช้เวอร์ชันวันที่:
- รู้อะไรเกี่ยวกับวงจรการพัฒนาซอฟแวร์ การพัฒนามักจะว่องไวและวนซ้ำ วิธีการกำหนดหมายเลขเวอร์ชันควรแสดงถึงลักษณะวนซ้ำของกระบวนการพัฒนาซอฟต์แวร์
- ไม่สนใจเกี่ยวกับคุณภาพของซอฟต์แวร์ การควบคุมและประกันคุณภาพมีความคล่องตัวและวนซ้ำ เช่นเดียวกับการพัฒนา และหมายเลขรุ่นควรเป็นหลักฐานของลักษณะว่องไวและซ้ำ ๆ ของการพัฒนาและการควบคุม / ประกันคุณภาพ
- อย่าสนใจเกี่ยวกับสถาปัตยกรรมหรือแนวคิดของแอปพลิเคชันของพวกเขา หมายเลขเวอร์ชันหลัก (
N
ในN.M.K
) รับผิดชอบทั้งโซลูชันสถาปัตยกรรมและหลักการพื้นฐานของแอปพลิเคชัน หมายเลขรุ่นหลักN
คือการเปลี่ยนแปลงตามการเปลี่ยนแปลงในสถาปัตยกรรมหรือการเปลี่ยนแปลงความคิดหลักและหลักการของการทำงาน / การทำงานของมัน
- อย่าควบคุม codebase ของมัน อาจมีเพียงหนึ่งสาขา (ลำตัว) และใช้สำหรับทุกสิ่ง ซึ่งโดยส่วนตัวแล้วฉันไม่คิดว่าถูกต้องเพราะมันสนับสนุนให้ codebase กลายเป็นที่ทิ้งขยะขนาดใหญ่
วิธีนี้อาจดูขัดแย้งเล็กน้อย แต่ฉันเชื่อว่านี่เป็นวิธีที่ตรงไปตรงมาที่สุดในการให้หมายเลขเวอร์ชั่นของซอฟต์แวร์ที่เหมาะสม