Those of you who follow our community web site (www.codeplex.com/litwarehr) must have noticed that we released two new pieces of guidance:
- LitwareHR V2.0 - an enhanced version of LitwareHR
- Multitenant Database Performance Guide
How to get the docs and bits? http://www.codeplex.com/LitwareHR/Release/ProjectReleases.aspx
What is demonstrated?
These two deliverables cover the "building" aspect of Software + Services, so we were thinking mainly on ISVs with an interest in designing and developing applications that are efficient in this world.
Designing a “back-end as a service”:
- Multi-tenancy vs. Isolation
- Application customization: metadata driven application for tenant extensions at the UI, business logic and data access layers.
- Performance and scalability of extensible, multi-tenant applications.
- Service Layer design: functional web services and meta-data web services to enable different consumption experiences (multi-head application)
- Claims based authorization
- Tenant resource provisioning
Designing “front ends” for SaaS applications:
- Designing extensible web clients
- Smart Client with tenant customization, offline operations, claims based authorization and integration with local resources (Desktop search)
Taking advantage of “Cloud Services”:
- Integration with Silverlight streaming from the UI (Web and Smart Client) and services layer (programmatic access).
Performance assessment of database extensibility methods:
- Using XML data types vs. fixed columns vs. extension tables with different loads, concurrent users and usage patterns (select vs. update vs. insert)
LitwareHR enhancements highlights:
- Platform upgrade. Updated LitwareHR v2.0 to run on Windows Sever 2008 and Microsoft Visual Studio 2008 (Beta 2). This included leveraging new technologies like Active Directory Lightweight Directory Services (ADSLDS), new management APIs and IIS7.
- Data access performance improvement. Based on the results of the Multi-Tenant Database Performance test (see below) updated LitwareHR data access code and tables design.
- Services Enhancements. Created new services leveraging Windows Communication Foundation 3.5 features to enable RSS & REST interfaces.
- Silverlight Streaming mash-up. Augmented LitwareHR services with Silverlight Streaming Services. Demonstrated in the “Submit Video Resume” feature.
- Smart Client Application. Updated the original WPF based Smart Client showing consumption of LitwareHR functional and meta-data services even with offline support
- Vista Gadget. Extended LitwareHR UX a Vista Gadgets consuming REST interfaces.
- Improved guidance deployment. Moved from the old document + readme + bunch of scripts approach to a 100% automated one, including dependencies checking and configuration.
Multi-tenant Database Performance Guide:
- Database extensibility patterns comparison: performance test results for common database extension methods: XML data types vs. Fixed columns vs. Extension tables.
- Test Tools, Scripts and Documentation. In addition to the results of our own testing, we are shipping the tools, scripts and instructions for anybody to repro this tests in their own environments and conditions.
This guide was developed in collaboration with our friends and experts from the patterns & practices team. They provided the labs and helped us design and interpret the results. So, a big thanks to Carlos Farre, performance guru there for all his help.
In the following days, I will write more details about this new release. We hope this release will be useful for you, and we'd love your feedback of course! So please let us know what you think.