Français · Montreal, July 02, 2009 17:31 ET
 
   

Special Event

How to improve testability with a modular architecture




Date:Monday May 25, 2009
Location:Toronto Radisson Harbourfront
Salle: Rain Dance - 4th Floor


Overview:

This workshop has been designed to give you a head start in modular architecture practice with abstractions such as the “layer”. You will acquire fundamental knowledge about how to partitions into layers the concerns of the application. We will teach you the best practices regarding application architecture and modularity. We will demonstrate how to apply “top-down” as well as “test-driven” design techniques. You will learn how to correctly design the “velcro”, the visible interface of a module. In the same way, you will learn how to conceive a “fake” implementation, an efficient practice to test a module in an autonomous way. Using a real case study, students will learn how to implement a layered architecture using C# language and Microsoft .NET framework. At the end of this workshop you will understand why architects require a unit of modularity that goes beyond object.

Audience:

Software Architects, lead developers and anyone aspiring to be an architect

Prerequisite:

  • Solid understanding of object-oriented programming with C# (Student should know what an interface is, what an abstract method is, what inheritance is).
  • A minimal comprehension of Test-Driven Development (Student must understand the following paper: http://msdn.microsoft.com/en-us/library/aa730844.aspx)

Agenda for May 25th,2009
Location:Radisson Admiral Hotel - Toronto Harbourfront
249 Queen's Quay West
Toronto, ON M5J 2N5

Room: Rain Dance - 4th Floor

We start at 9:00 am and will finish at 5:00 pm

Hotel


How to increase testability with a modular architecture

Course Outline:

This workshop explains how to partitions into layers the concerns of the application using recognized practices to reduce coupling and to increase testability. Using a real case study, students will learn how to implement a layered architecture using C# and Microsoft .NET framework. We will teach you the best practices regarding application architecture and modularity:

  • Modularity: You will learn about the four attributes of a module and how it applies to layers.
  • Visible Interface: The greatest leverage in architecting is at the interfaces. Partitioning the concerns of the application requires layers with a unique role and a contract well defined. To express not only the specifications but the dynamic behavior of the contract, we will teach you how to design the “velcro”, the visible interface of a module.
  • Hidden implementation: You will learn how to efficiently implement the body of the layer, the hidden part which is not visible in other layers. We will teach you how to use “Dependency Injection” and “Service Locator” as a mediator to reduce coupling with sub-layers.
  • Autonomous Testability: Testability at the layer level without having to assemble the whole system is the most important attribute of a module. Using “test-driven” design techniques to express dynamic behavior of a layer, you will learn how “velcro” and “fake” implementation enable to efficiently test a module in an autonomous way (in a test bed).
  • Dependency Modeling: Using the upcoming Architecture Edition of Visual Studio Team System 2010, you will learn how to build models to express dependencies between layers. Using the very new “Layer” diagram, you will learn how to codify the dependencies and how to integrate them into daily build so that these constraints perpetuate across versions as an “executable” architecture specification.
At the end of this workshop you will understand why architects require a unit of modularity that goes beyond object.
Price and registration

The cost of the one-day training camp is $499.00 plus taxes.

Space is limited to 25 attendees. Register early!

6 seat left.
Last update:May 20th

Register for Modular architecture design Camp

Hotel


Hardware specification

Attendees must bring their own computers to this workshop to carry out the labs that demonstrate how to implement a layered architecture. The student’s computer must be equipped with Visual Studio 2008 (or 2005).


Instructor Bio:

 
Mario Cardinal, .Net Expertise    
Mario Cardinal is an independent senior consultant specializing in software architecture. He has almost 20 years of experience in designing large-scale information systems. He speaks regularly at international conferences, including TechEd, Agile2008, DevTeach, and others. He leads the architecture user group for the Montreal .Net Community and is the architecture track tech chair for the DevTeach Conference. Since 2004, he has hosted the Visual Studio Talk Show, a podcast about software development. For the fourth year in a row, he has received from Microsoft the Most Valuable Professional (MVP) award. Mario holds Bachelor of Computer Engineering and Master of Technology Management degrees from the Ecole Polytechnique in Montreal, Canada. He also holds the titles of Certified ScrumMaster (CSM), Microsoft Certified Technology Specialist (Team Foundation Server), and Microsoft Certified Solution Developer.






Copyright © 2003-2009, DevTeach Inc., All Rights Reserved
.NET Conference 101-383 Greber Suite 157, Gatineau, Quebec, J8T 0B2 .NET Training
Telephone: 1-866-913-0430 Fax: 1-819 205-1422 Email: Info4You@devteach.com