如何正確優(yōu)雅地給APP版本號(hào)命名?

3 評(píng)論 15651 瀏覽 99 收藏 8 分鐘

版本號(hào)是APP的一份身份代碼,其中需要遵循一定的規(guī)范和原則。

作為移動(dòng)端產(chǎn)品經(jīng)理,經(jīng)常會(huì)做APP版本迭代規(guī)劃,所以不可避免的需要給APP版本確定版號(hào)的工作,大多數(shù)情況下可能都是拍腦袋確定的版本號(hào)。

有些公司可能會(huì)有專門的項(xiàng)目經(jīng)理負(fù)責(zé)版本管理和版本號(hào)的命名,但是絕大多數(shù)小公司可能都是產(chǎn)品經(jīng)理來做這項(xiàng)工作。

在網(wǎng)上搜集了一些資料,才發(fā)現(xiàn)APP版本號(hào)的命名是有很多規(guī)范和原則的,本文就將這些規(guī)范和原則分享給各位。

一、為什么要規(guī)范APP版本號(hào)的命名?

首先需要說明的是哪些人員需要用到APP版本號(hào),第一是產(chǎn)品經(jīng)理,第二是開發(fā)人員,第三是項(xiàng)目經(jīng)理,第四是用戶。

對(duì)于產(chǎn)品經(jīng)理,APP版本迭代基本都是有產(chǎn)品經(jīng)理發(fā)起的,因此很多情況下都是產(chǎn)品經(jīng)理在進(jìn)行需求管理和版本規(guī)劃的時(shí)候就大體上劃分了版本號(hào),版本號(hào)對(duì)于產(chǎn)品經(jīng)理來說可以更好更清晰地篩選和確定每個(gè)版本的需求。

對(duì)于開發(fā)人員,版本號(hào)是直接和代碼相關(guān)的,很多時(shí)候不同版本交叉開發(fā),同一時(shí)間可能在開發(fā)不同版本,為了保障代碼的規(guī)范和清晰,避免不同版本出現(xiàn)交叉混亂,版本號(hào)是極其重要的一環(huán)。

對(duì)于項(xiàng)目經(jīng)理來說,版本號(hào)是需求管理中唯一標(biāo)識(shí)符,需要根據(jù)版本號(hào)去管理和分配下發(fā)工作,同時(shí)也為了在軟件產(chǎn)品生命周期中更好的溝通和標(biāo)記。

對(duì)于用戶來說,盡管版本號(hào)對(duì)于用戶來說只是一串?dāng)?shù)字,但是版本號(hào)給用戶的感知是不斷更新的數(shù)字,可以通過版本號(hào)來判斷自己的APP是不是最新的。

二、APP版本號(hào)的組成與規(guī)范

目前很多情況下,版本號(hào)可能只遵循了兩個(gè)原則和規(guī)范,即版本號(hào)是唯一的,且是一串?dāng)?shù)字這個(gè)基本原則。

在介紹APP版本號(hào)的命名規(guī)范和原則之前,我們首先需要了解一些APP版本號(hào)的組成是怎樣的。

軟件版本號(hào)有四部分組成:<主版本號(hào).><子版本號(hào)>.<階段版本號(hào)>.<日期版本號(hào)加希臘字母版本號(hào)>

希臘字母版本號(hào)共有5種:base、alpha、beta、RC、Release。 例如:2.1.0.181209_Release。

下面對(duì)希臘字母版號(hào)進(jìn)行簡(jiǎn)述:

  • Alpha版:也叫α版(開發(fā)環(huán)境),此版本主要是以實(shí)現(xiàn)軟件功能為主,通常只在軟件開發(fā)者內(nèi)部交流;
  • Beta版:此版本相對(duì)于α版已經(jīng)有了很大的改進(jìn),消除了嚴(yán)重的錯(cuò)誤,但還是存在著一些缺陷,需要經(jīng)過多次測(cè)試來進(jìn)一步消除,此版本主要的修改對(duì)像是軟件的UI;
  • RC版:此版本已經(jīng)相當(dāng)成熟了,基本上不存在導(dǎo)致錯(cuò)誤的BUG,與即將發(fā)行的正式版相差無幾,測(cè)試人員基本通過的版本;
  • Release版:此版本意味著“最終版本”、“上線版本”,在前面版本的一系列測(cè)試版之后,終歸會(huì)有一個(gè)正式版本,是最終交付用戶使用的一個(gè)版本。該版本有時(shí)也稱為標(biāo)準(zhǔn)版。一般情況下,Release不會(huì)以單詞形式出現(xiàn)在軟件封面上,取而代之的是符號(hào)(R)。

而對(duì)于絕大多數(shù)APP來說,一般采用的基本都是GNU風(fēng)格的版本號(hào)管理策略,APP完全版本號(hào)的組成包括三組數(shù)字“<主版本號(hào).><子版本號(hào)>.<階段版本號(hào)>”,也即X.Y.Z,其中X、Y、Z都為正整數(shù)。

三、APP版本號(hào)的命名修改規(guī)則

1. 主版本號(hào)

  • 當(dāng)APP的多個(gè)主要模塊有較大的變動(dòng),一般情況下,比方說APP新增一個(gè)TAB,整個(gè)產(chǎn)品結(jié)構(gòu)都改變了;或者新增了新的功能或業(yè)務(wù),比方說微信上線錢包,抖音上線直播;
  • 主版本號(hào)起始值為0或者1,具體需要由產(chǎn)品經(jīng)理來決定是否需要修改主版本號(hào)(PS:大多數(shù)可能需要老板拍板)。

2. 子版本號(hào)

  • 子版本號(hào)初始值為0;
  • 當(dāng)APP的較少主要模塊發(fā)生較大的變動(dòng)或新增模塊(涉及主邏輯變更的)、較多個(gè)分支模塊發(fā)生較大的變動(dòng)或新增,相對(duì)于主版本號(hào)而言僅是局部的變動(dòng),比方說某個(gè)功能上的UI重構(gòu),某個(gè)頁面的優(yōu)化等,其中較少模塊和較多模塊需要去定義,一般我們認(rèn)為較少為小于3個(gè),較多認(rèn)為是超過3個(gè);
  • 子版本號(hào)的最大值需要確定,不同的公司可能有最大的值,比方說最大為9,如果超過9,則需要主版本號(hào)進(jìn)1,也有些公司可能不存在最大值,只會(huì)在主版本號(hào)+1的情況下才會(huì)將子版本號(hào)歸0;這里沒有確定的原則和規(guī)范,可以由產(chǎn)品經(jīng)理自己定規(guī)則。

3. 階段版本號(hào)

  • 階段版本號(hào)初始值為0;
  • 什么時(shí)候修改階段版本號(hào),一般是Bug修復(fù)、較少個(gè)分支模塊的變動(dòng),比方說視覺、樣式、交互、文案等修改的情況;
  • 一般情況下,如果只是修復(fù)bug,則階段版本號(hào)+1即可;如果既涉及到bug修復(fù),又涉及到較少分支模塊的修改,則階段版號(hào)+2;如果超過3個(gè)分支模塊的修改,則建議直接子版本號(hào)+1。

總結(jié)

盡管說版本號(hào)只是一串?dāng)?shù)字,但是對(duì)于產(chǎn)品經(jīng)理、開發(fā)人員以及用戶來說,都是有意義的一串?dāng)?shù)字。既能規(guī)范版本的生命周期,也能方便內(nèi)部人員的溝通和工作。

拍腦袋去命名版本號(hào)是一個(gè)不嚴(yán)謹(jǐn)和規(guī)范的,而產(chǎn)品經(jīng)理是需要去追求完美的,希望以上的APP版本的命名規(guī)范能夠給大家一些參考。

 

作者:harryli,新零售行業(yè)產(chǎn)品經(jīng)理,微信公眾號(hào)“Harry李先生筆記”。

本文由 @harryli 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。

題圖來自Unsplash,基于CC0協(xié)議。

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 好文,謝謝分享

    來自浙江 回復(fù)
  2. 寫的很細(xì)致,??

    來自北京 回復(fù)
  3. ??

    來自北京 回復(fù)