システム設計の話 その1・前置き [システム設計の話]
さてさて、ようやくですが、システム設計について少し記事を書いていこうと思います。
簡単な例で、実際にDBやプログラムを作りながら進めて行こうと思いますので、進行はかなりゆっくり目になると思いますが、興味のある方は、気長におつきあい頂ければと思います。
作っているうちに、気が変わって、後帰って修正とかもすると思います。その辺ご了承ください。
と、前置きはこの辺で。
システム設計の話、といっても、教科書的な概論じみた話ではなく、実際にシステムを作っていく過程で、どんなふうに考えて、仕様を決めていくか、と言うのを、順を追ってまとめて行きたいと思ってます。
で、今回の題材は、一番わかりやすいと思われる、売上管理のアプリを一つ考えてみようと思います。
売上管理、と言っても、業務形態によっていろいろなタイプがあります。
例えば、一番身近な所で、コンビニやスーパーで買い物した時のレシートのような売上データの管理があります。これ、単純なようで、顧客数・売上商品数・売上データの数が膨大になることが多いので、大変です。
対消費者からちょっと離れたケースでは、事務所で使う消耗品などを納品する業者の売上管理。得意先や扱う商品が上記の例より絞られます。
これらは物を売るケースですが、物以外にも、売上となる物は多様に存在しています。ちょっとかわったやつで、家賃収入の管理や、ホテルなどの宿泊費など。この辺になると、その業種の世界の事なので、細かな事は、普通はあまり知る機会がないと思います。
今回は、簡単な売上管理と言うことで、ある程度顧客や商品数が絞られたシステムを例に考えてみようと思います。
いつ、誰に、何を、どれだけ売ったのか、を管理するシステムです。
文房具屋に行くと、売上伝票っていうのを売ってますが、あれっぽい内容を、DBで管理するようにします。
売上管理と似た名称で、販売管理という名称もよく使われています。明確な定義はないとと思いますが、私のイメージ的には、販売管理の方がシステムで管理する範囲が広いと思われます。
具体的には、売上が上がる前には、見積作成があります。また、売上の後には、売上金の回収があります。世の中で売られている販売管理という製品は、概ねこの辺の機能も持っているようです。
今回の例は、あくまで売上をデータにする部分だけを考えますので、売上管理という名称で行こうと思います。まぁ、どうでもいいか。
ついでに脱線しますが、見積もりの部分を見積管理、売上の回収を債権回収として、別のシステムとして切り分けて構築する場合もあります。
実際の業務を考えると、業務のデータの流れはこれにとどまらず、例えば、売上や集金したお金の情報は、帳簿を作成する仕訳データになり、これを扱うのが会計システムになります。
会計システムでは、売上以外にも、会社の経費や、人件費なども扱います。
人件費は給与システムから作成されます。
給与を計算するための勤務時間等の管理は、勤怠システムが行います。
また、売上システムの別方向を辿ると、売上商品を管理するための在庫管理システムや、欠品情報の管理や、商品を注文する発注システムなどが関連してきます。
業務の数だけシステムがあるといった感じです。
こういった一つ一つの業務システムが、互いにデータを連携することで、大きなシステムとして機能している場合もあります。
前置きが長くなりましたが、次は、売上管理について書こうと思います。