公务员期刊网 精选范文 软件设计开发研究范文

软件设计开发研究精选(九篇)

前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的软件设计开发研究主题范文,仅供参考,欢迎阅读并收藏。

软件设计开发研究

第1篇:软件设计开发研究范文

关键词:网络技术机械设计并行开发

中图分类号:F407 文献标识码:

1 引言

科技的发展使产品的更新速度加快,同样机械产品从设计开始到投入到用户手中的时间也必须尽可能的缩短,只有这样才能节约更多的成本,提高竞争力。 机械设计软件的并行设计,可以同时对不同的部件进行设计,但是需要各团队成员相互协调配合。在设计阶段要同时考虑制造、装配、销售、使用、维修和回收的问题,是一个涉及到众多因素的闭环系统。采用并行设计方式需要有效的组织方式,但对于开发周期能够有效的缩短。

2 机械设计网络并行开发的现状与技术

2.1机械设计网络并行开发现状

机械产品的开发设计随着计算机技术的应用得到了飞跃式发展,AutoCAD、UG等绘图软件已经广泛应用。在互联网的支撑下,图形的共享,能够使身处不同地域的人员同步参与开发;视频技术的发展也能够使不同地域的人随时进行交流沟通,讨论设计中遇到的问题。在数据库的模式下,产品的设计管理和产品自身的数据管理也可以同步进行。因此,通过机械设计软件进行机械的并行开发是一种设计趋势。

机械设计并行开发中,总工程师可以按照项目管理原则,根据产品结构特征进行分解,将任务分配到各个开发小组。对所有设计过程、设计标准、设计接口进行标准化管理,并录入数据库。各小组按照需求完成自己的设计任务时,将图形上传到共享空间,以便于其他开发人员协同使用。

2.2网络并行设计中的交互技术

(1)邮件方式。依托于互联网,电子邮件技术,将设计好的图形文件等技术数据发送给相关人员。

(2)多媒体会议系统。采用多媒体信息技术,使文件在开发人员之间在线传输,并可以实时进行沟通,更为直接的了解对方的用意。一般在共享应用中由用户进行并行得到结果。

(3)网络数据库、服务器模式。在服务器中开始独立共享空间,开发者将自己设计完成的图形数据,需沟通的问题上传。同时也可以对其他开发人员的内容提出建议和改进方法。从而使设计沟通过程得到有效提高。

3 机械设计网络并行开发的特征

机械设计的网络化并行设计,是网络技术与并行工程的有效结合,具有以下显著特点:

(1)开发人员可以同时打开多个图形文件,并通过数据库和工作中心进行交叉设计。对外部引用的图形数据定期跟踪查看,随着其他开发小组的进度不断调整自身进度,完善最终图形文件。

(2)其他开发小组的图形文件一般采用只读方式,同时也不需要长时间保存,这就减少了开发过程中的失误。如果其他开发小组的图形文件进行了调整,设计软件会在下次打开此图形文件时提示开发人员重新进行引用,同时可以在任何时候引用或删除该文件,具有很强的灵活性。

(3)在开发过程中预留多种接口方式,方便使用者根据自身需求进行二次开发设计,如软件开发模块,界面工具,内部语言程序以及数据交换接口。也可以使用ASP编程语言和ACCESS数据库相结合,实现全程网络方式,数据共享服务器,在线讨论等实时交互。

4 结束语

机械设计网络并行开发是一个重要的发展方向。压缩设计周期是所有开发公司面临的严峻挑战,并行开发可以在传统开发上大量缩短时间,同时结合计算机网络共享平台的数据库技术。使机械设计开发高度的集成,同时又具有很强的开放互动性。

参考文献:

[1] 徐艺,等.并行设计信息共享的方法研究[J].机械科学与技术,2000,19(01):164~166.

第2篇:软件设计开发研究范文

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

一、引言

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

目前,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.

第3篇:软件设计开发研究范文

【关键词】软构件基本构建OA系统单元构件组合连接

一、软构件概述

从系统软件设计发展来看,今年对软件构件技术已经引入到办公自动化系统的设计中。软件构件是一种可以复用的软件组成方式,可以被用来构造多种系统软件,基于软件构件的程序设计的基本思想就是,将软件中的功能部分进行逐一的分解,形成一个一个独立的构件,这些构件与外部仅仅利用实现预定的接口进行通信。在办公自动化系统中,利用软构件的技术可以实现系统的自由灵活性,方便重构与扩展,也可实现重用与组装。

二、基于软构件的OA系统分析

1、软构件的基本思路

在系统设计的过程中,软构件的定义不是十分明确,在办公系统设计中,构件就是一种功能上不透明的实现,能够被第三方进行利用组装,是由构件模型构造出来的。不透明功能实现要求有两个主要因素:构件市场中商业构件模型应依靠隐蔽的细节进行保护;构件的应用者不需要了解构架的细节。而可以被第三方进行利用,就是前面提及的作为一个独立分布的软件结构和模块,其具有复用的直接价值,构件的商用不仅仅依靠供应者的工具加以识别,最后构件模型负责构件之间的交互需要必要的限制。

2、OA系统模型分析

在办公软件系统中,业务活动往往是一个一个独立的功能单元,其功能相对固定,这些单元都是有多个层次的功能模块构成,最终表现为对数据的具体操作。通过正交划分不同的层次可以得到多原子构件。每个构件都有特定的接口与服务方式,每个构件上的层次都会分为四个原子结构:WEB构件,控制构件、业务逻辑构件、数据关联构件等。

Web主要负责的是数据显示,实现业务界面互动,利用web可以控制连接构件,实现与上下层上的业务逻辑连接组装;控制构件则是定义控制逻辑后的构件。按照需要的业务进行调用,并按照需求提供多种处理方式,并将结果反馈,与相关web相连接;业务逻辑构件是按照需要定义好的各种业务逻辑,并与相关的数据访问构件相对接,实现对数据库的操作;数据访问构件则是具体实现对数据库的操作,按照业务逻辑实现数据调用以满足服务需求。

三、基于软构件的OA系统实现

1、框架设计

利用Spring框架进行构件基础,其提供了多种机制的组件配合方式,可以灵活的开展web开发,整合JDBC等多种数据访问技术,按照其设计原则Spring是一个软构件的基础框架。这个框架为软件的开发提供了强大的支持。其中依赖于注入技术的轻量级构件容器所提供的翻转机制可以通过容器定位插件来实现。依赖注入技术用部署描述文件之间存在依赖关系,在运行的时候容器会按照部署的文件需要为提供构件调用,由此注入到调用构件之中。所以在OA系统构件可以依靠这样的技术来实现各个构件的衔接与组合。

2、软构件技术下的OA系统

Spring技术属于一种底层框架结构,在Spring框架下构造出来的构件具备对构件的基本需要。在这个系统定义的构件实现类似于JavaBean的规范需求,此时所有的构件类都包括了无参数的构造函数和相应的Setter方法。完成构件的定义之后,系统设计实现的另一个问题就是实现各个组件的衔接。正如上文所描述的是,Spring的依赖性注入技术。在Spring框架下通过构件的配置文件来实现对OA文件所定义的构件,配置文件的内容包括了实现类、属性设置、合作声明等等。Spring根据配置文件定义依赖关系,调用相应的Setter方法,设置调用构件。在运行是容器按照配置文件的需求将调用的构件注入到相应的构件中,这样就实现了组件的动态对应。

四、结束语

软构件技术在应用中突出的特征就是方便组合且可以按照OA系统的要求进行相关单元的配置,其中利用构件原理将不同的原子构件组合起来就可实现某个系统功能,这就是软构件技术用于OA系统设计与开发最大优势。

参考文献

[1]刘广堂.企业办公自动化OA系统应用分析[J].信息技术. 2010(04)

第4篇:软件设计开发研究范文

(北京林业大学 信息学院,北京100083)

摘要:针对计算机专业应用型人才培养模式中的问题,分析北京林业大学计算机专业应用型人才培养的实际情况,充分挖掘自身的特点和优势,提出了计算机专业应用型人才培养理念,确定了计算机应用型人才的核心能力是程序设计与软件开发能力,在此基础上提出了“1+2+4”人才培养理念,创建了“一体两翼”的核心课程体系,构建了“4层1纵”的立体化实践教学体系。

关键词 :计算机专业;应用型人才;培养模式;课程体系;实践教学

基金项目:北京高等学校教育教学改革立项项目“以程序设计与软件开发能力为主的应用型计算机专业核心课程体系改革与教学资源建设”。

第一作者简介:陈志泊,男,教授,研究方向为物联网技术,数据库技术,email:zhibo@bjfu.edu.cn。

0 引言

在高等教育大众化过程中,我国逐渐建立起培养学术型人才、应用型人才和技能型人才的高等教育分类办学体制。这就要求普通高等学校需要根据自身的特点来培养不同的专业人才。2007年以来,我们借鉴国内外高校的人才培养经验,对本校计算机专业人才的培养进行了长期的探索和实践,根据生源、办学条件等具体情况,结合教育部高等学校计算机科学与技术专业教学指导委员会的《高等学校计算机科学与技术专业公共核心知识体系与课程》[1]和《高等学校计算机科学与技术专业实践教学体系与规范》[2],综合我校及国内同类院校的实际情况,经过多次调研和研讨,我校计算机专业人才培养目标的定位为应用型[3]。我们从计算机专业应用型人才培养理念、课程体系、实践教学体系等各方面进行了研究,充分挖掘自身的特点和优势,逐步形成了自身的办学特色,探索出适于我校计算机专业的人才培养模式,为农林类院校的计算机专业建设提供了经验和范例。

1 创新性地提出了计算机专业应用型人才培养理念

紧紧围绕如何培养应用型人才、提高应用型人才培养质量问题,在研究和分析计算机专业应用型人才的能力、规格的基础上,提出了计算机专业应用型人才的核心能力是程序设计与软件开发能力。在此基础上,立足本校特色,创新性地提出了符合市场对计算机专业人才需求的、以程序设计与软件开发能力为主的、以“严、宽、能、高”为导向的应用型人才培养理念。“严”——严谨教学、严格管理;“宽”——宽培养途径,从课内实验实习实践训练、大学生科研训练计划、各种国内外竞赛、公司实习等多途径培养应用型专业人才,“能”——突出培养学生的程序设计与软件开发能力,“高”——高质量应用型人才。

2 人才培养模式、课程体系和实践教学体系的改革

2.1 提出“1+2+4”人才培养模式

通过调查和研究,进一步明确了我校计算机专业人才的培养目标和定位,提出了“1+2+4”人才培养模式,即1个核心——培养学生的程序设计与软件开发能力,2条编程主线——“CC++Windows应用程序设计”和“JavaJava高级技术”,4个训练途径——课内实验实习实践训练、大学生科研训练计划、各种国内外竞赛和公司实习,如图1所示。

2.2 创建“一体两翼”的课程体系,促进教学质量的提高

紧紧围绕人才培养模式,创建了“一体两翼”的计算机专业课程体系,如图2所示。

围绕程序设计与软件开发能力的提高,根据市场需求,科学合理地设计相应课程的核心知识点和具体内容与要求,从而确立相应的教学大纲。

在知识点的取舍上,坚持了以下几个主要原则,①要符合计算机专业应用型人才的培养目标、特色和要求,②要紧密结合IT时代要求和市场需求,全面贯彻研究初期提出的2条编程主线的思想;③各个课程侧重点相互补充,课程间有很好的衔接性和延续性,并注重提高学生的编程能力。这样,课程核心内容既重视了传统内容,又兼顾了市场方面的需求,也为后续课程奠定了良好的基础,从而形成了以提高学生程序设计与软件开发能力为主线的核心课程体系和知识体系,达到了学以致用的目的。图3给出了计算机专业核心课程体系结构示意图。

2.3 构建“4层1纵”的立体化实践教学体系,重视培养学生的综合能力

(1)构建“4层1纵”的立体化实践教学体系,全方位锻炼学生。

针对应用型本科人才的培养目标的要求,结合教学大纲的内容要求,建立起完整的“4层1纵”的实验教学架构,即形成基本工具层(C/C++、Java)、基础实验技能培养+应用性(基础实践教学层)、综合性实验技能培养(综合实践教学层)+研究性实验技术培养(创新实践教学层)4层的实践教学体系。1纵即实践教学方法贯彻整个立体化实践教学体系。立体化实践教学体系如图4所示,并在教学中得到了实际应用,起到明显的教学效果。

(2)大力推进校内外实习基地建设,建设一流实验示范中心。

计算机专业的学生重在实践,锻炼编程能力。因此校内要加强实验室的建设,目前已有计算机组成原理实验室、嵌入式系统实验室、软件工程实验室、计算机网络实验室,从而进一步加强学生综合解决实际问题能力和进行实际操作技能的训练[3]。2007年建设了“计算机实验教学示范中心”。在校内实验室的基础上,根据专业特点,有重点地选择一批基础好、设备先进的企业作为实习基地,与多家软件公司都建立了良好的合作关系。

(3)构建了学生自主选择和教师引领的科研训练体系。

为了提高学生的实践动手能力,必须锻炼他们的编程能力和软件开发能力。因此以科研项目和竞赛为载体,构建了学生自主选择和教师引领的科研训练体系。从大一开始,有计划有步骤地引导部分有能力的学生参与到各种形式的科研训练项目和竞赛中。例如参加教师的实际科研项目、组成编程兴趣小组、申请大学生科研训练项目、参加各种竞赛等方式,多方位提高学生的实践动手能力。

(4)改革实践教学方法,引导学生主动学习。

注重实践教学过程的设计与实施,设计并实践了问题导向的实践教学方法,注重提出问题、确定研究路线、文献阅读、解决问题的4个基本环节的训练,引导学生主动学习,锻炼学生的综合能力。

3 积极探索教学方法和模式,建设精品课程,多方位优化教学过程,全面提高教学质量

3.1 提出并实践了“即教—即学—即用—再学—再用”的教、学、用联动的教学模式

对于程序设计与软件开发类课程采用在机房上课的教学方法,改变了以往的理论教学与实验课脱节的现象,达到“即教—即学—即用”,边学边练,易于学生掌握编程技巧,达到了事半功倍的效果。并在后续的算法类课程中再一次巩固已学过的编程知识,进行“再学—再用”。这种“即教—即学—即用—再学—再用”的程序设计与软件开发类课程教学模式有效地解决了“学用”脱节的问题,全面提升学生实际动手能力。

3.2 教学手段和教学方法革新,增加现代教育手段

(1)课堂教学。

充分利用多媒体、录像片、动画片、课件等手段,不断提高课堂教学效果,实现抽象理论形象化、复杂算法动画化、数据处理可视化。并在教学过程中通过案例教学法、启发式教学法、互动式教学法、实例法等多种教学方法,激发学生的学习兴趣,提高教学质量。

(2)网络教学。

利用精品课网站、QQ群、飞信等网络手段,与学生充分交流,为同学们课后复习、开阔眼界起到极大的作用。

3.3 实现了“即练(考)——即判——即测”的训练和考核模式,杜绝程序抄袭行为,激发学生的学习兴趣

在计算机科学与技术及其相关专业的教学实践中,学生实践动手能力是衡量教学质量的一个重要指标。但是存在着学生之间作业、作品抄袭等现象,这种现象降低了教学质量,阻碍了学生实践动手能力的发展,并在一定程度上影响学生之间的公平竞争。因此自主研发了在线评判平台和程序克隆多角度检测系统,实现了“即练(考)——即判——即测”的训练和考核模式,有效检测各种抄袭行为,杜绝程序抄袭现象,切实提高了学生的实践动手能力。

3.4 建设精品课网站

面向对象程序设计语言、Java语言、数据结构A和软件工程被评为校级精品课程,各精品课程网站大都建设完毕,并投入使用。学生可以利用这些网络教学资源课下预习、复习、自测、与教师交流,对所学的知识进行巩固。

4 加强师资队伍建设,打造优秀教学团队

4.1 通过招聘教师,扩大师资队伍,实行“导师制”,培养新教师的教学科研能力

近5年来,我校接收了6名博士毕业生,全部来自国家重点高校,为教师队伍注入了新鲜血液。为了使新教师尽早熟悉教学环境和科研环境,为新教师配置一名经验丰富、具有高级职称的教师作为其导师。导师除了负责指导新教师的整个教学环节,还要负责新教师的科研启动。以这种“老带新”、传、帮、带的方式迅速提高新教师的教学水平和科研水平。实践证明,导师制的实施取得了显著的成果,2007年以后计算机专业的新进教师都获得了我校新进教师科研启动资金的资助。

4.2 鼓励教师参加国内外交流和培训,提升自身的教学和学术水平

鼓励在职教师到国内外一流大学做访问学者,提高教师的业务能力和科研能力;大力支持他们参加各级学术会议及研修班;支持专业骨干教师参与企业进修,与相关企业进行合作、交流和学习。

4.3 以明确的奖励制度提高教学水平

对各种教学成果奖、出版规划教材、教学评价优秀者等教学成果有明确的激励制度。严格教学管理,狠抓教学质量。坚持教学督学及听课制度和学生评价制度;定期召开学生座谈会,听取学生反馈意见。

4.4 加强教材建设,为专业建设和人才培养服务

教材已成为培养学生应用能力的一个瓶颈[4],因为计算机类教材总是滞后于当今技术发展,必须不断进行教材建设。因此鼓励教师围绕课题研究内容,积极编写配套教材,物化改革成果,并推广使用。近5年来出版教材7部, “十二五”国家级规划教材1部,北京高等教育精品教材1部。

通过以上措施,不断加强师资队伍建设,教学成果突出。北京市高等学校教学名师1人,校级家骐云龙青年教师教学优秀奖4人;近5年来,主持的北京市教改课题1项,校级教改课题14项。

目前计算机专业教师21人,其中教授2人,副教授8人,讲师11人。具有博士学位的教师18人,在读博士1人。45岁以上教师3人,45岁以下教师18人。可见计算机专业已经形成一支以具有博士学位的中青年教师为主的师资队伍和科研力量。

5 通过改革,培养了一批优秀的应用型人才,学生就业竞争力明显提高

教学改革成果显著,学生积极承担校级、北京市和国家大学生创新性试验计划项目、备战竞赛训练,大大激发了创新思维和灵感。近5年来,学生参加ACM国际大学生程序设计大赛5项获得铜奖;MCM大赛1项获得Honorable Mention奖;学生参加由教育部主办的“全国软件专业人才设计与开发大赛”,在北京赛区本科组16人次获一等奖,36人次获二等奖,33人次获三等奖;在全国总决赛中,2人次获二等奖,9人次获三等奖;在全国软件人才设计与创业大赛——软件创业团队赛获全国总决赛三等奖1项;在“北斗杯”全国青少年科技创新大赛中,有4人次获得二等奖,2人次获得三等奖;在2013年华北5省计算机应用大赛中,有4人次获得一等奖。学生参加国家级大学生创新创业训练项目8项,北京市大学生科学研究与创业行动项目6项,北京林业大学大学生科研训练项目26项。

6 结语

应用型本科人才培养是一项开创性、探索性的工作,必须要有与时俱进的精神,走特色化教育道路[5]。我们要以社会需求为准则,以教育部高等学校计算机科学与技术专业教学指导委员会的精神为指导,结合自身的办学特点和优势资源,继续人才培养模式的研究,不断完善课程体系和实践教学体系,不断提高师资队伍教学和科研水平,积极探索教学内容、教学方法和教学手段的创新,继续走校企合作道路,加强学生实践动手能力的训练,以培养出更多合格的计算机专业人才。

参考文献:

[1] 教育部高等学校计算机科学与技术教学指导委员会. 高等学校计算机科学与技术专业公共核心知识体系与课程[M]. 北京: 清华大学出版社, 2008.

[2] 教育部高等学校计算机科学与技术教学指导委员会. 高等学校计算机科学与技术专业实践教学体系与规范[M]. 北京: 清华大学出版社, 2008.

[3] 张丽, 杨怀卿. 本科计算机专业人才培养模式和课程体系建设探索[J]. 中国农业教育, 2005(4): 58-59.

[4] 陈志泊, 张海燕. 计算机专业应用型本科人才培养模式的研究与探索[J]. 计算机教育, 2010(5): 64-66.

第5篇:软件设计开发研究范文

关键词:嵌入式;实时软件;计算机应用系统

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)36-0254-02

当前世界处在一个快速信息化的发展过程中,我国在计算机技术水平上也有了长足的进步和发展,一些自主设计研发的计算机应用系统也在实际应用中得到了良好的反馈。其中的嵌入式实时软件作为能够对计算机应用系统进行改进和优化的重要软件,也在计算机软件技术上发挥出了应有的重要作用,对一些应用系统中的漏洞和不足都能够很好地克服,在计算机系统的稳定性和功能性上也都起到了加强的作用,受到了很多关注,也得到了市场的肯定。

1 嵌入式实时软件对计算机应用系统设计的整体影响

1)嵌入式实时软件的应用原理。嵌入式实时软件的应用原理主要就是结合实时处理技术,充分利用快速应的优势,满足计算机应用系统的实际需要。嵌入式实时软件的优点就在于能够对服务请求做出快速有效的反映,并且更好地实现计算机应用系统的分层设计,提高构成系统的个模块的独立性。另外,嵌入式实时软件在计算机应用系统的运行中也能大大提高安全性和稳定性,对整个计算机应用系统的稳定运行起到重要的辅助作用。

2)嵌入式实时软件的应用特点。在计算机应用系统中合理地引入嵌入式实时软件,那么对整个应用系统的实时处理能力来说,都会得到很大的改进和提升,而且也能有效提高整个应用系统的科学性和合理性。嵌入式实时软件在计算机体现为两大部分的融合,一个是硬件,另一个是软件。通常嵌入式实时软件需要操作系统的支持,软件通过调用操作系统提供的服务来控制硬件,这样的工作方式能够让软件和硬件形成有益的交互。微处理器作为嵌入式实时软件的核心部分,在操作系统的控制下,能够让软件系统进行多种任务的切换,能增强计算机应用的适应面。还有一点就是,对计算机内部重要的存储部分,操作系统能够对其起到适当的保护作用,这对整个系统在进行修复或优化的过程中都能起到非常关键的作用,而且嵌入式操作系统本身的结构也具有非常良好的延展性,对计算机应用系统所能起到的作用也是不可估量的。

2 嵌入式实时软件的设计要点和开发流程

相对于一般软件的设计来说,嵌入式实时软件的设计开发流程上基本类似。嵌入式实时软件的设计过程对整个系统都有着非常重要的基础作用。首先,在设计开始前需要设计人员对应用系统进行一次全方位的分析,以便对嵌入式实时软件作出准确的功能定位,从而有利于确认设计的具体目标,定位中系统的核心问题。其次程序编码应该依据软件工程的原则严格执行,在保证系统效率的前提下,充分提高程序的可读性,为应用系统的维护奠定良好的基础。最后,设计人员还需要根据各种性能参数和指标定义嵌入式实时软件进行调试,以便其能符合计算机应用系统的使用要求。接下来就是对系统新功能的不断完善和改进。

嵌入式实时软件在整个软件设计的过程中,因为功能任务相对单一,因此可以适当简化一些设计开发流程,让整个过程更加简捷,以提升设计开发的效率。但是对于设计的可靠性,必须予以充分的重视,因为对计算机应用系统来说,可靠性往往是系统成败的核心。

尽管嵌入式实时软件在设计开发方面有着高效、方便的优势,但还是要注意依照严格的设计、开发的流程,不能违背一般软件开发的基本原则,以免造成不必要的人为损失。还有一点须要留意的就是,嵌入式实时软件运行的硬件环境通常性能较弱,如何充分利用和发挥硬件资源是设计和开发中必须关注的问题。

2.1划分任务

嵌入式实时操作系统在计算机应用系统中处于核心地位,它对整个系统都起着举足轻重的效果。想要实现任务管理、任务控制、任务间的通信、任务互斥与同步、资源管理这些功能,都要依靠于嵌入式实时操作系统,这是整个应用系统实现其功能的根基。在这个基础平台上,可以根据应用系统的功能,采取划分解决的方式,能使软件设计得到一定程度的简化。在对一些独立功能进行任务划分的过程中,重点是对数据转换过程的深入分析,这种转换有些是并行的,有些是串行的。对数据的并行转化与执行顺序进行确认后,就能够有效的对独立任务进行划分了。而对工作划分起到决定性作用的是数据通讯的异步关系,需要从以下两个方面去进行探讨和剖析。第一个方面就是系统的内部功能,这个功能指的就是将计算机软件的并行任务划分为,周期任务、异步和同步任务、应用控制任务、用户接口任务,并对这些同一时间段内完成的各种功能进行有效的整理,让这个复杂过程变成一个统一的任务,通过对相同事件进行驱动,完成计算机软件资源的共享。 第二个方面就是,对计算机软件系统的I/O进行驱动时,要采用应用程序轮询和中断的方式。采取这样的方法主要是为了解决在应用程序轮询过程中,计算机CPU资源被大量占有的情况,而中断方式的使用能够对计算机软件系统的实时性、实用性得到满足。

2.2任务组织和存储映像规划

在完成对独立任务的划分后,受到数据转换和任务逻辑关系的影响,系统的组织方式也会发生一些不同的变化,嵌入式实时操作系统对任务的组织管理有着决定性的作用。因为嵌入式操作系统的重要应用程序是保存在ROM和FLASH中的,所以选择软件系统必须要做好规划,完成优化的处理,这样对于系统协调运行才能起到有效的保障作用。作为嵌入式系统布局的重要组成部分,存储映像的规划和存储器功能是整个布局的重点,需要从物理零地址中调取出嵌入式实时软件的程序指令,在物理地址上进行代码设置。

2.3应用程序的实时性和任务调度

在嵌入式实时软件的实时性上,应该尽量使用软实时性,其作用就是容许系统在可控时间内出现操作延迟。对任盏牡鞫扔Ω镁×垦衲切于优先级的调度方式,如果在优先级的软件系统上运行了较多的任务内核,要及时他进行调整,根据任务的紧急程度来增加优先级,还要进行必要的任务拆分,减少关键任务的响应时间。

2.4系统初始化

嵌入式实时软件的设计开发中,需要对软件系统的初始化执行进行充分详细的考虑和分析,初始化的代码需要编写在嵌入式操作系统的底层硬件和微内核之间的硬件抽象层,以方便系统初始化和引导的正常进行。作为嵌入式实时软件系统中的一部分,BIOS将会通过设定好的固定指令对系统的初始化工作进行正确的运行。

3 嵌入式实时软件开发的前景展望

嵌入式系统中包含了微处理器、I/O端口、图形控制器以及编程部分,具有实时、多任务的能力。因此实时性、易控性、可操作性等方面比传统的pc系统有较大的优势,具有非常广泛的应用场景和应用领域。

通过对嵌入式实时软件设计方法的分析,我们也能够看出,嵌入式实时软件对计算机应用系统的设计和软件系统中层次化模块结构的设计上都起到了推进性的作用。在实现嵌入式实时操作系统与计算机应用程序以及底层硬件的结合方面,嵌入式实时软件能够更好地完成运行功能和运算任务。当然,嵌入式实时软件的设计和开发也需要硬件平台的支持,其对硬件平台的依赖性还是很强的,这就需要在计算机应用系统的设计开发过程中,对软硬件之间的关系进行合理的规划和安排。

4结语

嵌入式实时软件的应用对于计算机应用系统的设计来说是一次重要的改革和突破,它让计算机的运行环境有了更强的融合性与兼容性,这项技术的贡献也远远不仅于此,它在软件设计的灵活性、可靠性、可操作性上也得到了极大的加强,而且其对操作速度的有效提升所带来的影响也是不可估量的。总体来说,嵌入性实时软件对于我国现阶段的软件设计行业来说,提出了新的需求和问题,对于整个行业的发展来说都有着很高的积极意义。

参考文献:

第6篇:软件设计开发研究范文

【关键词】软件开发;软件工程;质量控制

软件质量是指开发出来的软件不仅可以满足客户明确提出来的要求还要满足某些没有明确提出来的要求,软件质量越高,客户需求满足度就越高。软件项目质量控制不仅仅是控制软件设计的最终结果,它其实要求贯穿于软件设计项目的全过程,从软件开发初期的客户需求调查,到最终的软件交付评审,每个阶段都要进行仔细的控制,才能提高软件开发的质量。

一、软件开发过程的问题分析

(1)不能明确分析软件的需求。软件的需求是决定软件质量的一个非常关键的因素,如果不能够准确明了的分析软件需求,就达不到软件应有的效果,从而不能真正满足客户的要求。然而软件的需求不是显而易见的,它需要软件开发人员和客户或者业务人员之间进行充分有效地沟通和交流,使得在软件开发一开始就能够将需求提得既明确又充分,这样才能为以后的工作打好基础,避免在一开始就偏离了软件开发的方向。在设计开发的过程中也要不断与客户进行沟通和交流,及时按照客户的意见调整软件,才能提高软件开发的质量。(2)软件开发工作不规范。由于软件质量许多指标不能量化,因此,软件开发的质量好坏也没有办法直接考核软件开发人员的责任,这样就致使软件开发人员不会很重视软件开发的质量,往往更关心项目开发的成本和进度。此外,软件开发人员没有制定软件开发计划或者并不能按照软件开发的计划进行工作,为了赶进度经常跨阶段进行开发工作,这样就没法保证软件开发过程的科学性和系统性,软件开发的质量也不能得到保证。软件开发管理人员和技术人员也会影响软件开发的质量。软件开发工作需要他们之间进行频繁的沟通和交流,倘若不能及时沟通,对开发过程中出现的不同认识和误解等等问题不能及时消除,就势必会影响到软件产品的质量。此外,软件开发人员在开发过程中一旦出现流动,就会给软件开发工作带来很大的影响,也不利于提高软件产品的质量。

二、提高软件开发质量方法和对策

1.软件产品质量控制方法。(1)软件工程方法。软件工程的基本方法就是把软件开发过程划分为若干个阶段,在每个阶段开发过程中都设置不同的目标、成本、时间等验收标准,在前一阶段工作通过验收后才能开始下一阶段的工作,这样就会达到提高软件开发的质量的目标。软件工程将开发过程分为软件生产方法、需求分析、软件设计、软件生产工具、测试、验证与确认、评审和管理等8个阶段,每个阶段都以软件质量控制为核心,规范每个操作流程,从而提高软件开发产品的质量。(2)ISO9000-3标准。ISO9000系列标准原本并不能直接用于管理软件制作,而是为制造硬件产品而制定的标准。后推行的ISO9000-3标准为使软件产品达到质量要求,要求软件开发机构建立质量保证体系,明确供需双方的职责,针对所有可能影响软件质量的各个因素都要采取有力措施,作出如何加强管理和控制的对策和措施。ISO9000-3标准叙述了需方和供方应如何进行有组织的质量保证活动,规定了从双方签订开发合同到设计、实现以至维护整个软件生存期中应当实施的质量保证活动,但并没有规定具体的质量管理和质量检验方法和步骤。(3)CMM认证。CMM是一种专门针对软件产品开发及服务的高效管理方法,强调软件开发过程的不断改进和提高,在软件企业中引入CMM,有助于解决软件开发过程中质量控制方面出现的问题。CMM不仅对软件企业工程能力进行评估,更着重于软件开发过程的管理,强调“对软件开发过程进行持续的改进”。CMM通过优化企业开发流程,改善现有的规范、团队配合工作方法,来弥补软件企业对某个项目经理或开发工程师的单纯依赖。软件能力成熟度模型重点是从组织管理方面研究评估软件生产过程,从而提高软件质量。

2.软件开发质量控制对策。(1)合理规划并严格按照计划执行。在进行软件开发之前首先要制定一个提高软件开发质量的保证计划,在开发过程中严格按照计划执行,不急于抢进度,保证软件开发的质量。建立文档记录需要跟踪的工作以及保证软件开发质量所需要的信息。(2)坚持软件评审制度。坚持软件评审是保证软件质量的重要方法,软件开发过程按阶段可大致分为软件需求分析、软件设计、编码和单元测试、软件部件测试、软件验收六个阶段。软件评审工作要贯穿于软件开发的整个过程中,在软件开发的各个阶段都要进行评审,当前软件开发阶段的工作成果达到计划要求以后才能开始下阶段的工作。评审工作可以以会议的形式组织开展,会议要各方面人员都要参加,包括客户、软件管理人员以及软件开发人员等等,通过会议进行沟通交流,最终给出评审结果。在每个阶段评审过程中产生的问题要尽快在本阶段解决,没有解决之前不能进入下阶段工作,这样就可以保证软件开发过程中每个阶段的工作质量都能得到提高。(3)采用先进的软件设计技术和方法。在软件开发过程中应尽量采用先进的设计技术和方法,如面向对象和基于构件的方法,来提高软件设计产品的质量。面向对象的方法优点是能够提高软件的重复利用性,将错误和缺憾最小化,还有利于用户的参与,能够很好的提高软件产品的质量。基于构件的开发方法又称为“即插即用编程”方法,构件可以向软件供应商购买,也可以自行开发,而且可以重复多次使用,然后将编制好的构件插入到设计好的框架中去,从而形成一个大型的软件。如果某个构件不符合开发的要求,可以对某个构件进行修改,不会对其他构件造成影响,也不会影响到整个系统功能。(4)软件质量控制的关键――软件测试。在软件开发过程中,软件测试也是软件质量控制的关键,软件测试主要包括单元测试、集成测试、确认测试和系统测试。在开发的每个阶段都要通过测试,如果测试结果与预期结果不一致,就要查找出软件中存在的问题,针对问题提出解决方案,不断改进软件质量。通过软件测试不仅可以寻找出软件中存在的与软件客户需求不一致的错误和缺陷,还可以节省大量的时间和人力,确保软件开发的质量。开始测试之前要制定好测试计划,确定好测试的范围方法等等。在测试过程中要做好记录,详细记录每个测试过程中的数据,而且每个阶段测试的结果都要进行存档,如果测试过程中出现错误,就要编写错误问题的报告,经过调试解决所发现的问题以后才能进行下阶段工作。(5)注重文档管理。目前很多软件开发商都忽视了软件开发过程中的文档管理,其实文档管理在软件开发过程中起着非常重要的作用,在软件开发的过程中建立并保存文档,有利于软件的使用和维护,有益于软件质量的提高。文档管理要贯穿于整个软件开发的全过程,即软件在每阶段的开发、测试、评估都要保存相关的文档,这样有利于软件的开发和维护,出现了错误有章可循,有助于软件开发质量控制。文档要提供给参与软件开发的各个小组,不仅利于软件开发过程中的交流和沟通,还可以通过文档来控制软件开发的进度,避免赶进度、跨进度工作。在整个软件设计开发过程中,文档会不断进行生成、修改、补充完善,要做好文档的记录保存工作。(6)客户要参与到软件开发中去。软件客户要参与到软件开发的全过程中去,在开发之初对软件的需求不是很明确的情况下,要加强与软件开发人员的沟通和交流,不断了解自身更深层次的需求。软件开发需要多方参与,尤其是软件客户方面的人,在需求调查和分析阶段,软件客户要将自己的需求和软件开发人员进行有效地沟通,使得软件开发人员能够最大限度的了解客户需求,才能按照需求目标开发出令客户满意的软件。在软件测试和评审阶段,客户应按照自己的需求对设计开发的软件进行检测和评审,提出自己的意见和建议,以便在得出结论以后能够尽快及时的得到修正。软件开发人员对于客户提出的意见和建议要按照要求进行修改和完善,及早与用户进行沟通,避免影响验收。

参 考 文 献

[1]张天宇.《中小型软件开发质量控制研究》.《微电子学与计算机》.2004

第7篇:软件设计开发研究范文

1 计算机软件设计的现状

1.1 计算机软件的分类。计算机软件技术主要是对软件进行操作的一项技术。主要研究内容分为两个方面:一是怎样优化相应支撑体系;二是对相应的方法手段进行开发探索。计算机软件系统是可运营的一种系统,已经形成了层次分明的模型体系,主要可以分为以下三类:应用软件;支撑软件;系统软件。

1.2 计算机软件技术的规划。在当代,各个国家对计算机软件的设计都特别重视。很多国家投入大量的人力物力,并出台一系列软件设计政策进行鼓励计算机软件的设计开发。大部分国家主要将开发重点放在计算机软件开发方法上,我国对发展软件业给予了重视,被行业在信息产业纲要里放在了最重要的位置,可见,国家对计算机软件的设计与研发的重视。

1.3 计算机系统软件的研发现状。计算机系统软件是更具硬件特征的软件系统,计算机系统软件分为不同的种类,以后分别具体分析各种不同种类的系统软件现状。

1.3.1 操作系统的研发现状。计算机靠操作系统发挥基本功能,对计算机最为重要。操作系统不仅管理各种硬件,如显示器、打印机等等;同时,也起到对软件的运营进行统筹管理的功能,对软件的运营系统进行操作;可以作为支撑软件支撑相应应用软件,使人机界面更加的先进。操作系统也对用户能够开发应用系统提供保障,是一种基础设施。近年来,计算机网络技术在不断发展,未来的操作系统会朝着更加智能化,网络化等方向发展。

1.3.2 商业操作系统研开现状。操作系统嵌入技术是一种新兴的技术。嵌入技术是把计算机软件与硬件与机电设备进行结合,作为一个新的系统,使得这个新的系统具有很多原来的设备所不具有的优点。嵌入技术在各个领域得到广泛应用。现在,嵌入系统已经产生很多产品并且投入运用,取得了良好的成果。以后,也会越来越引起厂商对这一领域进行投资,促进这个领域的发展。

1.3.3 数据库操作系统研发现状。(1)网络化。数据库系统的重要组成部分是可以支持网络型的,是数据库系统的支柱。对数据库系统研发被各数据库公司以及学术界放在首要位置,作为发展的中心。比如,被微软公司作为公司某项重要计划核心部分的就是SQL Server;(2)数据库系统的安全及相应技术。在现代计算机系统中计算机处于核心地位,人们把注意力越来越多的放在数据库的安全上。当前世界上多数国家都出台了一些数据库系统的安全规定。其中,美国制定的两个规则起到主导作用,分别是《可信计算机系统的评估标准》与《可信计算机系统的评估标准》标准;(3)嵌入式技术。嵌入式技术已经被国内外专家们当作重点进行研究与开发,取得了很大的进展。已经应用在各个领域。这一技术涉及了很多其他的数据库领域,比如移动通信技术、分布式计算技术等领域;(4)软件工程环境研发现状。这项技术主要侧重怎样合理安排方法、工具、技术。这个概念从推出到现在已经延续了40多年之久。软件工程环境是在一起的软件构件,实现工作活动的自动化支持。从刚开始的整体的研发到后来的逐步分散化。上世纪九十年代,CASE工具得到广泛应用,发展成CASE工具集成。

2 计算机软件设计与实现当遵循的原则

2.1 准确抓住用户的需求。由于用户对软件的要求各不相同,软件的设计时为了满足用户的需求,因此,计算机软件的设计要在和客户不断沟通交流及对行业领域进行研究获取用户的需求,才能真正确定软件设计的方向,更加适应于用户和市场要求。

2.2 应当不断重构。计算机软件设计不是一个一步到位的过程,而是循序渐进。设计者对计算机软件的设计是一个不断改进、不断完善的过程,不应该担心软件设计之初有哪些不足,而是应当不断重构,最终使产品达到完美。在真正知道客户的需求之后,应当先进行方案的设计,先进行初级设计,然后在不断完善,逐渐满足客户的所有需求。而不是先设计出一个完美的方案,然后进行修改,这个方案比较急于求成,设计出来的软件优化空间很小。新加功能与对软件的改善应当轮流进行,增加新功能的时候,充分保证现有代码的正确性,同时对代码进行适当的修改,从而使所有的新功能测试都能通过。而对设计进行改善时,应当保证用现有的测试用例能验证修改的正确性。

2.3 应当始终面向代码。所有的软件设计在编写代码之前都是一个想法,是没有现实意义的空想,编写代码是软件设计最有价值的部分,也是将空想变成真实的一种手段。很多完美的想法方案由于代码的不完全实现导致没能达到预期效果。所以,在软件设计的过程中必须将代码的编写放在首要位置,将好的构思,马上用代码表现出来,并且进行对代码的准确性与系统相容性进行检测。

3 计算机软件设计的方法

计算机软件是按照特定的规格进行设计的,根据一些条件,主要有结构化程序设计、面向对象的程序设计、由顶至下设计法这三种软件设计方法。

3.1 结构化程序设计。在计算机软件设计中,具有良好结构的程序,在编码、检测和维护中都比较省力。它的主要流程是先了解用户的需求,以此为软件设计的切入点,根据实际功能将系统分成一些子系统,再根据实现的功能把子系统分割成模块,针对模块布置各个模块的具体要求与说明,明确各个模块是按怎样的方法实现和程序中的其他部分对接。

3.2 面向对象的程序设计。面向对象就是由实例入手,找到实际问题系统里面存在的实体,分析试题的属性、特征等,以此构成各对象类间的结构层次,最后构建出完整的软件系统。主要有封装性、继承性、多态性三个特点。

封装性主要针对数据并且对数据的操作实现一体化;继承性主要针对某类继承它所属代码的属性及操作;多态性则是类等级中各层共享同一函数的名字。

3.3 由顶至下设计法。此方法处理分层问题最有效,将整个系统功能的最抽象表述作为最高层次,从这个层次出发设计子系统,然后依靠这些子系统实现较高层次的系统功能,再以子系统作为基础是基础更详尽的子系统。这个方法可以分清各种复杂的处理层次,并且多个要素间关系清晰。

第8篇:软件设计开发研究范文

    构建软件设计系列课程群构成学生程序设计能力的计算思维、算法设计、程序设计与实现和系统分析能力四个基本要素,关键是提高计算思维、抽象思维、逻辑思维的能力,一两门孤立的语言或算法课程无法完成,这需要从系统工程的角度进行整体设计,组合相关的系列课程构成相应的教学和实践系统,并有一个循序渐进的深入过程,这一过程一般需要经过知识的积累、程序设计课程学习、软件开发实践等不同的环节,也就是要经历启蒙入门,发展提高和开发应用三个阶段[2]。通过贯穿大学四年的程序设计类课程的学习,学生在程序设计启蒙入门、发展提高和开发应用的不同阶段都能够很好地达到各个阶段的教学要求,形成良好的学习习惯,循序渐进、潜移默化地养成程序设计能力。因此,依据程序设计能力不同培养阶段的教学规律,我们应选择对学生程序设计能力培养有着关键作用的课程组成软件设计类课程群,课程群的主要课程可由以下课程组成。1)启蒙入门阶段:计算机导论、程序设计基础、面向对象程序设计等。2)发展提高阶段:数据结构、面向对象程序设计、计算方法、数据库基础、软件工程、Java程序设计等。3)开发应用阶段:网络程序设计、数据库开发实践、医学信息学、信息系统设计、医学图象处理等。建设课程群的目的是把原本相对独立的课程在教学过程中有机融合,前后课程互相呼应,逐步深化,把学生引入门。在课程群内涵建设中,按“点—线—面—体”的思路构建课程群框架,即以每门课程的主要知识点为基础,把程序设计类主干课程串成前后有机衔接的教学“线”,在课程群的“面”上构建课内外相关的任务驱动学习激励机制,最终形成软件设计课程群的体系结构和系统化的程序设计类课程教学框架[4]。在具体实践中,从分析课程群每门课程的知识点入手,从知识点内涵、教学要求、教学策略以及与前驱知识点和后续知识点关系等多个维度建立课程群中课程的知识架构的点、线关系,进而形成相关课程知识点前驱、后续知识点互相融合汇聚的知识面和课程体系。在此基础上通过完善相关课程教学大纲,达到目标明确、层次分明、定位正确、强化基础、拓宽专业知识面的应用型人才培养的要求。

    2建立基于混合式学习的程序设计课程群教学模式

    混合式学习(BlendingLearning)将传统的课堂学习方式和数字化学习方式有机整合,根据程序设计能力培养的启蒙入门、发展提高和开发应用不同阶段教学特点,围绕程序设计能力的“算法设计与分析能力、程序设计与实现能力和系统分析、开发能力”的递进培养目标,从混合式学习课程导入机制、多元化的程序设计课程活动组织策略、课内外学习支持以及教学评价等四个教学环节,从启蒙入门、发展提高、开发应用不同阶段组织开展混合式学习[5-7]。2.1启蒙入门阶段从程序设计能力入门训练入手,其重点在算法设计与分析能力的培养。针对大一、大二学生程序设计启蒙课程主要有计算机导论、程序设计基础等;教学围绕基本知识点训练编程思路、算法设计与分析方法,引导学生入门;教学活动组织中侧重于以班集体为单位的理论和实验教学,同时结合程序设计竞赛、课程设计、大作业等开展课外编程学习;建立BB平台、开发上线ZCMUOJ(ZhejiangChineseMedicalUniversityOnlinejudge:浙江中医药大学在线编译)系统,使之成为程序设计阶段课外学习平台,把师生面对面及借助网络和BB平台的辅导相结合,通过检查平时程序设计作业完成情况和程序代码数量和质量,以及期末的现场程序设计实验考试,进行学习成绩综合评价。2.2发展提高阶段发展提高阶段重点在程序设计与实现能力培养,从软件工程的角度,研究从程序设计到软件设计能力培养。本阶段主要是针对大二、大三学生,主要课程有数据结构、面向对象程序设计、计算方法、数据库基础、软件工程等;该阶段的教学侧重在程序设计的综合性、整体性素养培养,综合相关课程设计任务,以设计性、综合性实验为主,重点围绕软件开发的完整流程开展实践,强调团队分工与协作;以小组协作方式为主,根据各课程知识间的依赖特性从课程群的角度组织开展课程设计与假期实践;同时,强化软件集成开发环境(如VisualStudioTeamSystem、Eclipse等),版本控制工具(如CVS等)等协同开发环境的应用;教师的角色也随之从“教”师变为“导”师,提供实践思路与方法的指导,引导小组成员协作学习、角色扮演、讨论交流;教学评价侧重于程序开发、文档撰写、软件评测、团队协作等多个角度,通过小组自评、组间互评与教师评价等方式综合考量。2.3开发应用阶段开发应用阶段重点在系统分析、开发能力培养,软件团队合作开发训练,基于常用团队协作软件开发平台的软件开发训练。针对大三、大四学生结合计算机应用领域,特别是我校医学领域信息开发的优势,从医学信息学的角度,开展跨学科的医疗卫生信息化项目开发实践。该阶段课程群主要课程有医学信息学、信息系统设计、Java程序设计、网络程序设计、数据库开发实践、医学数字图象处理等;该阶段以项目实训、企业实践为主,重点围绕医学信息工程软件开发、网络管理软件、数据库管理软件开发等以及软件测试等多种角色开展教学;以团队分工协作的方式开展课程设计、项目实训和科研项目开发,并与相关卫生信息化企业合作开展企业实践,组织学生参与医院信息化项目研发;由相关教师组成导师组,以客户经理、项目经理等角色给予项目团队方向、思路、策略的指导,教师参与并鼓励学生借助网络等相关资源共同研究解决完善相关问题;通过项目答辩的形式检查实训成果。

    3以任务驱动的课内外程序设计推进机制

    程序设计能力的培养,仅靠课内的教学是远远不够的,需要建立完善的课外程序设计学习机制,激发学生学习积极性和学习潜力,为此,我们主要采取程序设计类课程布置的课外大作业、课程设计任务以及参与教师实际科研项目开发等多种途径来驱动学生的课外参与程序设计能力训练,同时建立多种形式的验收讲评和评价激励机制,任务驱动与激励机制的结合是引导学生课外开展程序设计一种有效措施[8]。3.1启蒙入门阶段以程序设计竞赛为抓手在低年级学生的程序设计能力启蒙入门阶段,以实施课外程序设计竞赛为抓手,从程序设计能力培养与训练入手,根据程序设计能力的教学规律,建立不同难度、不同层次的课外程序设计训练和竞赛为主的学习激励机制;设计开发适合我校学生特点的ZCMUOJ系统,使之成为学生参与程序设计的主要学习支持平台。为了吸引同学参与课外程序设计,我们建立了周赛、月赛、学期比赛以及单挑赛等多种形式的程序设计竞赛机制,刺激学生的参与兴趣。平均每周组织一次程序设计周赛,每月组织一次个人单挑赛和团体月赛,每学年分别组织学院比赛和学校比赛,参与人员覆盖了计算机专业一二年级70%学生。以程序设计竞赛为主要抓手的程序设计能力培养使学生程序设计能力明显提高,低年级学生完成课程设计的编程难度和代码数量明显提高,学习程序设计的兴趣明显上升,特别是在ACM比赛中,我校2011年浙江省ACM程序设计竞赛中获铜奖三项;2011年4月,我校在ACM-ICPC亚洲赛区晋级赛福州站比赛中获铜奖1项,学校排名25位;在2011年9月第36届ACM-ICPC国际大学生程序设计竞赛亚洲区预赛大连站比赛中获铜奖1项。3.2发展提高阶段以课程设计为抓手大二和大三学生已初步掌握程序设计基础,需要提高发展程序设计能力,突出软件工程角度的软件工程化开发能力的培养。软件团队合作开发训练采用企业通用的集成开发环境和软件版本控制工具进行软件开发训练。此阶段主要采取相关课程的课程设计和二年级小学期的集中课程设计等多种形式实现程序设计。例如在“数据库开发”课程中,采用案例教学,启发学生开展课程设计,通过剖析数据库开发案例,详细展开需求分析、模型设计、程序设计、程序测试以及系统等各个环节的实现方法,引导学生从单一程序设计到较为复杂的软件系统开发的过渡,培养学生软件工程素养和软件开发能力。3.3开发应用阶段以项目开发为抓手大三和大四学生已经掌握了软件开发的基础,但需要更多的实际项目开发实践,以便迅速提高软件开发能力。对此,我们采取课程教学中的模拟项目开发和实际软件项目开发相结合的激励机制。针对全体学生,在后续的医学信息学、信息系统设计等课程中开展模拟软件工程开发全过程的程序设计。例如在医学信息学课程教学中,把完成一个医院信息系统子模块设计开发作为贯穿于整个教学过程的任务,要求人人都参与项目开发,并且要用软件工程的方法来实现项目开发。以班级为单位,开发医院信息系统的一个子系统,模拟实际项目开发,分层管理,班级设立项目经理和技术总监,负责项目实施管理和技术管理,3至4人为一组,设立项目组长,负责项目模块的开发,要求每组完成需求、概要设计、详细设计和软件测试四个文档,并且结合医院信息系统参观调研,完善需求分析和设计。通过课程设计,尝试对软件设计全过程,特别是软件开发团队的合作,这对提高同学们软件设计能力有很大的帮助。同时,在课程设计成果考核评价中,我们让项目团队中每个人上台宣讲自己所做的工作、演示系统,学生代表评分与教师评分相结合。自2005年级至2008年级,共五届490名计算机专业的学生参加医学信息学课程设计,共完成22个门诊或住院子系统,100个子模块。同时,通过公开招募考试等形式,召集一些软件开发能力较强或学习能力较好的学生参加寒暑假教师的实际科研项目开发,并使之形成班级软件开发的骨干力量,进一步带动整个班级的软件开发氛围。

第9篇:软件设计开发研究范文

关键词:教育软件;软件设计;创意计算;所取成果

中图分类号:TP311

教育软件的开发并不是一蹴而就的,是通过众多的过程之后才能够完成的。比如说进行教育软件的开发首先要进行的就是对环境进行开发,其次就是教学设计,软件设计,后续的阶段就是教育软件的实现、评价以及维护环节。

将创意设计应用到教育软件的设计之中,所具有的含义即利用产品设计学科中的思想以及规律等等来对教育软件进行设计。教育信息化体系如图1所示:

图1

1 教育软件

教育软件可分为广义以及狭义的两个方面。广义上的教育软件就是一切的基础就是计算机软件技术,所有的替教育发展提供服务的软件都可称之为教育软件。这种软件包含的有教育资源软件、教学辅助以及支撑软件意义行政管理软件等等的一系列软件。狭义上的教育软件就是软件产品是具有特定的教学内容的并且还具有自身独特的教学目标。这类软件还包含的有自学以及教学辅助软件。狭义上的教育软件中的教学辅助软件还可分为课件开发软件以及考试类软件等等的软件。

教育软件具有非常多的意义:其一、在对教育软件进行开发的时候,有必要深入的分析学习过程以及规律,而这项工作并不简单,通常将人类的学习过程以及人类对事物的认知规律认为是人类大脑活动中最为复杂的过程。其二、要想对教育软件进行有效合理开发,就要深入的理解学科知识并且还要对这些学科知识进行综合。其三、教育软件对人机界面有着非常高的技术要求,这样的原因就是因为在对教育软件进行应用的时候有大量的人机互动才能够对知识有着良好的理解。其四、教育软件的开发工作所涉及的方面主要有两个,一是教育领域,二是计算机领域。因此要想对教育软件进行合理的开发,这就需要上述两个领域的专家共同协作,一起进行开发。

教育软件的开发和普通软件的开发有很多地方都是相同的。主要有以下的几个过程:环境分析教学设计软件开发编码实现软件评价软件维护。

教育软件的开发相比较普通软件开发多了众多具有科学背景的技术人员,不仅仅这样在对教育软件进行开发的指导思想就是教育思想理论。环境分析工作主要就是分析教学目标以及使用的对象等等;教学设计工作主要要做的就是确定教学内容以及将知识结构给设计出来;教育软件设计要设计的是整个教育软件,包含各个不同的方面;实现编码的工作就是凭借教育软件设计内容进行软件开发编码;对教育软件进行评价主要就是对教育软件的质量进行评价还有就是要回答满足教学需求的部分的问题;最后的一步,软件的维护,主要就是跟随教学需求的变化,升级修改教育软件等等工作。

2 创意计算

创意,早期定义就是能够将“新的”、“有用的”产品生产出来的一种能力。在21世纪,最缺乏的就是创意。创意可以应用的领域非常的广泛,无论是个人还是社会都能够成为创意的实施对象。

创意计算是一种新兴领域,直观对创意计算的解释就是通过采用创意来进行计算。但是在教育软件设计工作中,创意计算具有独特的地位以及意义,在计算机软件工程领域之中称创意计算――软件开发。所以在计算机软件领域里面对创意计算的直观解释就是采用创意来对希望的软件进行开发。创意计算中的“创意”指的就是:采用非计算机软件领域的其他类似物理、化学、艺术等等的学科的领域思想以及理论来对软件进行开发。所以,跨学科则是创意计算所有特点中最大的一个,正是由于创意计算的这个特点才能够为软件的开发提供一些新意。

当今社会已经对创意计算有了一定的注意度,受重视度也在日益提高,创意计算能够将在传统教育软件设计开发中所遇见的业内无法解决的问题给解决掉,为教育软件的开发所作出的贡献是非常巨大的。创意计算所涉及的学科非常大多,涉及到物理、化学、教育以及艺术等等的领域。

因为创意计算出现的时间并不是很长,所以创意计算的研究所处的阶段还是初级阶段。虽说创意计算(Creative Computing)已经有了自己的思想,但是在很对方面的研究还远远达不到理想的水平,存在的问题还是有很多的:(1)对创意计算所能够解决的问题并没有一个系统的归纳性总结;(2)对合适的学科思想理论以及规律方法的选择并没有深入的研究,取得的成果不多;(3)由于创意计算具有跨学科的特点,所以对软件研究员的挑选以及组织要有一定的模式,但是现在的这方面的研究程度也是不够的;(4)教育软件的开发研究涉及的领域较多,所以需要的研究人员也是具有不一样的学术背景的,不同学术领域的研究人员之间的研究交流以及合作也没有良好的研究程度;(5)创意计算作为新兴领域,这个领域的研究还缺乏专门的研究方法,研究创意计算的方法所具有的问题有以下几点:1)现在,就现在拥有的学术领域中存在的众多研究方法是否能够利用其中的一种或者几种来对创意计算领域进行研究;2)若是有合适的研究方法,还需要考虑的就是所选的研究方法是否对研究创意计算适合;3)用这些研究方法来研究创意计算是否足够;4)在每一个领域都有着具备自己独特特点的方法,所以就创意计算领域而言,是否有必要提出新型的研究方法来研究创意计算;5)若是有必要提出新型的研究方法来研究创意计算,新型研究方法的提出方法又是什么。

3 创意计算在教育软件研究中的应用

创意计算应用与教育软件设计的研究要提供研究方法,促进研究创意教育软件设计方法。研究教育软件,所研究的就是教育软件设计方法的创意方向,研究研究传统教育软件过程中所存在的问题;凭借这些问题,研究出创意教育软件设计方法的研究形式;对研究出的研究方法进行应用,提供应用实例。研究内容图示如下:创意方向研究方法应用实例。

创意计算所能够解决的问题在于:没有融入教育思想、不用考虑设计的效率、适应需求的程度不够等等。这三个就是现如今的软件工程领域不能够解决的问题,进行软件开发,就会有问题出现,所以在其他学科寻找觉得方法是非常有必要的。传统的教育软件设计方法存在如下问题:没有融入教育思想,缺乏关于设计效率的考虑、没有将设计数据结构包含在其中,适应需求变化的程度不够,软件重用现象解决起来比较困难,对研究设计人员以及环境的设置考虑有所欠缺等等。

4 结束语

计算机软件工程领域发展到现在,存在的问题依旧是很多的,无法解决的问题也是很多的,创意计算的目的就是将其他领域方法、思想引入到教育软件设计领域,解决这些无法解决的问题。创意计算所具有的发展空间还是非常大的。

参考文献:

[1]张璐.创意计算应用于教育软件设计研究方法的研究[D].东北师范大学,2013.

[2]史凯.基于网路的中小学教育软件的研究与设计[D].同济大学,2008.

[3]林广成 教育软件的人机界面设计研究[D].首都师范大学,2005.

[4]方海光,张景中 教育软件可用性评测研究[J].电化教育研究,2008.