Wednesday, January 22, 2003

Model-based Software: In a recent Information Week article, Picturing Better Software, Microsoft's Dan Hay judges that "less than 10% of professional developers use modeling tools." I was stunned by that estimate, so I checked with several friends in different IT roles, and they all confirmed it.

I started thinking about the assumptions I hold that contributed to overestimating usage of software-modeling tools. First, I can't conceive of enterprise architecture without software modeling. Second, I've been using software-modeling tools since the mid-80's and can't imagine trying to model, much less build, a complex system without them. Third, there's lots of evidence that modeling information about systems leads to better outcomes; see Tom Gilb for example. Also, I figured software engineering students would learn to use software-modeling tools and influence practice in the organizations they joined.

None of this has had much impact on programmers, and I'm wondering if there's an analogy between the slow adoption of software-modeling tools and the widespread, and successful, resistance to software development lifecycle methodologies. My back-porch theory is that developers rejected SDLC's because there was no benefit to them. If I'm even partly right, then it follows that software-modeling tools have not made a clear value proposition to developers.

For enterprise architecture to be successful, changes in behavior that create value for organizations and individuals must emerge. Without software-modeling tools I can't see how architecture can reach the scale necessary to deliver significant benefits, and I'm afraid developers, key stakeholders in and developers of architecture, will continue to reject the tools and models.

In the Technology Review article on 10 emerging technologies, there's a discussion of software assurance. The researchers, Nancy Lynch and Stephen Garland, seem to hold many of the same assumptions as me, and I'm wondering if their work will face the same cultural barriers as SDLC's and software-modeling tools. At this rate, good software will continue to be expensive and scarce.
Welcome to Notes on Enterprise Architecture. My aim is to support the community of practice engaged in large-scale, information technology architecture activities. I hope this blog will become a valued clearinghouse for this community, and I welcome your feedback at .