開発者とデータベース管理者--変わりゆくそれぞれの役割 - (page 2)

文:Justin James(Special to TechRepublic) 翻訳校正:村上雅章・野崎裕子

2010-10-26 08:00

何が変わったのか

 近年になって、データベースとの効率的なやり取りを可能にするコードが簡単に開発できるようなフレームワークやシステムが急増してきた。文字列を連結してSQLステートメントを作り出すというアプローチを採用し、システムをSQLインジェクション攻撃の標的にしてしまうのではなく、パラメータ化されたコードをデータベースのアクセスに使用できるさまざまなシステム(真っ先に思い浮かぶのはVisual Studio 2005だ)がようやく登場するようになってきたのだ。それと同時に、独自のSQLコードを生成する(レポート生成やデータウェアハウス化、ビジネスインテリジェンスといった)さまざまなシステムも登場してきている。こういったシステムによって生成されるコードはしばしば、平均的な開発者が生成するものと同等、あるいはそれ以上に優れた品質を有しているのである。スキルの高い人間によるチューンアップでさらにコードの質を改善できることも多いとはいえ、ほとんどの場合において十分使用に耐えられるレベルにあると言えるだろう。

 また、データベース上に抽象レイヤを追加し、詳細な内部動作を意識しなくても済むようにする、オブジェクト関係マッピング(ORM)をサポートするシステムも大きく進歩した。こういったシステムとして、「Hibernate」や「ADO.NET Entity Framework」を挙げることができる。ORMは、開発者がデータベースへのフルアクセス権限を有しており、アクセス制限のあるストアドプロシージャを使用する必要のない場合、より簡単に使用できるようになっている。また、ストアドプロシージャを介することなくデータベースとの直接のやり取りを簡素化できる、.NETの「LINQ to SQL」やRailsの「Arel」といったシステムもある。

 また、最大の変化として、さまざまなアジャイル開発技術の興隆も忘れることはできない。これによってプロジェクトの仕様(さらにはデータベースのモデル)は今や、顧客との話し合いに応じて適宜変更できるものとなり、アプリケーションの開発スケジュールも以前のような6カ月といった長期に及ぶものではなく、2週間程度の短い期間で行われるようになっている。DBAがデータモデルを更新し、ストアドプロシージャやビューといったものを変更した後で、開発者の作業が開始されるというアプローチは、少人数によるアジャイルチームにとって変動要素が多すぎるのである。アジャイル開発においては、開発者自らがデータベースの作成や管理を行い、データベースに対する変更は自動化された配備プロセスに任せてしまうというアプローチもしばしば採られている。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]