软件产品线架构复用 — 软件工程选择题
题目
某设备监测软件产品线服务于建筑、矿山和市政场景,三者均采用“数据接入—状态分析—告警输出”的主干架构;接入协议和告警规则因场景而异,且仅矿山产品必须在告警后调用安全联锁模块。为最大化架构复用且避免把矿山专属结构强加给其他产品,哪种设计最合适?
A. 将三种产品分别设计完整架构,再通过代码复制共享实现 B. 固化共同主干,将接入协议、告警规则设为显式变化点,并将安全联锁设计为受约束的可选架构部件 C. 将三种产品全部统一为含安全联锁的固定架构,差异仅由运行参数控制 D. 只复用数据接入部件,状态分析与告警输出均按产品重新设计