2007-02-01から1ヶ月間の記事一覧

暗黙的な構造制約

DDD

通常は明示する必要がないのでしょうが、自クラス自身の構造制約を判断する検証クラス(有効お買い上げ明細?、有効販売商品?、有効販売商品明細?)を明示するとこんな感じになります。クラス自身が必ず暗黙的に検証ロジックを持つと考えれば、わざわざSep…

構造制約の明示

DDD

構造制約を識別した後に、実際にモデルに制約を明示します。しかし、実際に制約を記述しようとした時に、どのようにすれば良いのでしょうか? できれば、詳細な内容は設計時まで遅延して、なおかつ、設計時にもれなく吟味できるようにしたいと考えています。…

構造制約と検証ロジック

DDD

構造制約とはオブジェクト間の関係に対してなんらかの条件をつけることで、0対1や多対1などのカーディナリティをはじめ順序や重複の有無などの制約があります。さらに「1回の購入金額が規定の金額を超えない」のように何らかのビジネスルールによって関…

構造制約と操作制約から検証ロジックを識別する

DDD

構造制約はオブジェクト間の制約や識別子の一意制約など静的な制約で、操作制約は特定の処理(オペレーション)を実行するときの前提条件で動的な制約になります。 この分類を利用して検証ロジックを考えと整理しやすいのではないかと考えています。検証ロジ…

レイヤごとの検証ロジック

DDD

最近、分析・設計時の検証ロジックの識別と設計のやり方をいろいろドメインモデルとの関連も含めて考えてます。 よくある検証ロジックの方式は、単純な入力チェックを画面層で行い、DBの制約やビジネスルールの制約をまとめてビジネス層でおこなうパターンか…

企業統一データベースの実装リスク

ER

アーキテクチャジャーナルの8号「データ統合の柔軟なモデル」で良い記事があったのでメモがてら紹介。*1複数のシステムでばらばらにもっているデータを1つに統合するというアイデアは昔からよく言われているが実際の構築は非常に難しい。これは、個々のシ…

プログラミング・チームのやる気をなくさせるトップ10の方法

Top 10 Ways To Demotivate Your Programming Teamありがちなのはこの3つかな。 不可能な納期 残業の強制 チャレンジさせない 1つ目は契約ミスの場合のしわ寄せで、はじめからやる気がなくなるパターン。2つ目の残業はやることが明確でかつ短期的なリカバリ…

Sandcastleの目次が文字化けする

NDOCが2.0対応しないためSandcastleを利用してヘルプファイル(chm)を作成している。 Sandcastleだけでは大変なのでNDOCと同じようなGUIを持つSandcastle Help File Builderと合わせて利用している。 今まで快適に使っていて特に問題なかったのであるが、ク…

シンプルにWorkflowを実行してみる

WF

WFが出ているが、あまり利用例などが出てこない。この点は僕の過去の経験からはある程度予想していたが、それでも少ないようにも感じている。良い技術なのにもったいない。 そこで非常にシンプルな使い方としてWFのシーケンシャルフローを(ジェネラル)フロ…