テストの自動実行システムを構築し,テスト手順を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――品質を検証し,製品出荷のカギを握るテスト・チーム (続き)
あなたにお薦め
今日のピックアップ
-
マイナカード1500万枚が電子証明書切れに、ポイント特需から5年で迫る2つの混乱
-
日本の「能動的サイバー防御」は機能するのか、課題と展望を3人の識者が解説
-
変化・貪欲・大胆、Microsoftの50年史に見る強さの秘訣
-
ChromeにAmazonのパスキーを登録する、PINと生体認証の設定も忘れずに
-
女子大生がアプリ100本作成に挑戦、クラス図を何度も描き直しタップゲームができた
-
AIエージェントで開発者の仕事は消滅するのか、GitHubのCEOに聞いてみた
-
「iPhone 16e」の販売に注力する携帯各社、国内スマホ市場の多様性が失われる恐れ
-
冤罪被害者が富士通をついに提訴、英ポストオフィス事件で新展開
-
Gmailは5つのタブに受信メールを自動振り分け、複数のラベル付けでも整理できる
-
米IBMの幹部が直言、日本の最大リスクは塩漬けされている基幹系システム
-
X代替「テキストSNS」の覇権争い、難民が求めるのはバズりかほっこりか
-
65歳まで雇用確保義務化、相性のいい「シニア人材と生成AI」がDXを後押し
注目記事
おすすめのセミナー
-
CIO養成講座 【第37期】
業種を問わず活用できる内容、また、幅広い年代・様々なキャリアを持つ男女ビジネスパーソンが参加し、...
-
意思が伝わる、資料が見違える「ビジネス図解」4つのセオリー
インフォグラフィックスとは、形のない情報やデータなど伝えたいことを分かりやすい形で表現する技法で...
-
「なぜなぜ分析」演習付きセミナー実践編
このセミナーでは「抜け・漏れ」と「論理的飛躍」の無い再発防止策を推進できる現場に必須の人材を育成...
-
業務改革プロジェクトリーダー養成講座【第18期】
3日間の集中講義とワークショップで、事務改善と業務改革に必要な知識と手法が実践で即使えるノウハウ...
-
ITリーダー養成180日実践塾 【第15期】
8回のセミナーでリーダーに求められる“コアスキル”を身につけ、180日間に渡り、講師のサポートの...
注目のイベント
-
ITモダナイゼーションSummit Web Live 2025
2025年 4月 9 日(水) 13:00~18:05/ 4月 10 日(木) 13:00~17:25(予定)
-
【4月10日】みずほFGやLINEヤフーが挑む、障害に強い運用高度化の仕組み
2025年4月10日
-
【4月10日】今さら聞けない仮想化基盤の基本、特徴やメリットを60分で学ぶ
2025年4月10日
-
DLC Server & Datacenter Summit (DSDS25) 東京ナイト
2025年 4月 21日(月) 17:00~19:10
-
【4月22日】大幅コスト増の「仮想化問題」、AI時代にITインフラをどう見直すか
-
AIトレンドFORUM 2025
2025年 4月 23日(水) 13:00~17:00(予定)
-
【4月23日】話題の能動的サイバー防御、従来のセキュリティ対策と何が違う?
2025年4月23日
-
【4月24日】押さえておきたい最新ハイパーバイザーの特徴、60分で徹底解説
2025年4月24日
-
【4月25日】NVIDIAと語る最先端のAIユースケース、展示コーナーで体験も可能
2025年 4月 25日
-
Cyber Identity Foresight 2025
2025年4月25日(金)16:00-18:00/5月21日(水)16:00-18:00
おすすめの書籍
-
ChatGPT &生成AI 実践活用ガイド
マイクロソフトの「Copilot」やグーグルの「Gemini」を含め、生成AIの最新動向や驚きの...
-
SDV革命 次世代自動車のロードマップ2040
自動運転で、自動車の価値は運転性能よりも、その中でいかに過ごすかにシフトする。その価値を追求する...
-
PCトラブル自力解決マニュアル
各種トラブルへの対策、復旧方法をまとめたのが本書です。市販No.1パソコン誌「日経PC21」に掲...
-
これ1冊で丸わかり 完全図解 最新セキュリティー
最新の攻撃手法や、セキュリティーの事例などを詳しく紹介しており、最近のセキュリティー関連で知って...
-
AWSクラウド設計完全ガイド
これから構築するシステムに対して、多種多様なAWSのサービスから最適なサービスを選定し、組み合わ...
-
Word 最速時短術 [増補新版]
本書では、Wordが備える便利機能の数々や生成AIを使いこなしながら、日々の仕事効率を大幅にアッ...
日経BOOKプラスの新着記事
-
はじめに:『コーディング不要で毎日の仕事が5倍速くなる! Difyで作る生成AIアプリ完全入門』
-
はじめに:『経営に活かす生成AIエネルギー論 日本企業の伸びしろを探せ』
-
はじめに:『SDV革命 次世代自動車のロードマップ2040』
-
「俺の金を失ったら、お前を殺す」NVIDIAに出資した大物が放った一言
-
日本人男性の8割がED? 酒との関係を医師が解説
-
池上彰 なぜ私たちは大学で学ぶのか?
-
ハイパフォーマーは身近な人を大切にする
-
北野唯我×舟津昌平 嫌われている人のほうが仕事をしている
-
話題の本 書店別・週間ランキング(2025年3月第4週)
-
あとがき:『ある少年の夢 稲盛和夫はいかに人生を切り開いたか(日経ビジネス人文庫)』
日経クロステック Special
What's New
経営
- 先進自治体が集まって徹底討論!自治体DX
- アジャイル開発が生成AIの活用に有効
- Salesforce≫求められるスキルは
- 決算短信の英文開示 見逃せない重要課題
- 「複合AI」に必要なITインフラを考える
- リコーのDX新拠点 その実力に迫る
- 教育の質を高め、人材育成に寄与する新制度
- 「DXの伴走者」に聞く変革への戦略&方策
- 多角的アプローチによる顧客価値創造とは?
- ERP導入で忘れがちな「大切なこと」とは
- 次世代コンタクトセンターの最新AI技術
- 新オフィスから新価値を創造・発信
- Suicaデータを活用する駅カルテとは!
- 業務のデジタル化の「障壁」と「解決策」
- 未来ビジネスを創るテクノロジーの力
- 大和ハウスのデジタル帳票基盤、導入の裏側
- ServiceNowでDXを加速≫方法は
- SAPプロジェクトの全体像をいかに描くか