Exploring our space—partly science, partly art—is always a fascinating and complex task. We could take the contextual approach and address a context-specific subject, as we did recently (
SOA, and so on), or we could take the introspective approach of analyzing the
role that we play (how we communicate, how we negotiate, and so on). We covered our role two years ago, during the days of Simon Guest as editor. Yet we could take a third approach that is neither context-specific nor introspective, when we review what we produce.
This 23rd issue of The Architecture Journal is on Architecture Modeling and Processes. The articles that were selected for this occasion deal with aspects such as:
- Change-enabled architectures. Brandon Satrom and Paul Rayner advise us on how to keep architecture relevant, and not forgotten, after the solution has been implemented.
- Architecture verification. V. Gnanasekaran explains ways to confirm that a given approach meets specific criteria prior to going to the next level.
- Enterprise architecture. Sam Holcman details the four pillars of success.
- Adaptable solutions for different deployment contexts. Charlie Alfred identifies the implications and trade-offs, with illustrative examples.
- Unified Modeling Language (UML) vs. Domain-Specific Languages (DSLs). Lenny Fenster and Brooke Hamilton dive in to the pros and cons of both alternatives, and show that these can eventually be combined.
- Maturing architectures in agile processes. I wish that I had read articles like Alan Wills’s or Diego Fontdevila and Martín Salías’s before starting my first agile process last decade—when I couldn’t deal with the fact that the next release was in three weeks, and I felt unable to complete my architecture in less than two-and-a-half months.
The latest articles in this issue show specific examples that use the upcoming Microsoft Visual Studio 2010 suite. We are less than a month away from the
launch of this Microsoft tool for .NET development, which—since its 2005 version—has been incorporating aspects of application life-cycle management (ALM) that span way beyond developer boundaries to include project managers, testers, user leads, and architects. For these latter stakeholders, the incorporation of
UML support plus an extra layer diagram will serve later to avoid improper cross-layer references in code. The newly added
Architecture Explorer allows matching architecture components easily with their respective implementation source code. It’s remarkable that our prime development tool has been consistently awarded as the
best IDE for several years now.
On that note, I’ll finish my intro by thanking my guest editor-in-chief for this occasion,
Peter Provost, Microsoft Sr. Program Manager for Visual Studio 2010 Architect Edition. Peter helped me understand the IDE landscape and its crossovers with the architect’s job, in order to select for you the most relevant information about how much Microsoft addresses those issues in Visual Studio 2010. I must extend the acknowledgement to the editorial board that helped Peter and me review the papers during the authoring phases.
We hope that you enjoy this issue. Don’t forget to review the 10-minute
videos that we’ve made as companion material. As usual, you can send us your comments at
Keeping Architectures Relevant: Using Domain-Driven Design and Emergent Architecture to Manage Complexity and Enable Change, by Brandon Satrom and Paul Rayner.
Sound advice on how to keep architecture relevant, and not forgotten, after a solution's implementation.
Evaluating Application Architecture, Quantitatively, by V. Gnanasekaran.
An explanation of ways to confirm that a given approach meets specific criteria before going to the next level.
Software Architecture in the Agile Life Cycle, by Diego Fontdevila and Martín Salías.
A set of techniques and practices for leveraging the agile approach to software architecture.
Driving Efficiency and Innovation by Consistently Managing Complexity and Change, by Samuel B. (Sam) Holcman.
A detailed description of the four pillars of holistic enterprise architecture that will help ensure success.
Multiple-Context Systems: A New Frontier in Architecture, by Charlie Alfred.
Identification and illustration of the implications and trade-offs of adaptable solutions for different deployment contexts.
UML or DSL: Which Bear Is Best?,by Len Fenster and Brooke Hamilton.
An exploration of the pros and cons of both UML and DSLs showing that they can eventually be combined.
Modeling in an Agile Context, by Alan Cameron Wills.
An illustration of how to help the architecture emerge as a consequence of an agile process, instead of a big design up front.
This issue is also available as a PDF. Download it