メンテナンス・リリースを「サービスパックなんたら」とか「アップデートなんたら」と呼ぶのはどうか?
えー,端折りまくりのタイトルで何を言いたいのかわからんと思うので,前フリを.
- 社内用に,いわゆる「野良フレームワーク」のメンテナンスをしている.
- バージョン番号は,考えなしにn.nn形式(ver1.01とか ver1.20 ってあれ)にしている.
- メンテに手間をかけたくないので,メインラインを1つにし,バグ修正も機能拡張も常に最新バージョンで解決ってルールにしてる.
- 慣例的にバージョン番号は,バグ修正なら小数2桁をカウントアップし,機能拡張なら小数1桁をカウントアップしてる.
- とは言え,バージョン番号の発行はこっちの気持ち次第ってのが本音(これが間違い).
- メジャーバージョンアップ(整数桁のカウントアップ)しない限り,上位互換を維持するルールは厳守してる.
- そのための自動テストだ.
要するに,ver2.00が出ない限り ver1.xx は常に最新バージョンを使っても問題ない(むしろ,使って欲しい)のだ.
んが,現場はこちらの想定の斜め上を行く.:-(
いわゆる「バージョン固定したい欲求」ってヤツでして,いくら「最新版でもデグレしない」って言っても「自分らが使ってるのは ver1.xx で固定したから,最新版とかよう知らん」と言われる.これはもう気持ちの問題なので,理屈じゃどうしようもない(その心理は分からんでも無いし).
そんなわけで,重要なバグが見つかると泣く泣くバックポートを用意する羽目になるのであった.orz
こうなった理由を推測するに,変に気取ってマイナーバージョンなんぞを振ったのが悪かったんだろう.
そこで,あたしは考えた.上位互換が損なうようなメジャーバージョンアップ以外はバージョン番号をいじるもんじゃない!と.バグ修正だろと機能追加であろうと,メジャーバージョンアップ以外はメンテナンス・リリースなんだから,サービスパックでいいんだ(またはアップデートリリース)...という話(長っ).
具体的に言うと,今までは
ver1.00 → ver1.01 → ver1.10
みたくバージョンを上げていったんで,最新版でバグが出てメンテナンス・リリース(ver1.11)出すと,既存ユーザからは「自分らの使ってるバージョンにもパッチ出せ」と言われ,しぶしぶバックポート(bp1)を作る.
ver1.00 → ver1.01 → ver1.10 → ver1.11 | | | +→ ver1.00bp1 +→ ver1.01bp1 +→ ver1.10bp1
もともとバックポート作りたくないために上位互換の維持をルールにしたのに,これじゃ意味が無い.なんで,これからはこうする.
ver1.00 → ver1.00sp1 → ver1.00sp2 → ver1.00sp3 ...
メンテナンス・リリースじゃバージョン番号は変えず,代わりにサービスパックの番号を上げる.あと上位互換の維持を強調するため最新版しか公開しない.これでどだっ.
まだ試してないから効果の程は分からないが,さすがに「特定のサービスパックにパッチ出せ」って言わないよなぁ〜.
ps.
バックポートに関しては「パッチ当てた振りして実は全部が最新バージョン」ってのも考えたが,自分自身をワナにかけそうなので止めた.:-)
アジャイル開発の6原則と20のベストプラクティス
OpenUPをベースとしたアジャイル開発のプラクティス集みたい。ちょっと気になるので,評判が出そろうのを待つ。
載ってるプラクティスのうち,すでに実践してるのもあるから,わざわざ買わんでもって気がするが,そのプラクティスにイチャモン付けられたときの後ろ盾には使えそう。
アジャイル開発の6原則と20のベストプラクティス―オープン統一プロセス“OpenUP”とラショナル統一プロセス“RUP”を集約した実践的ソフトウェア開発指針
- 作者: パークロール,ブルースマックアイザック,Per Kroll,Bruce MacIsaac,落合修,齋藤修一,永田葉子,田中陽子,和田真理,福島清果,三上徹也
- 出版社/メーカー: エスアイビーアクセス
- 発売日: 2007/08/01
- メディア: 単行本
- クリック: 2回
- この商品を含むブログ (3件) を見る
アプリケーション開発を成功に導く システム基盤の構築ノウハウ
主にインフラまわりの話.OLTP(!?)もWebだけじゃないし,バッチやバックアップ,運管まで言及してて,充実っぷりがスゴイ.この手の事書いてる本にしては読みやすくて良い本.SEやってんなら読んどいて損はなかろうって感じ.
冒頭「ホスト屋さんはシステム基盤まわりが弱い」みたいなこと書いてあったけど,イヤイヤWeb世代だって弱い人は弱いよ.
今の世の中,インフラまわりは随分コモディディ化が進んで,あんまり基盤設計する必要も無くなってきたんだけど,たまに「お前ぇ,本当に分かってんの?」って言いたくなるようなシステム構成や運用設計を見るに付け,こうゆう本の重要さが身にしみる.
本書によると基幹システムは「Web+J2EE(JEE)+OLTPが現実解」って言ってるけど,そこまで大袈裟なシステムには携わった事が無いんだよねぇ.正直,ホスト連携が無い/それほどシビアじゃない程度のシステムなら,「JEE w/o EJBでおk」と思っている.
#そうゆうのは「基幹システム」って言わないか...
アプリケーション開発を成功に導く システム基盤の構築ノウハウ
- 作者: 谷口俊一,石川辰雄,沢井良二,鈴木広司
- 出版社/メーカー: 日経BP社
- 発売日: 2005/01/13
- メディア: 単行本
- 購入: 8人 クリック: 34回
- この商品を含むブログ (24件) を見る