实时软件开发方法思考

  论述了工程图学CAI软件的开发在工程图学教学内容及体系改革和教学手段现代化中 的必要性和重要性,下面是小编搜集整理的相关内容的论文,欢迎大家阅读参考。

  摘要:当今是个信息自动化的时代,软件已应用于人们生活的环境的各个方面。把面向对象的实现方法引入到实时软件系统的开发过程中具有重大的作用,可以达到反复使用,开发周期时间短、软件质量增强、开发有保障以及开发成本低等效能目的。这样就确保了实时软件的良性开发并使这种开发系统化和工程化,更使人们无论在生产方面还是学习方面都会有很大的便利并提升了生产生活的质量

  关键词:面向对象;实时软件;开发方法;软件工程

  实时系统是计算机系统中特殊的系统,输出值和系统的消耗的时间决定了这个系统的结果是否精确,即用户希望以极短的时间获取最佳最有效的运算结果。在以前实时系统主要服务于国家军事安全方面,今天随着这一系统的研发,它广泛应用我们社会生活的各个方面和各个环节,其应用范围从洗衣机、烤箱到自动化的生产线、医学辅助机械、交通运输控制、天气预报预测、航天动力工程等等。在软件开发中实时系统中的软件部分逐渐成为一个不可缺少的独立部分,贯穿于软件开发的始终。

  1.阐释实时软件的内涵

  实时软件是实时系统中的软件。当外部世界发生变化时,相应地实时系统就会对这种变化做出动作进行回应,并在规定的时间内、依靠严格的控制、最大化地获取数据来实现这一功能。特别要指出的是,这些控制是有严格规范的,这便对实时系统的应用进行了限制,只应用于它相对应的方面。另外,实时系统具有高标准的要求,主要可以体现在以下方面:其一、时间方面,必须在规定的时间内处理完突发事物,如果超过时间就会造成不可弥补的损失;其二、正确性方面,在规定的时间内对突发事物做出合理的逻辑判断和处理,这就确保了结果的正确性。同时,存在着对实时系统的实时性有一个普遍的误区,他们狭隘地臆断实时就是速度要快。以第一时间对外部情况做出反应是实时系统的一个优点,快速反应是实时性的一个要求,但是两者有着本质的区别,不可混淆概念。有时快速反应并不意味着实现了实时性。所谓的实时性是指要求圆满处理完外部相应的事物和要求必须在规定的时间内。除了具有一般软件系统的特点外,实时系统软件还具有:首先,时间限制,即实时性。要求在规定的时间内对于外部的发生的事物系统要做出反应并处理好;其次,稳定性。如果系统重启和故障恢复系统会很快复原且数据不受损;再次,多任务、并行性、分布性。实时系统可以同时同步对于外部世界或者分布较广的多个问题和任务,进行有效的处理并有效地保证处理的结果具有可靠性。而这种处理的有效性和可靠性是由系统的实时性决定的;最后,对于操作系统的底层具有开发性,实时操作系统就是实时软件应用中所使用的操作系统,要求在优先调配机制和内存锁定机制控制下,实现多任务同时同步处理。特别要注意的是,对于系统中的语言开发原则也要坚持实时性原则,选择实时性语言,以求对多个任务进行并行处理。

  2.探讨实时软件开发方法

  与普通的实时软件相比,复杂性是两者的共性,实时系统的软件还具有自己的特殊性要求,那就是时间控制的因素,这就是实时软件的结构和开发方法的优势。

  2.1实时分析技术

  以面临解决的事实问题或既定的目标为依托,全面解析实时系统的软件和硬件部分,而后对硬件和软件进行拆解,以求对设计实时软件奠定根基,这就是实时系统在分析阶段中所要完成的任务。建模和仿真技术是实时系统进行分析才应用的技术。对实时系统元素进行建模时要求分析人员必须利用好数学辅助工具,另外,把握时间长短和对资源大小进行估量是分析人员在这一过程中特别要注意的问题。根据在对数据流进行分析的基础上,分析人员要建模实时系统的硬件和软件元素,控制以概率的形式进行,这就是数学分析方法应该注意的。同时,对系统时间和资源大小如何进行评估,就要求分析人员以网络分析、序列论、图形论和数据模型等方式来推导出来。RMS理论为基础,能够分析并行的多任务的分析技术,是为了辅助RMAM的分析方法而设立的理论。判断在实时系统中在调度方面利用RMS处理并行任务是否能够满足他们的实时性的依据,那就是看有没有采用采用RMA分析技术。分析系统的性能需要使用仿真和建模工具,利用这两种工具软件工程师还能够构建一个模型,通过这样的形式,可以有效地理解系统的运作。为建立一个实时系统的概念模型需要通过系统的状态图、活动图和模块图,这就是系统的建模方法。然后在在建立的模型的基础上,分析和仿真系统的行为和执行情况,并测试系统是否具有一致性和完整性,最后,汇总在真实系统中的各种数据和特性。

  2.2实时设计和实现技术

  在给定的时间控制情况下如何完成系统的目标是实时设计阶段中主要面对的任务。处理实时软件中的优先权的选择、多任务和并行、同步和异步、时间约束等问题是设计实时软件所必须考虑的因素。通常都是通过扩展一些非实时设计方法是实时软件的设计方法所采用的手段,而基于过程的模块化的设计方法是传统的实时软件的设计方法才采用的手段。不仅可以采用自顶向下和结构化的程序设计,而且可以采用图形化的语言描述设计,还有一些运用有限状态机、Petir网、消息传递系统或一某种专门语言等是使用面向数据的设计方面向对象的实时软件开发方法所研究的基础性方法。

  2.3传统实时软件开发方法应该注意的问题

  由于实时软件的应用于各个领域,这样就使实时软件面临的问题越来越多,最终使实时软件很复杂了。在过程的设计方法上而建立的传统实时软件已不能够适应变化的新情况了。它主要存在以下问题:首先,分别对过程和数据进行处理,这样就使真实世界的实际情况失去了本来面目,更加剧了分析和设计实际世界的难度;其次,没有统一性的划分原则对采用层次化的功能模块划分系统,最为严重的是,某个别的开发人员的主观看法完全左右了对组织软件单元,系统的划分,这样就失去了客观性加剧了实时软件开发的困难;最后,由于人为的局限性使得对调度的分析和描述过程也相当的复杂。

  3.结语

  随着电子信息技术的发展,我们研究实时软件开发时,要具有勇于突破和敢于创新的斗志,在对现实情况进行分析和研究的基础上,要不断对实时软件进行改进,以达到它更好地服务于社会的目的。

  参考文献:

  [1]肖亚利.面向对象的实时软件开发方法研究[D].四川大学,2003.

  [2]沈芳平.锅炉热效率计算方法研究与软件开发[D].东南大学,2004.

实时软件开发方法思考相关推荐