Re: OOA?

From: Robert C. Martin (unclebob_at_objectmentor.com)
Date: 01/16/04


Date: Thu, 15 Jan 2004 19:58:59 -0600

Shane,

I have heard nothing but good things about Eric's book. I have it on
my pile of books to read, near the top.

Others who know my work and his work can comment as to whether there
is any disconnect. I suspect there is not, given what I have heard.
But I'll wait until I read the book to comment more.

Understanding the domain, and building models of the domain to aid
that understanding, is a useful and necessary activity for software
developers and business analysts -- it always has been. I have no
idea what that has to do with OO.

On Fri, 16 Jan 2004 09:29:52 +1300, "Shane Mingins"
<shanemingins@yahoo.com.clothes> wrote:

>"Robert C. Martin" <unclebob@objectmentor.com> wrote in message
>news:s8dd00loa3jlser3n6pfgr1oejguetmvvb@4ax.com...
>> Bottom line: You can't expect people who don't know how to code to
>> write OO domain models that can be used to generate code.
>
>Agreed. And I hope I did not give the impression that I was suggesting
>otherwise.
>
>I do not want to get into the detail of Real vs Integer etc as I will
>quickly fall out of my depth mathematically so I will respond to this
>thread.
>
>You have now talked about a model of the problem domain vs a model of the
>solution which then explains the statement "What this tells me is that "OO
>Models" of the problem domain do not naturally translate well into an OO
>program".
>
>When I read that statement about OO Models I was thinking of a domain model
>and domain driven design as described in Domain-Driven Design - Eric Evans.
>If I understand correctly what you are referring to vs what Eric is, the
>domain model in DDD is modeling the solution.
>
>There is a site for the book with some sample chapters
>
>http://www.domaindrivendesign.org/book/index.html
>
>Have a read of the Part I intro:
>http://www.domaindrivendesign.org/book/evans_pt01.pdf
>
>He later states:
>
>"Ultimately, we hope to develop a model that captures a deep understanding
>of the domain. This should make the software more in tune with the way the
>domain experts think and more responsive to the user's needs." Pg 188.
>
>What I am trying to understand is where Eric's ideas sit in context of yours
>(and Ron's) as I endeavour to form my own.
>
>Given that Eric's book is supported by Martin Fowler, Kent Beck, Ralph
>Johnson, & Ward Cunningham I am accepting that the ideas within are not
>something that the XP/Agile community reject.
>
>What I am trying (unsuccessfully at the moment) is to try and reconcile
>other views on domain modelling (predominantly yours) versus this book.
>Somewhere I feel there is a piece missing.
>
>Also I am also trying to understand how domain-driven design fits in with XP
>and TDD. I have been referred to a newsgroup post that I will paste below.
>
>Regards
>Shane
>
>
> From: Joshua Kerievsky <joshua@i...>
> Date: Thu Oct 23, 2003 5:50 am
> Subject: Re: [industrialxp] Timing for Domain-Driven Design in
>Industrial XP
>
>
>
>
> Chris Gardner wrote:
>
> >When do you typically apply Eric Evan's domain driven design
> >techniques in Industrial XP? Do you try to capture a model just
> >before coding? In the iteration planning meeting? etc.?
> >
> >
> I think of Evolutionary Design as being the big umbrella for the
> following design practices:
>
> * Story Test-Driven Development (STDD)
> * Test-Driven Development
> * Refactoring
> * Domain-Driven Design (DDD)
>
> Our practice of DDD flows out of our continuous practice of STDD and
> TDD, since many of our storytests and unitests are focused on proving
> that pure business logic executes as expected.
>
> DDD also influences our language, for we endeavor to speak with our
> project community using a Ubiquitous Language.
>
> DDD also influences our choice to keep domain logic code totally free
>of
> non-domain-specific code, such as database, networking or ui code.
>
> Does that help?
>
> best regards
> jk
>
>
>
>
>
>
>



Relevant Pages

  • Re: Data modeling in MV, revisited
    ... Whilst many people may have made design ... Yes, but not likely a "best practice," right? ... dictionaries - where EVERYTHING was embodied in code. ... If you start with the business problem, you will rarely end up with the ...
    (comp.databases.pick)
  • Re: Meganet strikes back
    ... > key streams have in fact been used in practice. ... >> Note that aids are killing a whole continent (Africa)! ... your phrase 'access to relevant information' also ... > informed evaluation and verification of the design and ...
    (sci.crypt)
  • Re: Comparing Dictionaries
    ... Though in my daily job I have some coding tasks, I do not see my self as a programmer since in my perspective a programmer is someone who can write good code regardless of the language. ... A functional design is written on the base of the assignment and the scope definition. ... Still there are tons of reasons why you shouldn't follow blindly the best practice, since best practice is founded on theory molded around the most occurring reality. ...
    (comp.lang.python)
  • Re: What does your implementation process look like?
    ... Some people are used to total control of the medium in print, and the TV screen is just electronic paper. ... I usually point out that they wouldn't select content that could alienate, or even offended potential customers, why use design techniques that could. ... If I'm unsuccessful, or if I feel we can't come to an amicable understanding, I'm back to "I'd rather just not work with these people." ... That might argue in favor of a more fixed layout, at least in it's outer envelope. ...
    (alt.html)
  • Re: OSX vs XP
    ... > know when to Ctrl-click on a 1-button Mac either. ... Contrast with Wintel, ... but there are two broad categories of understanding; ... You'd go crazy trying to design a UI that ...
    (comp.sys.mac.advocacy)

Loading