オルタナティブ・ブログ > 森崎修司の「どうやってはかるの?」 >

計測できそうでできない多くのこと。エンピリカル(実証的)アプローチで。

インスペクタビリティ - 検証容易性

»

ソースコードや設計書等、レビュー(インスペクション)対象の読みやすさを向上する試みがある。On Inspection and Verification of Software with Timing Requirements(IEEE Digital library)という論文では、並列プログラミングのタイミング等、実行タイミングが問題になりやすいソースコードをレビュー(インスペクション)しやすく方法を提案している。

並列して実行されるプロセスのソースコードを実行する時間軸(タイミング)に沿って可視化し、ソースコードを横方向に眺めると、同時に実行されるソースコードをわかりやすくする。たとえば、あるプロセスAでステートメントA1, A2, A3, A4、プロセスBでB1, B2が実行され、A1とB1、A3とB2が同じタイミングで実行される場合、以下のようにソースコードを可視化する。

プロセスA    プロセスB
A1;              B1;
A2;
A3;              B2;
A4;

実際にはもっと複雑で考慮すべき部分が多くあるので、詳細は原典をご覧いただきたいが、これにより、共有データへのアクセスなど、タイミングに関するインスペクション(レビュー)のしやすさが改善する。

他にもUFJISの千貫氏のインタビュー記事にも、システム開発のアジリティを向上するための一手段として、レビューのしやすさへの言及がある。千貫氏はITシステムプロデュース部として、ITシステムのユーザである社内の業務部門の意見をとりまとめ、システム化しているそうだ。ベンダが作成したフローをユーザ部門がレビューしやすい書式とすることにより、ユーザ部門で検証(レビュー)しやすくしているそうだ。

詳細は、ITアーキテクトサミットのレポート(「三菱UFJにおけるアジリティ向上の取り組み」の「フロー実装の可視化」)から参照できる。

ご自身の開発の成果物、中間成果物でインスペクタビリティを向上するためにはどのようなことができるだろうか?

Comment(0)