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/
