## 4 Proposed Method
### Correspondence Between Components and Structured Features
#### 4.2.1 Initial Component Identification by Structured Feature  
In SFCAD, the component identification phase first identifies the initial components by applying the sensor-actuator pattern. The set of components \(C\) that makes up the component architecture is defined as \(C=\{c_{1},c_{2},\dots\}\), where each element \(c\) denotes an individual component in set \(C\). The types of components \(C_{0}\) that constitute the initial component architecture \(A_{0}\) comprise the initial sensor \(c_{sensor}\), initial actuator \(c_{actuator}\), initial controller \(c_{controller}\), and initial interface \(c_{interface}\) components, which are defined as follows:  
\[C_{0}\in\left\{c_{sensor},c_{controller},c_{actuator},c_{interface}\right\} \tag{1}\]  
* \(c_{sensor}\): InitialSensorComponent--the component that receives external input. * \(c_{controller}\): InitialControllerComponent--the component that processes logical commands. * \(c_{actuator}\): InitialActuatorComponent--the component that executes control commands. * \(c_{interface}\): InitialInterfaceComponent--the component that converts data. Each of these components is categorized based on a component architecture that follows a sensor-actuator pattern. The roles of the components are as follows: \(c_{sensor}\) receives data into the system; \(c_{controller}\) processes the received data; \(c_{actuator}\) executes the processed data; finally, \(c_{interface}\) connects the data flow among the three components and is placed between them. Structured features are mapped to the roles of initial components as follows. \[M_{0}=map(L,C_{0}) \begin{cases}c_{sensor}&\text{if }SF_{id,Action}==\text{Sensing}\\ c_{controller}&\text{if }SF_{id,Action}==\text{Control}\\ c_{actuator}&\text{if }SF_{id,Action}==\text{Actuating}\\ c_{interface}&\text{if }SF_{id,Action}==\text{Transfer}\end{cases}  \tag{2}\]  
The mapping information between the components, interfaces, and architecture features in the component architecture is represented by \(M\). Here, \(M\) is a set of pairs \(\langle SF_{id},c_{m}\rangle\) between structured features and components, or pairs \(\langle SF_{id},I_{n}\rangle\) between structured features and interfaces. In this case, the number \(id\) of SF ranges from zero to  
Figure 5: Location of the structured feature list in the component-based development process. (the number of structured features in \(L\)), \(m\) ranges from zero to \(\leq\) (number of components in \(C\)), and \(n\) ranges from zero to \(\leq\) (number of interfaces in CSA). The initial mapping information \(M_{0}\) is defined by a function \(map(L,C_{0})\). The function \(map(SF,C_{0})\) is calculated from the structured feature list \(L\) and initial set of components \(C_{0}\). The action attribute of the structured features is \(SF_{i}\) in \(L\), and can take four values that represent the actions performed by the components categorized by patterns. Based on the action attribute value, a structured feature is mapped to its corresponding initial component. If the value of \(SF_{iL_{Action}}\) is \"Sensing\", then the structured feature is mapped to the sensor component \(c_{sensor}\), as it is responsible for reading data. If the value is \"Control\", then it is mapped to the controller component \(c_{controller}\), which processes the data. If the value is \"Actauting\", then it is mapped to the actuator component \(c_{actuator}\), which executes the processed data. Finally, if the value is \"Transfer\", then it is mapped to the interface component \(c_{interface}\), which transfers data. The mapping information \(M_{0}\) can be used to provide traceability for future analyses. The method of identifying the initial components and mapping structured features establishes a connection between the initial component architecture and the requirements through the sensor-actuator pattern. The action attribute of a structured feature represents the performed action, while the unit of action corresponds to the unit of action performed by each component in the pattern.