Introduction to Design Patterns in C# - Lab Software