適用期間を持つマスタ

「商品マスタ」や「部署マスタ」に「単価マスタ」など適用期間を意識するマスタをこれまで、いろいろな方式で実装してきましたが、いちばん多いパターンはトランザクションデータの中に取り込む方式が多かったです。しかし、なんとなくしっくりこない感覚を持っておりました。適用開始日と適用終了日を持たせ、現時点での有効なデータを参照できるViewを作成してしまう方式をここまで言い切ってくれるとスカッとしますね。ケースバイケースで注意しなければいけないときはあるのでしょうけど、常に設計の基本を持っていると考え方がすっきりしそうです。大変役に立ちました。
未来日付のマスタ

One Fact in One Place

DOAの世界での原則で、「1つの事実は1つの場所に」ってことなんですけど。データベースの世界の正規化などがそれにれにあたり、ERモデルなどで重要な考え方になっています。ただこの考え少し勘違いしていたようです。なんでも極端に正規化してデータの重複を避けるのだと思ってました。商品マスタと売上明細の関係での商品の単価などに良くあることですが、商品の単価は商品毎に決まっているけど、売上データには値引きが考慮されることがある等です。このとき、商品単価は、売上明細に値引きを考慮した金額になります。いままで、このようなときには、正規化崩しをするしかないよなと思っていました。ところが「One Fact in One Place」では、あくまで商品単価は一つの場所へ格納せよだと思っていました、「が」それは、大きな勘違いでした。標準単価が一つの「事実」であるとするならば、値引きも一つの「事実」だから、べつの場所へ格納するのは正しいことだったんですね。この「事実」という考え方からDB設計してゆくとすっきりと考えられるような気がしました。

楽々ERDレッスン
楽々ERDレッスン
posted with amazlet on 06.12.02
(株)スターロジック 羽生 章洋
翔泳社
売り上げランキング: 41474

適切な警告メッセージ

システムのエラーや警告メッセージやが不適切だと結局は、開発者のところにつけがまわってくるようです。実装のする時間をとれなくて気にはしていたのですが見過ごしていたところで、何回も問合せが発生しています。目先の作業に追われて、今回も警告処理を見送りそうですが、長い目で考えると、ユーザが対処可能な警告処理を実装すべきでしょうね。このへんの商品の品質を今日出来るかどうかは、ユーザの特性にもよります。結局、大騒ぎするようなユーザへは、即効対処しますが、そのたびにメーカへ効けばいいやてきなユーザは、実装を見送りがちです。しかし、後者のユーザにこそ、自分で対応出来るような仕組みを実装しないと開発がが後々まで苦労しそうです。

「[http://jude.change-vision.com/jude-web/product/biz.html:title=JUDE Biz]」おしい!

最近ちょうど業務フローを書くことがあったので、ちょっと気になっていた「JUDE Biz」を試してみました。以前から、たまに「JUDE/Community」を利用していましたが、「JUDE Biz」も同様の操作感でJAVAの割りにサクサク操作できます。ちょっとした業務フローなら、お手軽に書けるます。ところが、もう少しで試用期間が切れるし、発売日も近いということもあって、購入しようとしたところ値段にビツクリ!「JUDE/Professional」くらいの値段かと思っていたのが、キャンペーン価格で52,500円とはちょっと手が出ません。もっとも、単なる業務フロー作成のお絵かきソフトの機能しか評価していないからなのでしょうけどね。でも、RCM (リスク・コントロール・マトリックス)などの他の機能はとりあえず使うつもりないし、それらの機能も使いたいけど、稟議を通す自信ないな。
というわけで、せっかく書いた業務フローも、これまで通り「JUDE/Community」で書き直すことにしました。サーバや端末等の図形が用意されているのが良かったんだけどね。前はVISIOとかも使ってたけど、あれリソース食いだしな、会社にライセンスもそんなにないし、値段もそこそこするもんね。
もっとお手軽なソフトは無いでしょうかね。

XP祭り2005申し込む

■[XP][event]XP祭り2005登録状況 23:21
もうすぐ200人に届きそうです。過去最高のスピードです。
参加を考えている方はお早めにどうぞ。

ということで、あわててXP祭り2005に、申込ました。土曜日だし、なんとかスケジュールOKそうなので参加します。楽しみです。今回、残念ながら懇親会はパスです。

合宿開発やりてー

非連続的なアイデアが確実に形になるようなフローを社内に作るにはどうすれば良いか、それに対する一つの答えが、環境を変えて仕事をする事だと思っています。

日々、連続的な開発に埋もれすぎているかもしれません。ぱっと非連続的な開発をやりたいけど、ここにこの記事でもふれていたけど、そのアイデアをどうやって思いつくのかというさらに大きな問題もありますが・・・

ソフトウェア開発はガーデニング

「ソフトウェア開発はガーデニング」

ホーティカルチャーというメタファで考えた場合、顧客とソフトウェア開発企業は雇用主と庭師の関係になります。 つまり、永続的な雇用関係の中、システムの開発を行っていくことになるわけです。 これにより顧客はソフトウェア企業に作り逃げされないという安心感を持つことができ、また、開発者側は今後も継続的に保守が必要であることを認識し、保守性の高いソフトウェアを作成する動機付けが得られるのです。

昨日エントリした保守が大切の考え方をうまく表現している。おれも、今日から、ランドスケーピスト(landscapist: 造園家、庭師)だ。