Eventual ConsistencyIntroduction Eventual consistency is a consistency model used in distributed computing to achieve high availability that informally guarantees that, if no new updates are made to a given data item, eventually all accesses to that item will return the last u...﻿

Introduction Eventual consistency is a consistency model used in distributed computing to achieve high availability that informally guarantees that, if no new updates are made to a given data item, eventually all accesses to...

Characteristics of a productive development teamIn Agile Fluency article, Diana Larsen and James Shore have mentioned that Agile teams develop through four distinct stages of fluency. They have defined one star, two star, three star and four star team based on the team Agile fluency. It is an interesting...﻿

In Agile Fluency article, Diana Larsen and James Shore have mentioned that Agile teams develop through four distinct stages of fluency. They have defined one star, two star, three star and four star team based on the team Agi...

Characteristics of different levels in Richardson Maturity ModelRecently I am involved in building a Campaign Management System based on Richardson's Level 3 service definition. It's a new thing for my team and we are enjoying it. Leonard Richardson proposed a classification of RESTful web services in his talk . He ment...﻿

Modularity and Functional DecompositionOne of the challenging part of any software design is to manage complexity. By managing complexity effectively we can respond to change quickly, improve time to market, reduce cost of change and also improve stability of the system. Modularity is useful for...﻿

One of the challenging part of any software design is to manage complexity. By managing complexity effectively we can respond to change quickly, improve time to market, reduce cost of change and also improve stability of the ...

TierCompilationTierCompilation is a mix of client (C1) and server (C2) compilation. With tiered compilation, code is first compiled by the client compiler. When it becomes hot, it is recompiled by the server compiler. The goal of the TierCompilation is to get best of both...﻿

TierCompilation is a mix of client (C1) and server (C2) compilation. With tiered compilation, code is first compiled by the client compiler. When it becomes hot, it is recompiled by the server compiler. The goal of the Tier...

Microservice architectureThis year QCon 2014 London many speakers mention microservice architecture style. They talk about the problems they face with monolithic system and how they solve the problems using this type of architecture style. Martin Fowler together with James Lewis ha...﻿

Architectural Views : Context viewWhen describing the architecture of a software system it is useful to show how the system fits in the existing environment (people, systems and external entities with which it interacts). Context view helps us to do this. Context view of a system defines th...﻿

When describing the architecture of a software system it is useful to show how the system fits in the existing environment (people, systems and external entities with which it interacts). Context view helps us to do this. C...

Media TypesContracts define how different parts of a distributed system should interact and media types play an important part in contracts. A media type is a combination of formats, processing model, and hypermedia controls. We can use many standardized media type sp...﻿

What is Self Encapsulation? Martin Fowler mentioned this in his bliki : "Self Encapsulation is designing your classes so that all access to data, even from within the same class, goes through accessor methods." This is als...