于智能家电嵌入式软件的框架构件模型.pdf_第1页
于智能家电嵌入式软件的框架构件模型.pdf_第2页
于智能家电嵌入式软件的框架构件模型.pdf_第3页
于智能家电嵌入式软件的框架构件模型.pdf_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3 5 卷第5 期 2 0 0 6 年 1 0 月 电 子 科 技 大 学 学 报 J o u rn a l o f U n i v e r s i ty o f E l e c t r o n i c S c i e n c e a n d T e c h n o l o g y o f C h i n a Vo 1 3 5 No 5 Oc t 2 0 0 6 一种适用于智能家电嵌入式软件的框架构件模型 施俞行 高 峰 罗克露 梁军峰 电子 科技大学计算机科学与工程学院 成都 6 1 0 0 5 4 摘要 通过 对家电 拉制器常用M C U 体系结构 程序设计语言 常用家电 控制租序设计代码以 及外设驱动源码的 研究 制定了 一种应用于智能家电 嵌入式软件的框架构件规范 实 现了 划分和设计框架代码片 段 以 及对框架代码片 段封装的方法 所设计的模型已 成功应用于某8 6 3 项目中 关 键 词 智能家电 框架构件模型 框架构件 框架构件描述块 中图分类号T N 9 1 9 7 2文献标识码 A A F r a m e C o m p o n e n t Mo d e l A p p r o a c h f o r E m b e d d e d S o f t w a r e o f I n t e l l i g e n t H o u s e h o l d A p p l i a n c e s S H I Y u h e n g G A O F e n g L U O K e l u L I A N G J u n f e n g S c h o o l o f C o m p u t e r S c i e n c e a n d E n g in e e r i n g U n i v o f E le c tr o n S c i fr a m e c o m p o n e n t m o d e l fr a m e c o m p o n e n t fr a m e c o m p o n e n t d e s c r i b i n g b l o c k 在家电 控制器嵌入式软件的编码开发过程中 存在两个明 显的问 题 1 软件工程师编写的 程序代码 中 有大量的 可重用片段 2 由 于软件编写的随意性 某位软件工程师的 离职常常导致其编写的 程序在技 术上难以 继承和管理上难以 维护 为了缩短智能家电 产品的开发周期 提高产品质量 增强市场竞争能力 降低软件工程师的工作强度和增强技术的继承性 有必要将众多的可重用的源代码片段进行封装 生成可 重用性高的代码构件 提供给软件工程师使用 本文基于 智能家电软件构件化开发集成平台 项目的开发研究 制定了一套适合于智能家电领域的 嵌入式源码构件开发生成规范 家电控制器软件开发人员可以按照该规范向构件管理机构提交软件源代码 形成的源码构件 构件管理机构可以根据规范发布构件的概念信息及实体信息 以方便家电控制器软件开 发人员检索查询构件 此外 软件组装工具可以根据规范组合各源码构件 形成统一的面向 特定家电 整机 的嵌入式软件 为了实现构件的生成 组装以 及管理等功能 制定的规范也要分别对应这些功能来进行指 导 如何生成构件是制定规范的核心 它规范了 构件的 形式和内 容 是实现构件组装和管理的基础 通过对家电 应用程序实例的分析 以 及对构件特点的理解 1 8 本文将构件主要分为框架构件和代码构 件两大类 框架提供了大粒度的重用技术 将一个系统抽象为相对独立的框架构件 并定义了各个代码构 件间的接口 和作用关系 符合软件工程设计模块化 独立化和信息隐藏等特征 代码构件是能够实现一定 功能的代码片断 在头尾加以 标识 在框架构件中加入相适应的代码构件 可以 组成完整的程序源代码 以下主要论述框架构件规范的制定 收稿日 期 2 0 0 4 一1 0 一 0 9 基金项目 国家 8 6 3 计划资助项目 2 0 0 4 A A I Z 2 4 0 0 作者 简 介 施 俞 行 1 9 7 9 一 男 硕士 主 要从 事嵌 入 式 操作 系 统方 面的 研究 电 子 科 技 大 学 学 报第 3 5 卷 1 框架构件设计模型 1 1 框架构件模型的提出 智能家电控制器所采用的主流MC U 一般使用汇编语言或者C 语言编程 不使用具体的嵌入式操作系 统 因此 不便于采用前述的通用构件模型 本文通过对常用MC U 体系结构 程序设计语言 常用家电功 能及外设驱动源代码的研究 制定构件模型规范 实现了源代码片段的划分和设计 以及源代码片段的封 程序初始化信息 功能 I 功能2 功能扩展点i s实现功能1 插入代码构 件实 现功能1 功能 扩展点2 实现功能2 插入代码构件实 现功能2 1 图1框架构件结构图 装 家电控制器软件开发人员可以按照该规范生成框架构件 然后在框 架构件中进行代码构件组合 形成面向具体的MC U 型号和应用领域的 嵌入式软件源代码 生成框架构件划分和设计的源代码片段 基于源代码语句级 不是 一个独立的函数 虽然不能实现独立的功能 但却是一段可重用的代码 1 2 框架构件的层次模型 框架构件其实并没有具体的功能代码 只是嵌入式软件的程序结构 的描述 其结构模型如图1 所示 该模型抽象于具体的MC U 型号和解决 方案 适用于整个智能家电行业的嵌入式软件构件化 也可作为企业开 发软件的规范 为软件开发人员提供一个统一的软件开发模型 框架构 件工程师将符合该模型的框架构件上传到构件库 实现对框架构件的检 索 下载和编辑 以及代码重用 1 3 框架构件模型 1 3 1 设计原则 定义框架构件模型需要考虑的原则有 I 表达能力强 2 简单性 3 一致性和完备性 4 实用 性 5 扩展性 1 3 2 框架规范中的定义 构件定义为 框架构件 代码框架 框架构件描述块 代码框架 代码片断 E 循环结 构 顺序结构 选择结构1 中断 跳跃 空结构 功能 扩展点 框架构件描述块 戒框架构件属性描述信息 集 代码片 段 写在框架构 件中 相对固 定的 程序代码 功能 扩展点 实现根据具体功能定义的 插入点 插入点 B E G I N 复合代码片段 原子代码片段 E N D 框架构件由代码框架和框架构件描述块组成 框架构件描述块描述框架构件的基本信息 包括名称 编号 功能等 有利于框架构件的查询 检索以 及出入库管理 而代码框架实际上是主程序结构的说明 主要是主程序结构描述和由 M C U 解决方案确定的框架代码片断 以 及为可供代码构件进行插入的功能扩展 点 功能扩展点的位置由程序结构决定 用户能够根据自己的需求进行增删 功能扩展点提供的插入点用 保留 字B E G I N 和E N D 定义 与框架构件相关的 所有属性信息均存于构件描述块中 是源代码构件存在的 唯 一标识 2 框架构件的生成 2 1 框架构件的生成过程 框架构件工程师通过对源代码素材的分析 生成框架构件 在框架构件的生成过程中 框架构件工程 师必须遵循框架构件规范 如图 2 所示 在规范约束的 前提下 代码构件的生成按以 下步骤进行 1 收集 素材 提炼智能家电 控制器软件源代码中的可重用语句片段 作为构成框架构件的代码片段 2 根据本 模型的 要求 完成框架代码片 段的 封装 成为一个框架构件 3 构件提交到构件库进行统一管理 第 5 期施俞行 等 一种适用于智能 家电嵌入式软件的框架构件模型 多种类型 的MC U 图2 框架构件生成过程 2 2 框架构件的封装 本文框架构件规范中提供的框架构件描述块是一个三元组 包括构件标识信息 构件上下文环境和构 件附属信息 框架构件的制作者要为框架构件提供系统要求的所有属性描述信息 框架构件描述块各个子 块的内容如下 1 构件标识子块 构件标识子块中 标识信息气 构件I D 构件名 构件类型 其中 1 构件I D 由 构件管理子系统自 动 产生 每个框架构件具有唯一的构件I D 2 框架构件工程师为每个框架构件命名 构件名是由 字符 数 字和下划线组成的字符串 且以 字符或下划线开始 字符数至少为6 但不超过1 2 8 3 构件类型为一整 型变量 由 用户指定 0 为代码构件 1 为框架构件 2 构 件上下文信息 构件上下文信息 包括该框架构件对应的 解决方案 框架构件工程师指定框架构件面向 的 解决方案 M C U 框架构件工程师指定框架构件面向的 M C 功 编写构件语言 框架构件工程师指定框架构件面向的 语 言 如C 语言或汇编语言等 以 及编译器信息 框架构件工程师指定框架构件面向的编译器信息 此外 构件上下文信息要描述构件的软 硬件使用环境和实现依赖 3 附属信息子块 构件附属信息子块提供与构件库相关的其他性质 这些性质是构件库管理所必须的信息 包括构件的 版本号 制作者 制作日 期和修改日 期 信息在构件入库和修改的时候由 框架构件工程师作相应的录入和 修改 3 框架构件的实现模型 下面以 东芝源代码为例 M C U 型号为 T M P 8 7 C 8 4 6 实现的 解决方案为空调控制程序 在框架构件规范 指导下生成框架构件 东芝空调控制程序的基本结构在一个主函数中 另有多个针对不同功能的调用函数 主 程序不断进行轮循 当 检测到有外部控制事件发生 调用该函数进行处理 处理完成后 返回主函 数 继续进行轮循 根据以 上框架规范 生成控制程序的框架构件所需要做的工作如下 1 书写该框架构件的 代码信息 包括主程序结构和初始化时功能扩展点的 信息 程序框架代码可写成 MA I N C A L L WD T C R 定时器 C A L L L T E S T 缩时检测 比 如一小时变成一分钟 C A L L E R R O R 出错处理 J MAI N 电 子 科 技 大 学 学 报第 3 5 卷 B E GI N W D T C R 插入实 现定时功能的 代码构件 E N D B E GI N L T E S T 插入 实 现 缩时 功 能 的 代 码 构 件 E ND B E GI N E R R O R 插入实 现出 错处理的 代码构件 E ND BE GI N E N D 2 框架 构件描述块信息填写为 框架构件描述块 江X X X X X 东芝 一空调 一框架构件 1 空调 东芝T M P 8 7 C 8 4 6 东芝汇编语言 东芝编译器 该构件版本号为 X 构 件作者为 X X X X 入库时间为 X X X X 修改 情况 通过以上步骤 就可在框架规范指导下完成框架构件的生成 4 结 束 语 与传统的 构件规范相比 本文提出的 框架构件规范具有以 下特点 I 该规范基于家电 控制器常用M C U 体系结构 程序设计语言 常用家电功能及外设驱动源码研究 设计面向智能家电 嵌入式软件构件化 针 对性强 2 该规范已 经应用于某研究开发课题之中 具有可实 现性 3 该规范抽象于具体应用领域和程 序设计语言 适用于智能家电嵌入式软件构件开发 具有很强的适用性和可扩展性 I 费 玉 奎 2 l 江 峰 3 古幼鹤 1 4 9 9 4 胡 文葱 5 马 亮 6 l 肖 忠 阴徐拥军 8 谷今杰 参考文献 王志坚 构件技术 发展综述田 河海大学 学 报 i 然 科学 k 2 0 0 4 3 2 6 6 9 6 6 9 9 陈 文智 吴 朝晖 L i q u id 构件化嵌入式 操 作系 统田 计算 机工 程 2 0 0 5 3 1 4 7 7 8 7 熊 光泽 桑 楠 基于构件的 嵌入式软件仿真开发环境模型研究 J 系 统工程与电 子技术 2 0 0 4 2 6 1 0 1 4 9 5 赵 文 张 世砚 等 基于 构件技术的 应用 框架 元模型的 研究闭 软件学 报 2 0 0 4 1 5 1 1 8 孙艳春 软件 构件概念的变迁 n 计算 机科学 2 0 0 2 2 9 4 2 8 3 0 构 件 软件工 程研究 D 成 都 四 川大 学 2 0 0 5 基于 构件的 软件开 发方法 及其支 撑平台 田 软件工 程与标准 化 2 0 0 5 3 3 7 4 2 英继红 基于 构建的 软件复用技术 研究田 科学 技术与工 程 2 0 0 5 5 1 2 8 2 4 8 2 7 编辑熊思亮 一 一 一一 一一 一 一一一 一一 一一 一一一 上接第8 0 3 页 参考文献 1 K a m M Z h u Q G r a y W W O p t im a l d a t a f u s i o n o f c o r r e l a t e d lo c a l d e c i s i o n s i n m u l t ip l e s e n s o r d e t e c t i o n s y s t e m s 田 I E E E T r a n s A E S 1 9 8 8 1 8 5 Ar t i f i 9 1 6 9 2 0 2 N i l s s o n 3 罗 光 春 c i a l i n t e l l i g e n c e A n e w s y n t h e s i s 囚 北京 机械工业出 版杜 1 9 9 9 卢 显良 张 峨 等一 种基于多 传感器

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论