InfoQ

Interview

   Good News: We have re-worked our video infrastructure to provide more reliable service. Please email bugs at infoq.com with any problems.

Markus Voelter about Software Architecture Documentation

Interview with Markus Voelter by Niclas Nilsson on May 05, 2008 08:48 AM

Community
Architecture
Topics
Modeling
Tags
Patterns,
UML,
Documentation,
Modeling Tool
Summary
During OOPSLA 2007, InfoQ interviewed Markus Voelter asking him about creating software architecture documentation. Many people mention UML when they are asked about software design documentation, but Markus has a different take on that. He thinks that we should be using models which can be processed with tools which can validate or invalidate them.

Bio
Markus Voelter works as an independent researcher, consultant and coach for software technology and engineering. His focus is on software architecture, model-driven software development and domain specific languages as well as on product line engineering. Markus also regularly writes (articles, patterns, books) and speaks (trainings, conferences) on those subjects.
We're sitting here at OOPSLA 2007 with Markus Voelter and we are going to discuss software architecture documentation. Markus, what do you think are the most common problems with documenting architectures today?
When people think about documenting architectures and documenting things like that, they usually think about UML, modeling tools and stuff, what's your take on that?
What format is this model's in this case? Do you visualize diagrams for the model or do you create the model from some visual tool or how do you create models?
How do you suggest in that you need to have formal models and do model driven development to document an architecture?
What are the concepts in documenting architectures? What are the typical patterns that you will use?
For architects who want to document their own thing, they will still end up in situations where they have things that are not common patterns today, that are not described. How would you recommend to get started writing their own patterns for their own, maybe, specific domain?
How would a pattern that's specific for a domain or for a project differ from patterns that you will find typically in books?
There are common ways to do architectural documentation is to write up and then the architects throw on to the developers and the developers are supposed to read it and they don't. How do you communicate your architecture to the developers?
Are there other ways of documenting architecture, more unusual ways maybe?
show all  show all

4 comments

Reply

Excellent Interview and comments about Architecture Documentation by Gustavo Andres Brey Posted May 11, 2008 4:05 PM
Very good by Gabriel Belingueres Posted May 14, 2008 4:28 AM
What is Gregory's book? by Khoa Ngo Posted May 14, 2008 7:09 AM
fantastic interview by GH Chinoy Posted May 15, 2008 9:02 AM
  1. The voice of Markus sounded pretty familiar to me, so I would assume that he is the interviewer of SE-Radio because he mentioned it during the interview :) About this topic, I totally agree with you Markus you say a lot of things that I have mind and generates a lot of discussions in my course when I teach about Software Architecture Documentation (slides in Spanish here). Nowadays we have a lot of ways/tools of communicating the architecture, blogs, wikis, webcast, podcats... and the best way depends on the context of the project, the target audience and the part of the architecture that you want to communicate. The only things that you don't mentioned and I consider extremely useful regarding communication architectures is keeping in mind that the architecture can be communicated in terms of perspectives (or view points) and each of them has to be targeted to an specific audience, so with that you can define in a high level the language (or meta-model/diagram/text) that they understand. I really enjoyed this interview, thank you very much!

  2. Back to top

    Very good

    May 14, 2008 4:28 AM by Gabriel Belingueres

    Very good interview. Many practical and down to earth suggestions.

  3. Back to top

    What is Gregory's book?

    May 14, 2008 7:09 AM by Khoa Ngo

    Can anybody let me know what exactly the title of "Gregory's book" is? Thanks.

  4. Back to top

    fantastic interview

    May 15, 2008 9:02 AM by GH Chinoy

    Such a great interview packed with useful answers. I really appreciated hearing how pattern reviews were done and the strategies to communicate and document architectures. Thank you!

Exclusive Content

Getting Started with Grails

Jason Rudolph discusses Java/Grails integration, Grails plugins, creating a Grails sample application, Grails app structure, data querying and persistence, validation, controllers and tag libraries.

Creating Product Owner Success

The Scrum Product Owner role is powerful, valuable and challenging to implement. It brings healthier relationships between customers and developers, and competitive advantage - if you do it right.

Book Excerpt and Interview: Effective Java, Second Edition

Effective Java, Second Edition by Joshua Bloch is an updated version of the classic first edition, which won a 2001 Jolt Award. InfoQ asked Bloch questions about the areas that the new edition covers.

Tapestry for Nonbelievers

A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.

Pete Lacey on REST and Web Services

In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.