嵌入式实时软件的构件化开发技术研究
2015年3月16日 16:51 作者:沙星昊 渤海大学信息学院 辽宁锦州 12沙星昊 渤海大学信息学院 辽宁锦州 121000
【文章摘要】
随着社会经济的快速发展,电子信息产品在社会经济生活中得到广泛的应用,与之相对应的嵌入式实时软件的开发活动也变得炙手可热,成为软件开发领域关注的焦点。嵌入式实时软件在当今社会经济生活中得到广泛的应用,所以在其开发技术上,应该将开发重点放在组建规范化、标准化的开发过程和技术手段上。本文从开发技术研究的角度,将嵌入式实时软件的构件化开发相关技术与现实生活中的应用联系在一起,对嵌入式实时软件的构件化开发的相关技术进行探讨与研究。
【关键词】
嵌入式;实时软件;构件化;开发技术研究
构件化软件开发是软件开发技术中一种规范化、标准化的开发模式,是将软件开发过程中各个独立的职能软件模块分类保存在数据库中,在进行软件开发时,在数据库中选择适合的软件模块,直接应用到待开发软件中去,以此到达减少软件开发周期的目的,除此之外还可以缩减开发软件的费用。构件化软件开发技术,是提高嵌入式实时软件开发效率和质量的重要途径,本文将对此进行详细说明。
1 构件化软件开发概述
1.1 构件化软件开发
构件化软件开发是将产品标准化生产理念应用于软件开发过程的一种思想, 这种思想将职能性软件视作一种可以重复利用的标准化构件,对已经设计完成的标准化构件进行分类保存,在软件开发过程中一旦需要用到这一标准化软件构件,就可以到数据库中搜索相应软件,加入到软件中去,这样可以减少开发软件的费用,减少了时间的浪费,提高了开发质量。构件化概念从软件技术发展成熟以后开始进入到软件设计领域,经过多年的发展、不断的完善,现在已经基本上形成了自己的体系,这是一种有组织的并且很完整的机制。
1.2 嵌入式实时软件构件化开发的必备条件
与传统的软件设计开发过程相比, 嵌入式实时软件的设计开发过程并没有太大的区别,但是在开发嵌入式实时软件时,要充分考虑到它自身的特点,即实时性和可扩展性,在进行软件设计时,以满足其实时性和可扩展性的需求。在众多软件中嵌入式实时软件系统是最适宜应用构件化开发技术的,因为嵌入式实时软件系统是一种微观上的软件系统,其应用的领域也主要集中在一些生产用品、生活用品中,并不需要满足传统意义上软件系统的兼容性和操作性的高要求,只需要具备容易上手、操作简单的功能就可以,这就是软件的构件化开发所具备的必需条件。
在嵌入式实时软件系统的构件化开发的过程中,必须从软件系统应用的角度出发,对实际中的相关细节进行系统、科学的设计,并进行开发和管理。在软件开发过程中,开发人员应该对软件的功能需求进行分析,并根据实际需求在软件构件数据库中搜索相关的软件构件。如果嵌入式实时软件系统的功能需求比较简单,开发人员可以直接使用软件构件数据库中的构件进行开发;如果嵌入式实时软件系统的功能需求比较复杂或难以实现,开发人员可以将软件构件库中几种软件构件进行组合来进行开发。这时会不断更新构件库,从而形成一个动态的构件库,为嵌入式软件系统可持续开发提供了更加系统、更加全面的软件构件库支持。
2 构件化的嵌入式实时软件开发
构建合理的构件化的嵌入式实时软件框架是软件系统开发的基础,通过软件框架可以充分体现出构件化软件开发方式的优势,构件化开发框架具有的易于理解、拆解、组合等特性,使得嵌入式实时软件得到广泛普及,相关开发技术水平也得到大幅度的提高。
在开发嵌入式实时软件时,理想的构件化软件框架不仅应该包括软件系统中的各个组成部分,而且还应该包括各个组成部分之间的逻辑关系。而这种逻辑关系非常的重要,如果嵌入式实时软件框架中只针对软件内容进行设计,而忽略框架内部各个部分的逻辑结构,没有对各个组成部分进行逻辑结构进行设计,在软件的开发过程中就会整个软件的逻辑关系混乱,会导致系统开发面临瘫痪的危险。因为在软件开发过程中职能软件构件会因为自身逻辑关系的问题,而不能在构件化软件设计过程中自由运用,这时就需要重新根据软件设计中所需的逻辑关系来修改软件构件的逻辑关系,这样一来,就会耗费大量的人力、物力和时间,严重影响了嵌入式实时软件构件化开发的效率,也不符合嵌入式实时软件构件化开发的特点,必然要予以解决。
CBRTSF 是目前相对成熟的完全构件化嵌入式实施软件开发系统,通过赋予构件接口优先级,维持构件黑盒特性,以实现构件重复利用;通过集中显示表示构件的交互关系,增强构件可维护性、扩展性;应用策略、机制分离思想,赋予构件分离、合成功能,增强构件灵活性。CBRTSF 软件开发系统充分展现了嵌入式实时软件的构件化开发的高效和强适应性的特点。
3 构件化嵌入式软件开发环境
软件开发环境是软件开发过程中不可或缺的支撑工具,也是开发过程中所需的最基本的工具,而嵌入式实时软件的开发更是离不开一个科学、合理的软件开发环境,在良好的开发环境支持下,嵌入式实时软件的开发过程才会更好的展现出它的优势,才可能体现出良好的扩展性、实时性,并实现兼顾功能性、可定制、可维护性的要求,设计出一种适合嵌入式实时软件开发的开发环境是至关重要的。
当前的软件开发环境多数是针对传统意义的软件系统设计需求而设计的,不能满足嵌入式实时软件系统开发的特殊需求,而正是由于当前缺少相应的开发环境,导致了嵌入式软件的构件化开发不能稳定地进行。同时嵌入式实时软件的构件化开发过程包括两方面内容:嵌入式实时软件的开发系统和庞大的构件开发系统,这是一个系统性的开发过程,所以在对嵌入式实时软件构件化开发环境进行配置时,不仅要关注嵌入式实时软件系统开发的需求,还要关注构件化开发过程的需求,并将二者有机的结合在一起,充分满足各自的运行需求,这样才可以为嵌入式实时软件的构件化开发提供一个科学、合理的开发环境。
现阶段,在嵌入式实时软件系统的构件化开发领域中,有学者提出了一种基于模块化的软件开发环境设计的思想,具体而言是在软件开发过程中设置一个模型, 在这个模型的规范下软件开发软件和被开发软件统一进行开发和被开发活动,这样一来,由于是在同一个模型规范下设计出来的,嵌入式实时软件的构件化开发活动就可以做到有机的统一,能够进行积极的信息交互,根据软件开发软件对被开发软件进行设计开发,也可以针对被开发软件的设计需求,对软件开发软件进行改造升级,让其更加适应软件开发活动。实现嵌入式实时软件构件化开发和软件设计环境的综合统一是极其重要的,不但可以使嵌入式实时软件构件化开发顺利进行,而且还能够促进嵌入式实时软件构件化开发和软件开发环境都得到十足的发展。
4 构件化软件设计技术特点及开发过程
4.1 构件化软件设计技术特点
构件化软件开发的主要优点就是可以使软件开发活动变得更加简便、易行, 减轻软件设计工作的负担,提高软件设计工作的效率,软件设计时根据软件框架将软件构件化的过程,是软件开发的重要流程,也是软件开发的主要工作之一,理想状态下的软件设计路径应该有以下两个优点:一是框架结构具有良好的扩展性;二是框架中的构件好具有很强的重用性。
嵌入式实时软件系统的构件化开发的最主要的目标是实现软件系统开发的高效,而软件系统开发的效率主要体现在053
软件开发
Software Development
电子制作
开发过程中对软件构件库中构件使用的频率,即重用率,软件开发过程中,重用率越高,构件化软件开发的效率就越高。所以基于构件化的软件开发方式发展面临的主要问题即如何在嵌入式实时软件系统开发过程中提高软件构件的重用率。AOP 是目前实现构件正交的主要途径,但其对支撑环境要求较高,AOP 支撑环境在嵌入式实时软件开发领域尚处于萌芽阶段,但AOP 仍不失为一种理想的构件软件设计技术。鉴于目前多数嵌入式实时软件开发者具有较为丰富的领域知识与设计开发能力,有学者提出以领域作为正交判断法,以领域贯穿特性作为判断法则,实现构件公共操作,以此法析出的构件层次性好,可增加构件重用机会,且具有较高的正交性,甚至可集中显示非正交关系构件,进而提高软件扩展性。
4.2 支持重用的软件过程与软件平台
软件过程在软件开发活动中担当着至关重要的角色,而在当前的软件开发环境下,还不能使构件化软件开发技术与软件过程很好的进行匹配,会出现不能很好地为构件化软件开发活动提供过程支持,或过程系统不能有效的支持构件化软件的开发活动,不能系统的满足构件化软件开发活动的需求。所以立足于构件化软件开发的具体要求,将构件化软件系统开发活动与软件开发过程进行高度的匹配,同样是构件化软件开发活动中急需要解决的一个重要问题。软件过程是软件的开发活动中一个软件开管理主体,可以有效降低软件开发风险。对于嵌入式实时软件构件化开发,一个优秀的软件过程的目标与软件开发的功能目标必须要统一,并可以针对软件的构件化开发起到指导性的作用,使得嵌入式实时软件构件化开发活动在软件过程的指导下,始终能够保持对开发风险的高度敏感,确保构件化开发过程中的安全与稳定。同时因为构件化软件开发活动自身的特点,这一软件的开发过程还必须保证有较高的普遍指导意义,因为构件化软件开发活动就是一种针对不同软件性质、软件内容的一种软件构件的数据服务主体,在其运行过程中必然要为各种各样的嵌入式实时软件提供软件构件服务,相应的软件过程也必然会面临各种各样软件设计目标的考验,所以构件化软件设计活动的软件过程,要有普遍性和特殊性相结合的特性,为构件化软件设计活动提供更加广泛、深入的安全保障。
软件开发平台是软件开发的基础, OpenPlatform 是目前较为成熟的构架化嵌入式平台,其自身有效性、可靠性较好、可以明显提高构件化软件开发活动的效率。
5 结论
随着社会经济技术的发展,嵌入式实时软件系统已经深入到社会经济发展的各个领域,产生了与人民生活水平息息相关的联系,并仍保持着极高的发展速度在社会经济各个领域快速发展,所以在嵌入式实时软件的开发活动中,始终强调较高的开发效率,而构件化开发在嵌入式实时软件开发过程中实现了较高的效率,经过实践的检验被证明是一种行之有效的软件开发形式,能够极大的提升软件开发的效率,是面向软件开发现代化、面向软件开发未来的软件开发形式。
【参考文献】
[1] 邓勇,林丹. 基于源码构件模型的嵌入式软件生成技术的研究与实现[D]. 电子科技大学,2012.
[2] 吴扬. 信息家电嵌入式软件构件化开发集成平台研究与实现[D]. 电子科技大学,2013.
[3] 陈立宏. 基于构件的嵌入式实时软件可靠性评估模型的研究与应用[D]. 电子科技大学,2014.
【作者简介】
沙星昊,出生日期:1993 年3 月27 日, 性别:男,籍贯:山东省聊城市,学历:大学本科,专业:计算机科学与技术(软件开发方向)。