web-dev-qa-db-ja.com

計画的リリースはいつ行うべきですか(チケットが完了したときに本番環境にプッシュするのに対して)?

[〜#〜] update [〜#〜]なぜこの質問が無効にされたのか、または無効にされるべきなのかを完全に理解します...しかし、もしあなたがこの質問に反対票を投じたくなったら、いくつか提供してもらえますか?私がこの質問をするのに良いフォーラムがどこにあるかについてのフィードバック?

私は自社の社内製品を作成するための新たな取り組みの始まりです。ですから、私の顧客は組織全体の同僚なので(私は8人の開発者のチームと個人的に働いています)、その場ですぐに、リスクはそれほど高くありません。

私たちの主な焦点は、複数の(〜4)サービスを1つの統合された製品に統合することです(したがって、多くのリファクタリング、マージ、およびコードの完全な書き換え)。

私たちはこの新製品の計画/戦略をまとめ始めており、別のアプローチに利点があるかどうかを確認するために、既存の戦略の多くに疑問を投げかけています。

リリースをスケジュールするのが適切なのはいつですか(かなりの作業が完了したときに製品版にプッシュするのではなく)?

利害関係者からリリーススケジュールについて尋ねられたとき、最初に思ったのは、「どうしてこれをやらないのか」ということでした。

アドホックプッシュを続けることは間違いありませんが、ビジネスオーナー/利害関係者に毎月第3月曜日にリリースを期待できるはずであることを伝える付加価値はありますか(たとえば)。

3
Doug

まあ、私が考えることができる唯一の真の価値は、あなたの利害関係者が新しいリリースを期待する時期を知っていること、そして特定のリリース日が来る前に物事を成し遂げるためにいくつかの開発規律を確実にしなければならないことでしょう。

あなたの利害関係者は、かなりの努力がいつ完了したかを知ることはできません。彼らはそれを知るのに十分な洞察がなく、おそらく本当に常に進捗状況を追跡することを気にしません。もちろん、新しいリリースが利用可能になり次第、彼らに通知されることを確認できますが、これにはあなたの側からの追加の努力が必要です。

そして、開発時間に制約がない場合、機能をどんどん改良しようとする典型的な開発の弱点に苦しむかもしれませんが、それがすでにどれほど優れているかに関係なく完了することはありません。あなたはさらに多くの時間を投資します。ハードタイムリミットがあると、フォーカスが "それが行われたときに行われます"から "それはその日に行われ、残りの時間に何ができるかを確認する必要があります。妥協して、それほど複雑ではない機能を出荷する可能性がありますが、少なくともそれを出荷します "。

また、通常、オプションAに利点/欠点があり、オプションBにもある場合、Aを選択するか、Bを選択するか、それらを組み合わせてオプションCを作成することができます。

毎日/毎週/毎月のビルドを作成します。これらのビルドは固定リリースサイクルを表しており、開始するすべての大きな変更が次のリリース日までに行われるか、リリースできるように機能ブランチにある必要があることを確認する必要があるため、いくつかの開発規律を強制しますその変更なし。また、現在のサイクルの終わりまでに、コードベースは常にビルド可能で実行可能な状態でなければなりません。ただし、これらのリリースはバージョン管理されておらず、リリース日によってのみ識別され、変更のリストはごくわずかです。そして、かなりの努力が完了したときはいつでも、新しいバージョン番号で実際のリリースを作成し、必要に応じてより詳細なリリースノートとドキュメントを提供します。

3
Mecki

計画的リリースは計画に適しています。

Eコマースサイトがあり、ビッグボスが新機能「サイズチャート」を要求したとします。

ビッグボスは新しい「サイズチャート」機能が会社をより価値のあるものにするだろうと投資家に告げるでしょう、彼らはもっと投資すべきです!投資家は、それがいつ行われるのかを知りたいと思っています。マーケティング部はチラシを作成し、販売部は大規模な技術会議などでデモを行いたいと思っています。

これはすべて、他の多くのものと一緒に機能させる必要のある開発チームと、「これがいつ準備ができるのか?」

これで、継続的な展開を行う場合、アジャイルスプリントなど、答えは非常に流動的です。 「それが行われたときに行われます」

月次/四半期ごとのリリースがある場合は、もう少し具体的になります。機能Xは今月のリリースに含まれますか?カンファレンスではどのような機能を発表できますか?それらのチラシはいつ出かけるべきですか?リリースXをロールバックする必要がありましたか?!?!? OMGなぜもっとテストしないの?!?!等

スケジュールされたリリースは、誰もが少し同期しやすくなり、テストされ洗練されたものを提供することに少し集中するか、実際に実行する必要があるものがたくさんあることを理解するために、今週関心があるものだけではないことを理解するのに役立ちます。 。

もちろん、CDで同じことをしたり、準備ができたらリリースしたりすることもできます。

2
Ewan