FullArmor Corporation

David Gressett

We consider the use of AOP and PostSharp a competitive advantage.

David Gressett
Chief Architect, Product Manager
FullArmor Corporation
See how cloud services provider, FullArmor, saves code and adds functionality across
its entire suite of tools with PostSharp.

Summary

When the team at FullArmor was given the opportunity to be one of the first ISVs to work with the Windows Azure platform, pre-release, it needed to produce reliable cloud-friendly versions of its Policy, Profile, and Application management products, fast. The team chose PostSharp to build aspects to address platform stability risks and maintain instrumentation, automatically.

Organization Profile

FullArmor is a leading edge provider of security and management tools for software-as-a- service (SaaS) and cloud technologies.

Business Situation

The team was tasked with producing reliable cloud-friendly versions of its Policy, Profile, and Application management products, fast.

Solution

The team chose PostSharp because it met all of its requirements:

  • Easy to learn
  • Production-ready
  • Commercially viable
  • Works well in limited trust environments

Using PostSharp, the team started with tracing, logging, and data contract aspects to address the stability risks of the platform. FullArmor was able to instrument all of its codebase using multicast weaving in a few lines of code, and maintain instrumentation automatically as new code was added or changed.

By multicasting into different namespaces, and associating a configuration key to each trace aspect woven into the code, the team could easily turn tracing on or off dynamically, wherever it was needed, and get instant diagnostics.

FullArmor also took full advantage of code contracts years before they were supported by Microsoft in C#. The aspects were easily shared in common code between Silverlight, the cloud, or local agents. The team quickly recognized the value of using AOP, and the attribute type syntax of PostSharp aspects was as easy to understand as it was familiar, like the usage of serialization attributes.

Benefits

  • Less boilerplate code
  • Less time spent on infrastructure code
  • Code that's easier to maintain
  • Detailed tracing that turns on/off dynamically

Learn more

See David Gressett explain why he and his team chose PostSharp.


watch video interview