F-nameのブログ

はてなダイアリーから移行し、更に独自ドメイン化しました。

実践データベース設計入門:業務システム(データベース第1回)#放送大学講義録

ーーーー講義録始めーーーー

 

まず初めに、データベースについて見ていきましょう。情報通信技術、特にコンピュータやネットワーク技術の急速な発展に伴い、その利用形態は高度化しています。また、各種デスクトップアプリケーションやウェブシステムで取り扱われるデータは、多様化、複雑化、大規模化が進んでいます。このような状況において、私たちの身の回りの実世界のデータを体系的に収集、加工、提供、利用し、さらにそれらを効率よく管理・運用できるという意味で、データベースは情報通信技術の中核をなす要素であり、最も重要な技術の1つといえます。

実際に多くの情報システムでデータベースが活用されています。例えば、私たちの生活に密接に関連するデータベースを利用した情報システムとして、以下のような例が挙げられます。

  • 学務情報システム
    教育機関では、入学手続きや科目の履修申請・登録など一連の学務処理を支援するため、学生の個人情報や成績などを管理しています。放送大学では、2023年1月現在、「WAKABA学務情報システム」を使用しています。

  • 銀行システム
    銀行システムは、利用者の預金残高の管理に加え、口座間の振込などの銀行業務を支援します。特定の条件を満たす利用者の情報を抽出するなどの業務支援に加え、利用者の預金、払い戻し、振込に応じて口座データの整合性を保つ役割も担います。

  • インターネット通販システム
    インターネット通販システムは、ウェブサイト上で買い物を可能にするシステムです。現在、インターネット上には多様な通販システムが存在し、さまざまな商品を購入できます。データベースにより、商品を様々な条件で検索したり、購入を検討している商品の詳細を確認したり、店舗間で価格を比較するといったことが可能です。

  • 顧客管理システム
    多くの企業では、顧客となる取引先企業や個人の情報を管理する顧客管理システムを保有しています。顧客情報に加え、企業間の取引に関する受注情報や在庫情報なども取り扱われます。

以上のシステムはいずれも、各組織が持つ業務に密接に関連する実世界のデータを扱っている点で共通しています。つまり、各システムにおけるデータベースのデータは、その組織が抱える業務の目的に沿って集められ、規則や制約に基づいて設計されているのです。これは、データベース設計において重要な概念の1つです。つまり、データベースシステムを導入する目的を達成するためには、必要なデータや予想されるデータを適切に取り扱うことが求められ、単に多くの種類のデータを集めれば良いというわけではありません。また、実世界の業務上のルールや制約をデータベースに反映させることも重要です。例えば、インターネット通販システムの例では、商品コードは重複せず、各商品が必ず1つのコードを持つという規則が該当します。

このように、データベースにおけるデータ構造の設計は、すべての組織や設計者に共通の最適解があるわけではなく、各組織の実際の業務フローやルールを十分に理解した上で設計する必要があります。業務フローや名称に変更が生じた場合は、データベースの設計もそれに合わせて適宜修正することが求められます。