プログラムのバージョン番号を使用する

そして、すべてが私の車で機能します!

プログラマの冒とくから。



プログラマー、テスター、およびプログラムのユーザーが、どこで何が起こっているのか、エラーがどこで発生したのか、または新しい機能をいつ見ることができるのかを理解するには、プログラムバージョンを使用します。 最も簡単な方法は、アセンブリごとに1つずつ増加する単一の番号です。 この方法が最適な場合もあります。 他の製品はどうですか?





IEのバージョン番号は8.0.6001.18828で、ペイントのバージョン番号は6.0ですが、ビルド番号は6002です。

次の構文は、Microsoft Office製品のバージョン番号を示すために使用されます。

aa.bbbb.cccc

* aa:Officeバージョン。

* bbbb:プログラムの実行可能ファイルのバージョン(Excel.exeなど)。

* cccc:Mso.dllファイルのバージョン。



しかし、最も独創的なものはドナルド・クヌースでした。 バージョン3.0以降、TeXは特徴的なバージョン番号付けシステムを使用しています。アップデートごとにバージョン番号に10進数が追加され、漸近的にπに近づきます。 これは、TeXの現在のバージョン(3.1415926)が非常に安定しており、マイナーアップデートのみが可能であるという事実を反映しています( en.wikipedia.org/wiki/TeXを参照)。



今のところクヌートのジョークを忘れてください。 どのように便利ですか? バックトラッカーの設定に関するセミナーでは、さまざまな属性グループについて説明します。 記述属性があり、制御属性があります。



ビルドバージョンは、エラーが見つかった場所を特定する上で重要です。 この場合、これは欠陥の説明の一部であり、プログラムセクションの説明やエラーのタイプとは若干異なります。 また、欠陥が修正されたビルド番号を使用すると便利です(新しい機能が追加されました)。 ここでは、アセンブリからアセンブリへと成長する単一の単数形を使用するのが最も便利です。



ただし、機能と欠陥を管理するには、公式リリース番号を使用すると便利です。 4週間の反復作業を募集します。 リリース2.14がリリースされました。次のリリースは2.16です。 運用するものにはラベルが必要です。 そうしないと、エンドユーザーが当社と通信するのが非常に困難になります。 構造を大きな変化/小さな変化にすると便利な場合があります。 たとえば、「バージョン2」はphp + MySQL上にあり、バージョン3は.Net + MSSQL上にあります。 4番目のバージョンでは、3層アーキテクチャから4層アーキテクチャに切り替えて、最終的に太ったクライアントを作成します。 そしてバージョン5では、最終的に倉庫会計に加えて物流を行います。 つまり バージョン2.x、3.x、4、xは大きなジャンプであり、移行3.12-3.14はパッチのリリース、小さな機能の追加などです。



時には3つのレベルを実行します。

•第1レベル-6〜30か月ごとに大きなジャンプ

•第2レベル-2〜4週間ごとの小さなジャンプ

•第3レベル-いつでもオンデマンドの緊急パッチ



この場合、チームの一部がバージョン4.0で作業しており、別の人が3.14を準備しており、速い手を持つ数人の男が3.12.1と3.12.2を準備しているときによく見られます(数字3.12.1はコミットを先に押した人用です)。 構成管理の完全な悪夢ではなく、ちょっとした喜びでした。



2レベルのリリース番号を検討することをお勧めします。 チームが1つのクライアント(システムのサポートと開発)にサービスを提供している場合、計画された反復の番号を最初の番号にし、製品バージョンのパッチ番号を2番目にすると便利です。 ボックスの場合は異なりますが、2つの数字で対応できます



開発中のバージョンの数が奇数で、動作中のバージョンが偶数である場合、依然として興味深いプラクティスがあります。



そのため、たとえば、バージョン14.0を現在運用中(または7回目の4週間の反復の結果)、15.0は開発中ですが、パッチ14.1および14.2はすでにリリースされています



この場合の完全なバージョン番号はaa.b.cccになります。ここで、

•aa-リリース番号

•b-パッチ番号

•ccc-ビルド番号



そして、あなたは次のようなものを持つでしょう:

画像





•バージョン14.0.283(リリース14.0、ビルド283)はクライアント上にあります。 次のリリース16.0では、欠陥D14およびD16を修正し、機能F10およびF11を追加する予定です。

•チームは、F10、D14が実装されたリリース15.0.284で作業を開始します。

•しかし、ここでユーザーは14.0.283でいくつかの欠陥を見つけます。 D17をパッチにし、D16をより良い時期まで延期することが決定されました。 パッチ14.1.285がリリースされました

•...

•15.0.289と16.0.289は同一です。 数字の違いは、これが公式リリースであることを示すためです。



この番号付け方法は、多くの場合非常に便利です。 おそらくあなたのプロジェクトに特に合わないでしょう。 最も重要なことは、何かを変更する場合、説明的な属性と制御属性があることを忘れないでください。 バージョン番号に関連しない他の属性に制御を構築できます。 この場合、数を簡略化できます。 または、誰もが明確であり、バージョン番号が単に必要ない場合もあります。 そうなります。 ただし、これについて、別の記事、またはトレーニングで。



All Articles