炎热的夏季,当一般用户在车里调节空调温度的时候,会在意温度的高低、风速和风向,而不会在意空调设置的通信协议是CAN、MOST、还是AVCLAN,数据格式是8位还是16位。在这里,前者(温度高低、风速风向)就是是我们常说的功能需求;而后者(通信协议、数据格式)相对于单个ECU而言,就是非功能性需求的第二类——外部接口需求,它明确系统与外部软硬件、数据库的交互内容。
ISO/IEC/IEEE24765:2010(E)的第1103项词条给出了外部接口需求(external interface requirement)的定义——
a system or software requirement that specifies a hardware, software, or database element with which a system/software system or system/software component must interface, or that sets forth constraints on formats, timing, or other factors caused by such an interface
一种系统或软件要求,其中规定了系统/软件系统或系统/软件组件必须与之接口的硬件、软件或数据库元素,以及由该接口引起的格式、时间或其它因素的限制
这在需求描述中可以被称为互操作性(Interoperability),其规定了系统与其他指定应用程序或组件成功集成的程度,用于描述不同程序通过一组通用交换格式交换数据、读写相同文件格式以及使用相同协议的能力。如下的一些问题有助于明确此类需求:
这篇写的比较短,毕竟只是概念性的介绍,关于接口的需求获取、架构设计、开发实现以及测试实施,将在未来的专题里进一步扩展。