[#TiDD] プロセスモデリングにおけるチケット駆動開発の可能性
プロセスモデリングの目的は、プロセスを他の人に示し、伝達し、教育することです。また、モデルを元に問題点を明らかにして改善することができます。また、シミュレーションによる予測も可能になります。チケット駆動開発におけるBTSのチケットは、タスクの計画であり、履歴です。この情報は非常に価値のあるものです。
近年、注目されている研究分野にリポジトリマイニングというものがあります。リポジトリとはソフトウェアの開発基盤のデータのことです。具体的には構成管理ツール、障害管理ツール(BTS)、メールサーバなどのデータを分析する研究です。ソースコードのメトリクスを元に障害の含まれていそうな(フォルトプローン)モジュールを探す。構成管理ツールのコミット履歴から、別の障害と関連(ロジカルカップリング)するモジュールを探す。あるいは障害履歴からプロジェクトの今後の予測を行う。など、多くの研究が行われています。
1990年代半ばにプロセスモデリングの研究が盛んなころ、タスクの分割や新たなタスクの追加、あるいはタスクの削除などはプロセスの動的な変更と呼ばれ、それをどのようにモデリングするかが研究の対象でした。そのゴールはシミュレーションでしたので、すべてを記述できる必要があったのです。
しかし、記述力やシミュレーションといった研究を目的とした場合、実際の履歴データを利用する際に変換が必要です。なにか機械的に変換できる方法があればよいのですが、そもそも履歴を収集する方法がありませんでした。
プロセスの動的な変更にはノウハウの素が詰まっています。プロセスを動的に変更するということは、何らかの計画外の事象が発生したということで、追加されたタスクはその解決法と予想できるからです。
かつて私は、この動的な変更を収集しようと試みたことがあります。その際はデータを収集するために週報をすべて読んで、手作業で収集しました。
多くのノウハウを得ることができましたが、いつ使われるかわからないノウハウ収集を日常的に実施することは現実的ではありませんでした。
ところがチケット駆動開発をしていると仮定したなら、すべてのタスクはチケットに記録されています。さらに原因となった問題のほか、解決に至る議論、そして解決法を実践した具体的な成果であるソースコードに関連付けられています。
それらはノウハウそのものです。しかも、それらを無理に変換する必要はなく、利用可能です。知りたいノウハウがあれば、そのキーワードを元に開発中に発行されたチケットを検索すればよいのです。それだけで過去の課題や議論、具体的なソースコードまで入手できるのです。
貴重なデータを入手できるようになるのですから、研究的には色々と可能性が考えられます。チケット駆動開発のリポジトリは研究に必要な情報が記録されていて、マイニングの対象として向いていると言えるでしょう。そして、その研究成果はプロセスモデリングが目指していた課題にも生かせます。
このように、チケット駆動開発が今後のプロセスモデリングの研究を大きく変えることになる可能性を感じています。
« [#TiDD] チケット駆動開発はプラクティス?プロセス?それともアジャイル? | トップページ | [#TiDD] 個人のタスク管理からチケット駆動開発の特徴を考える #RxTstudy »
「チケット駆動開発」カテゴリの記事
- One fact in one placeとチケット駆動開発 - Software Processes are Software, Too -(2021.12.21)
- マルチスレッド処理と進捗管理・配員・作業分割/割り当て- Software Processes are Software, Too -(2021.12.20)
- カプセル化と組織パターン - Software Processes are Software, Too -(2021.12.20)
- [#TiDD] ポケモンGOにチケット駆動開発のポイントを学ぶ(2018.05.01)
- [#TiDD] プロジェクトを成功させるチケット管理(2017.07.02)
« [#TiDD] チケット駆動開発はプラクティス?プロセス?それともアジャイル? | トップページ | [#TiDD] 個人のタスク管理からチケット駆動開発の特徴を考える #RxTstudy »
コメント