




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于的嵌入式软件开发嵌入式软件开发 在3C融合趋势下,中国嵌入式软件市场快速发展,并受到政府的高度重视。xx年中国嵌入式软件市场规模达到1461.6亿元,xxxx年复合增长率将达27.6。 嵌入式市场巨大,但嵌入式的开发中存在很多问题,于是出现了模型驱动开发(Model DriyenDevelopment,MDD)方案。 本文笔者将主要阐述UML为什么适用于嵌入式开发的软件建模,最后提供一种可参考的基于模型的嵌入式软件开发环境。希望能够为嵌入式开发人员带来一些指导。 UML,统一建模语言 UML是用来对软件密集系统进行可视化,建模的一种语言。UML是为面向对象开发系统的产品进行说明、可视化、和编制文档的一种标准语言。 UML是非专利的第三代建模和规约语言,展现了一系列最佳工程实践,这些最佳实践在对规模较大而且复杂的系统进行建模时,尤其是在软件架构层次已被验证有效。 UML适用于数据建模、业务建模、对象建模、组件建模等。作为一种模型语言,UML使开发人员专注于建立产品的模型和结构,而不必花费很大精力在选用程序语言和算法实现上。当模型建立之后,模型可以被UML工具转化成指定的程序语言代码。 嵌入式开发 当前,嵌入式系统已在国防、航空航天、工业控制及信息家电等领域得到广。泛的应用。然而,由于嵌入式系统的硬件、软件、应用环境的千差万别,当前有限的嵌入式技术人员的时间和精力主要花在熟悉不同的硬件、软件及其代码的开发上。 这样不但造成嵌入式系统开发效率和质量得不到保证,而且严重束缚了嵌入式技术人员进行更高层次的研究与开发。这些都成为日益复杂的嵌入式系统迅速发展的瓶颈。 为何选用UML? 当前,嵌入式软件开发多采用文档形式。文档形式嵌入式系统的局限在于,文档本身在传递过程中不可被测试,因此各阶段间形成了沟通障碍。由于不可测试,需求的错误被逐层积累,只有系统测试时才能发现。这就产生了矛盾:大部分错误已积累形成,但只能在后面发现。因此,在纠正错误时,文档架构代价高昂。 这对矛盾给开发工作带来了较大障碍,极大地浪费了人力资源,据调查显示,近37的文档形式嵌入式系统项目会选择增加开发人员,56的开发项目会取消部分功能以降低系统复杂度,甚至有近18的项目可能被直接撤消。 为了解决该矛盾,需要改进开发流程、提高团队的开发效率,因此Telelogic推出MDD方案。MDD的特点在于各阶段都存在具体的模型与之相对应。 比如,在需求阶段,提供领域模型(概念模型),可以把需求以模型的方式表达出来;在架构阶段,提供系统模型,它关注系统的划分,包括大的系统怎么样划分为子系统及系统间的接口;在编程阶段,提供软件模型,它以抽象或建模的方式表达系统功能,为后续编程人员带来方便。 建模不等于直接提供完整模型,它要求分阶段的层次感,即要求后来的模型是在前面模型基础上叠加,从而保证模型与模型间、阶段与阶段间具有一致性。 相对于文档驱动开发,基于模型的开发是可验证的,它包括静态及动态检查。 静态检查是指在通讯出现故障时,系统会自动报错;动态检查是指检测系统早期行为,通过发送激励并根据需求文档去模拟功能,在动态基础上检测系统是否能完成需求规定的要素。动态检查可在系统早期去除逻辑缺陷。 基于模型的开发可定义为MDD,即在开发的各个阶段形成涵盖大部分系统活动的模型,保证阶段和阶段间的一致性。而UML非常适合用于嵌入式软件建模。 UML是极好的建模语言,UML具有很详细的语法语义,可以构建完善的系统并最终打印成文档。UML语言提供了多视角,可用于描述系统中被关注的不同事物及实现的不同行为(视角在UML语言中被称之为图)。 随着参与项目的人越来越多,产生的图也越来越多,当它们叠加在一起时即可说明一个模型。UML可在系统开发的不同阶段使用,因此UML覆盖了系统开发的全过程,从设计描述、开发到测试,均有不同的图与之对应。 不同于一般性软件开发,嵌入式软件开发有其特别之处。首先,嵌入式系统大部分属于反应式系统。只有当受到激励,系统才会产生响应。UML内含的状态机可以对该行为进行精确描述;其次,嵌入式软件往往对实时性要求苛刻,因此时序对于嵌入式系统非常重要。UML提供了众多描述时序的机制,很多图都包含时序的概念,因此可用于描述实时性要求。 另外,嵌入式软件有时要求运行在多任务环境下,而UML本身也包含多任务环境,当任务问需要交互消息时,也可通过UML发送。最后,嵌入式还要求良好的可移植性,因此要求应用的语言能对硬件进行描述,硬件描述相当于一个接口,UML语言包含各个图接口,可满足嵌入式需求。 Rhapsody:基于模型的嵌入式软件开发环境 Telelogic提供了一款基于模型的嵌入式软件开发环境Rhapsody(中文名:狂想曲)。它的设计思想是用一个平台概括或近乎概括设计的各个环节。如它可用于建模的前期分析、验证、测试或生成文档等。在该环境中客户可加入自己的C或C+代码。 Rhapsody是市场领先的嵌入式OMG系统建模语言(SysML)UML 2.1 MDD的环境。Rhapsody是唯一既满足系统工程师又满足软件开发人员需求的工具。 Rhapsody为系统工程师和软件开发人员提供遵守UMLSysML标准的产品,此产品可以为领域定义建模进行扩展,从而提供真正的协作性开发环境(大型团队和小型团队都可以高效地沟通)。 集成管理需求和跟踪需求的功能将确保设计始终满足需求。可测试性设计(DFT)功能可以在流程早期减少缺陷,并始终可以根据需求进行验证。Rhapsody通过生成完整的应用程序(而非仅仅生成代码框架)加快开发。这些技术被整合在一起且易于使用,使Rhapsody成为软件和系统工程师的理想解决方案。 与传统的文档驱动的方法相比,模型驱动开发将确保提高生产率,因为它使得用户可以使用图形来描述系统的设计和架构,并可以模拟和自动验证正在构建的系统。 通过MDD,工程师和开发人员可以生成完整、正确、明确的系统规范。通过Rhapsody对模型驱动架构(MDA)的支持,用户可以快速地将平台无关模型(PIM)定向到实时、嵌入式操作系统。 Rhapsody改进了设计方法:用户可在主机环境上重复执行和验证软件,然后直接将其转移到嵌入式目标机上进行测试。 Rhapsody的功能包括: 自动生成代码,在系统中输入状态机、模型架构或软件架构,系统即可生成C语言代码; 验证模型,可对完成的模型,一步步跟踪调试。特别之处在于:Rhapsody可令开发人员直接在图形界面进行调试,消除逻辑错误及功能性需求错误; 代码和模型的自动相关,嵌入式设计大部分用于军工、通信乃至医疗领域,因此希望能实时看到模型各部分对应的代码。 Rhapsody系统中的代码可读、可修改,修改后的代码还可进行自动更新,这对嵌入式系统非常重要。此外,Rhapsody独有的动态模型代码关联(DMC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广告管理案例评析(一)
- 2025年工业互联网平台TEE在智能工厂设备维护中的应用分析报告
- 搅拌站业务人员管理制度
- picc管维护管理制度
- 山西村集体用工管理制度
- 三级子公司工资管理制度
- 学院图书馆采编管理制度
- 2025年福建省中考道德与法治真题(解析版)
- 星级管理动态管理制度
- 为规范公司印章管理制度
- 事业单位招聘考试《工程建设管理专业知识》真题汇总及答案【含解析】
- 文献整理表格
- 初一几何综合练习题
- DBJ∕T 13-261-2017 福建省二次供水不锈钢水池(箱)应用技术规程
- GB∕T 16422.3-2022 塑料 实验室光源暴露试验方法 第3部分:荧光紫外灯
- 中国历史地理复习资料
- 05示例:玉米脱粒机的设计(含全套CAD图纸)
- 冷库项目施工组织设计方案
- 年中总结会策划方案
- (最新)污水处理池施工方案
- 肺脓肿护理查房ppt课件
评论
0/150
提交评论