Skip to main content

Domain Model based approach for "Agile" Systems


  • Basically, the imperative to go for either SOA or BPM or BRM based solutions are to keep the systems agile, responsive to the changes in the business.

  • There are multiple factors that could impact either Business Rules or Business logics like market conditions, reulatory requirements etc. To insulate the systems from the consequences of those changes, they are built to have loose coupling

  • Loose coupling is achieved through different techniques. Service enabling a system assure loose coupling for which systems are built based on SOA. Declarative business rules through BRMs or dynamic business processess through BPM systems are other available techniques.

  • Extracting out the business rules from the application logic through BRM is another technique.

  • An addition to SOA/BPM/BRM based approaches, one of the available approach that will bring “Agility” as a default capability to a system is “Domain Model” based development.

  • In the cases where behaviours of the business is subject to lot of changes, having a domain model will decrease total cost of those changes. Having all the behaviours of business (that is likely to change) encapsulated in a single part of the software (domain model) decreases the amount of time we need to perform the change because it all will be performed at one place. This will avoid duplication of business logic / business rule.

Comments

Popular posts from this blog

Lambda Architecture on Microsoft Azure

Gone are those days when Enterprises will wait for hours and days to look at the dashboards based on the old, stale data. In this fast world of BYOD, fitness gears and flooding of other devices, it is becoming super important  to derive out “actionable” information from huge volume of data / noise that is generated from these devices or any other data sources and act proactively on them  in real-time, to stay competitive.

At the same time, the need for having dashboards and other analytical capabilities based on the quality, cleansed, processed data still very much exists.

With the emergence of more data types and need to handle huge volume, shift is happening from the conventional data warehouse practice to cloud based data processing & management capabilities where high volume batch processing is possible at the optimized cost. Business scenarios demanding the need to process the data in real-time   More

SharePoint 2013 Architectural Trade-Offs

When planning for deploying SharePoint 2013 based Enterprise workloads, it should be done with the consideration / awareness of impact of various architectural decisions what we make. As SharePoint 2013 is a flexible platform providing lots of options in terms of configuration of the existing OOB features and development of custom development solutions to address specific business functional needs, care should be taken when making a particular decision and its impact on overall solution. Even though SharePoint is a matured product, the effectiveness of various business capabilities such as Enterprise Social, Enterprise Search, BI, Document Management, Web Content Management, and Enterprise Content Management that will be delivered based on it, in terms of addressing the business requirements depends on architecture planning. Effectiveness here means performance, security, up-time and other architectural qualities like Scalability, Reliability etc. more ...

Flexibility through product customization - How Secured it is ?

When providing solutions based on the multiple products, the success of the solution depends on what level of OOB features of those products helps in addressing the business / functional needs and what level of flexibility those products offers in terms of customization.

Also, how those products help in addressing business needs is very important in terms of time-to-market through:
Capabilities for seamless integration with federated business partners through adapters (like what Microsoft BizTalk, & StreamInsighthave rich set of adapters minimizing the development time), Partner ecosystem with solutions(like what partners have solutions basedon SharePoint in addressing various business requirements such as document storage, DRM / IRM, BI etc)
In addition to above mentioned factors, success depends on how the products allow developer community in extending its capabilities to address complex techno-business requirements.
While allowing the developer community for customization, it is a…