软件设计开发研究十篇

发布时间:2024-04-25 08:29:09

软件设计开发研究篇1

【关键字】自动化测试;atS;软件开发平台;通用测试系统

一、引言

传统的atS(automatictestSystem),即自动测试系统的软件设计方法中,要求测试人员面向测试仪器进行编程操作,测试软件则根据被测试的代码段的要求进行编程。这种软件设计方法有着层次分割不清的问题,容易将系统软件和测试软件的功能混淆,增大测试程序、测试仪器以及被测对象的关联性,严重降低了测试代码的可移植性。另外,传统的测试方法中,测试功能比较单一,由于测试代码已经被固化,因此测试功能得不到优化升级,缺乏灵活性。

目前,atS得到了飞速发展,自动测试系统的单一、专用功能正在向通用的多元化功能方向发展。但是,如何实现测试软件的通用性仍然是一个急需解决的问题。本文以通用性atS软件开发平台为研究对象,提出了通用型atS软件开发平台的框架结构和设计方法。本文设计的通用性atS软件开发平台能够有效地帮助测试人员提高维修以及测试工作,并且具有较高的推广价值。

二、通用性atS软件开发平台的结构和功能

通用性的atS软件开发平台主要的功能,是提供给用户一个通用性的测试软件开发工具,通过该软件开发平台运行测试系统的开发过程。通用性的atS软件开发平台的功能一般分为如下五类:第一类,能够对测试资源进行动态的配置和重构;第二类,能够对测试对象的硬件资源进行初始化、扫描以及初始化等功能;第三类,为测试程序提供完备的开发与调试的空间;第四类,给测试程序提供强大的数据处理功能;第五类,对系统的消息系统,例如中断、触发等等,而且还能够满足系统资源并行处理。

三、通用性atS软件开发平台的相关技术

ieee1232的标准是将atS体系结构进行层次划分的标准。通用性atS软件开发平台要求与nxtestatS的框架对接。如何实现接口标准的规范、组件技术、软件的统一开发过程以及UmL技术均是设计通用性atS软件开发平台的关键技术。另外,本文研究的通用atS软件开发平台主要是基于StD标准。基于StD标准的开发关键技术,能够利用C和C++等通用的程序设计语言开发基于信号的组件。在测试的时候,这些基于信号的组件可以进行信号操作,并且这些组件为tpS提供了可移植性能。

四、通用性atS软件开发平台的设计

本文针对基于信号组件的通用性atS软件开发平台进行研究与设计。本文给出的通用性atS软件开发平台主要由信号组件、接口框架、测试仪器信号驱动器以及资源管理器构成。其中,信号组件则作为独立的Com组件,并且Com组件作为资源管理器以及仪器信号驱动的父类组件。下面探讨了每个功能组件的功能描述。

信号组件中,每个信号组件与一种信号进行一一映射,信号的类型可以参考StD标准。具体的功能,首先是将客户程序的输入信号的信息进行存储,并储备为仪器信号驱动的调用参数。其次是能够存储测试的结果,测试的应用程序进行吊调用。

接口框架中的功能描述为,将面向信号的仪器驱动接口的方法与属性进行定义,为其他组件的调用做准备。

资源管理器中,作为应用程序与仪器驱动信号驱动的中间层次,能够利用检索仪器的XmL文件,进行仪器的查询,并且能够创建具体的仪器信号驱动程序。

作为仪器信号的驱动功能是进行测试的实现,通过对底层仪器驱动函数的封装,实现具体仪器信号测试的功能。

结束语

本文首先针对传统的atS以及当前的通用性atS进行比较,深入分析了通用性atS的优势,详细阐述了atS软件开发平台的功能与结构,对通用性atS的相关技术做了深入的探讨,最后给出了以面向信号为基础的通用测试软件开发平台的设计。该通用性atS软件开发平台具有广泛的应用范围,并且能有积极的提高测试人员的维护以及测试工作效率。

参考文献

[1]叶海明,周绍磊,王昆平.通用测试系统软件平台设计[J].国外电子测量技术.2010(02):111-113.

[2]戴豪民,牛双诚,张光轶,武恒州.面向信号自动测试系统信号组件的设计[J].现代电子技术.2012(05):224-226.

软件设计开发研究篇2

 

1概述

 

交互式多媒体软件是一中运行较为复杂的软件。它需要在多个软件和硬件平台的支撑下,才能够将文本信息、图形信息以及图像等多种形式的信息进行比较科学合理的整合,这样才能形成双向交互功能强大的软件产品。交互性是交互式多媒体软件最本质的特征,这一突出的特征具有重要作用,它能够使用户信息接收的地位改变,由原来的被动者变成主动者,用户可以控制信息的流向和速度,满足用户参与信息接收的过程,也体现了用户的主体性,用户在使用软件产品时能够得到参与互动的体验。交互式多媒体软件的另一个重要特征是非线性,是指交互式多媒体软件没有线性的约束,用户可以根据个人情况接收信息,想了解什么,先了解什么,都由用户决定,使信息获取方式更加灵活。随着交互式多媒体软件的应用范围扩大,教育教学、电子出版以及商业展示等领域也渗透了这种软件,而其中教育教学领域的交互式多媒体软件运用是最为成熟的。交互式多媒体制作的课件,交互式教学平台的运用,使得交互式多媒体软件成为了辅助教学和远程教育的重要工具。在商业展示领悟,传统的利用实物图片或者视频的方式进行产品展示,这样的画面虽然真实,但消费者无法透过图片了解产品,也无法了解产品是否符合自身需求,这样的产品展示方式已然不满足发展的需求,而交互式多媒体软件的出现,打破了这一种场面,因为利用交互式多媒体软件,用户可以根据个人意愿了解产品的细节,激发用户的购买欲望。

 

2设计

 

交互式多媒体软件的设计,美观是要考虑的因素之一,但不能只考虑美观,那样只会华而不实,更重要的界面组件与布局的设计,要能够保证交互行为顺利进行。就软件设计而言,交互的界面不应过于花哨,尽量简洁大方,不要因为美观而影响使用,带入很多不必要的干扰信息,严重的会造成界面污染。对于软件进行内容设计之前,要对产品针对的消费人群进行调查研究,这样才能使设计的内容具有很强的针对性。摄像机交互演示软件具有很多功能,一方面它能够在教育领域作为摄像机学习的虚拟器材,另一方面,一种新型的摄像机在面世之前,要进行产品展示和用户体验,这时摄像机交互演示软件就能作为展示的工具。因此,这类软件的用户主要是一些摄像机的初学者和一些想要购买准备上市的摄像机的潜在消费者。通过软件,这些用户能够对摄像机产品的结构、功能进行了解,并进行虚拟操作,因而,该软件产品设计使,不仅要有结构和功能的介绍,还要带给用户虚拟操作的体验。三维模型是交互式多媒体软件的核心,其真实性与精细的程度对软件的整体效果和软件给用户带去的体验有直接的影响。因而,在软件设计时,这一部分的精细程度是考虑重点,要保证每一个细节的完美,这样才能给用户更真实的视觉感受,满足他们的探究欲望。交互是交互式多媒体软件的重点,交互功能是设计的关键。例如在摄像机交互演示软件的设计中,重点是要让用户了解产品的结构和功能,并能够带来操作体验。具体设计有如下步骤,通过键盘移动、旋转和缩放摄像机,实现摄像机结构的全方位展示。通过鼠标移动功能,介绍摄像机部件的名称和使用的方法,让用户对摄像机部件功能有所了解。通过鼠标点击功能,不仅可以对摄像机LCD显示器或镜头盖进行打开或关闭操作,还可以对其他部件进行操作,这一功能使用户能够对摄像机进行基本的运用,使消费者能够购买到符合自身需要的商品。

 

3开发

 

3.1开发平台

 

maya是世界顶级的三维动画软件,它不仅能够提供完美的三维建模,还具有动画、特效以及渲染功能。maya主要建模方式有三种,分别是nurbs、polygon和细分建模,方便不同建模习惯的开发者。例如摄像机模型的设计,利用polygon可以保证精细程度,操作也比较简单。Virtools是三维开发的虚拟现实软件。它不需要代码编写,可以利用鼠标拖放实现交互,解决了开发软件难的问题。

 

3.2建立模型

 

摄像机拥有一个看似复杂的结构,但只要掌握它结构的特点,在建模过程中分解成小的部分,建模就会变得简单。在部件制作中,可以先做规则部件,不规则部件可由规则部件加工而成。所有部件完成后,要进行部件组合,最后组接在一起。摄像机模型建成后,还需要根据每个部件的材质特点进行属性编辑,例如机身材质为亚光塑料,镜头属玻璃材质,部件的材质特点要求的色调、亮度和反射率是不同的,因而要在属性中对应编辑。才能将部件材质特点表现出来。此外,部件纹理的添加也不能忽视。首先要导出需要贴图的部件,利用专业软件进行展UV,将得到的新物体重新放入模型取代同一物体,其次,可以确定部件的UV坐标,将坐标导入photoshop软件中,绘制物体表面特征和细节。最后,将绘制好的纹理贴图给予该物体。这样才能是材质具有纹理的效果,充分展示材质特点,赋予模型真实感和立体感。

 

3.3实现交互

 

利用软件设计好模型之后,就要实现其交互的功能。实现交互功能要运用到很多的BB,BB安装之后,我们可以利用键盘按键或者是鼠标光标对模型进行操作,通过按键实现模型的移动、旋转和缩放,缩放过程中还可以控制速度。通过将鼠标的光标移到模型的部件位置,可以查看部件的简介和使用方式,此外,还可以利用鼠标点击功能,控制LCD显示器和镜头盖的开关,安装或者卸载电池过p2卡。可见,软件设计好以后,用户就可以通过鼠标和键盘进行产品了解和虚拟操作。此外,交互式多媒体软件的有两种方式,一是以·vmo格式保存,以·html格式导出,这种方式需要安装播放插件,而且只能以网页形式使用;另一种是利用Virtoolsmakeexe插件进行格式转换,并制作成客户端,安装在计算机中即可使用。

 

4结语

 

交互式多媒体软件在各个领域的应用日益广泛,用户对软件的要求越来越高,不仅追求界面设计的个性化,还要求信息以多种方式呈现,人机之间的交互要更为艺术化。同时,交互式多媒体软件设计的理论和运用理论不断成熟,软件设计的工具也将呈现多样化趋势。总之,随着科技的发展,交互式多媒体软件也将不断完善,更能满足用户的需求。

软件设计开发研究篇3

【关键词】通用性atS软件开发平台研究设计

一、软件开发平台的结构与功能

软件开发平台旨在提供通用的测试软件开发工具,将测试系统开发过程(除硬件资源选择以外)都通过该平台进行管理。具体功能包括:功能一是可以根据需要,对测试资源动态配置和重构;功能二是具备对测试系统硬件资源进行注册、扫描、初始化等功能;第三是为测试程序提供开发、调试和运行环境;第四是为测试程序提供数据处理功能;第五是统一管理系统的触发、中断、消息等资源,还可以满足资源并行处理的需求。

二、实现atS软件开发平台的关键技术

2.1atS软件开发平台的关键技术

ieee1226aBBet标准(StandardforaBroadBaseenvironmentfortest)是通用atS体系结构划分层次结构的依据标准,通用的atS要求与nxtestatS的框架相符合。如何实现它是要面临的主要问题,接口标准规范、组件技术和统一软件开发过程及其UmL技术是开发通用atS的关键,使用这些标准和技术会带来开放的、可扩充/裁减和层次清晰的软件框架。

2.2StD标准的atS软件开发平台关键技术

在atS软件开发平台的关键技术中本文主要探讨基于StD标准的atS软件开发平台关键技术。根据StD标准,如C和C++等通用的编程语言可以用来开发基于信号的组件,与信号参数相对应的属性(与atLaS名词相同)也在组件接口的包含范围内,就像设置、重启和测量如此的方法与atLaS名词动词相似一样。在测试过程中,这些组件的例子可以用来进行信号操作。基于StD标准的信号组件,为tpS可移植性的实现提供了途径,为面向信号的开发测试程序打下坚实的基础。

三、一种面向信号的通用性的atS软件平台设计

3.1atS软件平台的静态建模

atS软件平台中只有测试信号框架层与基本信号组件层包含对象模型,而整个软件平台的信号基础是基本信号组件层,用于完成基本信号描述的功能。静态建模主要针对具体用例分析面向信号的atS软件平台的对象模型。具有可扩展性测试信号的框架层,用于描述扩展信号。因此,本文重点对基本信号组件层的对象模型进行分析。

3.2信号建模工具主功能设计

信号建模工具的主功能主要是通过二次封装VisioDrawingControl控件函数并增加自处理函数实现的。首先,用户应当能自建信号模板库。信号建模工具主要提供信号复用的基础――信号模板作为信号的静态模型描述,StD标准信号封装机制规定同一领域信号或执行同一个测试任务的信号应添加到同一个信号模板库中,所以用户应当能自建信号模板库,这是信号建模工具的一项功能。其次,信号建模工具的另一项功能就是提供图形化信号构建功能。StD标准信号构建机制要求复杂信号是由基本信号构建而成,用户可以自定义复杂信号对外接口,而且不能要求用户手工编辑信号库中信号模板,所以信号建模工具的另一项功能就是提供图形化信号构建功能。

3.3软件平台测试执行

在面向信号软件平台结构下,测试执行的流程如下:(1)信号需求要通过测试程序输入,这些信号信息包括:信号参数、信号类型、信号参数限定词、信号角色、信号最大量程、信号精度要求、信号值、信号最小量程等,在输入的信号信息存储上由信号组件完成。(2)资源配置,每台仪器的XmL(可扩展标记语言,extensiblemarkupLanguage)文件都要被资源分配器访问,将仪器信号能力与测试程序输入的信号信息相比较,所需仪器通过检索得到。(3)仪器被检索到以后,具体仪器信号驱动由资源管理器创建。(4)在仪器控制方面由仪器信号驱动器负责,测试功能完成。

四、结语

本文虽然研究分析了开发被测产品测试系统的整个过程,并提出了以面向信号为代表的通用测试软件开发平台的软件架构,最后给出了各个功能模块的具体实现方法。但在通用性atS软件开发平台方面的研究有一定的局限性,需要在今后的研究中扩大对通用性atS软件开发平台的研究设计范围。

参考文献

软件设计开发研究篇4

【关键词】计算机控制系统pC机现场设备通信软件开发

基于信息技术不断发展的背景下,为了进一步解决当前现场设备不断更新换代以及软件开发技术不断优化升级所带来的问题,就需要在实现现场通信软件开发的基础,确保软件具备良好的集成性。而针对计算机控制系统中pC机与现场通信软件的开发进行研究,则能够以统一通信接口的提供来确保计算机控制系统集成功能的有效实现,并提高现场通信软件的性能,确保其具备良好的可拓展性与可维护性。

一、计算机控制系统与现场通信软件概述

基于计算机控制系统下,opC接口标准的制定促使oLe以及Com技术在工业过程控制中实现了完善运用,而windows通信能力的不断提升,使得数据交换与共享变得方便快捷,加上现场总线在设计中逐渐融入了数字化技术,并且具备着良好的开放性,进而在计算机过程控制中实现了广泛运用。通过对三者的融入使得全新系统体系结构随之诞生,且系统的灵活性与开放性随之提升。而现场通讯软件的运用,则承担着处理通信信息的功能,在处理多种现场设备信息的同时,需要将数据格式进行转化以实现统一,并以统一数据访问接口的提供来促使信息被高度共享与充分利用。而在信息技术与通讯技术不断发展的背景下,现场设备的种类在不断增加,因此所提供的现场通信信息不仅多且复杂,因此,这就需要实现对现场通信软件的升级处理,以此来适应设备更新之需,并提高用户体验度、满足用户的实际使用之需。

二、计算机控制系统pC机与现场通信软件的开发

2.1现场设备通信软件的体系结构

基于计算机控制系统中,集成工作实现的原理是需要将控制系统进行抽象设计,以搭建出相应的层次模型,具体而言为:第一,设备层。即将现场的通信设备,以网络节点的方式与总线网络进行连接,相应功能模块的总线设备则实现对生产过程的控制;第二,数据层。主要承担着监视与控制的功能。该层次主要实现数据的采集与传输,能够实现对现场设备的有效协调,以较高的自动化控制与管理水平来满足生产之需;第三,应用层。在接收数据后进行分析整理,实现信息的集成并与网络连接,以此来确保管理决策等功能的发挥。基于通信软件下,需要确保设备层与数据层、数据层与应用层间能够实现有效的通信,进而才能够在实现对现场设备监管控制的基础上,实现对信息的高效采集分析与处理。在实际开发的过程中,需要确保现场通信软件具备良好的开放性与通用,结合实际进行设计,以简化软件构造;同时,要实现软件功能模块的搭建,在此基础上,对功能模块进行分解,形成相互独立的可复用通信控件,且提供统一的接口。

2.2现场总线与opC技术

第一,在FF现场总线的层次结构上,基于FF标准下,主要分为物理层、链路层以及应用层,在oSi标准的基础上,增加了用户层,以此形成了FF体系结构。第二,在opC技术上,借助oLe/Com技术,使用的是客户/服务器的结构形式,其中,opC逻辑对象模型总共有如下三类:一是opC服务器对象、二是opC组对象、三是opC项目对象,而各类对象有着相应的系列接口。

2.3计算机控制系统pC机与现场设备通讯软件的层次结构设计

软件设计开发研究篇5

 

计算机专业不同与其他学科,学生的实践都是在计算机上面完成的。作为老师,如何更多的、更详细的了解学生目前的学习情况?而学生,离开了课堂和老师,又该如何进行自主学习和自我测试?因此,一种具有试题阅卷和能够反馈成绩的教学软件对于教师和学生来讲,是很重要的,这种教学软件不仅方便,而且还能够让老师实时了解学生的学习情况,同时也激发了学生对学习的兴趣。

 

一、VB的概述和功能

 

VisualBasic是美国微软公司推出的通用、面向对象以及采用事件驱动的程序设计语言,Visual是指开发用户界面图形的方法,编辑其界面的时候无需编写大量代码,只需要采用搭积木的建构程序方式编写程序即可,是开发人数使用最多的编程工具之一。而Basic则是指Basic语言,它是计算机技术发展史上被广泛应用的语言。总的来讲,VisualBasic是在Basic语言原有的基础上得到了进一步的发展,其不但提供了新的数据库和web工具,还增加了SQLServer交互方法。总的来说,VisualBasic是目前最流行、使用最广泛的应用软件开发平台。另外,VisualBasic程序设计主要应用于多媒体开发、数据库开发、网络开发、图形开发等程序中。其数据访问的特性在允许对企业数据库的格式建立相应的数据库和前端应用程序的同时,还可以调整其服务端。程序员可以用VisualBasic高效、快速的开发windows编程环境下的各种应用软件系统。

 

二、VB6的集成开发环境

 

VB6与之前的VB版本不同,之前的VB所有版本的集成开发环境都是由标题栏和菜单栏组成。而VB6则不同,它是VisualStudio家族的一个组件,在保留VisualBasic5.0优点的基础上,对开发环境进行了改进,VB6的标准栏和菜单栏是由工具栏、窗体设计器、控件箱、弹出式菜单、工程管理器窗口、属性窗口、对象浏览器、工程管理器、窗体布局窗口组成。同时,VB6的数据访问技术采用了新的数据访问技术,第一,VB6增加了aDo控件和数据库可视化的工具。不但能够有效且快速的访问本地及远程的数据库,而且还允许程序员在数据环境方面,除了可以创建可视化和操作aDo之外,还可以连接其命令,这些都为程序员对数据源的操作提供了极大的方便。第二,加强了internet的功能,使internet成为当前最强有力的开发工具之一。第三,VB6在智能化向导方面也增加了新的特性。

 

三、VB开发教学软件在计算机基础操作中的应用

 

(一)界面设计与文件结构

 

界面设计分为两步,先按照软件结构图设计好控件,然后再确定控件的属性。而文件结构则是,当设计好一套试题之后就建立相应的试题目录,题目少的情况可以应文本文件储存,题目多的话则用access数据库来存储。教学软件开发工具均采用VB,一是因为VB与VC类的开发软件相比,除了更容易上手,并且开发的周期短、效率高。二是因为office软件里面的宏都是VBa,,而VBa只是VB的一个子集,如果使用VB开发的话,不但能够使两者更好地结合,并且还可以快速且有效的写出阅卷程序代码。

 

(二)开发教学软件的选题

 

当设计好教学软件的界面题目之后,才能够编写开发教学软件的功能模块代码。为了避免学生抽取的试题一样,可以将选题的按钮可以做成按钮控件数组。其次,选题因为使用了FSo复制文件、复制文件夹这两个方法,所以在对文件和文件夹进行创建、改变、移动、删除等操作,以及检测文件、文件夹的信息以及路径时,都需要用到FSo对象模型。

 

(三)实现了阅卷的功能

 

计算机教学中最常见的操作试题有windows操作题、word操作题、excel操作题以及powerpoint操作题。以windows操作题为例,没有编写过测试教学软件的老师会觉得对操作题的阅卷很困难,也不知道学生有没有对试题进行操作。其实,windows操作题的阅卷很简单,教学模拟软件有一个自动阅卷的功能,而开发软件的新建、删除、复制、剪切等操作就是用来判断学生做题的文件或者文件夹是否存在。而当学生做完测试题之后,点击“阅卷”按钮也可以得到反馈成绩,

 

四、基于VB6开发的计算机基础模拟软件考试系统

 

目前,有不少院校为了方便学生考试和老师教学,利用VB6开发系统的,模块和界面开发了计算机基础模拟软件,该模拟软件有操作题和客观题两部分。操作题的VB编程与后台的宏语言联系密切,而数据存储方面,也可以选择用VB文件系统对数据文件进行编程,VB文件系统在给数据加密的同时,也减小了系统的大小。

 

(一)基于VB6开发程序下的windows操作题及系统打包技术

 

在VB6系统的FSo对象模型下,系统中最简单的部分就是windows操作题,windows操作题通过访问FSo对象模型的方法和属性,就可以青色生成试题内容及相应的评分。而系统打包则需要使用免费开源的安装制作软件innoSetup,innoSetup的外观不但小巧、简便,并且还能够快速有效地制作出windows的标准安装界面。

 

(二)基于office对象模型开发的office操作题

 

在VB6程序设计开发系统中,所有office产品都被引入了office对象模型,并且office产品中也都装置了VBa程序代码以及宏记录器,因此,office对象模型可以利用VBa程序代码,实现对office操作题的自动评分。另外word操作题、excel操作题以及powerpoint操作题的模块代码与word的路径一直,所以,仅对word操作题的评分原理进行阐述。

 

首先,基于VB6开发的计算机基础教学模拟软件会对考生文件下的word文档进行检测,检测其是否存在,如果存在则会继续进行操作,如果不在则会退出本模块。当过程执行完之后,考生的成绩以及试题出现错误的部分都会保存到全局字符串变量中,最后由评分模块访问这个变量并显示word操作题的所以信息。

 

(三)基于VB6开发程序下的客观题模块设计

 

观题模块下的加载客观题对于VB6开发程序下来讲是一个极具挑战性、技巧性的问题,问题的关键之处就在于加载客观题的控件是动态生产的。在VB6开发程序中,只有两种方法才能生成动态控件,一种是使用VB6之前的控件数组,第二种则是在使用VB6开发程序的同时,引入withevents变量,由于VB6程序不允许创建并使用withevents变量数组,所以,为了生产动态控件,只能使用第一种控件数组方案来显示加载客观题的内容。

 

五、总结

 

整体来看,VB6开发软件对计算机基础教学有很大的帮助,不但方便了老师对学生学习情况的了解,还培养了学生对学习的自主能力以及提高了学生的操作实践能力。

软件设计开发研究篇6

[关键词]计算机软件;测试技术;开发应用;相关研究

doi:10.3969/j.issn.1673-0194.2016.07.080

[中图分类号]tp311[文献标识码]a[文章编号]1673-0194(2016)07-0176-02

计算机软件测试技术对于软件开发而言具有重要的作用,能充分保障软件的精确性,为软件开发工作带来安全保证。笔者将从计算机软件开发的重要性、计算机软件开发流程、计算机软件测试技术在软件开发中的有效应用,三个部分进行阐述。

1分析计算机软件开发的重要性

相对于应用软件而言,计算机仅仅只是作为一种辅助工具,计算机之所以能够帮助人们有效地解决这类问题,促进社会迅猛发展,最重要的就是计算机内的软件应用,可见,软件的开发极为重要。随着国家经济体系的不断改革,各行各业已经逐步面向现代化发展,互联网的普及无疑为人们的发展奠定了结实的基础,也给应用软件的进一步研究开发提供强有力的保障,计算机软件的应用已经在人们的生活中得以普及,而人们的日常生活也已经离不开网络的支持。计算机软件的应用不断丰富了人们的日常生活,使人们更加重视精神的自我培养,此外,计算机网络也在不断推动着人们前进。

2计算机软件开发流程

2.1分析开发需求和设计概要

在开发计算机软件之前,对其进行需求分析是开发应用软件的首要环节,亦是最重要的环节之一。软件开发需求分析质量,会直接对应用软件开发造成影响,一般情况下研究人员要根据软件需求内容,对软件的概要进行设计,并且结合软件的功能需求情况设计出软件程序流程图,若是利用类似于C语言等的高级语言实施程序编写,还应当根据软件模块设计各模块的应用功能。概要设计为软件的开发提供了程序框架,后续的开发工作都是在这个框架基础上进行操作,可见这个框架不但能够决定计算机软件程序功能,而且还能对软件运行的效率产生一定的影响。在基于软件程序具体的开发过程中,想要实现其特定功能,可选择多个语句或者逻辑关系等来实现,但不同的逻辑关系与语句也会从一定程度上影响软件。软件开发及其需求越来越复杂,如何编写简洁而又不会存在漏洞的应用程序,已经成为了各软件开发人员最终的目标,因此,在实际研究过程当中,研究人员要十分重视概要设计环节的工作,并且保持思路清晰,设计完程序流程图之后要进行全方位的审核,不断简化软件的逻辑关系,最终实现科学合理的软件逻辑关系。

2.2详细的编码与设计

紧跟需求分析和概要设计后的一个环节就是进行程序的具体编写工作。在编写程序的过程当中,首先应当选择计算机语言,经过长时间的发展,高级计算机语言出现提高了软件的开发效率。人们按照开发软件的实际需求,有针对性地研究了很多种类的计算机语言,例如:如常见有JaVa、C语言等,到了现在出现了VF与VB等可视化的编程软件,这类软件的研发使研究人员即便没有专业知识也可完成简单的软件开发。此外,在实际编码前,研究人员应进行详细设计,在已设计的框架上,按特定的逻辑关系将软件所需实现的一些功能进行设计,根据详细设计流程进行编码。目前,计算机软件设计使用最多的是C语言,这种语言的模块形式较为简单、语句便于理解,所以非常适合在开发、维护软件过程中运用,受到研发人员的青睐。

3计算机软件测试技术在软件开发中的有效应用

软件程序的编写完成之后,研发人员还要对其实施相应测试,监测这款软件的应用效果以及功能等是否能够达到预期效果,一般情况下,测试软件的方法就是随机输入一些数据到计算机中,然后再看结果是否达到要求,为了能够确保软件功能的精准性,常常会选择几组随机数据配合一些特殊参数进行检测。如果检测出来的结果和软件功能相符合,那么则说明通过测试,反之,则不符合。近几年以来,计算机的软件开发技术得到迅猛发展,研究人员也开发了一些专门针对软件测试的程序,但是由于受到技术水平因素的影响,使用测试软件受到一定的局限,比如:一个测试软件只能对一种软件实施检测,并且测试结果只能当作参考,测试结果的准确率还需要提升,但是不管怎样,测试软件的研发就足以标志着计算机软件程序的未来发展方向。新开发软件通过检测以后,需要交予需求方进行使用,为了保证软件能满足人们的实际使用需求,使用方也会进行验收,软件验收方要求极为严格,但是验收方式基本和测试方法相似,同样采取输入参数来进行验收,因此,就增加了不必要的验收程序。研发人员还应当继续研究,争取研发出更多的测试软件,使软件的测试结果更加精确。

软件测试技术作为软件开发过程中最为重要的组成部分,该技术主要目的是为了将软件产品中存在的问题及时找出,并将测试报告交给软件开发人员予以修改。可见,在软件开发工作中,软件检测技术的应用是不可缺少的环节。

软件设计开发研究篇7

关键词:软件工程;课程群;课程设计

中图分类号:G642文献标识码:B

文章编号:1672-5913(2007)20-0005-03

软件工程是计算机学科的重要学科分支,在本科计算机类各专业中都开设一些软件工程的课程,在研究生教学中,无论是硕士还是博士,都设置软件工程的研究方向,开设高一级的软件工程课程。本文中,软件工程课程群是指包括各层次的软件工程类课程。另外,软件工程又是一门发展非常迅速的学科,早年在研究生中讲述的内容现在放在本科中讲。因此,这些课程存在定位不明确,课程间内容交叉重复等问题。本文根据本科生和研究生两个层次对软件工程类课程的教学要求,阐述软件工程课程群的定位、课程设置、主要课程的知识单元和知识点。

1定位

首先分析社会对各层次计算机专业学生在软件工程方面的知识和能力要求。我们认为计算机类本科学生毕业后,主要从事计算机软件的开发工作,他们应掌握软件工程的基本概念、基本原理和基本方法,并能运用这些概念、方法、原理,参与和/或从事软件开发的某些活动(如分析、设计、编码、测试等)。软件工程方向的研究生主要着重研究能力的培养,毕业后主要承担系统分析员和/或系统设计员角色,甚至承担项目经理的角色,他们应掌握软件工程的研究动态,了解软件工程最新的研究成果,具备有关软件的系统分析、构架设计和软件项目管理的知识和能力。

根据以上分析,我们认为,本科生软件工程课程群应以软件工程的基本概念、基本原理和基本方法为主线,使学生具备扎实的软件工程基本理论知识、熟练的编程能力、较好的团队合作能力和实验能力,同时具备一定的分析与解决问题能力和创新能力。研究生软件工程课程群应以研究课题为主线,使学生掌握软件工程最新的研究动态,对其中若干个研究方向有深入的了解,具备较强的分析与解决问题能力和创新能力,以及基本的软件项目组

织和管理能力。

2课程设置

软件工程课程群按学生的层次可分为本科生软件工程课程群和研究生软件工程课程群,按课程类别可分为必修课和选修课。

根据上述定位,本科生软件工程课程群的必修课包括软件工程和软件实践,有些学校在软件工程课中包括足够的实践时间,可将它们合并成一门软件工程课。选修课可根据各校的特点开设不同的课程,如面向对象的分析与设计、软件体系结构、基于构件的软件开发、软件测试等,也可将研究生的某些课程作为本科高年级学生的选修课。

研究生软件工程课程群的必修课可包括高级软件工程、软件项目管理和专题讨论,其中专题讨论没有固定的教材,它以若干专题(如软件复用技术、模型驱动体系结构、软件产品线等)的最新论文为主,以报告和讨论的形式进行。选修课可根据导师的研究方向选择合适的课程,如需求工程、软件过程、形式方法等。

3教学内容

本节参照国外相关的资料,结合我们多年的教学实践,给出软件工程课程群中各必修课的知识单元。

3.1软件工程(本科生)

本科软件工程课程的内容应覆盖教育部计算机科学与技术教学指导委员会制订的计算机科学与技术本科专业规范(计算机科学方向)中有关软件工程的主要知识单元,该课程以软件工程的基本概念、基本原理和基本方法为主,着重国内比较流行的结构化分析与设计方法、面向对象分析与设计方法和常规的软件测试方法。同时对一些较新的软件开发模型、方法和技术(如基于构件的软件开发模型和方法、敏捷开发方法、Cmm&Cmmi、web工程等)做简单的介绍,以便学生今后自学。

3.2软件实践(本科生)

该课程是本科软件工程课程的一门后继实验课,以某种软件开发方法(如面向对象方法)和软件过程(如统一软件过程RUp)为基础,引导学生完成一个完整的软件项目开发全过程,包括需求获取、需求分析、系统设计、实现以及测试等基本步骤。该课程主要培养学生的分析与解决问题能力、团队合作能力、实验能力和创新能力

3.3高级软件工程(研究生)

该课程选择当今软件工程研究的热点课题作为主要内容,其知识单元可包括:基于构件的软件工程、软件产品线、软件体系结构、模型驱动体系结构(mDa)、面向方面程序设计(aop)、需求工程、面向对象测试技术、逆向工程和再工程、agent技术、形式方法、高可信软件,开源软件等。值得注意的是,在一门高级软件工程课程中很难详细介绍上述所有的内容,各校可根据自己的特点和研究方向,选择几个(以3~5个为宜)知识单元作重点介绍,对其他知识单元可只做简单的介绍。

下面给出几个知识单元所包含的知识点。

基于构件的软件工程(CBSe)主要包括:CBSe基本概念,软件构件规格说明,构件模型,基于构件的开发过程,基于构件开发的语义完整性,构件组装和集成,预测系统的可信度,软件产品线体系结构中的构件,商用第三方构件(CotS)及构件获取技术,基于构件的软件体系结构,基于构件软件的测试与质量保证,构件的可变性机制,软件构件库,构件交易,构件描述与检索等。

软件产品线(SpL)主要包括:软件产品线的基本概念,软件产品线的基本活动(核心资产开发,产品开发,管理),领域工程与应用系统工程,SpL经济学,软件产品线实践域,软件产品线实践模式,产品线组装,基于产品线的应用系统开发技术等。

软件体系结构主要包括:软件体系结构的原则和实践,体系结构框架/方法,体系结构模型与mDa,集成框架,软件体系结构设计与分析,体系结构风格,软件体系结构文档,软件体系结构评估与确认,面向服务体系结构(Soa),体系结构模式,企业体系结构等。

模型驱动体系结构(mDa)主要包括:mDa基本概念,mDa规格说明,mDa模型(Cim,pim,pSm),模型转换,模型语言(如可执行的UmL,对象约束语言oCL等),元建模,mDa过程,领域建模,系统模型,平台无关建模,平台特定的实现等。

3.4软件项目管理(研究生)

该课程的知识单元包括:综合管理,范围管理,时间管理,成本管理,质量管理,人力资源管理,沟通管理,风险管理,采购管理,敏捷项目管理,外包管理,软技能等。下面给出其中若干个知识单元所包含的知识点。

综合管理:项目,项目范围陈述,项目管理计划(编制过程,内容),项目执行的管理,项目评价,项目的监督和控制,集成的变更控制,实施报告,配置管理,关闭项目。

范围管理:启动过程,项目选择方法,项目合同,范围管理计划(编制过程,范围陈述,范围定义),创建wBS,范围验证过程,范围蔓延,范围变更控制过程,目标管理(mBo),影响曲线。

时间管理:活动定义过程,活动排序过程,图示方法(优先图示方法(pDm),箭头图示方法(aDm),条件图示方法,图形评价和评审技术(GeRt),项目网络图,关键路径方法(Cpm),计划评价和评审技术(peRt)等),peRt对Cpm的估算,活动资源估算,活动持续时间估算,估算工具,进度表开发过程,进度控制过程,净价值术语和公式。

成本管理:资源计划编制过程,成本估算(术语,过程,CoComo模型,工具),成本管理计划,成本预算过程,成本基线,项目投资需求,成本控制过程,实施度量,预测完成,净价值术语和公式。

质量管理:质量计划编制过程,质量保证计划,过程改进计划,质量保证过程,质量控制过程,统计质量控制(SQC),质量改进过程。

人力资源管理:人力资源计划编制,组织计划编制,项目管理中人的因素,责任委派矩阵,获取项目组,员工获取过程,项目管理者的角色和责任,项目组(建造过程),小组动力,管理项目组,角色与责任,领导风格,能力类型,冲突管理,6动机理论,小组性能估算,管理知识员工。

沟通管理:沟通计划编制,沟通管理计划,信息分发,沟通模型,沟通风格,沟通方法,沟通链接规则,沟通障碍,沟通技巧,绩效报告,管理涉众,管理收尾。

风险管理:风险管理计划编制,实用方法,风险标识,风险分析(定性分析,可能性与风险影响,定量分析,灵敏性分析,决策树分析,预期货币价值,概率方法),风险响应(计划编制,工具与技术),可保险风险,风险监督与控制过程,影响曲线。

采购管理:采购计划编制,购买和获取计划,合同计划,成本补偿合同,固定价格合同,工作陈述,申请计划编制过程,请求供方响应,申请过程,供方选择,源选择过程,谈判,合同,合同管理,合同变更控制,合同收尾。

敏捷项目管理:agile宣言和原则,迭代与演化开发,产品业主,敏捷管理需求,敏捷估算与计划编制,敏捷设计,敏捷文档,敏捷软件构造,敏捷编程,人员管理问题,敏捷质量保证,敏捷项目管理,项目评审,敏捷度量。

外包管理:识别全球业务机遇,组织模型与商业策略,全球项目的特征和挑战,全球项目经理的技能,国际及多种文化的交融,ip保护与其他法律方面,采购道德规范,道德规范法规,试验计划,风险管理,软件过程与实践的改进,建立团队,需求管理及客户/供应商关系,开发方法学,全球软件开发(GSD)与全球软件工程(GSe),沟通、协调和协作,离岸项目的管理,克服距离和时间,文化交叉的处理,全球项目的安全问题,全球项目收尾,从业人员教育培训及知识管理。

软技能:领导能力,批判性思考,职业道德规范,自我激励,诚实,小组工作,风险捕获,适应性,人际关系,工作压力承受、压力管理,创造性,影响力,研究能力,问题解决能力,组织能力,多文化处理能力,学习能力,时间管理,口头沟通,文字沟通,细心周到。

4小结

本文介绍了软件工程课程群的设计,在具体实施时,可根据各校的特点,对上述课程设置、知识单元、知识点进行裁剪。下一步将继续完善各课程的知识单元和知识点,为软件工程课程群建设打好基础。

参考文献

[1]教育部高等学校计算机科学与技术教学指导委员会.计算机科学与技术本科专业规范[m].北京:高等教育出版社,2006.

作者简介

钱乐秋(1942-),男,复旦大学计算机科学与工程系教授,博士生导师,主要研究方向为软件工程。

软件设计开发研究篇8

关键词:计算机软件数据接口应用

中图分类号:tp311文献标识码:a文章编号:1007-9416(2016)04-0000-00

计算机已广泛应用在人们的生活中,计算机软件也在不断的开发和增长,在这种情况下,科技人员要根据用户使用的软件实际状况分析和研究软件的数据接口,从而为人们研制出科学、便捷的数据接口,这样我国计算机软件就会形成显著的成就和效果,软件开发商也会得到一定的经济效益。因此,本文将分析计算机软件数据接口的应用。

1关于计算机软件数据接口的现状分析

目前,miS系统已于多个管理信息系统建立接口,其中包括集团课设部系统、集团煤炭系统、铁路tmiS系统、公司电量采集系统和磅房沉重系统。并且,软件开发商根据对软件数据的分析,制定出一种规范的软件,从而提升了数据连接口的性能。但由于计算机网络存在的一定的安全隐患,导致计算机软件数据接口也存在大量的问题,这在一定程度上影响计算机软件的功能。在计算机软件开发的过程中,如果计算机软件数据库缺乏安全的保护措施,那黑客将会入侵计算机,尤其是计算机数据在传输的过程中,计算机将会被植入大量病毒,致使就计算机软件系统被破坏,机主的个人信息和重要文件被窃取。尽管一些计算机用户在不断的学习和研究数据库的保护形式,然而,随着时代的发展,科技的更新,使得大部分用户在使用计算机软件时,仍无法避免访问数据库对象的应用形式。

我国计算机软件开发效率与质量与一些发达国家相比相对落后,我国在研发计算机软件的过程中忽视数据连接口的作用和重要性,只为提升计算机的运行速度,导致计算机软件数据连接口存在着重大的安全隐患,而且,我国缺乏更先进的科学技术和网络维护系统,致使计算机在连接数据库时病毒入侵。因此,我国计算机软件数据连接口的相关研发人员,要加大力度研制数据连接口,将数据连接功能简洁化[1]。

2计算机软件数据连接口的设计原则

2.1符合用户需求的原则

在设计计算机软件数据连接口的过程中,首先。设计人员要对市场数据接口的使用情况进行调研,结合人们对于计算机软件的要求,设计符合人们需求的计算机软件连接口。围绕软件程序开发数据连接口。只有数据连接口满足人们的需求,才能从根本上解决计算机软件的开发的问题[2]。

2.2面向对象原则

为了是软件数据接口更具规范性和合理性,设计人员要采用科学的方法提升数据连接口的使用效率。因而,设计员在设计数据连接口时必须要遵循面向对象原则,从而不同角度、不同层次分析计算机软件数据连接功能,此外,设计人员还应减少设计数据口的成本。

2.3坚持可扩展性原则

计算机软件数据连接口时设计软件的基础条件,因此,设计员的设计观念要随着人们对于数据连接口的需求程度而改变,在对软件升级的过程中,也要不断的升级数据连接口,当设计人员坚持可扩展性原则时,计算机用户的利益就会被维护。

2.4高容错性与高健壮性原则

高健壮性原则是指计算机软件数据接口在受到指令时,计算机内部系统能快速的处理数据。但高荣错性却比高建壮性具有较多的功能,软件开发商在利用高容错性时,不仅能快速的处理和判断计算机中的问题,还能减少数据口对系统造成的影响,从而保障计算机软件数据接口的正常使用功能。因此,软件开发商应设计数据连接口的过程中,应坚持高容错性原则,尽量避免错误数据对计算机伤害。

3关于计算机软件数据连接口的应用探讨

3.1程序接口函数模式

对于计算机软件数据接口的研究,大部分软件开发商会选择程序接口函数模式,利用相关的软件程序完成第三方的工作,然后再密封数据连接口,增强数据连接口的保密性,从而保障数据连接口不会对其他用户开放,这样数据就会呈现交互形式,程序接口函数模式也会起到重要的作用[3]。

3.2文件交换模式

文件交换模式主要是使用数据库中的资料和文件,实现计算机软件数据的交互。因而,软件开发商在制定数据交接口的过程中,要仔细研究数据结构,制定相关的数据方案,按照数据结构研制出一个合理的文件,这样计算机软件在运行的过程中就会主动扫描文件,并读取文件中的内容,以此达到数据交换。例如:windows系统中经常会出现一些特殊的符号,而这些特殊的符号则为计算机的程序编程,开发商在研制计算机软件的过程中需要记录其程序编程,以开放的方式满足用户的需求,这样用户在使用计算机时就不会受到限制。ini文件也成为交换模式。

3.3中间数据库模式

中间数据库的使用模式对于用户而言具有一定限制,用户在使用软件时只有得到软件开发商的授权,才能灵活的使用软件中的数据库,否则只能对一些特殊的数据进行访问。但中间数据库模式比其它两种模式的优势较高,中间数据库利于开发,数据操作性强。而且,中间数据库配置方式较为简单,如需其它配置,只需将配置内容植入到中间数据库中。然而,尽管中间数据库在数据连接口应用中占据主要地位,但由于中间数据库形成的方式较为复杂,中间数据库模式的数据连接口范围小,所以,中间数据模式很难广泛应用在计算机软件数据连接口中。

4结语

总而言之,计算机作为人类研发的一种技术,人类要不断对其进行更新和改造,维护计算机内部的安全系统,保障计算机软件数据连接口的安全。只有这样,才能使计算机软件正常运行,软件数据库也不会轻易被黑客窃取,从而有效的解决计算机软件数据连接口存在的安全隐患问题。其次,研发人员在设计数据口的过程中一定要遵循相关设计原则,以便保护计算机的性能。

参考文献

[1]李万明.浅谈计算机软件数据接口的应用[J].网络安全技术与应用,2015,(02):12-23.

[2]丁高虎.计算机软件数据接口应用研究[J].电子技术与软件工程,2013,(04):34-45.

[3]刘行.探讨计算机软件数据接口的应用[J].计算机光盘软件与应用,2014,(24):67-78.

软件设计开发研究篇9

关键词:云计算;软件测试;研究进展;平台

中图分类号:tp311文献标识码:a文章编号:1009-3044(2016)22-0058-02

近年来随着计算机技术的快速发展,云计算服务形式已经悄然来临,在云计算环境下,软件的架构设计以及软件的生产与组织等都发生了深刻的变化,同时也为架构设计以及软件的生产与组织的设计带来了巨大的影响。在云计算服务模式下,软件服务、基础设施服务、平台服务都成为云计算的主要服务模式,随着服务模式的变化也使得软件的消费方式与生产方式产生了深刻的变化,因此与之相关的软件测试的技术、方式、工具等都需要进行改变。在这种新的服务环境之下,将整个测试软件的进程都移动到了云中,因此也就产生了基于云计算平台的软件测试。

1云计算环境下的软件测试

1)云计算软件测试内涵

目前学术界对于以云计算为基础的软件测设还没有一个明确的定义与概念,不同的研究重点对于其内涵的定义也大有不同,主要可以概括为以下几种。定义一:以云计算为基础的软件测试主要是指web的应用程序通过应用计算功能来对真实的世界当中的用户流量进行模拟的一种软件性测试活动;定义二:以云计算为基础的软件测试主要是指以云计算环境以及其中的基础性设施为基础,同时应用云技术及其相关的解决方案而实施的测量与测试活动;定义三:云计算为基础的测试有两个层面含义:首先是利用现行的云环境中所提供的服务资源,比较真切的模拟用户的负载[1],从而实现高效、快速的压力测试与负载;其次是对云计算环境下的基础设施及其上层的以云计算为基础的应用程序实施的计算。

2)云计算软件测试的特点

由于云计算的软件测设中应用了不同的创新型服务以及创新型技术,因此相对于传统的计算机软件测试,云计算软件测试具有多个不同的特点。首先在基础服务设施方面,以云计算服务为基础的软件测试中其基础服务设施的提供来源不同,是由提供云服务的服务商在云计算服务平台中实施的,在这种提供模式下,用户可以方便的享受服务而无需自行购买;在付费方式上,用户可以更具自身的需求进行购买,同时依据软件测试的相关项目的测试目标、测试规模以及测试所花费的时间等来进行付费[2];对测设人员也提出了新的要求,同时还可以利用众包等方式来对特殊领域中需要专家专业知识实施的测试进行服务。

2云计算软件测试的功能范畴及分类

2.1云计算软件测试的范围

云计算软件测试的范围主要能够分为三个层次:第一个层次中主要集中在对于云计算服务平台本身的测试,也就是对于云计算服务平台中基础设施的服务功能与能力的测试;第二个层次主要集中在对于相关的软件开发商通过应用运计算服务平台中获取的资源而实施的多项软件测试活动,在该层中重点关注的问题是云计算平台的自动化测试的相关工具、与计算的测试技术以及云计算测试项目中的管理性技术等;第三个层次中主要集中在云计算软件测试中新兴的服务模式的研究,在该层中提供面向用户需求的软件测试的相关服务市场,这也是云计算软件测试范围内的研究重点与研究难点[3]。

2.2云计算软件测试的分类

1)基于测试任务的分类

云计算软件的测试范围按照测试任务进行分类,主要能够分为功能测试、负载测试、兼容性测试、压力测试、延迟测试、浏览器性能测试、性能测试以及延迟测试八种主要类型。以云计算为基础的软件测试环境中的压力测试主要是借助云计算平台当中的超强的测试能力,对软件测试系统当中的性能性瓶颈进行确定,从而获取了系统中强大的服务级别[4]。功能性测试主要包括非SaaS软件中的各个模块以及测试的SaaS的系统功能。安全测试即验证SaaS以及非SaaS软件相关的系统性能[5]。

2)基于测试用户角色分类

根据云计算服务的用户不同、提供商不同以及系统开发人员的不同,同时依据云计算环境的不同能够将云计算的软件测试分为四种类型:第一种是在云中实施的测试SaaS,在该类型当中主要功能是保障SaaS的功能以其非功能性的服务要求的质量;第二种类型是云内实施的测试,该类型当中主要从云计算的内部中对云计算的相关基础设施以及特殊的云计算能力实施的质量和功能检测;第三种类型是云外实施的测试,主要从云计算的外部角度上对云计算当定的服务与功能性的特征实施的质量和功能检测;第四种类型是云上的测试,该类型中主要是利用云计算平台当中设置在云端的相关服务性应用进行测试[6]。

3云计算软件功能测试平台

1)研究型云测试平台

构建以云计算为基础的测试平台,主要是利用了云计算服务当中的专门适用于测试软件的综合性大规模测试系统平台,同时研究型云测试平台也是当前云计算测试与研究当中重点研究的问题。目前日本、美国、瑞士、英国以及芬兰等多个国家中的大学已经开启了与之相关的研究性项目,试图建立一个研究型的云计算测试平台。

2)商业云测试平台

在商业产业界当中,已经有非常多的集团公司开始着手与研究可以支持商业性测试的云计算服务平台,并且也在不断地探索相关的解决方案,目前已经出现了诸多的商业性的云计算软件测试平台。

3)云测试平台技术构架

基于云计算服务的软件测试平台是一个综合性的并且非常复杂的系统,其中包含了硬件、软件以及服务等多项功能[7]。目前由日本筑波大学研究的D-Cloud平台能够应用在规模较大的并行分配的体统测试当中,同时该测试系统中还引进了虚拟性的故障插入技术。由瑞士洛桑理工大学研究的Cloud9平台能够通过云计算的平台服务建立与亚马逊eC2平台相类似的公共云计算平台,同时也能建立于eucalyptus等相关软件中私有的云环境中。英国的约克大学在Yeti项目当中通过在云计算服务平台中部署的相关实践性活动,构建了关于Yeti的云测试系统构架,同时该大学也探究和分析了云测试当中安全与性能的相关性问题,同时Yeti的建立以亚马孙的eC2平台作为基础,能够有效的支持Java的相关程序的随机性的自动化测试[8]。这些不同类型的云测试平台大众所利用的技术重点有所不同,在D-Cloud平台当中重点探究了对分布式的系统进行测试的方式以及虚拟化的故障插入,在Cloud9平台当中重点探究了云计算测试的服务以及集成开发的环境,在Yeti项目当中重点探究了云计算环境中的自动化测试工具的相关性能与质量。

4云计算软件功能测试服务

云计算的软件测试服务中主要研究了价格模型、服务模型以及服务质量的评价模型,现阶段对以上三项内容的主要研究成果如下:

1)服务模型

相关专家和学者探究了关于云计算软件测试中服务的相关理论性课题,借助图论等相关研究工具建立了与服务模型相关的理论模型。例如,通过应用图论建立了云计算的模型,将服务性的资源当做图论中的重点内容和节点,将与资源相关的以及使用资源的内容当做图的边界[9]。在以云计算为基础的云计算图模型当中,构建了应用型的测试算法以及标准。另有专家通过研究云计算服务环境中的企业内部的自建型软件,验证了云计算服务的差异与外部消费当中的内在联系,同时也构建了初始的模型。

2)价格模型

当前环境下的云计算平台当中,例如亚马孙的eC2平台等都是通过对资源的相关租用的时间为依据来实施收费,然而以云计算为基础的测试当中的收费方式并不一定能完全地适应这种收费方式。有学者认为以云计算为基础的软件测试当中更强调关注长尾用户,进而通过规模效应来取得收益[10]。另有部分学者站在Cloud9平台项目的角度上,认为基于云计算的软件测试平台有其自身的特点,因此在收费方式的确定上应该考虑用户的测试目标,进而确定收费方式。

3)服务质量的评价模型

以云计算为基础的软件测试活动能够看成软件的测试人员为软件的开发方以及终端用户提供的失误最小化、软件验证以及软件确认等方面的服务。高质量的服务对于提升软件测试的效率和水平具有重要的影响作用,测试人员提供的软件测试服务对终端用户以及软件的开发者提供着双向的服务,有学者对这两种服务进行了定义,确定为服务Ⅰ与服务Ⅱ,同时还构造了局域云计算服务平台的软件测试的服务质量的评价模型。

5结论

随着计算机技术和互联网技术的不断进步和发展,云计算服务使得传统的商业行运作模式与产业结构等都发生了深刻的变化,同时商业行运作模式与产业结构也在不断地完善和成熟,以云计算为基础的软件测试都需要通过不断地对自身的业务进行精准的定位,并且在此基础上从不同层次推进云计算的完善与发展,然而就目前的运行状况来看,以云计算为基础的软件测试中还存在着诸多的问题亟待解决。因此在未来的云计算软件测试研究工作中仍然需要不断地进行努力,深入研究面向云计算的软件测试系统的测试用例集以及自动化测试工具的构建等,从而促进云计算软件测试领域的不断发展与完善。

参考文献:

[1]史习阳.基于云计算环境下的软件测试探讨[J].硅谷,2014,8(9):58+66.

[2]乔冰琴.云计算在软件测试教学中的应用研究[J].山西财政税务专科学校学报,2014,3(2):72-74.

[3]王昕,沈明磊.基于云计算环境下的软件测试探讨[J].电子技术与软件工程,2014,8(15):72.

[4]王意洁,孙伟东,李小勇.云计算环境下的分布存储关键技术[J].软件学报,2012,6(4):962-986.

[5]林德根,梁勤欧.云GiS的内涵与研究进展[J].地理科学进展,2012,2(11):1519-1528.

[6]李乔,柯栋梁,王小林.云测试研究现状综述[J].计算机应用研究,2012,8(12):4401-4406,4425.

[7]陈阳.云计算环境下的软件测试服务研究[J].信息通信,2015,10(12):190.

[8]周显明,李建军,王莉华,等.基于云计算的测试公共服务平台设计技术[J].微型机与应用,2015,11(4):14-16.

软件设计开发研究篇10

关键词:教育软件工程研究框架

现代科学技术的发展推动了教育软件的升级,随着一系列软件开发工程的展开,教育软件发展到了现代数字媒体阶段。教育软件便捷和超大知识容量受到不少学习者的亲睐,随着市场的不断拓展,规范教育软件发展趋向势在必行。

一、教育软件工程框架

1、软件生存周期

软件生存周期,即软件产品从开始计划到废弃不用的整个过程。软件制定生存周期战略,将其系统的划分为各个阶段,并严格按照计划执行,对软件产品的质量和稳定性都起着至关重要的作用。

软件生存周期大致可分为计划、开发、运行4个时期,每个时期可根据实际需要划分为若干更小的阶段:①计划期间。通常是由客户或软件开发者提出开发新软件的构想,分析客户需求,分析新系统的主要目标及开发该系统的可行性。②开发期间。开发期可分为软件设计阶段、。软件设计阶段的主要任务是教学目标分析、教学内容设计、详细设计,其中最核心的内容是教学内容设计。开放人员必须针对社会需求,严格遵循教学目标制定相应的教学知识结构,制定若干个相互关联的知识单元,将教学内容进行系统、科学的归纳和设计。实现阶段主要完成编码、试验两大步骤,编码阶段涉及大量的人机交互活动,首先由专业程序员对软件模块的层次结构,运行算法等进行初步设计,然后由专家对完成的软件进行全面审核和检查。教育软件工程是研究如何用工程的技术和方法,开发和维护作为工程化产品的教育软件③运行期。运行是软件生存周期的最后一个时期,人员在这一时期的工作,主要是做好软件维护。维护工作主要包括:修改软件运行中的错误;产品的更新升级;增添新功能和完善已有功能。软件工程是多学科之间交叉融合的产物,是近年来学界新兴的研究热点趋势。作为一门新兴的交叉学科,教育软件工程学设计的研究对象和知识面极其丰富,从事教育软件开发行业的技术人员不仅要在软件及计算机方面的专业素质过硬,还要精通其它学科(如数学、英语等),甚至需要多门交叉学科背景。

2、软件工程概念

软件开发模式是一种指软件开发全部过程、活动和任务的结构框架,大多用直观的图表形式展现。常见的软件开发模型有瀑布模型和原型模型。

瀑布是一种最常用的开发模型,它将逻辑实现与物理实现分开,利于项目经理掌握整个项目,同时限制了开发期间整个团队人员之间的交互,操作起来较为简便。瀑布模式的缺点也是明显的,如果执行期间的某个阶段与预期目标稍有不符,那么系统中隐藏的细微问题就会暴露出来,开发人员就必须立即重新修改代码,不仅加大了项目成本,甚至会威胁项目的成功。

原型这种模型可以帮助系统更易为维护,更贴近用户,但也容易造成主次框架颠倒,结果低于预期目标,弱化用户环境等问题,通过一个原型对象来表明要创建的对象类型,然后用复制这个原型对象的方法来创建更多同类型的对象。

二、软件工程的发展潜能

软件工程研究不管是宏观的战略活动还是微观的教育活动,按其发展方向推论其最终目标都在提高物质水平方面都有巨大的潜能。教育软件在当代社会是一个非常重要的新的项目,各个领域有许多交叉之处,这也使其在未来发展中能够与其他领域有一个协调的合作。

普遍的教育软件工程研究的发展方向主要有教育软件产业和教育软件产品两个方面。有人从宏观论出发,教育软件产业的动态管理和反馈所构成的循环是一种战略活动。

软件工程将软件工程和教育紧密结合,这在很大程度上适应时展需要,软件工程不管是在世界市场还是中国内市场都是一个极具发展潜能的土地上而全世界范围内对教育的重视,综上两点教育软件工程的未来发展趋向便有十分可观的前景。

1、个性化和智能化方向

软件的智能化和个性化是从更加人性化出发,使用教育软件的使用者,能更智能化的为个人制定个性化学习方向。不同人对同一事物的思维方式和认识能力以及接受程度都各不相同,在不同社会人群在使用教育软件时如何消除数字鸿沟的所带来学习效果偏差是优化教育软件的重要研究课题。教育软件除了要满足不同个人的个性化要求外,还要对不同群体在使用软件做智能化分类。教育软件为学习者预习、复习、考前突击提供了一个良好平台,优秀的学习者培养其创新能力的活动平台;教师备课进修及课堂演示的平台;开发教学资源库、制作课件的平台;教师组织学生进行课外学习活动的平台;科技工作者和学术交流。就在很大程度上拓展了教育软件的潜在客户,充分发挥多媒体和网络技术的优势,提高学习效率和学习兴趣。

2、互动性方向

教育软件具有情感性和互动性则是未来教育软件研究必然发展趋势,软件的个性化还是智能化相比于已有的其他软件都是一种重复,但情感性和互动性则是对教育软件的特殊要求。根据学习者的多次选择对你的情绪和心理状态作出判断。虽然软件没有感情,但是开发软件的人是有感情的,他们不仅用产品表达了对每一个学习者都应同样地尊重,更重要的是,他们力图通过细小的设计,传达出自己对人格、对成长,对健康心灵的全部理解去感染学习者,在信息技术环境中的学习者也能通过与学习界面交互而引发的与学习内容的互动从而在学习者使用教育软件时也能在心中引起共鸣,创造出更健康、更合理的学习心理。

总而言之,教育软件研究的发展趋势将会更加人性化,同时因为社会时展需要,教育软件的发展前景十分敞亮,但是目前所要求达到的个性化、智能化、情感性以及互动性都是限制其快速发展的瓶颈,从其发展趋势来看必然会克服,但是这些瓶颈背后所隐藏的社会需要也让我们在研究其发展趋势时看清未来教育所存在的弱点,那么将计算机教育应用与教育教学改革相结合势在必行。

参考文献:

[1]刘伟.浅谈软件工程[J].齐齐哈尔师范高等专科学校学报,2005.

[2]杨芙清.软件工程技术发展思[J].软件学报,2005

[3]DingZhenguo,GuoQiailg.aerialembeddedsoftwaretestingresearchbasedonconcurrentengineering[J].Chinameasurementtechnology,2008。