Event: BeerCityCode 2018 Workshop

Join us for BeerCityCode.com  –  June 22-23, 2018  –  Grand Rapids, MichiganBeerCityCode

Robin and Paul Schroeder will be presenting a 6 hour workshop on Rapid Delivery of Enterprise Architectures

Beware ye of dangers that lurk in “Exampleware” software! Understand how patterns and practices form an Enterprise Architecture stack that adheres to S.O.L.I.D. principles – with a twist. Use code generation techniques to do it! It is time to learn a few new tricks and up your game!

Enterprise Architecture

Beware ye of dangers that lurk in “Exampleware” software! In this workshop, the dynamic duo of Paul (aka Batman) and Robin and will walk participants through the creation of a S.O.L.I.D. software enterprise architecture using Microsoft .NET. Code generation will be demonstrated as a technique that enables instantaneous proof-of-concept development and quick iteration.

Attendees will have their choice of pursuing either a web (ASP.NET) or mobile (Xamarin) front-end.

  • Attendees that want more of a hackathon experience are encouraged to think of their own idea to develop.
  • Assistance creating initial relational database tables to use throughout the sessions is provided, as needed.
  • Those more interested in just the material and techniques are provided with an open source sample database schema to use.

Software Patterns:

Each session covers one or more common software patterns. We will explain why they are important, how to separate the concerns into layers, and how they work together.

  1. Database schema and relationships
  2. Repository pattern
  3. Mapper pattern
  4. Interfaces (Dependency injection and Mocks)
  5. Data Transfer Objects
  6. Web API (RESTful implementation)
  7. Service Provider (Data Service)
  8. Domain Models vs. Data Models

Time permitting and, depending on audience interest, one or more of the following may also be covered:

  • MVC pattern (ASP.NET / Core)
  • MVVM pattern (mobile / Xamarin)
  • OWIN pipeline
  • Security (JSON Web Tokens)

Code Generation:

Participants are provided with a free one-year trial license for the code generation tool that will be used in demonstrations, CodeGenHero. This Visual Studio extension is used to:

  1. Reverse-engineer database schema into metadata.
  2. Auto-generate code in each layer of the architecture, as it is covered.


  • Visual Studio 2017
  • Intermediate to advanced knowledge of C#
  • Local SQL Server instances (Express, Developer, etc.) are encouraged, but not required. Temporary Azure SQL DBs will be provided, as needed.

The Takeaway

Understand how patterns and practices form a software Enterprise Architecture stack that adheres to S.O.L.I.D. principles. Learn code generation techniques that dramatically improve developer productivity. This workshop helps you up your game, break the Iron Triangle, and become a hero within your own organization.