アーキテクチャ

データベースの物理設計

アーキテクチャ設計を行う時にいろいろな方針を決めるようにしているのですが、データベースについても論理から物理に変換する基準を決定します。 僕らのチームではアプリケーションごとに以下の点について考えます。 非正規化をおこなってもよい基準 可変長…

アーキテクチャチームがコントロールするもの

ドメインモデル*1 アーキテクチャ ガイダンス(規約) DSL(開発ツール) *1:ドメインモデルの作成自体は業務チームとの共同作業

アプリケーション開発シナリオ

アプリケーション開発シナリオは、作成するアプリケーションやチーム体制で異なるはずで、既存の手順やルールをカスタマイズして適用することができればより生産性があがると考えている。このように考えると、アプリケーション開発も1つの業務として分析設…

MDAとDSLとドメインモデル

以前、コードの自動生成で利用する情報としてドメインモデルがよいとコメントしたが、よく考えると、これってMDAの考え方に近いのかな。 MDAはあまり現実的になく、DSLのような限定的なエリアでのコード生成が現実的な方法と思っていた自分としては、MDAをも…

3層サービスアプリケーション(MS-TLSA)とドメイン駆動デザイン(DDD)

ドメインロジックの組織化について、3層サービスアプリケーション(MS-TLSA)とドメイン駆動デザイン(DDD≒ドメインモデル)と比較したよい記事なので紹介。Organizing Domain Logic MS-TLSAについて.NET Pet Shopのチェックアウト処理を元に紹介し、この処理…

コード生成のコアモデル

コード生成する際に元にする情報として、ウイザードなどで手入力するもの以外に既存のクラスやデータベース情報を利用する。このコード生成に利用する情報としてドメインモデルのスキーマを中心にするとすごく良い。 コード生成する例としては、CSV出力やマ…

プロダクトラインとアーキテクチャ設計

プロダクトラインは複数のプロジェクトで共通利用できるコンポーネントや仕組みを提供することを目的にすることが多い。しかし、プロダクトラインの考え方は特定のプロジェクトで取り入れても良いようだ。特定のプロジェクトでアプリケーションの作り方を規…

WF・LINQをどのように利用していくか

もう少しすると、WFやLINQなどの新しいテクノロジが利用できるようになる。 技術屋としては興味が惹かれるが、どのようにLOBアプリに適用していくか、斬新なアイデアが思いつかない。 (D)LINQにORM以上のこと、WFにビジネスワークフロー以上のことを求めては…

フレームワーク構築時に考えるトップ5

フレームワーク構築時に考えるトップ5について考えている記事があったので考えてみた。What are your top 5 things to consider when building a framework? 個人的にはアプリケーションごとにカスタマイズというかアダプトしていくハーベスト型でフレーム…