The Current Modeling Problem

I spend the majority of my day job designing applications and services, or refactoring the designs of existing applications (the latter is mostly the case). I design by modeling everything using UML and Visio (I know, Visio has its quirks with UML, but it gets the job done). This typically includes the following design artifacts:

  • Class diagrams
  • Sequence diagrams
  • Business context diagrams
  • System context diagrams
  • Entity models
  • Component diagrams
  • Deployment diagrams
  • Etc, etc

I put forth a lot of time and thought into these designs and at a certain point turn them over to the dev team so they can begin the implementation. The problem is that as soon as this exchange happens, the design documentation becomes obsolete. Why? Because the developers are too busy writing code to worry about updating the design docs when the need arises (i.e. an input parameter was missed on some method).

But the issue is not the developers, it's the fact that the software industry does not have a way to keep the models and code in sync. I know the Whitehorse stuff addresses some of this, but it's still a little ways off, and I doubt it's going to work with non-Microsoft technologies. And I don't know of any other software company that has or is working on anything like Whitehorse (if you know of any, please let me know by posting in the comments). So it seems to me that there is a real gap between the much needed design artifacts and the corresponding code.

Speaking of Whitehorse, I can honestly say that when I saw it for the first time at the PDC back in October, my mouth dropped open, and my immediate thought was: “This changes everything.”. I mean, it has lofty goals to be sure, but if Microsoft can deliver on 60%-80% of the proposed features for Whitehorse, it's going to be a huge win. And it starts to greatly close the gap I was talking about. For more about Whitehorse and the modeling goo Microsoft is working on, check out this paper on MSDN by Keith Short.

Print | posted on Tuesday, April 27, 2004 12:22 AM

Feedback

# re: The Current Modeling Problem

left by Darrell at 5/5/2004 10:00 AM
Almost every developer understands that code is an abstraction of something. But the funny thing is, many of these same developers will rail against modeling, even though it is an abstraction of the code.

# re: The Current Modeling Problem

left by Dave at 5/5/2004 10:56 AM
Darrell - I struggle sometimes getting developers to understand the importance of modeling and how it can help them. A lot (ok, most) times they just want to bang out code. I find it's part of the transition from coder to developer.

# longshore current modeling

left by petronela at 5/4/2006 3:13 AM
i'm a student in sam ratulangi university of indonesia. my lecturer just told me to make a seminar about longshore current modeling and i need an information or data or text book about it. in here we have difficulty to find that kind of book or information and i don't know where to find it. so i use this site to calling for help. i'm sorry about it but i do really need that infomation. if you know or you have any information about it please let me know with sending it to my email petronela_padja@yahoo.com.

thank thank you very much

Comments have been closed on this topic.