Sign in
Richard Godfrey
Software Architecture, Engineering and Stuff
Translate This Page
Translate this page
Powered by
Microsoft® Translator
Options
Blog Home
Email Blog Author
Share this
RSS for posts
Atom
RSS for comments
Search
Tags
iprinciples
WPF
Archive
Archives
October 2007
(2)
September 2007
(1)
July 2007
(1)
May 2007
(1)
April 2007
(4)
March 2007
(7)
February 2007
(2)
November 2006
(1)
September 2006
(1)
July 2006
(2)
June 2006
(3)
May 2006
(1)
February 2006
(1)
November 2005
(2)
October 2005
(1)
September 2005
(4)
August 2005
(2)
July 2005
(1)
June 2005
(7)
January 2005
(1)
December 2004
(1)
November 2004
(2)
September 2004
(1)
August 2004
(9)
April 2004
(2)
Software Factories and Domain Specific Languages (DSL)
MSDN Blogs
>
Richard Godfrey
>
Software Factories and Domain Specific Languages (DSL)
Software Factories and Domain Specific Languages (DSL)
rgodfrey
5 Jan 2005 3:06 PM
Comments
1
Bonjour mes amis! Bonne année! (I always knew my French O level would come in handy one day :-))
Software development is a funny old business - hard to estimate, often slow to build, sometimes error prone and typically expensive. When other 'crafts' have met the same issues they have 'industrialised' to overcome these hurdles, and it's certainly not unusual for people to compare the building of software with other construction or manufacturing industries, suggesting that the 'industrial revolution' of the software industry is well overdue.
'Software Factories' is Microsoft's approach, which aims to drive a 'mass customisation' of software development. The concept relies on the good old architecture principle of raising the level of abstraction and reducing the gap between the requirements and the platform by focusing on the specifics of the problem to be solved.
Whether it's English, French, C# or UML, we have a variety of languages which help us communicate in an efficient way for the particular circumstances (or domain) we're in.
Having a vocabulary and/or schematic that is specific to the problem in hand makes the problem much easier to deal with. For example, , building a graphical UI is made a lot easier when you have a platform and toolset such as Visual Studio which exposes pre-built controls, events and so on. Conversely, without the language, platform and tool support, the problem becomes very complex indeed.
So, what if we apply this thinking to other problem spaces? What if we want to provide languages, platforms and tools that are 'domain specific' to provide focus and simplification to the problems that we want to solve?
Visual Studio 2005 takes the first steps towards Domain Specific Languages (DSLs) with its built in designers such as the 'Logical Data Centre' designer. This provides a DSL for defining the logical layout of a Data Centre which can then be used to determine if a distributed system can be deployed effectively in that environment.
This article
can give you more details as to how this works.
If you're thinking that this is a feature of the tool and so has no impact in your particular business domain, then think again. We're working to make sure that you can build your own Domain Specific Language and model your problem space in its own terms. Take a look at the results coming out of the team based in Cambridge where you will find a
link to our first community technology preview
for building your own DSLs!
Best wishes for 2005!
Au Revoir!
1 Comments
Blog - Comment List MSDN TechNet
Comments
Loading...
Leave a Comment
Name
Comment
Please add 7 and 3 and type the answer here:
Post