## 4 Proposed Method
### Structured Features for Allocating Interface Operations  
In SFCAD, components are identified during the component identification phase, then operations are assigned to the interfaces during the component interaction phase to define the data flow between components. The process of assigning operations to the component interfaces is performed by analyzing the data-related attributes of the structured features. This assignment occurs between component \(c_{P}\), with a provided interface representing the methods or functionalities offered to the outside, and component \(c_{R}\), with a required interface representing the methods or functionalities that the component needs from the outside to operate correctly.  
1. **Check whether the data inputs and outputs match between component pairs.** The following equation determines whether the Input Data (ID) and Output Data (OD) of the structured features \(SF_{c_{P}}\) and \(SF_{c_{R}}\) mapped to components \(c_{P}\) and \(c_{R}\) in the component architecture \(C_{i}\) match. In case of a match, data exchange occurs between the two components.  
\[OD(SF_{c_{P}})==ID(SF_{c_{R}})\implies exchange(c_{P},c_{R}) \tag{5}\]  
To assign operations related to data flow via interfaces between components, the ID and OD attributes of the structured features are compared. Structured features categorized by the sensor-actuator pattern either receive or output data. Based on this mechanism, data flow operations are assigned to the interfaces between the mapped components. If \(OD(SF_{c_{P}})\) and \(ID(SF_{c_{R}})\) match, this signifies a data exchange between the two components.
2. **Operation Allocation.**The function that sends data from \(c_{P}\) through its provided interface and receives data in \(c_{R}\) through its required interface is defined as \(exchange(c_{P},c_{R})\). This function describes the process by which the data provided by \(c_{P}\) are received by \(c_{R}\). Equation (5) is applied to line 6 of the algorithm in Algorithm 2. In order for data exchange to occur, both the sent and received data must be defined. In this case, the exchanged data are referred to as \(ProvidedData\), which are the data sent from \(c_{P}\) and received by \(c_{R}\). This function is implemented using the \(exchange(c_{P},c_{R})\) function and assigned to the interface Interface(\(c_{P},c_{R}\)) between \(c_{P}\) and \(c_{R}\).  
```
1:\(c_{P},c_{R}\)
2:An operation is assigned to the interface between \(c_{P}\) and \(c_{R}\), Updated \(M_{i}\) with interface operation's allocation information
3:\(\textbf{Function}\ exchange(c_{P},c_{R})\) :
4:\(\text{ProvidedData}=c_{P}\text{-}\text{provideData}()\)
5:\(c_{R}\).receiveData(ProvidedData)
6:if\(OD(SF_{c_{P}})==ID(SF_{c_{R}})\)then
7:\(\text{Interface}(c_{P},c_{R})\xrightarrow{allocate}exchange(c_{P},c_{R})\)
8: Put \(SF_{c_{P}}\) and \(SF_{c_{R}}\) mapping information into \(M_{i}\)
9:endif
```  
**Algorithm 2**Operation allocation into Interface between \(c_{P}\) and \(c_{R}\)  
Operations can be assigned to the interfaces between the components in the same manner, even for components that are re-identified during the component identification phase. Thus, the actions of structured features affect not only the components that make up the competent architecture but also the assignment of operations to the interfaces that enable data interaction between components.  
SFCAD uses the structured feature list generated via structured feature analysis to identify the initial components and allocate the necessary operations to the interfaces that connect the components. These structured features provide the foundation for the initial component architecture design during the component identification phase and contribute to the natural derivation of data flow between the components during the component interaction phase.