ソフトウェア開発の全工程を学ぶ新シリーズ「イチから全部作ってみよう」。第29回は、お題「店長の頭の中を設計しよう」の解答例となる3つのノート整理法を基に、リレーショナルデータベース(RDBMS)の基礎知識について説明する。
山浦恒央の“くみこみ”な話の連載第170回から、入門者をターゲットとして、「イチから全部作ってみよう」というシリーズを始めました。このシリーズでは、多岐にわたるソフトウェア開発の最初から最後まで、すなわち、要求仕様の定義、設計書の作成、コーディング、デバッグ、テスト、保守までの「開発フェーズ」の全プロセスを具体的に理解、経験することを目的にしています。
興味がある方は、連載第170回からのバックナンバーをご覧ください。
プログラムは、「ロジック」と「データ」から成り立っており、どちらも適切に設計する必要があります。現在、その中でも、「データ」に着目し、データ設計に関するトピックを説明中です。
今回は、前回説明したデータベースの全体像を踏まえつつ、以下に挙げるお題をベースとして、さらにもう一歩話を進めます。
早速ですが今回のお題です。まずはお題の前提条件から。
あなたの実家は、お父さんが一人で切り回す小さなワイン屋さん。ある日、お父さんが突然他界した知らせを受け、実家に駆け付けると、お母さんから「今日から、あなたがこのお店をやってちょうだい」と言われました。頼まれると嫌とは言えないあなたは、引き受けてしまいました。生前、店長であるお父さんは、「台帳なんていらねぇ、全部ココ(頭)に入ってる!」が口癖で、デジタル化どころか、体系的なメモすら一切残していませんでした。
結果、残ったのは、店長の「勘」と「記憶」だけで回っていた店と、膨大な商品の山、そして何も書かれていない真っ白なノート1冊です。あまりの状況にプロへシステム化を依頼しましたが、提示された金額は「300万」。その金額にあぜんとしたあなたは、自分の知恵とノート1冊でこの危機を切り抜けようと決意しました。
ワインを勉強しつつ、経営に関して常連さんの話を聞く限り、店の運営には、次の情報を記録する必要がありました。
これらの情報を、1冊のノートにどのように整理して書き込めば、情報の抜けや重複/書き間違いを防ぎ、効率的に商売を進められるでしょうか?
解答例として、下記の3種類の方法が考えられます。
日記帳スタイルとは、日々起きたことを時系列に書き込む方式です。例えば、ノートの一行目から次のように記載します。
このように、日記帳のように時系列で起きたことを記録します。これは、プログラミングにおけるデバッグログのようなものですね。
この方法の最大のメリットは、今すぐに営業を始められることです。ただし、時間がたつにつれて過去の情報にアクセスすることが非常に困難になります。例えば、「去年、シャトーマルゴーは何本売れたか?」「2年前の山田さんのお買い上げ金額の総額はいくら?」を算出するのはかなり大変ですね。
Copyright © ITmedia, Inc. All Rights Reserved.
組み込み開発の記事ランキング
コーナーリンク