1. 程式人生 > >開發中產品的各版本定義(beta,alpha,rc,release...)

開發中產品的各版本定義(beta,alpha,rc,release...)

 alpha:

                    Alpha是內部測試版,一般不向外部發布,會有很多Bug.除非你也是測試人員,否則不建議使用.是希臘字母的第一位,表示最初級的版本,alpha 就是α,beta 就是β ,alpha 版就是比beta還早的測試版,一般都是內部測試的版本。

beta:
                 該版本相對於α版已有了很大的改進,消除了嚴重的錯誤,但還是存在著一缺陷,需要經過多次測試來進一步消除。這個階段的版本會一直加入新的功能。        

RC:(Release Candidate)
                  Candidate是候選人的意思,用在軟體上就是候選版本。Release.Candidate.就是發行候選版本。和Beta版最大的差別在於Beta階段會一直加入新的功能,但是到了RC版本,幾乎

就不會加入新的功能了,而主要著重於除錯!  RC版本是最終發放給使用者的最接近正式版的版本,發行後改正bug就是正式版了,就是正式版之前的最後一個測試版。

GA:(general availability)
            比如:Apache Struts 2 GA這是Apache Struts 2首次發行穩定的版本,GA意味著General Availability,也就是官方開始推薦廣泛使用了。

Release:

             該版本意味“最終版本”,在前面版本的一系列測試版之後,終歸會有一個正式版本,是最終交付使用者使用的一個版本。該版本有時也稱為標準版。一般情況下,Release不會以單詞形式出現在軟體封面上,取而代之的是符號(R)。

build:

        指的是單元測試或者是功能測試


這裡對說兩句,在Maven倉庫的library中,除了以上的幾個版本定義,還有一個定義:

    SnapShot , Release .

什麼時候用Snapshot版本?

        依賴庫中的jar正處於開發的階段,會被經常被更新,這種情況下,如果使用Release,會頻繁增加版本號,導致版本號的濫用。

        版本的階段分類知識版本分類的一部分,版本還可以按照面向物件,業務版本,所處環境等等對一個產品定義。版本定義,有時版本學的一個分支部分。我也是慢慢感覺到,版本里面的別有洞天。