今回は、テーブル結合を使って、設計書からテーブル構造を作成しました。細かいツッコミどころはありますが、データを役割ごとにテーブルに分けることで、同じ情報を何度も保存する必要がなくなり、データ更新時の修正漏れを防げます。また、バラバラでも、必要なときにはテーブルを結合して、まとめて利用すればOKです。
結果として、今回顧客が求めているワインのECサイトは、以下の4つのテーブルが必要だと分かります。
今回までで、業務フロー、画面設計書、テーブル構造を作ることができました。すなわち、「何をするソフトウェアなのか」という業務フロー、「どのように操作するのか」という画面設計、そして「どのようなデータを扱うのか」というテーブル構造がそろいました。これで、ソフトウェアの「処理」と「データ」に関する基本設計の骨組みがそろい、「アルゴリズム+データ構造=プログラム」の準備が整ったというわけです。
本連載で取り上げた「ソフトウェア技術者のためのバグ百科事典」を大幅に加筆、修正した山浦恒央先生の書籍「ソフトウェア技術者のためのバグ検出テキスト」が日科技連出版から好評発売中です。連載でも取り上げた、「要求仕様書のバグ」「実装抜けのバグ」「テスト業務のバグ」など、バグを36種類に分類して解説しています。囲碁や将棋であれば、「相掛かり」「矢倉」「四間飛車」「藤井システム」のような戦法を網羅した内容になっています。
前著「ソフトウェア技術者のためのバグ検出ドリル」(2019年11月刊行)も好評発売中です。実際にバグを含む要求仕様書、設計書、コーディング、デバッグ、保守を具体的に取り上げ、練習問題として31問を出題しました。同書は、囲碁や将棋における「次の一手」的な問題であり、ピンポイントの場面を取り上げ、実践力を鍛えることを目的としています。
両書とも興味のある方は、Amazon.comや書店でチェックしてください!
人間環境大学 環境情報学科 教授(工学博士)
イチから全部作ってみよう(34)マルチプログラミングとトランザクション
イチから全部作ってみよう(33)「排他制御」をトイレのアナロジーで理解する
イチから全部作ってみよう(32)PythonでSQLを実行してデータベースを操作する
イチから全部作ってみよう(31)SQLを操作して実際にデータベースを作ってみる
イチから全部作ってみよう(30)データベース操作の共通言語「SQL」を使ってみるCopyright © ITmedia, Inc. All Rights Reserved.
組み込み開発の記事ランキング
コーナーリンク