11/29/2017

カルダノのリリース戦略

メインネットのリリースから、IOHK開発者は次の大きなリリース、シェリーの新機能の追加ついての計画を始めただけでなく、全体的なワークフローの進化に取り組み始めました。最大の変化は、カルダノの開発における本番ソフトウェアのアップデートサイクルを、さらに頻繁化するということです。これはバイロンを構築するための基盤が完成したことで可能となりました。この新しいアプローチにより、コミュニティはユーザーに新しい機能をさらに迅速に提供できるようになるだけでなく、コードに対するテストをさらに詳細に行っていくことができるようになるということです。チーム全体がこのアプローチにシフトしていくために、多くの計画が練られており、これが良い結果にをもたらすと、自信をもって言うことができます。この記事では、そのために実際に中では何が行われているかを説明していきます。

カルダノは、幾つかの開発チームとともに、共同で同じロードマップに従った共通のビジョンに向かって前進していきます。開発チームは、Core SL(Settlement Layer), Networking、Cardano Blockchain Explorer、Wallet Backend、そしてDaedalusのプロジェクトに関わります。開発は、カルダノの構築及び運用手段に対しての継続的な検査、適応、及び改善を可能にするアジャイルなソフトウェア開発アプローチを採用します。アジャイルとは、Byron、そしてメインネットのローンチ時のような、プロジェクトの終わりの方で全て一気に加え、統合するのではなく、ソフトウェアがプロジェクトの初期から、イテレーションアプローチによって徐々に構築されていくアプローチを指します。

シェリーに携わる開発チームは、同時的な二週間の期限を設けて、その中で作業を終わらせ、レビューできるようにするという短距離走的なサイクル(以下スプリント)を行います。毎日ミーティングを開き、チームと協力しながら問題を解決していきます。優先的な機能のリストであり、カルダノを開発する上で必須であるすべての取り組みが記載されているプロダクト・バックログは、課題管理システムにより管理され、個々のチームはこのプロダクト・バックログから作業を引き出し、そのチーム独自のサイクルの中で開発を進めていきます。

二週間のスプリントの後、テストネットのリリースを行います。テストネットリリースが繰り返し行われた後に、コミュニティ、および内部での品質管理テストからのフィードバックに基づいたメインネットのリリースを行います。

私たちのゴールは、メインネットのデプロイメント時間の短縮です。早い段階で、そしてより頻繁にリリースすることで、機能追加に基づいたリリースをするのではなく、時間軸に基づいたリリースを採用します。時間軸に基づいたリリース戦略は、様々な商業的オープンソースのプロジェクトで採用されています。この戦略に移行することは、新しい機能の追加を待つことがなくなることを意味します。変わりに、その時点で追加可能な機能を集め、リリースに間に合わせます。これには、不具合の修正やソフトウェアの改善などを行うアップデート、つまりパッチは含まれません。それらは、依然としてアップデートの準備ができた時点で、リリースしていきます。

Byronのリリースにて行った“ビッグ・バン”リリースの問題点は、すべて機能をまとめあげ、同時にリリースしたことであり、それが大きなボトルネックになったということです。リリースというコンセプトから機能の追加を可能なだけ引き離すということは、遅れてしまっている機能の完成を待つことによってリリースが遅れるということが、将来的になくなるということです。短期的なフィードバックループは、カルダノの邁進において貴重なコミュニティからのフィードバックを集めることを容易にし、ユーザー、貢献者、およびステークホルダーの方々に対して予測可能なタイムフレームを提供できることも可能にします。

Release Strategy Diagram

しかしながら、このアジャイルなアプローチを、同じ製品を開発している複数のチームに応用することは、統合とマージの面で少し複雑です。そこで私たちは、よく知られた、成功例のあるGitブランチモデル、git-flowを使って管理をしていきます。

スプリントが終わった時点で、私たちのDevOps(開発及び運営)チームが開発ブランチからリリースブランチへとコードを分岐させます。従って、マスターブランチはメインネットのように常に安定性を保ちます。私たちは同時並行的に行われている開発プロセスを、さらに頻繁かつスケジュールに基づいたリリースに近づけるために、整列させ、連携させることに力を注ぎます。適切なリリース日時は、決まった時点で、コミュニティにシェアされていきます。

A new development approach from IOHK engineers will bring benefits to users.

LATEST FROM AUTHOR