テストの自動実行システムを構築し,テスト手順をC#で記述 このようにして作った自動テスト手順が,毎日のように作られる生成物に対して定期的に実行されることで,製品の品質を確保していきます。例えば,プログラマがある部分のコードを変更したために,別の機能が動作しなくなったとします。この問題は自動化テストで見つけられます。ただし,すべてのテスト手順が自動化されるわけではありません。例えば,UI(ユーザー・インターフェース)の操作性や,メニューやダイアログ・ボックス上の文字が適切に表示されていることは,どうしても目視による確認が必要で,手動にせざるを得ません。こういった手動テストは自動化テストよりは頻度が下がりますが,開発工程を通じて定期的に実行されています(図3)。
必要なすべてのテスト手順は,プロジェクトの最終段階までに作成しておかなければなりません。そして,すべてのテスト手順に対して,問題なく動作していることが,テスト・チームが製品の出荷を承認するための条件の1つとなります。 ここで完成した自動化テストは,製品の出荷後も利用し続けます。例えば,製品に対するサービス・パックの妥当性テストや,製品出荷後に出たWindowsのサービス・パックとの互換性(例えば,Visual Studio .NET 2003とWindows XP SP2との互換性)を確認するテストに使うことになります。 テスト手順は,様々な環境で実行する必要があります。特にVisual Studioの場合は,多様なプラットフォームを考慮しなければなりません。Visual Studioで作成されるマネージ・アプリケーションの実行環境である.NET Frameworkは,Windows 98以上のWindowsに対応しているので,Windows 98はもちろんのこと,Windows XPやWindows Server 2003といった各種Windowsとの組み合わせによる互換性テストが必要です。さらに,Pocket PC向けのアプリケーションや,携帯電話向けのWebアプリケーションの開発機能も備えていますので,それらのようなスマート・デバイスでのテストも必要です。 また,SQL ServerやInternet Information Services(IIS)のようなサーバー・アプリケーション,Officeのようなデスクトップ・アプリケーションとの互換性に関してもテストします。それだけ多種多様な環境でのテストが要求されているのです。そのため,それぞれのプラットフォームやアプリケーションとの組み合わせ表を作成し,十分な範囲が網羅されていることを検証したうえで,その組み合わせに沿ってテスト手順を実行し,この要求を解決しています。 テスト作業の中で最も労力を使っているのが,このようなテスト手順の“メンテナンス”です。プロジェクトのスケジュールに合わせて,これらの作業を漏れなく適時に遂行していくには,組織に対してその柔軟性と統率力が要求されると感じています。現在開発中のVisual Studio 2005では,ベータの前段階ですが,既に万単位のテスト手順が作成されていて,テスト手順の実行と評価に多忙な状況となっています。
テスト結果をプログラマにフィードバック マイクロソフトでは,バグ情報を管理するデータベースを構築しています。各テスターは,テスト作業中に見つけたバグを,このバグ管理データベースに登録します。このとき,バグの再現手順,再現環境,深刻度,優先度といった情報を明確にして登録しなければなりません。ここで深刻度とは,アプリケーションがクラッシュするような重度のバグから,あるダイアログ上で文字が少し欠けているといった軽度なバグまでを,段階的に区分した指標です。そして優先度とは,そのバグを修正する優先順位を意味します。例えば,あるバグがほかの機能の動作を妨げてテスト作業が進まないような場合には,優先度は高く設定されます。 あるテスターが発見したバグは,既にほかのテスターによって登録されている場合もあります。そのため,事前にデータベースを検索して,新たに発見したバグであることを確認してから登録します。登録されたバグの原因が,実装の誤りにあるならば,それを修正するようプログラマに割り当てられます。プログラマはデータベースに登録された情報を基にバグの修正作業にとりかかります。
このとき,バグの再現手順が明確でない場合,プログラマがテスターに対してさらに情報を求めます。テスターとしては,情報不足によってこのような余計な時間を費やすことがないよう,正確かつ詳細な情報を登録する必要があります。ときには,仕様が明確でなかったためにバグとなっている場合もあります。そのときは,製品仕様の責任者であるプログラム・マネージャに対して仕様を確認します(図4)。 プログラマに割り当てられたバグ修正が行われ,生成物に反映されると,バグ管理データベースを通じて修正の確認がテスト・チームに依頼されます。新しくビルドされた生成物で,その修正を確認すると,ようやくバグ報告に対する作業が終了となります。何らかの原因でバグが修正されていなかったら,プログラマに再度確認します。このようにテスターは,報告したバグの状況を見守り,確実に修正されたことを確認する責任があります。 また,テスト結果の報告は,バグの報告だけでなく,各機能の品質基準への達成度を報告する作業も担っています。これは,スケジュールの立て直しなどに必要になります。 スケジュール管理を担当するプログラム・マネージャは,プロジェクトが進行している途中に,全体の進ちょく状況を把握する必要があります。そのとき,どの機能がどこまでの品質に達しているか(このまま出荷しても問題ない程度か,品質上多くの問題が残っているのか)という報告をテスト・チームから受け,スケジュールを立て直したり,十分な品質に達しそうもない機能を削除したり,といったことを検討します。
開発者全員が一斉にテストしてバグを洗い出す また,このほかにもプログラムを集中して使ってみるという週を設けています。各メンバーが開発中のVisual Studioを使って実際にアプリケーションを作成してもらい,バグを見つけ出すという施策も行っています。こういった施策は大変に有効です。通常のテスト作業とは異なった視点から開発中の製品を使用することで,製品仕様書・テスト仕様書を基にしたテストでは見つからなかった重要なバグも実際よく発見されています。テスト・チームでは,このほかにも様々な施策を実行することで,品質上のすべての問題を洗い出す作業を行っています。
おわりに |
Visual Studioの開発現場から(第2回) p.2
QA――品質を検証し,製品出荷のカギを握るテスト・チーム (続き)
あなたにお薦め
今日のピックアップ
-
ずさんな安全管理が露呈したLINEヤフー、総務省が注視するNAVERとの「支配関係」
-
AIが社長に? 分身が欲しい中小企業社長の切実な願いを実現するサービス
-
フェイク排除にプラットフォームの対策が必要、リテラシーだけでは防ぎきれない
-
GUIプログラミングやバイトコード、一歩進んだPythonの使い方を知ろう
-
好きなジャンルの曲をボーカル入りで作成、話題の作曲生成AI「Suno」がすごかった
-
6万円台で勝負に出るZTE、安価な「折り畳みスマホ」は日本で普及するか
-
PCやスマホが激遅なのには理由がある、余計な処理を止める方法
-
個人情報保護委員会がLINEヤフーに行政指導、個人データ52万件流出受け
-
日本IBMが金融向けに生成AIを「拡張」、MicrosoftやAWSのサービスも選択可能
-
医療機関に4つの生成AI、業務負荷を軽減し研究用データベースの充実へ
-
関係者多数の改革プロジェクトでもめる、食い違う意見を擦り合わせる対処法は
-
SNSなど多様な公開情報を解析、セキュリティー対策に生かす「OSINT」とは
注目記事
おすすめのセミナー
-
「仮説立案」実践講座
例えば「必要な人材育成ができていない」といった課題に、あなたならどう取り組みますか? このセミナ...
-
CIO養成講座 【第35期】
業種を問わず活用できる内容、また、幅広い年代・様々なキャリアを持つ男女ビジネスパーソンが参加し、...
-
改革リーダーのコミュニケーション術
プロジェクトを成功に導くために改革リーダーが持つべき3つのコミュニケーションスキル—「伝える」「...
-
パワポ資料が見違える「ビジネス図解」4つのセオリー
インフォグラフィックスとは、形のない情報やデータなど伝えたいことを分かりやすい形で表現する技法で...
-
オンライン版「なぜなぜ分析」演習付きセミナー実践編
このセミナーでは「抜け・漏れ」と「論理的飛躍」の無い再発防止策を推進できる現場に必須の人材を育成...
-
問題解決のためのデータ分析活用入門
例えば「必要な人材育成ができていない」といった課題に、あなたならどう取り組みますか? このセミナ...
-
業務改革プロジェクトリーダー養成講座【第16期】
3日間の集中講義とワークショップで、事務改善と業務改革に必要な知識と手法が実践で即使えるノウハウ...
-
ITリーダー養成180日実践塾 【第14期】
8回のセミナーでリーダーに求められる“コアスキル”を身につけ、180日間に渡り、講師のサポートの...
注目のイベント
-
若手の離職防止につながる、マネジメント・チームづくりのポイント
2024 年 4 月 10 日(水) 10:00~12:30
-
ITモダナイゼーションSummit2024
2024年4月10日(水)、11日(木)12:45~17:50
-
【4月11日】最新HCIの特徴やメリットを学ぶ、参加者にはもれなくプレゼント進呈
2024年4月11日(木)
-
「ニッポンの未来図」――テクノロジーアップデート2024
2024年4月16日(火)14:00~15:00
-
【4月17日】AI活用につなげるIT基盤・組織・運用とは? 鍵は「Edge to Cloud」
2024年4月17日 (水)
-
【4月19日】データの活用と保護を両立、「段階的なDX」を実現するIT基盤とは?
2024年 4月 19日 14:00
-
【4月25日】ハイパーバイザーの基本を学ぶ、参加者にはもれなくプレゼント進呈
2024年4月25日(木)
-
日経クロステックNEXT 関西 2024
2024年5月16日(木)~5月17日(金)
-
人手不足を乗り越える 日本の産業界成長のシナリオ
2024年5月30日(木)開催予定
-
キャリア・オーナーシップが社会を変える
2024年6月3日(月)~6月5日(水)
おすすめの書籍
-
ソフトバンク もう一つの顔 成長をけん引する課題解決のプロ集団
ソフトバンクにはモバイルキャリア事業以外のもう一つの顔が存在する。本書ではキーパーソンへのインタ...
-
対立・抵抗を解消し合意に導く 改革リーダーのコミュニケーション術
本書は、改革リーダーに必須のコミュニケーション術を3つのスキルの観点からまとめ上げたものです。今...
-
もっと絞れる AWSコスト超削減術
本書ではコスト課題を解決するため、AWSコストを最適化し、テクニックによって削減する具体策を紹介...
-
優秀な人材が求める3つのこと 退職を前提とした組織運営と人材マネジメント
「学生に人気のコンサルであっても、大手企業であっても、せっかく獲得した人材が数年で辞めてしまう...
-
Web3の未解決問題
ブロックチェーン技術を主軸とするWeb3の技術について、現在の社会制度との摩擦と、その先にある新...
-
ロボット未来予測2033
ロボットの用途・市場はどう拡大していくのか。AI実装でロボットはどこまで進化するのか。技術の進展...
日経BOOKプラスの新着記事
日経クロステック Special
What's New
経営
- ジェイテクトエレクトロニクスのDX事例
- NTTドコモ支援の実践型教育プログラム
- DXを成功に導くITインフラとは?
- NTTデータに優秀なデジタル人財が集まる理由
- 地域創生で重要になる「事業化」の視点とは
- ERPプロジェクト≫IT人財の必須条件は
- 先進都市対談>生成AIは行政DXの切札?
- 多様化する地域の課題解決に向けて議論
- 地域×テクノロジーでミライを共創する
- 脱レガシー案件≫SIerに必要な人財像は
- 役所文化の変革!奈良市のデジタル市役所
- 3段階で考える、DXで企業力を高める方法
- イノベーションの起爆剤
- 石戸氏に聞く。生成AIを教育で使うには
- 東芝が描くDXの道筋とその先の未来とは
- 次世代技術をもっとリアルに体感したいなら
- 大規模プロジェクトでPMが注意すべき点は
- ファンケルの躍進を支えたMAの徹底活用術
- 経営戦略と連動したシステムのあるべき姿
- 大阪・名古屋エリアのDXが注目される理由
- 力点は「未来予測」へ:データ利活用の勘所
- 生成AI活用でSAP BTPの価値が進化
- ServiceNowでDXを加速≫方法は