TY - JOUR
T1 - A case study on modularity violations in cyber-physical systems
AU - Xiao, Lu
AU - Pennock, Michael J.
AU - Cardoso, Joana L.F.P.
AU - Wang, Xiao
N1 - Publisher Copyright:
© 2020 Wiley Periodicals, Inc.
PY - 2020/5/1
Y1 - 2020/5/1
N2 - In recent years, cyber-physical systems (CPS) have been widely used in different problem domains. The hardware and software components in a CPS are deeply intertwined at various levels of abstraction under changing contexts to achieve the desired goals. One way to manage this complexity is through the use of modular architecture that enables portions of a CPS to be upgraded, replaced, or fixed in a plug-and-play manner. In practice, nominally modular architectures depart from this ideal. Thus, there is a need to identify, measure, and understand the causes of these departures. Techniques have been developed to accomplish this for pure software systems, but can these techniques be adapted to infer hardware-related modularity violations in a CPS? To investigate this question, we adapted methods from pure-software systems and analyzed two open-source CPS: OpenWrt and MD PnP. We found that the software architecture of these systems is well modularized. However, we were able to detect and measure modularity violations associated with hardware and other domain-related concepts. Furthermore, software components related to hardware were more likely to change frequently compared to general software components. Together, these findings suggest that it is feasible to identify a subset of hardware-driven modularity violations using techniques adapted from pure software systems.
AB - In recent years, cyber-physical systems (CPS) have been widely used in different problem domains. The hardware and software components in a CPS are deeply intertwined at various levels of abstraction under changing contexts to achieve the desired goals. One way to manage this complexity is through the use of modular architecture that enables portions of a CPS to be upgraded, replaced, or fixed in a plug-and-play manner. In practice, nominally modular architectures depart from this ideal. Thus, there is a need to identify, measure, and understand the causes of these departures. Techniques have been developed to accomplish this for pure software systems, but can these techniques be adapted to infer hardware-related modularity violations in a CPS? To investigate this question, we adapted methods from pure-software systems and analyzed two open-source CPS: OpenWrt and MD PnP. We found that the software architecture of these systems is well modularized. However, we were able to detect and measure modularity violations associated with hardware and other domain-related concepts. Furthermore, software components related to hardware were more likely to change frequently compared to general software components. Together, these findings suggest that it is feasible to identify a subset of hardware-driven modularity violations using techniques adapted from pure software systems.
KW - change propagation
KW - cyber-physical system
KW - modularity
UR - http://www.scopus.com/inward/record.url?scp=85081252800&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85081252800&partnerID=8YFLogxK
U2 - 10.1002/sys.21530
DO - 10.1002/sys.21530
M3 - Article
AN - SCOPUS:85081252800
SN - 1098-1241
VL - 23
SP - 338
EP - 349
JO - Systems Engineering
JF - Systems Engineering
IS - 3
ER -