レシートからPOSシステムを設計する

普段、われわれが生活している日常にはさまざまなシステムがあり、一昔前とは比べ物にならないぐらい生活が便利になっていることは周知の事実である。システム開発に携わる人間であれば、日常で触れる身近なシステムや実際の仕事以外の業種・業務についてどのような仕組みになっているか想像したことがあるかと思う。

ここでは想像力を鍛える意味でも、日頃から目にするものを材料にシステムのデータ構造について、システムのデータ構造について考えてみてほしい。複数人で意見を持ち寄ることで自分の発想と違うものを吸収できれば、さらに良いトレーニングになるだろう。

今回はコンビニのレシートを題材にPOSレジのシステムがどんなデータ構造になっているかを想像してみよう。(店によっての記載位置は異なるが記載内容についてはどの店でも同じ内容になっているかと思う)

1) コンビニのレシートに記載されている情報を列挙する

レシートから今回考えるデータの項目を抜き出す。

レシート

2) 情報をグループ分けする

(1)で列挙した情報を「データとして同じ枠組みで管理した方がよいもの」という観点でグループ分けする

詳細1

3) データベースの構造を考え正規化する

データベース設計を考え、(2)でグループ分けした情報をさらに正規化していく

正規化

4) 各グループの主キーを考える

(3)で分けたグループをそれぞれ結びつける為、各グループをDB上のテーブルと見立てて主キーを考える

主キー考察

5) 各テーブルの関係を図で表す

各テーブルの関係をER図にする

各テーブルの関係を図で表す