コードジンのヘッダーが入ります Developers Summit 2010

クエスト・ソフトウェア株式会社

【18-E-4】データベースの品質を守る。22年間のノウハウを終結させたデータベース開発・運用改善手法の紹介
クエスト・ソフトウェア株式会社 代表取締役社長 山岡 英明 氏

DB開発者にとってSQLチューニングは必須の課題。しかし、手作業で膨大なパターンをテストし、最適なSQLを証明するのは、事実上不可能に近い。また、SQLのパフォーマンスは本番直前までテストされないことが多く、運用後に発覚したときには手遅れというケースもある。こうした課題を解決するために、クエスト・ソフトウェアではDB統合開発環境「Toad for Oracle」などのツールを提供している。

開発工数の約65%を占めるデバッグ/テスト

クエスト・ソフトウェア代表取締役社長の山岡英明氏は、ガートナーの調査データ「開発者の工数分布」を紹介。それによると、開発者の全工数のうち65%を占めるのがデバッグで、プルーフリード(コードレビューなど)が25%。コーディングの時間は、わずか10%に過ぎない。「だからこそ、テストをいかに行うかが、ソフトウェアの品質や開発効率に大きく影響する」と山岡氏は指摘する。

ソフトウェアテストには課題も多い。その1つとして挙げられるのが、テスト量の多さである。たとえば、コードレベルのテストでは、1行のプログラムコードに対して10行のテストコードが必要になる場合もある。そのため、複雑なテストはどうしても後まわしになってしまう。また、プログラミングではツールの利用や自動化が進んでいるが、テストに関しては、いまだに多くの開発者が1つ1つ手動で行っているのが実情だ。さらに、プログラム変更が発生した場合には、テストコードも併せて変更しなければならないという課題もある。

こうした背景からテストの標準化が望まれており、テストファースト(テスト駆動開発)などの手法も注目されている。これは、実装コードよりも先にテストケースを作成するというアプローチで、テストを先に考えることにより、そのテストに基づいたプログラムが作られることになる。山岡氏は、「ぜひこうした手法を取り入れて、開発プロセスの中でテストの標準化に取り組んでいただきたい」と推奨する。

テスト自動化を実現し、SQLチューニングを強力に支援する「Toad for Oracle」

ただし、このような標準化への取り組みは、方法論だけではなかなか成功させることが難しい。そこで必要となるのが、方法論をバックアップする仕組みだ。具体的には、優れた方法論やノウハウが組み込まれたツールを活用することで、よりスムーズかつ効果的に標準化を進めることが可能となる。

クエスト・ソフトウェアでは、テストの標準化をはじめ、ソフトウェアの品質および開発効率向上に貢献するさまざまなツールを提供している。特にデータベースの分野でよく知られているのが、Oracle Database向けのDB統合開発環境「Toad for Oracle」だ。同製品はPL/SQLのテスト自動化をはじめ、コードの開発・最適化・検証といった3つのプロセスでSQL性能改善のための強力な機能を提供。たとえば、ソースコードからプロアクティブに問題のあるSQLを特定し、コーディングのベストプラクティスを適用して、自動的にSQLをリライトしてくれる。また、変更時の影響分析や負荷テストなどにより、本番DBへの実装前にパフォーマンス劣化のリスクを検出することができるという。

他にも、クエスト・ソフトウェアでは、DBのパフォーマンス診断やボトルネック特定を容易にする「Spotlight on Oracle」、Toad for OracleからSQLのパフォーマンス最適化プロセスを一貫して支援する機能のみを取り出した「SQL Optimizer for Oracle」、DBの負荷テスト専用ツール「Benchmark Factory for Databases」などを用意している。山岡氏はこれらのツールについても簡単に触れながら、最後に同社が運営するDB技術者向けコミュニティサイト「Toad World」を紹介。

「Toad Worldには、PL/SQLやDB関連の書籍を多数執筆しているエキスパートたちが寄稿している。ツールの使い方だけでなく、テストや開発の手法、SQLチューニングの技術など、彼らの豊富なノウハウが詰まっているので、必ず役立つ情報が得られるはず。ぜひ一度、アクセスしていただきたい」とアピールし、セッションを終えた。

図1: Toad for Oracleの利用イメージ
問い合わせ先
クエスト・ソフトウェア株式会社
〒102-0076
東京都千代田区五番町10番地
五番町KUビル3F
TEL: 03-3263-5241
URL: http://www.quest.com/japan/
戻る
コードジンのフッターが入ります