On Tue, Nov 30, 2004 at 07:26:06AM -0800, Stede Troisi wrote:
> With the advent of Domain Specific Modeling, MDA,
> Software factories and the wonderful tools included in
> Visual Studio 2005 I was wondering if XP can or even
> needs to survive in the next 50 years?

Interesting question. I actually had a conversation about this
with David Anderson (author of "Agile Management", also see
http://www.agilemanagement.net). David is an FDD practitioner.

In my opinion, one of the most fundamental differences
between FDD and XP is what each perceives to be the 
central artifact and mechanism for conveying knowledge
of the system.
- with XP, it is the source code.
- with FDD, it is the domain model

Another interesting thing about FDD is several of its
"color modeling" rules/patterns are really just refactoring
rules being applied to the model rather than to code
(IMHO).

I believe that MDA/MDD wants not just the central
mechanism for communicating system organization and
design to be the model, but the ultimate goal is that the
model will be the ONLY means necessary to do it.

I do believe MDA/MDD, in conjunction with IDEs like
Eclipse, will indeed reshape the face of software
development within as little as 10 years. I think it's
already started. A few select IDE's did it before, but
with standards like Eclipse and UML it has already become
more prevalent.

I think the modeling environment will merge with the coding
environment such that most developers will rarely have
to bother to think in terms of files and directories when
organizing and navigating their code. The UML model and a
logical "package" hierarchy will be the primary means of
navigating to a particular snippet of code.

But before we get to the point where 100% code generation
is the norm, we'll end-up using the model for the
high-level stuff, and much of the interface, and the we'll
simply double-click on a class or a method to enter the
code for a given method. Eventually the difference between
the programming language used, and the constraint/action
specification language used for MDA will get smaller and
smaller. (It's already happening with some tool vendors,
where they are using a java-like syntax since the action
specification semantics in UML don't specify enough to do
it all on its own).

This combined with increasing integrations with tools like
JUnit and Hibernate will likely result in an MDA-way of
doing TDD with the constraint language and some other code.

The model will also give multiple ways of viewing
the code structure (not simply a single hierarchy of
files+directories). One of those views might be from a CM
build/deployment perspective. And the modeling tool will
automatically know a lot of the physical dependencies
since it will take care of creating & generating the
files+directory structure.

And the more those things get integrated together as
part of an overall model, the more the underlying IDE
will be able to automatically do lots of traceability
that otherwise would be painfully tedious and manual,
and which may also be increasingly likely to be mandated
by the customer due to things like Sarbanes/Oxley.

I think XP will likely learn to adapt pretty well to this given
that:
 - the creators of XP had much of their experience using
   Smalltalk and its IDE, which already did a lot of this
   stuff anyway
 - XP itself embraces adapting itself via reflection & retrospection

-- 
Brad Appleton <[EMAIL PROTECTED]> www.bradapp.net
  Software CM Patterns (www.scmpatterns.com)
   Effective Teamwork, Practical Integration
"And miles to go before I sleep." -- Robert Frost


To Post a message, send it to:   [EMAIL PROTECTED]

To Unsubscribe, send a blank message to: [EMAIL PROTECTED]

ad-free courtesy of objectmentor.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/extremeprogramming/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 



Reply via email to