« 統合型プロジェクト管理のススメ | トップページ | 「Redmineによるタスクマネジメント実践技法」が翔泳社オンラインショップで予約販売開始 #TiDD »

2010/09/23

販売管理システムで学ぶモデリング講座

渡辺幸三さん著の「販売管理システムで学ぶモデリング講座 (DB Magazine SELECTION)」を一通り読んだ。
内容はとても奥深い。
最初に断っておくが、前提知識としてデータモデリングだけでなく簿記3級程度の知識も知っておかないと、この本の凄さは分からないと思う。

本の内容は、卸売業の販売管理システムを渡辺さん作成のツールで作ったリファレンスモデルで解説している。
販売管理システムの業務を、仕入・受払・売上の3種類で説明している。
仕入と売上は実際の業務をイメージしやすいが、受払という在庫管理の業務はなかなかイメージしにくいが、簿記の知識があれば腑に落ちる。

在庫管理では、庫入れ・庫出しで商品の単価が変わる。
その流れは商品有高帳という補助簿で追跡できる。
在庫にある商品の単価は、先入先出法や移動平均法などで計算されるが、昨今のようにIT化されているなら、移動平均法が普通だろう。
面白かったのは、直送(自社倉庫を経由せず、仕入先から客先へ直接納品する)でも在庫の単価が変わること。
その背後には、在庫の評価基準が曖昧であると税務署から言われないようにするため、と言う点も興味深い。

渡辺さんが編み出したオリジナルの手法である在庫推移監視方式が在庫引き当て方式よりも有利である点も詳しく書かれている。
この部分は、MRPや簿記2級の工業簿記にある原価会計の知識がないと、完全に理解出来ないだろうと思う。

データモデリングとしては、2次識別子(主キーではないがデータを一意に決める非キー属性)や外部キーの使い方が面白い。
2次識別子を外部キーとして上手に使えば、テーブルのカラムをあまり増やすことなく、業務ロジックをER図へ反映させることができる。

また、売上に伴う出庫(倉庫にある商品を出荷する)では、出荷と同時に在庫数が減り、同時に売上の仕訳が計上されるロジックをトリガーファンクションで実装するのを勧めている点も面白い。

在庫引き当てのロジックは、どの業種でも複雑で、かつ実装も難しい部分だ。
排他制御やデッドロックの危険性も考慮しながら実装する必要があるので、在庫引き当ての実装は、普通は最もスキルの高い開発者が担当することが多いだろう。

販売管理システムで学ぶモデリング講座 (DB Magazine SELECTION)」の内容は後日まとめてみる。

|

« 統合型プロジェクト管理のススメ | トップページ | 「Redmineによるタスクマネジメント実践技法」が翔泳社オンラインショップで予約販売開始 #TiDD »

モデリング」カテゴリの記事

経営・法律・ビジネス」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/49479/49542992

この記事へのトラックバック一覧です: 販売管理システムで学ぶモデリング講座:

« 統合型プロジェクト管理のススメ | トップページ | 「Redmineによるタスクマネジメント実践技法」が翔泳社オンラインショップで予約販売開始 #TiDD »