I was delighted to see today's report that Sun has announced support for the UML in their tools. This comes on the heels of Microsoft telegraphing their support for modeling in various public presentations, although the crew in Redmond seem to trying to downplay the UML open standard in lieu of non-UML domain-specific languages (DSL). I must admit that I'd always found the DSL play to be one of classic over-engineering (the notion of DSLs are not new, as they factored in some of the proposals for UML 1.0). The UML has proven itself valuable in essentially every domain of software-intensive systems (and my project to create a handbook of software architecture continues to demonstate that is the case). There is no doubt that different domains and different stakeholders are best served by visualizations that best speak their language - the work of Edward Tufte certainly demonstrates that - but there is tremendous value in having a common underlying semantic model for all such stakeholders. Additionally, the UML standard permits different visualizations, so if one follows the path of pure DSLs, you essentially end up having to recreate the UML itself again, which seems a bit silly given the tens of thousand of person-hours already invested in creating the UML as an open, public standard. In the end, I'm more encouraged by pattern languages offering a better path to domain-specific value. Every domain and every development culture has its own tribal memory, and patterns thus far have also proven themselves sufficient and valuable in codifying much of that memory, especially insofar as it relates to design and architecture.
Anyway, I'm actually happy that Sun and Microsoft have entered the modeling playing field (we've realized the value of modeling for years, he said shyly). This is not just a marketing play for them, but appears to be continuing validation of the importance of modeling to the creation of software-intensive systems. As I've said many times, the entire history of software engineering is one of rising levels of abstractions, and modeling languages such as the UML are consistent with that trajectory for the future.
Expansion of the UML
gbooch 120000P81R 982 Visits