ソフトウェア開発をサポートするツールの重要性
JaSST2010東京(ソフトウェアテストシンポジウム)で、「実践アジャイルテスト」を書かれたIBMの人が講演した資料が公開されていたのでメモ。
【元ネタ】
JaSSTソフトウェアテストシンポジウム-JaSST'10 Tokyo
要求管理から改修・テストまで、アプリケーションライフサイクルから考える. プロジェクトのあり方(PDF)
上記の講演資料では、ソフトウェア開発における三つの課題をあげて、その解決方法について論じている。
その課題とは、トレーサビリティの確保、テストの自動化、開発作業の効率化だ。
トレーサビリティの確保は要求管理、テストの自動化は品質管理、開発作業の効率化は構成管理や変更管理の強化につながる。
OSSツールは特に要求管理のツールが無いので、厳しい。
テストの自動化や構成管理、変更管理は、HudsonやGit/Mercurial、Trac/Redmineなどでカバーできると思う。
IBMが販売するツールをメインにしているので、ちょっと鵜呑みにできないけれど、興味を惹いたのは、プロジェクトが大規模化、分散化するほど、ツールの重要性が高まるという指摘。
小規模なチームの場合、一つの部屋に全員が集まって対面を意識して開発すればいい。
しかし、10人以上のチームになると、2個以上のサブチームに分かれるため、サブチームの情報を収集して集計する管理工数が別途必要になる。
50人以上のチームになれば、管理工数だけでなく、サブチームからあげられた進捗などの情報を元に、整合性をとりながら集計していかなければならない。
大規模なチームほど、管理工数やその他の作業工数の比率が高まり、現場からトップまでの報告の時間が長くなり、その分、決断も遅れる。
上記の資料では、大規模チームでは、管理作業やその他の作業に全体の10~20%の工数がとられると言う。
つまり、本来の開発作業と無関係の工数の比率が高まり、その分、コストも増えるだけでなく、プロジェクト内部の無駄なコミュニケーションロスが増える。
ツールが必要なのは、開発能力を高めて本来の開発作業の生産性を上げるだけでなく、管理工数やその他の作業を減らすことにある。
言われてみれば当たり前なのだが、大規模プロジェクトほど身動きが難しい。
その理由の一つは、ツールが高価で複雑であること、そして、ツールにメンバーが慣れるコストがかかることだろう。
だが、OSSのプロジェクト管理支援ツールを駆使すれば、それらの問題は解決できると思っている。
そのツールの中でも、一番欲しいのは要求管理のツール。
テスト管理はTestLink、進捗管理はRedmine、ビルド管理やリリース管理はHudson、構成管理はGitやMercurialなどを使ってみて、それらのツールの特徴や有用性はだいたい経験できた。
しかし、要求管理については、まだ未知の分野。
上記の資料にあるように、要件や仕様のトレーサビリティをツールでサポートしたら、どれだけ有用なのか、実験してみたいのだ。
IBMの要求管理ツールで面白い機能は、トレーサビリティで関係付けられた要求に変更が入った場合、追跡可能性を示すサスペンドリンクが表示されて、影響を受ける他の要求の一覧が表示されること。
つまり、要求の依存関係をトレースできることを意味している。
これができれば、仕様変更や機能追加が突然発生しても、上流工程で設計漏れを防ぐことができるし、精度の高い工数見積もりが可能になる。
ソフトウェア開発の作業を支援するツールそのものの開発は、まだ発展途上。
まだまだ実験して研究する余地が沢山ある。
| 固定リンク
「プロジェクトマネジメント」カテゴリの記事
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- プロジェクト管理の基本はテーラリング、Redmineはプロセスをテーラリングするツール(2022.04.21)
- 初中級プロマネはIPAデータ白書の統計情報を見積り、生産性、品質の観点で活用せよ(2022.04.17)
- タスク分割は親子チケットにすべきか、それともチェックリストにすべきか #redmine(2022.03.04)
- なぜ米国企業は90年代に蘇ったのか~日本の手の内は完全に読み取られた~V字回復の経営の感想(2022.02.18)
「Redmine」カテゴリの記事
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- オープンソースERPパッケージiDempiereに対する派生開発手法の提案の資料が興味深かった(2022.04.24)
- プロジェクト管理の基本はテーラリング、Redmineはプロセスをテーラリングするツール(2022.04.21)
- RedmineのWikiタグでタスクリストを書けるようになった(2022.03.21)
- RedmineJapanで参考になった講演資料を読み直す(2022.03.06)
「ソフトウェア工学」カテゴリの記事
- ソフトウェアテスト技法練習帳はテストケースの切り方に困っている人向けにおすすめの本だ(2022.05.14)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
- オープンソースERPパッケージiDempiereに対する派生開発手法の提案の資料が興味深かった(2022.04.24)
- プロジェクト管理の基本はテーラリング、Redmineはプロセスをテーラリングするツール(2022.04.21)
- 初中級プロマネはIPAデータ白書の統計情報を見積り、生産性、品質の観点で活用せよ(2022.04.17)
「TestLink」カテゴリの記事
- TestRailの感想(2021.06.23)
- テスト管理ツールに必要とされる機能要件は、欧米と日本で異なるのではないか(2020.11.02)
- TestLinkにExcelのテスト項目書をインポートする方法(2017.06.01)
- TestLink Tutorialのリンク(2016.03.12)
- TestLinkで手動テストや自動テストの結果を統合してレポートさせる手法(2016.01.31)
コメント