主要研究テーマは、以下の4項目です。

ソフトウェア品質管理
「ソフトウェア品質管理」は非常に広いテーマですので、まずは、“ソフトウェア開発をより良くするために役立つ事は何でもする”という方針で進めます。この方針で進めていく中で、研究・開発のテーマが見つかれば、その内容を追求していきます。主な活動内容を以下に示します。- 図書の出版
- ソフトウェアプロセス改善
- ソフトウェア開発管理
- ツールの開発や推進(良いツールの推奨も含め)
- 静的解析ツール
- テストケース生成ツール
- テスト管理ツール
- UIテスト自動化ツール
- 負荷テストツール
- バグ信頼度推定ツール
- バグ管理ツール
- プロセス管理ツール
- コンサルティング
- プロセス改善活動の導入・推進支援
- システムテスト自動化の導入・推進支援
- プロジェクト管理の実践サポート
- 教育
- プロセス改善
- プロジェクト管理
- ソフトウェア品質管理
- ソフトウェア開発管理
- 要求分析・設計
- レビュー
- テスト
ソフトウェアプロセス改善
以下の図は、ソフトウェアプロセス改善シンポジウム(SPI Japan)の「発表概要」作成ガイドから抜粋したものです。この図は、プロセス改善活動の実践結果を的確に説明するための構造を示しています。システムテスト自動化
製品のソフトウェア開発では、新規開発だけでなく、既存のソフトウェアを改造する派生開発も数多く行われています。派生開発は既存のソフトウェア資産を活用できるというメリットがある一方で、品質を確保するためのテスト工数・期間は大きく削減できていないという課題が存在しています。その理由は大きく二つあり、一つは、製品としての品質を担保するためには変更の影響が少ないと思われる部分に対してもテストを行うが、この部分は人手に頼ることが多く、ある一定以上のテスト工数が必要となるためと考えています。もう一つは、テスト自体の品質やバリエーションの不足により、テストの抜けもれが生じてしまい、後戻り工数が増大してしまうためと考えています。これらの課題に対応する施策として、テスト自動化の取り組みが効果的であり、近年、多くの組織で取り組みを推進しています。しかしながら、リソースの不足や技術力不足などによって、テスト自動化を推進するための体制の整備が進まず、組織的に安定して実践できる状態に辿り着かないことが多いのが実状です。本テーマでは、システムテスト自動化の実践をとおして、以下のような内容に関する研究・開発を進めます。- テスト自動化を推進するためのテストチーム
- プロジェクトや組織における位置づけ
- 必要となるスキルと経験
- 海外リソース活用の方法
- テスト戦略
- テスト戦略をベースにしたテストプロセス
- テスト戦略の選択方法
- テスト戦略の設定方法
- テスト戦略の維持・拡張の方法
- テスト自動化のためのテスト設計
- 網羅性を担保したテスト設計の方法
- バグ検出の可能性が高いテスト設計の方法
- 仕様のバリエーションに対応可能なテスト設計の方法
- テスト設計からのテスト仕様書やテストコードの自動生成
- テストスクリプト開発方法とテスト環境の構築方法
- 保守性を考慮したテストスクリプト開発方法
- テスト自動化に必要となるテスト環境の設計・構築方法
- テスト自動化のためのライブラリの整備
プログラムマネジメント
企業(東芝)に在籍中は、ソフトウェア生産技術の研究・開発、プロセス改善活動の推進を中心に活動していました。どちらともに、開発現場の方々との緊密な連携が必須である、ということは同じです。実践でどれだけ使えるのか、という視点を意識してきたつもりです。入社して10年くらいの時に、提供するツールや技術は悪くないのだけど、組織全体に広がらないということに少し悩みはじめていました。どの時に、先輩から組織成熟度モデルSW-CMMを教えてもらい、研修コースにも参加し、このモデルの良さを実感しました。 その後、SW-CMMを活用したプロセス改善活動の試行を行い、その試行結果が評価され、当初の目的である東芝グループ全体にソフトウェアプロセス改善活動を推進するという活動につながっていきました。この時実感した事は、組織全体を巻き込んだ活動にすることで、同じ思いを持った方々とのネットワークが構築でき、実現したいと思った事がよりスケールアップして実現できるということでした。その当時はあまり意識していませんでしたが、今考えると、プログラムマネジメントを実践していたのではないかと思います。 その当時構築したソフトウェアプロセス改善活動推進フレームワークを以下に示します。