BASTA 2011: Workshop About Software Factories

Monday, October 24, 2011 by Rainer Stropek

Ok, I feel ashamed. Already more than three weeks have passed since BASTA 2011 has ended - and I did not publish my slides and samples yet. However, today I finally found the time to write this blog post.

My BASTA week started with a full-day workshop about software factories. I covered the following topics:

  1. Introduction to software factories
  2. How to design class libraries that will be used in you software factory
    1. Scenario Driven Design
    2. Framework Design Guidelines for .NET and C#
    3. Enable domain-specific modelling using a XAML-enabled class library
    4. Using StyleCop and Visual Studio Code Analysis for automated code quality assurance
  3. Visual Studio Extensibility (especially VS Templates)
  4. T4 Templates
    1. Compile-time
    2. Runtime
  5. Domain-specific languages (DSLs)
    1. Graphical DSLs
    2. Textual DSLs
    3. Implementing a DSL with ANTLR
  6. Managed Extensibility Framework (MEF)
  7. Scripting with Dynamic Language Runtime (DLR)
  8. Generating professional documentation with Sandcastle

In the workshop I demonstrated the use of the technologies mentioned above in a single continuous example. It enabled domain-specific modelling using XAML. The application used the model to offer a WPF-based user interface that is extensible using modules (using MEF). Additionally it is scripting-enabled (Python). On the level of source-code the sample follows the framework design guidelines of Microsoft (completely StyleCop and Code Analysis warning free).

Download the slides for the workshop (German). You can also download the complete sample code that I developed during the workshop.

comments powered by Disqus

Rainer Stropek

Rainer Stropek

Co-founder, architect, developer

Bio

I am co-founder and CEO of the company software architects and have been serving this role since 2008. At software architects my team and I are developing the award-winning SaaS solution time cockpit. Previously, I founded and led IT consulting firms that worked in the area of developing software solutions based on the Microsoft technology stack.

In my work I focus on .NET development and software architecture. I have written some books and articles on C#, database development, Windows Azure, Windows 8 development, WPF, and Silverlight. Regularly I speak at conferences, do workshops and conduct trainings in Europe and the US. Since 2010 I have been MVP for Windows Azure.

I graduated the Higher Technical School Leonding (AT) for MIS with honors and hold a BSc (Hons) Computer Studies of the University of Derby (UK).

Contact

Twitter: @rstropek
Facebook
Google+
Xing
LinkedIn

Authors