4 MCU
4.1 MCU嵌入式系统领域的领域边界确定
在这里,并不是打算选择一个适合所有 MCU系统开发的领域,而是选择一个相对狭小的领域,如家电制造行业中的空调行业。在这样的行业中,由于产品要实现的基本功能在很长一段时间内基本固定,客户的需要相对稳定,使得针对同类产品的领域中,有很多的功能是相同的,软件的体系结构是相同的。这为领域分析提供了非常有利的条件。在对这些领域进行分析的时候,资料主要来源于本领域中的典型系统、领域专家的建议、工程师的经验、客户需求、硬件厂商提供的开发包、控制理论、该领域的发展历史以及发展趋势等。当收集完这些资源后也就够成了领域分析的上下文环境,也就是领域的边界。
4.2 MCU嵌入式系统领域的领域建模
领域模型的意义在于对领域的信息通过组织,以一种令人更容易接受的方式所表现出来。它包括形式化的模型和非形式化的信息,前者是一种对解决方案的描述,后者是对领域知识的补充。对于我们所选择的领域来说,一个具体行业的软件体系结构本身就是相对稳定的,对于具体的每款产品,实现的功能会有一些细小的差别。常见的情况是,当一个原型机出现后,会在原型机上进行诸多的改款,以适应市场客户不同的需要。所以针对于这样的领域特点,我们对这阶段的过程有如下的建议:
·形式化的模型:采取面向特征的领域模型。特征的定义一般来说是用户或客户可感知的系统特点。但各个组织也可以根据自身的特点来组织选择领域模型。
·领域字典:领域字典是通过和领域专家的对话,以及对相关的标准进行分析而得到。领域字典的作用是为领域的参与者提供一个准确方便的交流环境。
·统一的标识:利用一种标准化的,通用的符号系统对领域内的概念进行描述。
4.3 MCU嵌入式系统领域的软件体系结构
DSSA(特定领域的软件体系结构 )不是单个系统的表示,而是能够适应领域中多个系统的需求的一个高层次的设计。它包含构件以及构件互联的规则。当开发本领域的一个新系统时,可以使用这些构件,并且按照这些规则构成满足当前系统需求的特定的系统结构 8。在 DSSA中有个比较重要的概念就是参考体系结构,它的目的是实现体系结构的复用。图 2给出一种空调控制器领域的参考体系结构 (部分)。
图2空调控制器领域的参考体系结构(部分)
在上图中,每一个方框代表一个构件。它的下属代表对上一个构件分解而得出的子构件。由多个子构件可以构成一个规模更大的构件,这样能够支持更高效的复用。
在 DSSA中还包括有一些的需求规约,以及对接口的描述和标准。对于 MCU嵌入式系统领域,由于诸多外设的接口是存在行业标准的,所以如何让控制这些硬件的软件也能够按照一个统一的行业标准来编写是必要而且可行的解决办法。根据标准所编写的软件可以很容易地提取成构件并使用在我们的系统之中。在实践中我们发现,从以下几个方面对这种标准进行约定是可行的:
·软件的适用范围:如 MCU类型、应用方案等;
·外设的硬件特性及使用方式;
·外设控制流程的规范化:包括有算法和流程图;
·接口参数的标准化:命名规则、类型、长度等;
·一些相关的注意事项:如为适合国家法规而作的一些限制、相关安全性的要求;
5 总结
本文作者创新点: 作者通过对领域分析的概念,方法的介绍,针对 MCU嵌入式系统领域的特点,引出一种适用于 MCU嵌入式系统领域的领域分析方法。该方法已经应用到作者现阶段正在进行的项目中。通过实践已经证明这是一条可行而有着巨大潜力的道路,如何结合更多的手段去达到我们的目的将是今后工作的重点。