关于在嵌入式软件开发中应用模型驱动开发技术的探讨

时间:2022-10-08 08:12:24

关于在嵌入式软件开发中应用模型驱动开发技术的探讨

摘要:为解决传统嵌入式软件开发中存在的制约嵌入式软件开发效率和质量的问题,提出在嵌入式软件开发中应用模型驱动开发技术,介绍了模型驱动开发技术,分析了模型驱动开发技术的优势,并探讨了在嵌入式软件开发中应用模型驱动开发技术的前景。

关键词:模型驱动开发;嵌入式软件;软件开发;软件工程;模型驱动体系架构

中图分类号:TP311.5 文献标识码:A文章编号:1007-9599 (2010) 05-0000-01

Discussion on the Application of Model-Driven Development Technology in Embedded Software Development

Dong Renfei

(China Astronautics Standards Institute,Beijing100071,China)

Abstract:In order to solve the problems that restrict the efficiency and quality of the software development in embedded software development,proposed to apply the model-driven development technique in embedded software development,introduced the model-driven development technique,analyzed the advantages of model-driven development techniques and discussed the application prospects of model-driven development technique in embedded software development.

Keywords:Model-driven development;Embedded software;Software development;Software engineering;Model driven architecture

随着现代电子技术的不断发展,嵌入式系统已经广泛渗透到我们的工作、生活中,从家用电器、手持通信设备、汽车、到信息终端、仪器仪表、航天航空、军事装备、制造工业、过程控制等,都充斥着嵌入式系统的应用。

随着嵌入式软件快速发展,传统嵌入式系统的开发手段已越来越难以满足日益增长的复杂性和质量要求。当前,嵌入式软件开发大多采用文档形式。但文档形式嵌入式软件开发存在着许多弊端:文档本身在传递过程中是不可测试的,因此在软件开发的各个阶段之间形成了沟通障碍。由于不可测试,需求的错误被逐层积累,只有系统测试时才能发现。这就产生了矛盾:大部分错误已积累形成,但只能在后面发现。因此在纠正错误时,文档架构代价高昂。

为了解决上述传统嵌入式软件开发存在的问题,提高嵌入式软件开发的开发效率、保证嵌入式软件的质量,本文探讨将模型驱动开发技术应用到嵌入式软件开发过程。

一、模型驱动开发技术

模型驱动开发(Model-Driven Development,MDD )是MDA中的一部分。MDA是模型驱动体系架构(Model-Driven Architecture)的简称,由对象管理组织(Object Management Group,OMG)所驱动。MDA表示了一种模型驱动开发方法的概念框架。然而,尽管完整的MDA还没有成为现实,但模型驱动开发现在已成为可能[1]。

软件开发一般要经历软件需求分析、软件概要设计、软件详细设计、编码实现、软件测试几个阶段。每个阶段都可以产生每个阶段的相应模型。这些产生的模型,可以在工具环境中进行调试验证,尽可能在系统开发的早期发现其中的错误,同时也可以克服采用自然语言作为文档工具出现的不准确、不科学的描述。在开发的最后阶段,考虑软硬件平台的实现,保证开发过程与软硬件平台的无关性,有利于系统的开放性和可移植性的提高。整个过程也是一个不断迭代开发的过程,这种通过可调试模型驱动的迭代方式,由于不是首先从浩瀚复杂的代码中入手,而是首先从清晰易懂的模型出发,使得系统的更新变得比较容易[2]。

二、模型驱动开发的优势

模型驱动开发的一个优点是可以消除开发过程中各参与方之间的隔阂,需求工程师,系统分析员,软件开发人员和测试者都可以使用同一种预言。他们可能专注于语言的不同部分,以满足他们的需要,但他们都会共用一些基本的结构,并对他们工作的系统有一个统一的认识。而且使用统一的语言有助于消除角色间的界限,使得在项目的不同阶段人员转换到被需要的角色更加容易。还有另外一些人需要知道项目的进展情况,包括项目领导、经理和评估委员会。更重要的是,用户也需要知道什么将会被交付,需要加入到整个开发过程中,与创建系统的不同人员进行交流。一种图形建模语言,比如统一建模语言(Unified Modeling Language,UML),使得各参与方之间的交流成为可能,帮助架起参与方与某些系统复杂功能之间的桥梁。模型驱动开发正逐渐获得公司高级管理者注意,其中的一个主要原因就是这种能够逐渐增加用户、管理层和大的组织机构参与的能力。

模型驱动开发的另一个优点是把系统和软件开发更多地纳入到系统和软件工程规则中。模型驱动开发是关于开发和维护系统的,系统并不只是由应用程序组成,还包括其他的部分,使得人们可以理解这个应用程序。一个模型可以包含明显可执行的部分,但它几乎总是还有其他部分,并不能被运行,比如需求、系统的粗略框架、分析模型。在项目开发时,所有这些都应该被创建出来并保持最新,它们对于将来的维护非常重要。

模型驱动开发可以使嵌入式软件开发过程花费更少的时间用于实现和测试阶段,更多的时间用于分析和设计阶段,当迭代重复这些过程时,会发现,这种方式的好处是实实在在的。

三、模型驱动开发在嵌入式软件开发中的应用前景

目前,模型驱动开发技术还处于新兴阶段,在嵌入式软件开发领域的发展仍然处于起步阶段。在一段时间内,传统的文档形式软件开发仍将是主流的嵌入式软件开发手段。但传统的嵌入式软件开发存在的诸多弊端决定了其必将被新的开发技术所取代,而模型驱动开发技术正是解决这些问题的有效手段。

嵌入式软件开发领域专业技术人员正在不断年轻化,他们能够更快的接受新的技术理念,积累新的技术知识。因此,他们会持续关注模型驱动开发技术的发展,并研究将模型驱动开发技术应用到嵌入式软件开发过程中的契合点。在年轻的专业技术人员逐渐占据主导地位后,必将会逐渐把积累的先进技术理念和知识应用到工程实践中去,采用模型驱动开发技术这种更合理、更有效的技术手段去保证项目开发的效率和质量。

四、结论

随着模型驱动开发技术的不断发展、完善和推广,相关模型驱动开发工具环境的不断出现,以及嵌入式软件领域的系统设计人员和开发人员对于模型驱动技术的不断深入了解,模型驱动开发技术在嵌入式软件开发中必将得到广泛应用。

参考文献:

[1]0bject Management Group.Model Driven Architecture [EB/OL]./mda,June,2003

[2]杜道山,李从心.模型驱动在数控系统开发中的应用研究.青岛大学学报(工程技术版),2005,20(3):54

作者简介:董仁飞(1983-),男,山东烟台人,硕士,主要从事嵌入式软件分析与研究,助理工程师。

上一篇:单机多媒体本地影像视频的制作与探讨 下一篇:模拟电路故障诊断方法的创新