Component Matching Approach in Linking Business and Application Architecture

Suresh Kamath
2024-06-08
Abstract:The development of an IT strategy and ensuring that it is the best possible one for business is a key problem many organizations face. This problem is that of linking business architecture to IT architecture in general and application architecture specifically. In our earlier work we proposed Category theory as the formal language to unify the business and IT worlds with the ability to represent the concepts and relations between the two in a unified way. We used rCOS as the underlying model for the specification of interfaces, contracts, and components. The concept of pseudo-category was then utilized to represent the business and application architecture specifications and the relationships contained within. The linkages between them now can be established using the matching of the business component contracts with the application component contracts. However the matching was based on manual process and in this paper we extend the work by considering automated component matching process. The ground work for a tool to support the matching process is laid out in this paper.
Software Engineering
What problem does this paper attempt to address?
The problem this paper attempts to address is how to effectively link business architecture with application architecture, particularly at the capability level. Specifically, the paper focuses on how to determine whether existing application components can meet new business requirements or if existing components can be adapted to achieve the required functionality. This involves two main aspects: 1. **Component Matching**: Given a new contract `Ctr_new` that implements a new interface `Int_new`, find an existing component `Comp` that can satisfy this contract. 2. **Component Adaptation**: If no fully matching component is found, identify an existing component `Comp` that can achieve the required functionality through adaptive adjustments. The main goal of the paper is to develop an automated method for component matching, thereby improving the efficiency of linking business requirements with application architecture. The paper proposes a framework based on Category Theory and the rCOS model, which achieves this goal by generating and comparing component protocols. ### Main Contributions - **Problem Definition**: Clearly defines the problem of linking business architecture with application architecture and breaks it down into the sub-problems of component matching and component adaptation. - **Framework Design**: Proposes a framework based on Category Theory and the rCOS model for generating and comparing component protocols. - **Automated Matching**: Explores how to automatically generate component protocols and automates the component matching process through algorithms. - **Future Work**: Discusses how to meet business requirements by adaptively adjusting existing components when no fully matching component is available. ### Application Background The paper uses the insurance industry as an example to discuss the linking problem between business capabilities and application components in detail. Specific application scenarios include the decomposition and implementation of high-level capabilities such as product development, policy management, sales, and service. ### Methodology - **Component Definition**: Defines the basic concepts of interfaces, contracts, and components. - **Protocol Generation**: Proposes a method for generating component protocols, including provided services and required services. - **Matching Algorithm**: Designs a two-layer matching process, starting with signature matching followed by protocol matching. ### Conclusion The paper proposes a framework based on Category Theory and the rCOS model aimed at automating the linking process between business architecture and application architecture. Future work will focus on developing efficient protocol generation and matching algorithms, as well as how to meet business requirements by adaptively adjusting existing components when no fully matching component is available.