Tracing modifications in software architecture

Vrinda Yadav loves to dig deep—if she had not taken up a PhD project with the IITB-Monash Research Academy, she could well have been part of a cybercrime detection squad!

So it comes as no surprise that her research project, sponsored by Infosys Limited, India, focuses on ‘traceability’—the ability to verify by means of documented recorded identification, what changes have been made, where, and when, to an evolving software architecture.

“Multiple such modifications are made with time to software,” explains Vrinda, “which results in several intermediate versions of the evolving architecture. This is why we need ‘traceability’, which considers architectural semantics to trace architectural modifications, architectural descriptions, and architectural decisions, over a continuing time scale.”

Vrinda’s focus is on Semantic Architectural Traceability, which can trace architectural modifications with architectural descriptions, and she is being guided by Prof Rushikesh K Joshi and Prof Chris Ling.

Figure 1: Call of traceability


Architectural traceability can be achieved in different ways. Some of these are:

  • Maintaining links between an architectural element and its related elements in past and future stages,
  • Maintaining links between design decisions and architectural descriptions, and
  • Controlling architectural modifications.

However, an overhead cost is involved in each of these approaches, for links need to be maintained across requirements, decisions, architecture, and the system.

Vrinda plans to overcome this by taking another approach based on systematically defining business processes with consideration to architecture evolution such that the decision-based informatics becomes evident.

“We are working on a new technique called Process Edification, a systematic method of modification and composition of process-based architectures. In this technique, each modification during evolution is captured by a pluggable architectural unit called edifier,” she explains. “An interesting takeaway of our technique is that backward traceability constitutes multiple traces as compared to forward traceability. A business process would actually evolve following one particular trace in forward traceability. However, we can obtain multiple consistent traces from the final process to its initial process in backward traceability as depicted in the figure below.

Figure 2: Forward traceability vs Backward Traceability


What got Vrinda interested in all this?

“Documenting and tracking architectural decisions is time-consuming and tedious. An architect has several responsibilities in an organisation, and may be occupied in different projects simultaneously. But what if he leaves the project or the company, and decisions made earlier need to be revisited? What would be the most efficient way to trace multiple decisions and multiple modifications made to the architecture in the evolution stage? It was questions like these that got me excited,” she replies.

The IITB-Monash Research Academy is a collaboration between India and Australia that endeavours to strengthen scientific relationships between the two countries, and graduate research scholars like Vrinda study for a dually-badged PhD from both IIT Bombay and Monash University, spending time at both institutions to enrich their research experience.

Says Prof Murali Sastry, CEO of the IITB-Monash Research Academy, “Software maintenance and evolution is an important facet of software engineering, and is practised by various organisations. Take the example of a mobile phone with a set of certain features being released into the market. With time, different versions of the phone are also released. Vrinda’s research can be used to ascertain an optimal set of features which would be traceable to another set in past and future versions, or the dependencies among the different features.”

The project seeks to address some fundamental questions:

  • How can software design concerns and decisions be described and modeled?
  • How can previous experiences in dealing with a design concern be used in choosing design alternatives?
  • How can design decision be translated into accurate changes to design models?

We’re confident our resident sleuth will dig deep for the answers!

Research scholar: Vrinda Yadav, IITB-Monash Research Academy

Project title: Realising design decisions and traceability thereof

Supervisors: Prof Rushikesh K Joshi and Prof Chris Ling

Contact details:

Link to Vrinda’s publication :

This story was written by Mr Krishna Warrier based on inputs from the research student, his supervisors and IITB-Monash Research Academy. Copyright IITB-Monash Research Academy.