Adaptive Software – Systematically Responding to Emergent Environmental Change

Registration is free. Login or register to view/download this content.


Business Relationship Manager - Product Lifecycle Management, Chevron Corporation

This article is the first in a series of four to address the role of decisions and rules as an integral part of systems designed to adapt dynamically to changing environments. Here you will be introduced to critical elements of decision processes within Adaptive Systems,  techniques to capture and communicate them as well as concepts to apply to make that adaptation more autonomic.

A concrete example will be used to describe the techniques, although their applicability should not be considered limited to that one domain.

Impulse Buying

Most everyone has noticed the various tempting items that are strategically placed at the checkout stand in retail stores. Chocolate bars, magazines and horoscopes, displays abound with a mix of items intended to appeal to that ‘last-minute’ buying decision as shoppers wait for their turn at the till. More recently, this approach has been applied to on-line shopping as well, with a very real difference. In the physical world, displays are static, and only refreshed periodically. Effective on-line experiences are tailored as much as possible to the specific individual shopper. One of the business challenges faced by on-line retailers is how to change the mix of checkout promotional items to reflect what the specific individual shopper is most likely to add to their cart before clicking ‘submit’.

Decision Profiling

The underlying principle of increased individualization of experience is hardly limited to on-line retailing. Faced with a bewildering array of options, consumers everywhere gravitate to selections tailored to their interests. How then to accomplish this?

To begin, the Predictive-Emergent design pattern1 describes how a base set can be presented and then, extrapolating from actual experience, refines that set. The cornerstone calculation for achieving this refinement stems from the Bayesian Inference model. This model supports calculations for arriving at a probability that one hypothesis is more valid than another.

In the case of Impulse buying, the hypothesis could be that someone shopping for sneakers may be more interested in socks than gloves. The base set may be an entire catalog, or promotional subset. The emergent set is based on comparison of items viewed during a session, or even across sessions. A weaker version of this is shown on Amazon where shoppers are presented with the information that others who viewed this same item were also interested in specific other items. This is weaker inasmuch as it is not tailored uniquely to the individual or the specific site visit.

To extend our example, if the shopper had been evaluating footwear for rally racing, they may well be more responsive to a last minute presentation of racing gloves. The context is the most significant determinant of relevance.

Capturing Context

Context is difficult to express in isolation of the attributes it contains. In our example, the shoppers context may be racing accessories for some purposes or shoes for another. The attribute ‘size’ is a useful example. The racing gloves will have one meaning for the size large, socks quite another. Data modelers have long resolved this issue with product_type_size attribution. However, for purposes of decision modeling, we need to express the rules governing the logic, not the data. For this, we can use ValueGroups.

Figure 1: ValueGroup Object-Role Model

Object-Role Models2 can be generated using Visio. Their strengths and weaknesses as a modeling tool is beyond the scope of this article, however, given the accessibility of Visio as a tool for depicting design artifacts and their favorable reception during the engagement that gave rise to this example, they are not without some merit.

In the example above, an on-line retailer needed a means of depicting rules governing product descriptions to be assembled and displayed on their e-Commerce site. The model above shows that a product has colors and those colors are related to a specific value group that manages the importation of data values from an external system and maps those values to display characteristics. Value Groups contain data, meta data, rules and meta rules which taken together can provide a context for a decision.

Managing Multiple Contexts

It can be tempting to think of a context of contexts, but that quickly becomes confusing, especially when presenting combinations of data and rules to users for validation of their requirements. Accordingly, we can benefit from the work done in Aspect Oriented Programming, Analysis and Design. Using their terminology3  Aspects are the sets of concerns that can be segregated and handled as discrete groups of logic and data. One of the most difficult aspects of…aspects…is determining which of a number of valid approaches should be selected for a given context. One of the methods for capturing this in requirements is using ORM notation to capture value groups and then to associate overrides for predictable situations.

Figure 2: Setting a context for product attributes via an override hierarchy

In figure 2 you see a more elaborate object role model that shows the relationship of value groups to both general sets and a specific attribute set (colors). The introduction of both attribute overrides and an override hierarchy allow users to identify cases where particular values of a value group should be either suppressed or promoted.

To bring the discussion back to our on-line retail example, one of the attribute overrides may be price. Having identified that a particular customer, in a specific shopping session has interest in a set of promotional items, these may be presented at check out. However, where the override hierachy has been defined to include such things as frequent shopper status, the override selected may be a discount formula greater than would have been presented on the basis of product alone. All of these decision elements can be captured, expressed and validated through the requirements and design stages using this approach.

Adapt and Thrive

Organizational agility is the lofty goal of myriad IT tools and techniques. In this article, you have been introduced to the concept of designing for both the predictable and the unexpectedly emergent. Linking requirements and as-built software in ways that can be easily understood by business and technical people alike is a critical factor for success. Expressing related data and rules as concerns and aspects, resourcing those aspects with value groups and managing changes in context with overrides are all techniques that enable speedier adaptation. When used together, they can form the basis for a shared understanding across all the participants in a system, while allowing each individual to focus on their own particular sphere of concern.

Upcoming articles on Emergent Strategy, Exception Based Reporting and Implementing Decision Capabilities in Software will explore in greater depth the ideas introduced here.

Similar Resources

Featured Certificate: BPM Specialist

Everyone starts here.

You're looking for a way to improve your process improvement skills, but you're not sure where to start.

Earning your Business Process Management Specialist (BPMS) Certificate will give you the competitive advantage you need in today's world. Our courses help you deliver faster and makes projects easier.

Your skills will include building hierarchical process models, using tools to analyze and assess process performance, defining critical process metrics, using best practice principles to redesign processes, developing process improvement project plans, building a center of excellence, and establishing process governance.

The BPMS Certificate is the perfect way to show employers that you are serious about business process management. With in-depth knowledge of process improvement and management, you'll be able to take your business career to the next level.

Learn more about the BPM Specialist Certificate





  • Business Process Management Specialist
  • Earning your Business Process Management Specialist (BPMS) Certificate will provide you with a distinct competitive advantage in today’s rapidly evolving business landscape. With in-depth knowledge of process improvement and management, you’ll be able to take your business career to the next level.
  • BPM Professional Certificate
    Business Process Management Professional
  • Earning your Business Process Management Professional (BPMP) Certificate will elevate your expertise and professional standing in the field of business process management. Our BPMP Certificate is a tangible symbol of your achievement, demonstrating your in-depth knowledge of process improvement and management.


BPM Certification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Process Management Certification from the industry's top BPM educational organization.




  • Operational Excellence Specialist
  • Earning your Operational Excellence Specialist Certificate will provide you with a distinct advantage in driving organizational excellence and achieving sustainable improvements in performance.


OpEx Professional Certificate

  • Operational Excellence Professional
  • Earn your Operational Excellence Professional Certificate and gain a competitive edge in driving organizational excellence and achieving sustainable improvements in performance.



  • Agile BPM Specialist
  • Earn your Agile BPM Specialist Certificate and gain a competitive edge in driving business process management (BPM) with agile methodologies. You’ll gain a strong understanding of how to apply agile principles and concepts to business process management initiatives.  

Business Architecture



  • Business Architecture Specialist
  • The Business Architecture Specialist (BAIS) Certificate is proof that you’ve begun your business architecture journey by committing to the industry’s most meaningful and credible business architecture training program.

  • Business Architecture Professional
  • When you earn your Business Architecture Professional (BAIP) Certificate, you will be able to design and implement a governance structure for your organization, develop and optimize business processes, and manage business information effectively.

BA CertificationCertification

  • Make the most of your hard-earned skills. Earn the respect of your peers and superiors with Business Architecture Certification from the industry's top BPM educational organization.




  • Digital Transformation Specialist
  • Earning your Digital Transformation Specialist Certificate will provide you with a distinct advantage in today’s rapidly evolving business landscape. 


  • Digital Transformation Professional
  • The Digital Transformation Professional Certificate is the first program in the industry to cover all the key pillars of Digital Transformation holistically with practical recommendations and exercises.



  • Agile Business Analysis Specialist
  • Earning your Agile Business Analysis Specialist Certificate will provide you with a distinct advantage in the world of agile software development.


  • DAS Certificate
  • Decision Automation Specialist
  • Earning your Decision Automation Certificate will empower you to excel in the dynamic field of automated decision-making, where data-driven insights are pivotal to driving business innovation and efficiency.