【りりーす】

リリース とは?

最終更新:
💡 版や機能を利用者へ届け、公開後も確かめる

ソフトウェアの版や機能を、利用者へ提供すること。配布物の公開やサービスでの機能公開など、文脈で対象は異なります。実行環境への配置であるデプロイと、利用者への公開を分ける運用もあります。

📌 このページのポイント
リリース:利用者へ版や機能を届けるデプロイ環境へ配置機能は非公開リリース対象の利用者へ機能を公開公開後の確認影響を監視必要な対応機能フラグ等で配置と公開を分ける例停止・復旧の条件も確認する配布ファイルを公開するリリースもある旧版に戻してもデータを戻せるとは限らない
サービスの新機能を公開する時間順の一例で、全プロジェクトの必須工程ではありません。配布物の公開と利用者によるインストールも区別します。
ひよこ ひよこ
リリースとデプロイは同じ?
ペンギン先生 ペンギン先生
文脈によって一緒に使われることもあるけど、分けて考えると分かりやすいよ。デプロイは実行環境へ配置すること。機能フラグで新機能を隠して配置し、後から利用者へ公開するなら、時点を分けられるんだ。
ひよこ ひよこ
サーバーに配置しないリリースもある?
ペンギン先生 ペンギン先生
あるよ。例えばGitHubのReleaseでは、版のソフトウェアやリリースノート、配布ファイルをまとめて提供する。配布物を公開することと、利用者の環境へインストールすることは同じではないね。
ひよこ ひよこ
リリースノートには何を書く?
ペンギン先生 ペンギン先生
利用者に関係する新機能、修正、互換性の変更、必要な移行や既知の問題などを伝える。版と対象を明確にして、更新するかを判断しやすくしよう。リリースノートを公開しただけで動作検証が済むわけではないよ。
ひよこ ひよこ
バージョン番号で影響が分かる?
ペンギン先生 ペンギン先生
SemVerを採用し、公開APIの規則を守る場合には、1.0.0以降のメジャーは非互換の変更、マイナーは互換な機能追加、パッチは互換なバグ修正を表す。ただしすべてのnpmパッケージが守る保証はなく、0.xやプレリリースにも別の条件があるよ。
ひよこ ひよこ
公開後に問題が起きたら?
ペンギン先生 ペンギン先生
影響を確認し、公開の停止や修正版などを判断する。戻す計画も必要だけど、データの変更や外部への処理は旧版へ戻すだけで取り消せない場合がある。一部への段階公開でも、影響を測る観測や停止の条件が大切なんだ。
もっと詳しく知りたい人へ

機能フラグをOFFにすれば、全部元に戻る?

画面や機能の利用を止められても、実行済みのデータ更新や外部システムへの処理は別です。非公開側の経路と公開側の経路、データの互換性を確認し、必要な復旧手順を用意します。フラグの切り替えだけで安全性を保証するものではありません。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「リリース」って出てきたら「ソフトウェアの版や機能を利用者へ提供すること」と思えばだいたいOK!
📖 おまけ:英語の意味
「Release」 = 解放する、公開する
💬 もともとは「束縛から解き放つ」という意味。ソフトウェアを開発環境から解き放ち、世の中に届けるイメージ。

参考資料

← 用語集にもどる