BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ドメインモデリング に関するすべてのコンテンツ

  • 分散システムにおける適度な結合とは - Viadik Khononov氏のDDD Europeでの講演より

    我々はこれまで、結合は悪である、と教えられていた。そのために、すべてのものを分割して、独立的に変更できる小さなサービスに分解してきた。一方で、この論法に従った結果として、”混乱の分散”に陥ることが少なくない — 先日アムステルダムで開催されたDDD Europe 2020での講演で、Vladik Khononov氏はこのように述べた。結合に抗うのではなく、システム設計を改善するための設計ツールにするように氏は提案する。

  • コンテキスト境界を考える - Nick Tune氏のDDD Europeでの講演より

    システムを分割してモジュール化すべき理由はたくさんある — 先日開催されたDDD Europe 2020の基調講演で、Nick Tune氏はこのように述べた。認知負荷の低減が可能になり、独立性のある開発が実現する。ビジネスの観点からは、より詳細な投資管理ができるようになる。講演の中でTune氏は、コンテキスト境界の設定方法によって設計時のモデリング上の選択肢を多くすることができる、と論じている。

  • イベントとマイクロサービスによる実践的ドメイン駆動設計 - QCon New YorkでのIndu Alagarsamy氏の講演より

    コンテキスト境界やメッセージングテクノロジといったドメイン駆動設計(DDD)の概念を使用すれば、ビジネスの変化に合わせて拡張可能な、信頼性の高いシステムを構築することができる。Indu Alagarsamy氏は先日のQCon New York 2019 Conferenceで、明確に定義されたコンテキスト境界とイベントを組み合わせて使用することによって、ビジネスの変化に柔軟に対応可能な、自律的マイクロサービスの開発について講演した。

  • Michael Feathers氏の提唱する設計指針としてのエラー処理

    Michael Feathers氏はエラーに関心を持っているが、ほとんどの開発者がエラーに多くの時間を割きたいとは思っていないことは理解している。氏はまた、大部分のエラー処理は一種のギブアップに過ぎない、と考えている。レガシコードでの開発作業に関する著書で知られる氏は、Explore DDD 2018で行った基調講演の中で、エラーを排除することが、いかにソフトウェアシステム設計のドライバになり得るかを論じた。

  • ドメインストーリテリングを使ってコンテキスト境界を見つけ出す

    ドメイン駆動設計(DDD)による開発では、コンテキスト境界(bounded context)が重要なコンセプトとなる。ドメインストーリテリング(Domain Storytelling)とは、人々とシステムがドメイン内でどのように共同作業するのか、コンテキスト境界を識別する上で使用できるのは何か、どのように連携するのかを見出す手段である — 先日アムステルダムで開催されたDDD Europe 2018で、Stefan Hofer氏とHenning Schwentner氏はこのように説明した。

  • Eric Evans氏: ドメイン駆動設計は、以前より以上に妥当性を獲得している

    ドメイン駆動設計の著者、Eric Evans氏は、2003年に書いた本のコンセプトは、14年前よりも今のほうがより現実の問題に関連していると言った。様々なツールや技術が拡張されて、そのいくつかは、私たちが過去に持っていたものよりもよりDDDの原則に合っている。「DDDは技術に関するものではないが、技術に無関係な訳でもない」とEvans氏は言った。

  • Vaughn Vernon氏はマイクロサービス内で不確実性をモデリングするためにリアクティブDDDを使用する

    マイクロサービスとリアクティブシステムは順不同な到着順、重複、喪失などのメッセージに関する不確定性をもたらす。これに対する対応の仕方はビジネス上の決断であるとVaughn Vernon氏は述べ、ドメイン駆動設計の概念を用いて対処するのが最善であるとした。

  • ドメイン駆動設計のガイドライン: Capture - Embed - Protect

    ソフトウェア設計と開発のガイドラインとしてドメイン駆動設計(DDD)の中核的な哲学とプラクティスを用いる場合、それはCapture — Embed — Protectという3つの原則にまとめることができる — 今年のDDD eXchangeカンファレンスで行なったプレゼンテーションの中で、Steven A. Lowe氏はこのように主張した。我々は、肯定的な行動を取るに十分な理解を得ることでドメインモデルを捕捉(Capture)し、コードや会話の中にそれを埋め込み{Embed)、他ドメイン、特に技術的なドメインによる改変から保護する(Protect)のだ。

  • ソフトウェア開発に専門分野の重要性を取り戻す

    今日の業界紙を読めば,世界中のビジネス側の人たちがITについて,自分たちの足を引く邪魔者だと考えていることが分かるはずだ。この状況を克服するには,私たちが注目点をマシンからドメインへと移し,従事する分野について書籍から学ぶ必要がある - 先日アムステルダムで開催されたDDD Europe Conferenceでのプレゼンテーションの中で,David West氏はこのような指摘をした。

  • Eric Evans氏: ドメイン駆動設計はソフトウェア開発に有益か?

    この数年、ドメイン駆動設計(DDD)への関心が高まっている。Eric Evans氏はロンドンで行われた最近のDDD eXchange Conferenceにおけるキーノートで言及している。彼は開発者がもっと設計に注意を払う時期にいると考えている。理由のひとつは、モデルが高い意味を持つ分散システムを扱う仕事をしているからである。

  • DDDの世界でドメインエキスパートと働く

    ドメイン駆動設計におけるドメインエキスパートと使用する言葉に関する話題は良くある。 しかし、なかなか難しい。理由は私達が話す言葉が同じではないからである。 このことは、今年既にドメイン駆動設計 欧州カンファレンスにおいて、Cyrille Martraire氏からDDDを推進する状況でドメインエキスパート達と働いた経験を共有するプレゼンテーションで説明されている。

  • 集約、エンティティ、バリューオブジェクト

    集約をモデリングして、その集約の中のエンティティから可能な限り多くの振る舞いをバリューオブジェクトに移行しようとするとき、より多くの振る舞いが必要になるにつれ、新しいバリューオブジェクトが必要になる。これは、Paul Rayner氏が集約やエンティティ、バリューオブジェクトなどドメイン駆動設計(DDD)の世界の概念を取り上げた一連のブログ記事の中で推奨していることだ。

  • QConTokyo2013【アジャイル/モデリング】トラックのご紹介

    このトラックでは、アジャイル開発プロセスの観点から、コーディングスタイル、モデリング、NOSQLデータベースによる柔軟なシステム実現、という3つのテーマでアジャイルとモデリングの最新状況をご紹介したいと思います。

  • コンテキスト境界を使って大きなドメインモデルを小さくする

    開発者はドメイン駆動設計(DDD)のコンテキスト境界という概念を使って、巨大なモデルを複数の小さなモデルに分割できる。これにはEntity Frameworkのデータベースコンテキスト(DbContextクラス)が利用できる。

  • Event Store を Read Model として利用する - Greg Young 氏の講演より

    Event Store のリードアーキテクトである Greg Young 氏は先日,Event Store の Projections Library と,それを Read Model として使用する方法について 講演した。プレゼンテーションの中で氏は,Projections Library とは何なのかを主要なユースケースを挙げて説明した上で,多数の実例を示した。

BT