システム開発の品質を守るV字モデルの真髄
4分41秒 | PM品質FE
基本情報技術者試験の頻出テーマを解説した音声コンテンツです。
トランスクリプト(字幕テキスト)
プログラムを書き終えた瞬間「よっしゃ、完成だ!」って、あの瞬間は最高の気分になりますよね。 ええ、なりますね。でもまあ、プロの現場ではその瞬間からが本当の勝負の始まりというか。 まさに。というわけで今回はですね、システム開発の品質を守るテストという工程、 特にその設計図とも言われる V字モデルについてちょっと深く掘り下げていきたいなと思ってます。 ええ。テストというとなんかこう完成品の間違い探しみたいに思われがちですけど、本質はそこじゃないんですよ。 ああ、なるほど。多くの人がこれを単なるボタンをポチポチ押す作業だとそう考えがちなんですが、 実はテスト工程を先に考えさせることで開発者がより良い設計を書くように導くっていう。ほう。 いわば未来の自分からのフィードバックみたいなものなんです。未来の自分からのフィードバックですか。面白い表現ですね。 では早速その V字モデルを解き明かしていきましょうか。はい。 資料を見ると Vの字の左側が開発で、右側がテスト。で、それぞれがこう対応していると。 ええ、そうです。まずは一番下の、一番小さな単位から見ていくのが良さそうですね。 そうですね。開発の最初の段階で、プログラムの心臓部になる、まあ個々の関数とか部品の仕様を決めるのが詳細設計です。 詳細設計。はい。で、これに対応するのが、その部品たった一つがちゃんと約束通りの動きをするかを確認する、単体テストですね。 なるほど。ここで手を抜くと後で本当にとんでもないことになります。 ああ、わかります。部品単体は OKだと。でもそれらを繋げた瞬間に全く予期しない問題が起きるのが、まあこの世界の地獄というか。 いや、良い点ですね。そこが本当に一番トラブルが起きやすい。そこはどう対処するんですか? 詳細設計で作った部品同士を組み合わせて一つの機能として動かすための設計が基本設計ですね。はいはい。基本設計。 これに対応するのが、部品と部品の繋ぎ目で、正しく情報がやり取りされているか、うまく会話できているかというのを確認する、結合テストです。 繋ぎ目、ですか?ええ。以前、単体テストを疎かにした結果、リリース直前に たった一つの部品の不具合が原因でシステム全体が止まったなんていう苦い経験がありまして。うわあ。 ええ、本当に小さなネジが巨大な機械を止めるようなものです。それは怖いですね。まさにその繋ぎ目が命綱なんだ。 ただ、最近よく聞くアジャイル開発みたいな、こうスピーディーな現場だと、こういう計画的なモデルってちょっと時代遅れじゃないかみたいな声も聞くんですが。 ああ、それは非常に重要な指摘ですね。その辺りはどうなんでしょう? 確かに、仕様変更が頻繁に起こるアジャイル開発では、V字モデルをそのまま適用するのは難しいです。やっぱり。 ただ、このモデルの開発とテストは対であるっていう思想自体は、これは不変なんです。なるほど。 特に人命に関わる医療システムとか金融システムみたいに、最初の要求が絶対に変わらないというか変わっちゃいけないプロジェクト。 はい。こういう現場ではこのモデルの網羅性と厳密さが今でも絶大な信頼を得ています。要は適材適所なんですね。 なるほど。理想論じゃなくて目的によって使い分けるべきツールなんだと納得しました。ええ。 ということは、部品、そして繋ぎ目の品質が保証されて初めてシステム全体がお客様の要望通りに動くかというシステムテストに進めるわけですね。 まさにその通りです。V字の谷底から少しずつこう這い上がっていって、頂上に辿り着くイメージですね。うんうん。 各段階で品質を保証していくことで、手戻りのリスクを最小限に抑える。これが V字モデルの真髄です。 いやあ、深いです。では、今回の要点を整理するとこういうことでしょうか。はい。 一つ目、V字モデルは単なる地図じゃなくて、開発とテストを常に対応させることで品質を高める思想であること。 二つ目。テストは部品、つまり単体から繋ぎ目の結合、そして全体のシステムへと段階的に信頼を積み上げていくプロセスであると。 そうですね。そして三つ目、その本質は開発者にテストを意識させることでより堅牢な設計を促すことにある。 素晴らしいまとめです。いえいえ。では最後に思考を深めるための問いを一つ。 V字モデルは計画通りにものが作られたかを検証する、まあ非常に強力な手法です。はい。 では、その大元である計画そのものが本当にユーザーが求めている正しいものだったのかは、一体どうすれば検証できるんでしょうかね?
このコンテンツは Web society で視聴・学習できます。