Taking off for the PDC and an eleven hour Flight :-S
I’m not a conference blogger, so no updates about sessions, and I don’t like flying, but that’s a different story…
I will be staying in the Cecil Hotel downtown LA, with some interesting reviews on tripadvisor.com… “Do Not Stay Here Under Any Circumstance.”, “Un Professional People Trying To Look Busy/Working”, “Horrible experience”. But, it’s cheap and they are more than a year old so hopefully the hotel improved or the writers had a bad day… anyway, it’s warm and sunny in LA.
I will be at http://pdc08.partywithpalermo.com/ Sunday evening and when that party takes to long, I still can watch the keynotes in bed –> Watch PDC08 Keynotes Online [probably I’m awake at 4 with a 10 hour jetlag… no need to arrange a wake-up-call]
Oslo’s place in the modeling world…
A lot of news-sites published yesterday an article around Oslo … probably there was a journalist event in Redmond ;-)
A short summary:
- Codename ‘D’ is rename to ‘M’ --- creating textual DSL’s. [inside Visual Studio]
- There is a Software Modeling Tool called ‘Quadrant’ --- author models visually [outside Visual Studio].
- The models can be executed directly on the platform --- work with multiple runtimes.
- Model repository, model transformation --- [SQL Server]
- Not in place yet models for ‘non-functional requirements’ like security, performance, operations, etc etc.
The modeling world – Models in the Application Lifecycle
I often use these images [below] to organize the discussion that is going on in the modeling-world according to UML vs DSL. It gives some direction where we are talking about when discussing ‘Modeling in the Application Lifecycle’.
Models in the Application Lifecycle - A brief explanation…
Application Lifecycle Management is about the whole spectrum of software development, the processes that are used, the people who use it, make and maintain the applications and about the tools and technology that are used during the complete lifecycle. Application Lifecycle Management is not only about software development and a grown-up development environment but also about business, operations and the connection between these domains.
The models used to define the problem should be independent from any technology, you can re-use them with other technology and on different platforms. Models in the solution domain describe how the problem is solved, so when those are technology / implementation independent you can re-use them with other technologies, for example generate C# or Java and WCF or ASMX. Together with technology independent these should also be platform independent so the effort to create these solution models can be used on different platforms and the models or code can be executed on different platforms [runtimes].
- Problem Domain: Business specific – technology /platform independent.
- Solution Domain: Solution specific – implementation / platform independent [is this true? not always]
- Runtime Domain: Platform specific
The Modeling-World and Oslo.
It's a very simple overview and not complete but gives a nice view of the different modeling approaches available at this moment .
Domain Specific Languages [business, vertical, external]
A language used by the business / domain experts to describe their ‘problems’ [needs], the models can be used to generate code or can be executed on the platform.
Can be done with dedicated DSL Tools, like MetaEdit and the Microsoft DSL tools or with UML the MDA way [UML as DSL with Profiles].
At Sogeti we made several DSL’s like this [with the Microsoft DSL tools].
MetaCase does a great job in this modeling segment.
Haven’t got any experience with tools who use model execution [Google give some result]. Would Oslo fit in this approach with model execution? I think at this moment and when I read all the articles according to Oslo I would say it better fits the next modeling approach [vertical, internal DSL].
Domain Specific Language [technical, horizontal, internal]
A language used by developers / architects / designers to model the solution domain.
There are already a lot of languages in place in this segment. Not all of them are technology independent [most of them only make the use of a specific framework easier]
Examples: WSSF ME, Regular expressions, SQL, WF, DFO, WiX… and many more
Example with model execution: OSLO
Unified Modeling Language
As I call it ‘plain old UML modeling’… UML diagrams like Use Case and activity Diagrams are used during defining the business domain.
Solution design is done with UML component diagrams and/or Sequence diagrams.
The red arrow is a kind of validation of the solution design, replay the scenarios described in the problem design [use case realizations]…
Other UML models, like class- and sequence diagrams are used to model the implementation domain. technology independent but implementation specific.
Tools Examples: Visio, EA… some have a kind of code-generation.
Hybrid UML–Internal DSL Approach
UML –> model business domain / capture requirements and ‘high level’ design -- ‘design’ validation with scenarios. [the same as the previous approach]
Implementation design with many different internal DSL’s and / or model transformation from solution design to implementation design with model transformation / connection
Top Red line: Runtime validation with testcase generation from the business domain models. [<—I like this one]
Example: Rosario Team Architect, although not everything is in place [Yet?!]… to realize this.
You can add OSLO as an example to this modeling approach, VS2010 is part of the OSLO ideas and with Oslo’s model repository and TA’s Designer Bus you get an interesting combination or overlap?
‘Blueprints’: because the new factory imitative gives the use of small specific ‘internal’ languages a mature infrastructure, although I'm curious how this is going to work with the model repository and the designer bus...
You could add an other one a hybrid External DSL – UML approach, but haven't seen that one and can’t find examples.
Steve Cook just wrote an interesting post “UML and DSL” what could give the modeling space an other approach or view.
To resolve these issues long-term I think we need a new architecture for modelling languages in which the false distinction between UML and DSLs would evaporate. Widely used languages would be standardized; new languages could emerge and evolve; different languages could be loosely-coupled yet interoperate.
Do I miss something? does this summary of available modeling approaches make sense?
Also interesting division are the different modeling archetypes defined by Forrester [see this webcast], I’ve added the modeling-approaches to it.
- Model Driven Development (MDD)
- Domain Specific Languages [business, vertical, external]
- Model Assisted Development (MAD)
- Domain Specific Language [technical, horizontal, internal]
- Hybrid UML -- [internal] DSL Approach
- Lightweight Visual Modeling (LVM)
- Unified Modeling Language
At this moment I would put Oslo in the MAD [funny abbreviation] section although I think it also should be in the MDD part. Anyway, haven’t read everything about Oslo and I don’t know the details.
Now we have to wait till the PDC so we can find out if it works and if the division I made is right…
10-10-2008 News Items about Oslo [also the birthday of Abel]:
Trends in Software Modeling webcast
As you can see in this post I did worked sometimes during my vacation… and one of the things I did was the recording of this webcast.
Learn more about modeling by watching the Trends in Software Modeling [wmv, download] webcast featuring Jeffrey Hammond (Forrester Research), Cameron Skinner (Microsoft, Visual Studio Team System), and Clemens Reijnen (Sogeti).
The complete story can be found on MSDN “Visual Studio Team System 2010 Overview”…
The recording wasn’t with any stress for me, My cell phone didn't had a network connection on the only location with internet access … arrrghhhh so, finally I used the old fashioned phone on the picture, with the result that the quality isn’t that great.
Jeffery Hammond just published a paper up on Microsoft, OMG, and the UML: http://tinyurl.com/4gnow2 … interesting reading.
Visual Studio 2010 [formerly known as Rosario] Video’s
A lot of video’s on Channel 9 about VS2010 and a nice thing… they us the newest bits for it. So, watching them give a nice insight in where Rosario is going.
Architecture Day (Tuesday, September 30th):
- Cameron Skinner: Visual Studio Team System 2010 – Architecture
- "Top-down" design with Visual Studio Team System 2010
This one is really nice, Mark guides the viewer to the creation of the demo project ‘DinnerNow’ with the us of the UML diagrams. As you can see there is a new Model Explorer [upper left corner] and what you don’t see there is also a model project type added to Visual Studio… and a lot more new things.
Drag and Drop from the model explorer..! and a lot more connections between the diagrams.
Two months ago I made a video demo how we are using Team Architect UML for a real live project [for internal use]. I just uploaded it to YouTube, so you can see the difference between a demo project [Dinnernow] and a real life project… not that much difference :-)
- "Bottom-up" Design with Visual Studio Team System 2010 Architect
A nice new feature in the sequence diagram…
and an example of the layered diagram
with validation enabled in the build process…
The last one about Team Architect: ARCast.TV - Peter Provost on what’s coming for Architects in Visual Studio Team System
The other video’s about VSTS2010 below [haven’t watched everything yet, still busy with my vacation photo’s]
Business Alignment (Wednesday, October 1st):
- Achieving Business Alignment with Visual Studio Team System 2010
- Agile Planning Templates in Visual Studio Team System 2010
- Enterprise Project Management with Visual Studio Team System 2010
- Requirements Management and Traceability with Visual Studio Team System 2010
Software Quality (Thursday, October 2nd):
- Better Software Quality with Visual Studio Team System 2010
- Manual Testing with Visual Studio Team System 2010
- Historical Debugger and Test Impact Analysis in Visual Studio Team System 2010
Team Foundation Server (Friday, October 3rd):
- Brian Harry: Team Foundation Server 2010
- Branching and Merging Visualization with Team Foundation Server 2010
- Enterprise Team Foundation Server Management with Mario Rodriguez
- Team Foundation Server 2010 Setup and Administration
- An early look at Team Foundation Build 2010 with Jim Lamb
- A first look at Visual Studio Team System Web Access 2010
- Update on Team Foundation Server Migration and Synchronization
IASA Free Virtual Event - Global Certification Summit
Next Event: "Global Certification Summit - Meet the Leaders" - A Virtual Meeting
Date: Oct 9th, 2008 - 9am-10:30pm CST (GMT-6)
Architects love to talk about certification. What certifications they need and what certifications they want. But mostly they like to know exactly what certifications are available and how they relate to their career. They want to know what certification is based on, where it came from, who it is for, and how much it costs. They are interested in whether it tests experience, knowledge or both.
Well now you can find out about the top certifications in the industry straight from the providers. The IASA is proud to be hosting the first Global Certification Summit with leaders from the Microsoft Certified Architect program, the IT Architect Certification program from The Open Group, the Business Architect Certification from the BAA and our very own IASA board certified architect program.
Due to the historic nature of having all of these thought leaders available online, we are inviting all of IASA (not just the Global Chapter) to participate.
You can register for an online event at
About the Speakers
Our speakers will include:
- Scott Anderson, Chair of the IASA Board of Education
- George Cerbone, the leader of the Microsoft Certified Architect program.
- Leonard Fehskens, VP Skills and Capabilities at The Open Group
- Mark Goetsch, President of the Business Architects Association
Moderator: Paul Preiss, President of the IASA
Other IASATM Groups:
Copyright IASA 2008