US / UK-EMEA / Contact Ask DevelopMentor a Question800.699.1932

Guerrilla Enterprise .NET: Building Applications with WF, WCF and WIF (UK) Training

(FW1136) 5 Day Course, $3795
 
Upcoming Classes:

What You Will Learn

Course Highlights

Course Details

Dates & Locations

Learn to build robust distributed systems using Windows Communication Foundation (WCF), Windows Workflow Foundation 4 (WF4), Windows Server AppFabric and Windows Identity Foundation. Guerrilla Enterprise .NET shows you how to take these technologies and build systems that use them in combination, playing on their strengths and mitigating their weaknesses using service-oriented principles.


You'll get answers to these questions:

  • What does service orientation really mean?
  • What is REST and should I use it for my services?
  • How do I create services that are highly interoperable?
  • How can I combine the functionality of different "building block" services to create higher level functionality?
  • How does session state work in WCF? When should I use it?
  • How can I model business processes that run for hours, days, or even weeks?
  • How can I create service infrastructure that supports single sign-on
  • How can I model complex forms of identity?
  • How can I cache data in an efficient, flexible and robust way?

What You Will Learn

Course Highlights

Course Details

Dates & Locations

  • Understand the architecture of WCF
  • Write services that support internet and intranet scenarios
  • Create workflows that are robust over long-running execution
  • Understand how AppFabric Hosting enables robust and scalable workflow based services
  • Model identity with claims
  • Create asynchronous messaging applications with queues
  • Integrate WCF and WF for service composition

What You Will Learn

Course Highlights

Course Details

Dates & Locations

Day 1

Distributed Applications on the Windows Platform

Building distributed applications on Windows has changed greatly since the first introduction of the .NET framework - and in fact since Windows Communication Foundation (WCF) was released in 2006. This is an ever-changing world with new powerful frameworks and techniques becoming available regularly to simplify potentially complex problems. This course looks at the issues we have to solve in distributed systems and looks at how the technologies discussed in the course fit together to solve those problems


WCF Architecture and Contract Design

Since WCF is the main vehicle to transfer data between parts of distributed systems, this module briefly review the basic architecture of WCF itself. We'll cover the concepts of messages, services, consumers, endpoints, addresses, bindings, metadata, and behaviors. Then we'll move on to one of the most important tasks in service architecture & implementation: the contract design. Having a strict and explicit design for services, messages and data is the key to service stability, contract evolvement and interoperability. In this module you learn about the recommended ways to design contracts depending on given requirements


WCF Instancing, Concurrency and Session Management

WCF has a quite a number of options when it comes to state management, instancing and how these instances handle concurrent requests. It totally depends on the type of service you are building which of these out of the box options will make sense for you. Furthermore, WCF has a built-in throttling engine to control the load on your services as well as support for stateful services. You'll learn when which option is recommended for which situations and how this will effect scalability and throughput


WCF Error Handling

Debugging distributed applications is difficult. To facilitate the process, WCF provides various support mechanisms for managing faults, error handling and tracing. You will learn how to deal with exceptions, properly return fault messages, and even customize the error handling of the framework itself


Day 2

Workflow Architecture

There is a gap between the types of problems that business require solving and the problems developers solve with software. This gap requires the "orchestration" of the technical building blocks of software development to solve the business problem. Often this orchestration is performed on an ad-hoc basis but some parts of the business problem (for example long running business processes) require complex plumbing to solve. Windows Workflow Foundation (WF) is a framework that provides the glue to plug the business / technical mismatch and in this module we look at the main players in a workflow based solution


Workflow and Workflow Services

A Workflow is a set of coordinated units of work called activities. This set of activities is called a workflow. In this module we look at how you build a workflow and how you can flow data from one activity to another. However, in the context of distributed systems the building block activities may in fact be calls to other services and we will often want to expose the resulting composite application itself as a service. We cover the basics of building these workflow services


WF Basic Custom Activities

The workflow team has created a set of activities called the standard activity library. However, these activities are of a technical and infrastructure nature - they do not model the business problems that you have to solve. Therefore, creating your own activities is one of the most important skills that a workflow developer has and in this module we look at the core infrastructure for building your own activities including providing designer support


WF Advanced Custom Activities

There is some core plumbing required for a custom activity but there are also more advanced features that will often be required: coordinating child activities; modeling long running asynchronous tasks. In this module we look at more advanced scenarios and how you build powerful, expressive activities


Day 3

Hosting

There are a number of options for hosting your services (providing processes in which your services run). This module looks at the options for both standard and workflow services and examines the pros and cons of each. We also introduce Windows Server AppFabric, a new extension to the Windows Application Service Role that provides a robust, manageable hosting environment for your services with extended functionality for those build with WF


WF Persistence

One of the core requirements of a distributed system is resilience. If a server goes offline can we continue processing relatively unaffected? This is even more crucial then the processing is long running and stateful. In this module we look at the built in WF persistence infrastructure and how it solves, not only the problem of service resilience but also aids scalability. Along the way we will look at message correlation - a vital tool for long running service execution


Authentication, Authorization and Personalization

Most distributed systems need security features. This typically revolves around authentication and access control. WCF has a full features security subsystem covering various authentication protocols and credential types. The Windows Identity Foundation adds the concept of claims-based security on top of this groundwork. With claims you can streamline your security architecture and prepare the road to advanced security concepts like single sign-on, federation and centralized authentication services


Queuing

One of the goals of Service Orientation is that services should be autonomous. For total autonomy our services need to be able to function if other services they depend on are temporarily unavailable (for maintenance, patching and service failure). To achieve this we have to architect our service integration differently by using persistent queues to store messages during message exchanges. In this module we look at queuing theory and how you integrate it into your distributed architectures


Day 4

Routing

WCF and WF together provide a rich model for message processing. However, out-of-the-box they don't solve problems such as automated failover, multicasting and data dependent routing. Version 4.0 of WCF introduces a new component called the routing service. This is a general purpose SOAP intermediary that provides built in functionality for rich message exchange and also is highly extensible. This module shows how the routing service works and the scenarios it can be used to solve


Transactions

Transactions allow us to treat a set of interactions as a single atomic operation. In this module you will learn how to flow transactions with a WCF request and create transacted regions in workflows. However, traditional atomic transactions don't work for long running execution and so workflow also has a framework for compensation, a technique that allows us to perform manual "rollback" of already committed work. Both atomic transactions and compensation are powerful techniques but also have limitations in the context of distributed system and this module examines the technologies and challenges of transacted systems


Extended Lab

So far on the course we will have been looking at technologies in isolation to focus on specific issues or features. In this part of the course we take these technologies and show how they can be used together in a distributed system and where they would be used in a complex architecture in an extended hands on lab


Day 5

Windows Server AppFabric Caching

One of the most powerful ways of making distributed application scales is effective use of caching. There are many techniques and products available for caching however Windows now has a built in distributed cache in the form of Windows Server AppFabric Caching. Formally known as project Velocity, this is a resilient distributed cache with multiple copies of data and a simple API for both cache access and cache management. This module looks at the functionality AppFabric caching provides and how you use it in distributed applications


Building REST based services with WCF

REST is a different architectural style for building services. REST embraces HTTP as an application protocol and URIs to address resources. You will learn the fundamentals of REST as well as how to leverage WCF's web programming model to implement Rest-ful ideas in an efficient way - including serialization, content negotiation, and caching


Windows Azure AppFabric Service Bus

Complex messaging scenarios require infrastructure support. Azure AppFabric provides a component called the Service Bus that is designed to be a cloud based rendezvous point that supports message exchange patterns that are not supported by WCF out of the box - for example publish/subscribe. The service bus also allows on-premises systems to be bridged to cloud based web ones in a secure fashion that allows firewall and NAT traversal.

What You Will Learn

Course Highlights

Course Details

Dates & Locations

Upcoming Dates & Locations

There are no upcoming scheduled engagments of this course. We can schedule an on-site event at your convenience.
Ready?
Connect
Signup for our Free Newsletter!
Latest news
Twitter Feed MORE
Got an email from a developer in Holland about my Onion Architecture blog post http://t.co/Z5DTvJob Nice to have a worldwide audience! #dm
1 day ago (details)
There is something to this statement: Why Quit? Because They Have Bigger Monitors http://t.co/9FrGETG5 #dm (via @mkennedy)
2 days ago (details)
Testimonials
  • Mark Blomsma did an excellent job of making those of us less knowledgeable about the subject feel comfortable in the fast-paced environment. Matt F.