Search Rating of on google and bing

September 25, 2011

Here is some Search rating of my blog on Google and Bing. 


Search Rating


Reported Date: 29th  Aug 2011

Search Keywords Google Ranking MSN/Bing Ranking
software architecture .net 4.0 1st 2nd
software architecture c# 4.0 3rd  1st
software architecture WPF 4.0 10th  2nd
software architecture silverlight 4.0 1st 1st
software architecture ASP .Net 4.0 3rd 1st 
software architecture WCF 4.0 1st 1st
software architecture unity 2.0 1st 1st
software architecture MS studio 2010 1st 1st
software architecture .net presentations 5th  1st 
software architecture interview questions 5th   6th
software architecture SharePoint 2nd 2nd
Software Architecture DTO 2nd  2nd 
software architecture ADFS 5th 
Software Architecture c#  dynamic 1st 1st
c# 4.0  lazy initialization 6th 1st
software architecture   Managed Extensibility Framework 2nd  1st 
c# 4.0  Synchronized Data Structures 1st 1st
c# 4.0  Enum 5th  3rd 
c# 4.0  Memory Mapped File 7th 5th 
c# 4.0  Layout Rounding 9th  2nd 
software architecture office 365 1st  2nd 
Silverlight 4.0 COM interop API 3rd 1st 
Silverlight 4.0  Printing Option 9th  1st


Software Architecture-What is SOA?

September 11, 2011

SOA is not a implementation/programming technology or service itself.
According to wiki SOA can be defined as:

SOA is an architecture style consists of design principles and rules based on loosely coupled services used in system development and integration in computing with following characteristics:
Standardized service contract – Services adhere to a communications agreement, as defined collectively by one or more service-description documents.
Service Loose Coupling – Services maintain a relationship that minimizes dependencies and only requires that they maintain an awareness of each other.
Service abstraction – Beyond descriptions in the service contract, services hide logic from the outside world.
Service reusability – Logic is divided into services with the intention of promoting reuse.
Service autonomy – Services have control over the logic they encapsulate.
Service granularity – A design consideration to provide optimal scope and right granular level of the business functionality in a service operation.
Service statelessness – Services minimize resource consumption by deferring the management of state information when necessary
Service discoverability – Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted.
Service composability – Services are effective composition participants, regardless of the size and complexity of the composition.
Service normalization – Services are decomposed and/or consolidated to a level of normal form to minimize redundancy. In some cases, services are denormalized for specific purposes, such as performance optimization, access, and aggregation.
Service optimization – All else equal, high-quality services are generally preferable to low-quality ones.
Service relevance – Functionality is presented at a granularity recognized by the user as a meaningful service.
Service encapsulation – Many services are consolidated for use under the SOA. Often such services were not planned to be under SOA.
Service location transparency – This refers to the ability of a service consumer to invoke a service regardless of its actual location in the network. This also recognizes the discoverability property (one of the core principle of SOA) and the right of a consumer to access the service. Often, the idea of service virtualization also relates to location transparency. This is where the consumer simply calls a logical service while a suitable SOA-enabling runtime infrastructure component, commonly a service bus, maps this logical service call to a physical service.

Software Architecture-Strategy for Performance tuning a .Net application

September 10, 2011

Strategy for Performance tuning a .Net application:
There are two parts to work in terms of performance tuning.
First part, is application specific optimization which refer to things required in terms of product under development. It requires deep product knowledge and code level awareness of product.
Second part, is technology specific optimization which refer to things provide by technology as tip to improve the performance.
For second part, following is list of acts to be taken.

1. Allocate a senior resource to act as PIG in SCRUM theory for this task.
2. Analyze the technologies used in application like c#, .Net, ASP .Net, WCF, MVC, IIS. Identify set of checklist which needs attention to be verified in application.
3. First step would be to review code in application. Second step would be to apply the checklist identified in step 2.
4. Bench mark the effect of each change in application (checklist) to analyze the performance.
5. QA team member can really help in it.

Online References for implementing checklist:

C# Performance:



ASP .Net Performance:

WCF Performance:


MVC Performance: