软件专业专科毕业论文范文
软件专业专科毕业论文范文
软件技术与硬件技术相比较,其发展的空间更为广阔、应用的领域更为广泛,因此计算机软件技术得到了关注和发展。下面是我为大家整理的计算机软件技术毕业论文,供大家参考。
摘要:目前,高职软件技术专业的教学改革势在必行,本文介绍了问题研究的必要性和Moodle平台的功能,探讨了基于Moodle平台进行混合式教学的教学过程。
关键词:Moodle平台;混合式教学模式
1概述
目前,高职学院主流的教学主体为教师的教学模式早已不能满足社会对人才的需求。这要求我们积极进行教学改革开展以学生为主体的教学模式的探索。混合式教学模式是教育信息化发展而出现的一种新教学模式。其意义在于将学生在网络上的自主学习和传统课堂上的教学相融合,是多种教学方式、学习方式和教学媒体的整合。因此,基于Moodle平台的高职软件技术专业混合式教育模式研究具有十分重要的意义。
2Moodle平台简介
Moodle是一个开源课程管理系统(CMS),是一个免费开放源代码的软件,以社会建构主义为其主要的理论基础。Moodle是ModularObject-OrientedDynamicLearningEnvironment的缩写,即模块化面向对象的动态学习环境。在基于Moodle平台的教学活动中,教师和学生都是主体,彼此相互协作,共同建构知识。Moodle平台有主要三个方面的功能:课程管理、学习管理和系统管理,其中课程管理包括课程教学组织、教学资源组织、学生学习活动组织、学生评价组织等管理;学习管理包括:记录学习情况、下载学习资源、开展协作活动、测验与作用等;系统管理包括系统模块管理、课程管理、模块管理、用户管理和系统参数设置。Moodle平台有系统管理员、教师和学生三种用户角色。其中,系统管理员主要负责搭建Moodle平台的软硬件环境,可分为课程管理员和网站管理员。课程管理员负责课程的创建和管理,网站管理员负责对Moodle平台进行配置和维护。教师角色中的主讲教师和辅导教师是按照权限不同来分的。主讲教师可以组织教学活动,建设教学资源,进行日常教学管理。可以为学生分组,添加或注销学生,可以授权辅导教师,可以设置课程“密钥”。辅导教师不能参与课程设计,只能组织学生的管理成绩、课外讨论、查看日志等,在日常教学过程中监督学生的学习活动。在指定教师时,如果不特定教师编辑权限,该教师就默认为辅导教师。学生角色可以在线学习网络课程资源,参加在线测试,在线进行讨论,并将自己的学习历程以及学习心得写在自己的博客上。学生可以建立一个在线档案,包括照片和个人描述。
3基于Moodle平台的高职软件技术专业混合式教学模式的教学过程设计
混合式教学是指融合不同的教学模式和不同的应用方式来进行教学的一种策略,它结合了课堂教学和网络教学的优势。下面以《Java程序设计》这门课程为例来介绍如何基于Moodle平台进行混合式教学模式的教学过程设计。
3.1混合式教学模式的教学资源设计
教学资源是混合式教学模式的基本保障,主要指与所授课程相关的教学材料,包括课程的教案、课程的课件、实训指导、教学大纲、复习题、拓展资料等。随着慕课的兴起,在《Java程序设计》课程的教学资源设计中,教师可将课程的教学内容制作成慕课放在Moodle平台上供学生课余时间观看。既方便了课堂上未听懂的学生进一步学习,也为基础好的学生提供了预习的资源,增强了学生对知识的掌握程度。
3.2混合式教学模式的教学课程内容设计
《Java程序设计》课程的操作性强,采用任务驱动的教学方式能督促学生课前预习、课后复习,提高动手能力,从而激发学习的兴趣。下面以《Java程序设计》中《类和对象实现》一节为例,说明教学内容的设计。
3.2.1教学目标
3.2.2知识目标
①类与对象概念与特征、属性和方法;②类与对象的关系;③定义类的语法;④创建类的对象,使用对象的步骤。
3.2.3能力目标
①运用面向对象程序设计思想分析类和对象特征;②会创建和使用类和对象。a教学任务“人”是社会主体,日常生活中要想描述一个人主要包括姓名、年龄、性别、体重、家庭地址等信息。任务要求在计算机中使用Java语言对“人类”进行描述,并用Java代码实现,最后打印出人的信息。b实训任务第一,编写一个电脑类,属性包括品牌、型号,方法为显示电脑信息,并测试类;第二,编写一个手机类,属性包括手机品牌、手机型号,方法为显示手机信息,并测试类。
3.3混合式教学模式的课堂教学活动设计
课堂教学活动设计是混合式教学模式的关键。Moodle为教师和学生的互动提供了很好的平台,学生可以针对教学内容展开讨论或者提出问题,也可以发表自己的心得体会。教师可以在教学过程中设置测试来及时检验学生的学习效果,还可以创建一些趣味性话题,鼓励学生参与并给予加分奖励,同时还要在Moodle平台中跟踪学生的发言,并及时给出反馈。下面以《Java程序设计》中《类和对象实现》一节为例,说明教学活动的设计。课前:将教学课件上传至Moodle平台,供学生预习。课中:①(10分钟)利用Moodle平台中的“测验”功能,针对上创建一套试题来考查学生对上节课知识的掌握情况。②(30分钟)利用课件和案例演示讲解本次课知识点。③(35分钟)布置并指导学生完成实训任务。④(15分钟)总结并布置作业。课后:创建讨论话题,鼓励学生积极参与。
4总结
基于Moodle平台的混合式教学模式,能够激发学生学习的兴趣,提高学生的自主学习能力,营造良好的学习环境。同时也存在一些问题,可根据每个学校的需求,进行二次开发,增加功能,更好地为教学服务。
参考文献:
[1]李明,胡春春.基于Moodle平台的“合作—探究”式网络教学平台研究[J].吉林省教育学院学报,2011(3).
[2]熊小梅.基于Moodle平台的网络课程设计及应用[J].教育与职业,2014(02).
[3]唐春玲,蔡茜,张曼.基于Moodle平台的远程教育的实践与研究[J].网友世界,2014(5).
[4]赵俞凌,鲁超.基于Edmodo平台的高职写作课程混合式教学设计[J].金华职业技术学院学报,2015(1).
【摘要】近年来,在社会经济快速发展的同时,一定程度上带动了科学技术的进步。而在此过程中,智能手机与个人电脑得到了发展,并且逐渐融入到人们日常的生产生活当中,被广泛地应用。其中,在智能操作系统当中,安卓操作系统占据重要地位,并且其开放性相对明显,这样一来,智能手机与个人电脑应用的优势就更大。由此可见,在安卓操作系统的基础上开发软件具有重要的现实意义。本文对安卓操作系统的开发平台进行了全面分析,并重点阐述了在安卓操作系统基础上的应用软件开发。
【关键词】安卓操作系统;应用软件;开发;分析
众所周知,信息技术在其自身的发展过程中,电子产品的丰富性与多样性充分地展现出来,并且使得人们生活方式有所改变,一定程度上为人们日常生产与生活带来了便利。正是因为安卓操作系统自身独特的开放性特征,使其同电子设备实现了有效地沟通,并且始终能够满足用户不同需求。现阶段,安卓手机已经被广泛使用,并且已经普及,在此背景下,使人们开始重视其便携性问题,希望能够时刻进行操作,所以,在安卓操作系统的基础上,应该积极开发出相应的应用软件,这是当前安卓操作系统工作领域中亟待解决的问题。
1安卓操作系统开发平台
在安卓操作系统平台中,其主要的构成部分就是应用软件、中间件以及用户界面和操作系统,给予平台各层分离有力的支撑与保障,使得各层中间都能够保证分工的明确性[1]。通常情况下,安卓操作系统中的应用程序框架可以有效地提供API,同时还能够合理地设计出其自身特有的功能模块,这样一来,还可以实现为其他应用程序提供有价值的使用依据。在安卓操作系统当中,其最核心的应用程序就是联系人、网络浏览器、日历、SMS应用程序以及电子邮件等等。在编写并设计应用程序的过程中,开发工作人员需要对Java语言进行充分地利用,这样才能够确保系统程序和开发程序所包含的资源实现共享。在此基础上,安卓操作系统还能够向组件提供相应的C/C++库集合,然而,开发工作人员不能够对其进行直接调用,一定要根据上层的应用程序框来实现C/C++库的应用[2]。通常情况下,安卓操作系统库的构成内容是媒体库、FreeType、界面管理和SQLite等多种系统。
2基于安卓操作系统应用软件开发的重要意义
随着科技发展与人们生活水平的提升,始终对个人电脑与智能手机在社会经济当中的发展情况产生影响。现阶段,我国智能手机市场始终处于爆炸式增长的趋势,而截至到2013年,智能手机的普及率也迅速上升,将近2/3的国民都已经拥有智能手机[3]。然而,国民拥有智能手机的技术水平也处于上升的阶段,其中,智能手机终端CPU处理能力以及存储和用户交互等方面的能力都出现了明显的提高,以上内容也同样是智能手机关键性的指标,所以,一定程度上对于安卓操作系统应用软件的开发工作提供了有力的硬件基础。基于安卓操作系统的应用软件开发能够保证使用者手中安卓智能操作系统同社会各行业经济发展过程中所使用的电子设备实现有效连接,进而能够为使用者提供更具特色与专业化的服务。若安卓智能操作系统应用软件能够得到广泛地应用,必然会为人们的生产与生活带来便利与实用价值,进而更方便人们的工作与生活。
3安卓操作系统概述
3.1安卓发展史
安卓股份有限公司位于美国加州,公司成立于2003年,并在2005年被谷歌所收购。谷歌公司的主要目标就是要创建标准化与开放化的安卓系统移动客户端平台[4]。同其他智能手机的操作系统相比,安卓操作系统的开放性更加明显,并且能够在其实际运行的过程中始终处于开放状态,同时还能够同其他电子设备实现数据链接,在此基础上,更好地实现高级操作。安卓系统是智能手机当中的一种智能操作系统,所以,其更新的速度相对较快,当前最新版本已经是Android6.0.1(M)操作系统
3.2安卓开发平台结构与特征
(1)应用程序层。
智能手机操作系统中的安卓系统,其自身就能够为智能手机的运行提供相应的应用软件,而且,其基本的应用软件都是操作系统本身所配置的,主要的表现形式就是系统应用[5]。然而,在智能手机实际运行的过程当中,这些应用软件同其他的应用软件共同享受同等资源的支配权利。
(2)应用程序框架。
在智能手机操作系统当中的安卓操作系统,本身明显的特征就是能够支持使用者的软件运行,但是,需要基于应用程序框架。而且在安卓智能操作系统当中,各应用软件都能够设计出特有功能模块,只要保证功能的设置与应用程序框架的具体需求相吻合,就能够获取安卓系统有力的支持,最终同其他的功能模块实现信息的交互。
(3)内核设置。
安卓系统是基于Linux3.0发展起来的,所以,该系统的核心就已经集成了Linux的绝大多数特点[6]。而且,其中主要部分就涉及到安卓系统安全认证及网络协议栈等等内容。但是,也正是这种智能集成,使得安卓系统得到了全面发展,也确保该系统实现了层叠式体制结构的构建,积极地提高了安卓系统实际运行的效率。
3.3安卓应用系统基本组件
(1)应用表示层。
在应用软件实际运行的过程中,该组件能够有效地保证应用软件系统同用户的交流,并且在运行时,表示代码需要以特定形式表现,这样能够合理地缓解了系统内部设置的压力。
(2)无可示界面。
该组件同应用表示层的地位同等,都是单独安卓组件,但是最主要的差异就在于,该徐建使用者根本不能够在系统后台运行,而且不能够看到实际的运行状态[7]。同时,由于无可示界面自身的设计特征,无需同用户信息交互,但是却始终为其提供服务,因此,也可以将其当作无形用户界面。
(3)接收广播通知组件。
该组件同事件监听器相似,属于事件推送机制,而在其内部,将安卓应用当中的其他组件作为事件来源信息来进行推送,这就是该组件具体的服务内容。
(4)安卓开发环境搭建。
安卓智能操作系统是开放型的操作平台,所以,在安卓操作系统基础上所开发设计的应用软件,仅对系统原有安卓系统加装系统开发软件即可,这样就能够实现安卓系统应用软件开发。
4Java多线程编程
要想实现Java多线程,就需要积极地运用Thread类子类,使用覆盖方法,即run()[8]。把所要执行代码添加至上述方法当中。但是,这种实现方法存在自身不足,如果该类已经继承另一类,那么就无法对该类继续继承。其次,可以建立Java程序接口,利用该接口用户命令信息能够通过运行命令的方式重新编写命令,并且在重写以后沿数据接口能够直接送至电子设备命令执行阶段,进而有效地提升电子设备命令执行的效率。
5基于安卓操作系统手机遥控PPT播放软件的开发
5.1实用性分析
由于PPT演示实际应用简单,并且图文并茂,所以,在报告或者是会议当中被广泛使用,是一种信息展示的有效形式。然而,传统PPT的展示需要会议的主持人员或者是演说者使用鼠标对PPT的文件播放进行控制。这种方法在实际的应用过程中,为了确保PPT资料的展示具有一定的匹配性,所以,演讲者与会议的主持者始终在电脑旁边,这样就会影响到演讲者个人发挥。在科技快速发展的背景下,激光笔代替原有鼠标,对演讲者来说是一种解放。然而,在PPT书写与绘画要求方面并未得到满足,因此,导致控制方式与演示需求间存在一定的供需矛盾,所以,必须要设计出能够脱离鼠标的一种演讲方式。正因为安卓智能手机系统具有一定的开放性,并且,其处理器的效率较高,所以,大尺寸高分辨率的屏幕都能够在手机中显示并书写。
5.2系统设计
这种PPT播放软件通常被使用在个人电脑中,其架构与系统相吻合,可以被划分为两部分:①客户端;②服务器端。客户端就是在用户电脑中所运行的PPT程序,然而,服务器端则是网络架构服务器的一种链接形式[9]。在此范围内,客户端可以利用网络通信以及其服务器来实现通信。由于这种应用软件相对成熟,所以,其架构与操作系统都十分完善,可以同其他电子信息系统实现链接,并且实际的开发环境十分优秀。设计应用软件的时候,可以将其分成服务器的子系统与终端的子系统。在PPT应用软件当中,服务器端子系统的应用是一种有效地改进,并且被集中于软件系服务器端,可以在服务器端加装自己设计的手机遥控PPT播放软件服务器端。这种方法能够保证PPT系统当中的服务器端同移动终端子系统实现命令信息交互,并且实现移动终端子系统更好地控制手机遥控PPT播放软件。服务器的子系统,其主要的任务就是实现终端PPT文件发送的接收与解析,并且接受终端的控制命令等等。而移动终端的子系统,其主要的工作内容就是发出系统运行命令,同时需要对服务器子系统反馈PPT页面信息予以接受。另外,还应该不断强化移动终端的子系统,使其画板功能更丰富,确保其在手机遥控该软件的过程中,能够有效地下达命令,确保使用者能够以多种方式操控PPT展示。
5.3软件测试与运行结果的展示
完成手机遥控PPT播放软件的编程设计工作后,必须要对其实际的运行状态予以检测,进而确保该软软件具有一定的实用性,同时,还需对其设计效果予以客观地评价。文章对手机遥控PPT播放软件及PPT的展示能力进行了实际检测,并且真实地验证了该软件的功能与效果。在实际的测试过程中,以不同移动数据终端同手机遥控PPT播放软件的服务器子系统实现链接,并且在测试的过程中确保软件自身链接的安全,在移动数据终端处输入相对复杂的信息内容,并且,该软件仍然可以在电脑的页面中快速反应出智能手机具体的指令信息内容。由此可见,站在客观的角度上来看,手机遥控PPT播放软件的设计是成功的,同时也证明了在安卓系统基础上开发应用软件的可行性,实际所开发的应用软件是具有现实应用意义的。
6结束语
综上所述,在智能手机发展和更新的背景下,很多人开始意识到随身通信工具的重要作用,所以对于智能手机更加重视。因为智能手机内置处理器处理能力极强,并且应用程序相对丰富与多样,因此,在人们的日常生产生活当中被广泛应用。当前,安卓操作系统是智能手机重要的操作平台,并给在市场中占据较大份额,所以对于社会发展具有积极地推动作用。由此可见,在安卓操作系统基础上开发应用软件并及时进行更新具有重要的积极作用。
参考文献
[1]杨潇亮.基于安卓操作系统的应用软件开发[J].电子制作,2014(19):45~46.
[2]饶润润.基于安卓操作系统的应用软件开发[D].西安电子科技大学,2013.
[3]王子榕.浅谈基于安卓操作系统的应用软件开发[J].通讯世界,2015(14):220.
[4]李帅.浅论基于安卓操作系统的应用程序开发[J].电子制作,2015(2):87.
[5]乔頔.Android系统应用软件3D界面的设计和开发[D].中国人民大学,2012.
[6]朱婷婷.基于Android平台的PKM软件的研究与设计[D].浙江师范大学,2012.
[7]尚忠阳.一种基于安卓手机的定位服务应用软件的设计与实现[D].北京邮电大学,2014.
[8]伍贤珍.基于Android平台的智能电话应用软件模块设计与开发[D].哈尔滨工业大学,2013.
计算机专科毕业论文
随着我国社会经济的不断发展,计算机信息技术也逐渐普及。下面是我为大家整理的计算机专科毕业论文,供大家参考。
【摘要】本文尝试从计算机软件技术课程教学出发,将CDIO的教学理念融入到平时授课过程,培养学生对课程知识的掌握,更重要的是培养学生团结合作能力。通过一段时间的实践表明,基于CDIO的课程教学能够提供学生自主性和创新性,提高学生学习兴趣和解决问题的能力。
【关键词】教学改革;CDIO;实践能力
1引言
计算机软件技术是一门软件设计的基础知识、方法与实用技术相结合的课程,为计算机软件应用开发、技术管理工作奠定理论基础,目前课程教学多是以传统理论课堂教学结合实验教学的模式进行,学生反映上课即使听懂遇到实际问题时也不知如何下手解决,尤其编程能力弱的学起来更加吃力,通常存在以下几方面问题。(1)课程涉及知识点多,理论性强,要求学生要有较强的逻辑思维和分析能力,尤其有具有较好的编程功底,这使得学这课程之前让部分学生产生畏难情绪。(2)实验课程中学生独立完成的是一些已有结论的验证性实验,以致学生软件编程能力得不到培养和提升。(3)课程考核以闭卷理论知识点考核作为重点,学生为了应付考试,可能死记硬背一些概念甚至一些编程题目,学生素质和实践能力得不到有效的培养和训练。针对以上问题,按照课程特点以及教学规律相应进行一些教学改革探索,以CDIO教学模式(构思Conceive、设计Design、实现Implement、运作Operate)进行每个教学环节落实,让学生以自主主动地、有机联系地方式学习。CDIO模式与传统的以传授知识为主的教学模式相比,更强调知识的运用和个人能力的培养。它要求我们在教学中,既要注重基础知识的传授,又要注重创新、设计和知识的综合应用;既要强调个人专业能力的培养,又要提倡团队合作精神的培养,这种教学模式能开拓学生的创新精神,全面提升学生的综合素质,让学生掌握扎实的基础知识,培养其责任感和团队合作精神。
2教学改革措施
目前,计算机软件技术教学改革主要从两个方面进行,即教学内容的改革和课程实验部分的改革。
2.1教学方法设计[1]
基于CDIO教学理念,在教学过程中,以项目为牵引,以任务为依托,把课堂教学环境模拟成CDIO教育环境,即以项目构思、设计、实现和运行的生命周期为载体来组织教学。具体实施过程如下:
(1)首先选择具有代表性的项目任务,整个项目具备详细的系统开发过程,有较完整的系统结构、及基本需要的一些功能模块,在功能模块中有数据能演示,比如学生成绩管理系统。
(2)在教学过程中,根据教学进度和教学内容,向学生详细地介绍项目任务的构思、设计、实现和运行各个环节,从项目任务的需求分析,到各功能模块的设计与实现,到后期的运行和维护等。尤其一些关键功能模块的实现,为了便于、强化学生理解,可以设计一些类似的小任务。
(3)通过项目任务的贯穿,可以对已讲授的知识点进行总结,对后续课程的知识点以设问方式引出,引导学生积极主动思考,寻求解决方案。通过这种使前后知识点有机联系起来,使课程知识结构更系统。
2.2实验教学设计
以往实验课都是一些验证性实验,学生通过查找互联网翻阅书本很快能找到解决路径。加上现在实验课时有限,通常布置一些小的项目,尽量涵盖课堂教学所涉及知识点,比如布置编程实现计算器。4-5人组成一个小组,以组长牵头组织大家分析,分配任务,利用课余时间共同协作完成。在这过程中包含一个CDIO项目周期[1](构思———需求分析、设计———实施方案、实现———编写代码、运作———作品测试、演示等)。实验课各小组汇报并演示所开发设计的项目。根据演示作品功能完整性、美观性等方面综合评价作为实验考评的依据,在这过程中又培养了学生独立思考,分析问题解决问题的能力,学生间合作沟通能力也得到锻炼。
2.3积极参与各类竞赛
多年来,我们都鼓励学生参加蓝桥杯大学生程序设计大赛等类似比赛,通过参与比赛,学生编程能力得到快速提高,对课程基本概念和基础知识的理解也会更上一个台阶,牢固掌握所学知识,同时通过比赛拓展了学生的视野,学习目的性更强更明确,学习积极性相应地也提高了。这种做法也是符合CDIO理念,提高学生系统分析能力编程能力的。
2.4教改存在问题
教改中存在最大问题可能是项目任务资源不足,类似教材不多,可供参考的有限,每个项目任务要具有代表性同时又包含各知识点,需要花大量的时间编制。经过一段时间积累应该素材不断会增加,并在原有基础上不断完善。
3结束语
CDIO理念在强调学生理论基础知识的同时,注重培养学生理论应用能力、团队合作能力。针对当前计算机软件技术课程教学过程中存在的问题,结合CDIO教学理念对学生的要求,探讨以项目为中心、以任务驱动教学,激发学生学习兴趣,培养学生的CDIO能力,取得了较好的教学效果。
参考文献:
[1]周立章.基于CDIO工程教学模式的C++程序设计教学改革探索[J].大众科技,2011(10):208-210.
[2]邱胜海,高成冲,王云霞,等.基于CDIO模式的数据库课程实验项目设计[J].中国现代教育装备,2012,157(21):43-45.
摘要:提高教学质量是高等院校各项工作的重中之重,而教学管理是提高教学质量的重要途径,加强教学管理对规范高校各项管理工作和提高教学水平起着十分重要的作用。随着高等院校计算机专业招生规模的日益扩大,学校教育资源有限以及学生数量不断增加等因素,使得计算机专业教学的开展存在很多问题。文章立足于计算机专业的发展现状,探讨了当前计算机专业在教学管理当中普遍存在的一些关键问题,讨论了如何建立科学、合理的教学管理模式,从管理者、教师和学生三个角色对计算机专业建立完备的教学管理模式进行分析和探讨。
关键词:计算机专业;教学管理;教学质量
教学质量是体现高等院校培养高质量人才、深化学校教学水平的一个重要指标,提高学校的教育质量,需要制定一套完善的教学管理模式。构建科学、合理、可操作性强的教学管理体系,有助于及时发现问题与不足,为领导者制定管理制度和工作规划提供依据。在当前计算机人才需求日益增多的现实背景下,开展计算机专业教学管理模式和制度建设的研究,能够推动计算机教育教学质量的长期发展,提高人才培养质量,这对推进计算机专业人才创新能力和动手能力具有重要的现实意义。
一、计算机教学管理模式的内涵
建立完善的教学管理模式,有助于及时发现教育教学过程中存在的问题,并能有效地解决问题,从而不断提高教育教学质量,最终实现高技能人才培养目标。学校应该有一个专门的队伍来进行教学的督导,督导者需要从学校的现实条件和发展计划出发来对教学部门的教学管理工作进行总的评价和指导,同时对不同的专业和系别进行具体的规划。针对计算机专业,要保证学生学习到计算机专业基础知识,同时要突出学生专业方向的培养;要能够满足社会或行业、企业用人需求,即高等院校的人才培养目标、课程标准或教学大纲、课程安排、教学内容、教学过程等要满足用人单位的需求以及计算机发展的方向;还应该满足国家创新性人才的培养,鼓励学生以及优秀青年教师勇于实践大胆创新,提高学生的团结合作意识以及沟通问题的能力。总之,督导者不仅要起到严格把关的作用,同时还要做到长期提供优质服务,广泛收集各种建议和意见,尽可能给学生和老师创造宽松有利的学习条件。计算机教学质量管理中教师具有极其重要的地位,要不断帮助和促进教师改进教学工作,不断提高其自身的教学水平,不断加强教师师资队伍建设。老师要注意计算机最新发展动态,紧跟其发展潮流,不能脱离社会落后于时代;青年教师要不断积累教学经验,完善教学方法,提高学生的学习兴趣和自己的教学水平。由于计算机专业的特点,老师需要不断更新、补充课程的教学内容,甚至有很多像慕课(MOOC)这样的网络开放新兴课程不断涌现,老师要终身学习,教学管理上也要给老师更多学习的机会,多组织青年教师到社会上的一线企业进行培训和实训。计算机专业是一个需要不断保持学习的专业,它更新换代特别快,从事计算机方面工作的学生要终身学习。所以老师不能只是授之鱼,更要授之以渔,使得学生在走向社会之后能够跟上计算机发展的步伐,始终保持敏锐的洞察力和很强的学习能力。因此,计算机教学质量管理要更注重学生学习能力的培养,而不是简单地完成当前的学习任务。计算机发展之迅速,已经不是原来单打独斗就可以完成一个任务的时代,要求学生有很强的合作能力、交流能力、适应能力、实践能力和组织能力等。教学中必须坚持对学生实施素质教育,不仅要重视学生的学习态度、出勤率、课堂纪律、作业完成情况,更要鼓励学生参加科技竞赛、课外拓展培训以及加强人文素质的培养。关注用人单位对专业人才培养质量的反馈,及时调整学生培养机制。
二、计算机专业教学管理中存在的主要问题
教学管理系统负责保证正常的教学秩序,是提高教学质量的根本。每个学校其实都有一套教学管理制度,然而对于不同的院系专业来说,有其自身的特点,本文主要针对计算机专业中存在的问题进行分析。
(一)教学管理模式尚不完备
随着计算机专业的不断改革以及国家对计算机教学提出的新要求,原有的管理制度难以跟上实际的发展需求,无论是人才培养目标、专业课程设置、教学管理手段以及学生的质量等,都有很大的变化,以前的教学管理模式往往重理论轻实践,大部分是理论学习为主导的模式,而且不同专业人才培养的目标和要求基本一致,没有根据不同的专业特色建立不同管理体系,这就需要有一套更科学、更灵活的教学质量管理体系,要符合不同专业特色,不断适应时代发展的要求,不断顺应社会科学发展的方向。
(二)实践教学资源短缺
计算机专业教学在条件允许的情况下,应该把大部分课程安排到机房进行教学,学习实践同步教学的模式更符合学生的学习习惯,也有利于老师的教学。但是鉴于学校学习资源的限制,实践课课时明显不足,使得教学的开展不是很顺利。计算机专业作为应用性要求较高的专业系别之一,要比其他专业增加实践教学的学时,特别是实践教学在计算机专业的学习当中占有极其重要的地位,直接关系到学生未来就业,其对社会输送应用型人才有着积极的影响。
(三)缺少以人为本的人才培养模式
学校教学质量管理与监督体系,缺少以人为本的管理理念。对于教学质量管理,还是以行政权力为重要手段,在体系中缺少专家学者的监控,忽视他们的建议,对教学质量的评价,其目的就是奖励和惩罚,很难理性地诊断和解决问题,不能以教育改革为目的对教师进行客观的评价,主管者与教师之间缺少互动。在评价学生的学业方面,过度重视理论化知识,忽视学生的应用实践能力,看重考试成绩,忽略学生的全面发展,导致学生缺乏综合能力。
(四)教学的连贯性和发展性
计算机专业的教学具有连贯性,课程学习必须在前序课程学习的条件下,后序课程才能很好地展开。这就要求排课的老师和讲授的老师有积极的沟通,在先序课程完成的情况下合理安排后序课程,保证学生学习的完整性和连贯性。而实际排课当中排课老师和授课老师往往沟通不足,这也是教学管理中需要重视的问题。
三、加强和完善教学质量管理的措施
计算机专业教学质量的提高和有序运行离不开两方面,一方面需要学校分管教学的领导公正、负责、公开地进行不定期监控,另一方面要充分调用老师、学生的教学积极性,调用各种渠道,全面地收集教学一线反馈的教学信息,并根据教学信息对各教学环节和影响教学质量的各个教学因素进行有效调整。针对上面对计算机专业教学管理中存在问题的分析,下面提出一些措施以期能提高教学质量,建立健全质量管理制度。
(一)设立教学团队和导师制度
计算机专业现在趋向于形成一个团队来完成一个工程,所以需要在一个团队负责人领导下有组织地进行。建立一支稳定、相对独立、具有较丰富教学经验和较强研究能力的团队,可以让大家资源共享,互相交流,让青年教师尽快融入。因为一个团队的研究方向、教学内容大致一样,这就方便组内成员可以经常组织讨论教学计划、课程的建设、课堂教学、课后辅导、作业批改、考试命题、成绩评定、成绩分析、实训实践的实施等问题。对于学生,可以在入校的时候给学生分配导师,导师进一步帮助学生制定适合学生专业方向的学习计划和安排,同时老师有研究项目也可以让学生早日参与到项目中来,为日后的学习工作和就业打下坚实基础。
(二)开展多层次评估工作
教学质量评估是实施教学质量管理的主要环节和有效手段,也是教学质量管理体系的一部分。首先,学院领导组织听课环节,每年安排优秀教师、青年教师进行公开课,一方面给青年教师向优秀骨干教师学习的机会,另一方面可以通过实践,大家给青年教师提出宝贵意见和建议,使青年教师可以及时看到自身教学的优势和不足。其次,教师互评,以教研室为单位,组织本领域或者同一门课的老师互相交流互相学习,资源分享,优势互补,因为同方向老师更加了解相关课程,可以给出更直接的建议。最后是学生评课。学生既是教育的接受者和评判者,也是教学的直接参与者,教与学是双方面的,教学质量的提高需要学生在其中积极参与。学生评教工作一般在每学期末(或课程结束时)进行,由教学系组织各班学生对本班任课教师进行教学工作评价,并将评价结果纳入教师教学工作评价管理系统。学生评教的内容包括教师的教学态度、教学素质、教学内容、教学方法、教学效果等。学生是教学工作的主体,对任课教师的教学质量好坏最有发言权。另外还可以建立学科竞赛,奖学金,扣分机制,惩罚机制等。教师评学与学生评教形成了良性互动,对教师“教”与学生“学”起到相互促进、共同提高教学质量的作用。
(三)提供多渠道学习机会
对于教师,可以组织教学经验不足的老师展开集训,观摩具有教学经验的教师讲课,组织有教学经验的教师深入实践环节,到企业中学习;组织教师进行微课、说课竞赛,分享教学心得;聘请学术型教师开展讲座,开拓视野,关注计算机最新发展动态。对于学生,经常聘请一些专业技术过硬的专家学者展开交流,组织学生去一些实际的企业公司进行参观交流,鼓励学生参加学生竞赛,增强动手能力和实践能力以及合作能力。
(四)转变教学方式和教学观念
从专业的讲解上,不仅要重视学生的基础学习,更要与时俱进地给学生补充学科的前沿知识,让学生对时下比较热门的计算机方向和知识有很好的了解。目前国家大力提倡翻转课堂,在教学过程中把以前单纯的老师在课堂上填鸭式讲解转变为学生互动交流,老师不仅仅是讲授知识,更多是提出问题,让学生自己去讨论问题和解决问题。课堂上不再是老师一个人的表演,而是学生做主角,老师答疑解惑而已的良好教学模式。
(五)重视实践实训的教学
计算机是一个需要学生动手练习的课程。在实践中巩固学生的理论知识,当作以后工作的实战演习,为以后培养较高技术应用能力打基础。除了引进企业工程师来校讲课,在双赢的前提下,可以带领组织学生到企业进行实习,使实训发展得到良性运转。
四、结束语
高等院校肩负着为国家发展和社会进步培养合格、优秀人才的重要任务,提高学校的教学质量,加强教学质量管理是符合学校发展规律的。在教学管理日益受到重视的情况下,如何建立合理的管理体制,使计算机专业的教学质量管理工作既能强化计算机专业的学科特点,又能积极适应教学发展的现代化,保持专业教学质量可持续化发展,是当前各大高校都在积极探讨和实践的问题。管理者、教师和学生三个角色要相互交流,相互监督,才能利于专业的不断进步和可持续发展。要健全质量责任制度,明确领导的管理职责,院系主要领导是教学质量的第一责任人,本部门教学质量优劣反映其工作业绩;要重视教师的培养,给青年教师更多机会提高自己,不仅给学生推行导师制度,也可以给青年教师安排经验丰富的教学名师进行指导;计算机专业是一个不断创新与发展的专业,要以应用型人才培养为目的,重视学生的创新能力和应用能力的培养,重视实践教学。高校应该采取多种手段,鼓励提倡学生积极参加社会实践,为以后的工作奠定基础。要以市场经济发展需求为导向,从社会的实际需求出发,设置计算机专业培养方案和人才培养模式,多与知名计算机企业合作,形成自己的特色与优势。
参考文献
[1]张凡.高职院校计算机专业实践性教学质量保障方案的研究[J].四川职业技术学院院报,2015,25(3):141-143.
[2]邓攀.实施教学质量工程提升教学管理水平[J].高教学刊,2014,14:108-109.
[3]王红茹.提高《机电系统建模与仿真》课程教学质量的新探索[J].科技教育,2015,9:151-152.
[4]王承淑.教学质量监控的问题及对策研究[J].当代教育与文化,2015,7(4):112-116.
[5]施燕.加强教学质量内部监控与管理的实践探索[J].赤峰学院学报,2013,29(10):197-198.
[6]冯志敏,林麒,贾让成.高校内部教学质量监控体系的设计与运行[J].高等农业教育,2003,10(10):28-30.
计算机软件论文参考
随着我国现代化程度的不断提高,计算机软件被应用的领域愈发广泛,其本身的创造程度也越来越高,计算机产业现在已经成为一个规模庞大的产业。下面是我为大家整理的计算机软件论文,供大家参考。
计算机软件论文 范文 一:计算机软件开发中分层技术研究
摘要:在信息化建设水平不断提高的情况下,计算机软件在这一过程中得到了十分广泛的应用,此外,计算机软件开发在这一过程中也越来越受到人们的关心和关注。软件开发技术最近几年得到了很大的改进,这些技术当中分层的技术是非常重要的一个,所以,我们需要对其进行全面的分析和研究。
关键词:计算机;软件开发;分层技术
当前信息化时代已经悄然到来, 网络技术 的发展也使得人们越来越关注软件开发行业,计算机软件从原来的二元结构模式逐渐向多层结构模式发展,中间件也成为了应用层质量和性能非常重要的一个问题,此外,其也成为了计算机软件开发应用过程中非常关键的一个技术,其与数据库, 操作系统 共同形成了计算机基础软件。这一技术的应用能够使得软件系统扩展性更强,灵活性和适应性也在这一过程中得到了显著的提升,所以,分层技术也已经在现代计算机软件开发的过程中得到了越来越广泛的应用。
1计算机层次软件及其优点
计算机软件工程的最终目标就是研发质量和性能更好的软件产品,而在这一过程中基础构建和开发可以十分有效的为计算机软件的应用提供非常好的条件,构件是高内聚度软件包,其能够当作独立单元进行更加全面的开发处理,同时,其也为构件的组合提供了非常大的便利,对软件系统进行搭建可以很好的缩短软件开发的时长,同时还能十分有效的获得更多的质量保证。构件开发最为重要的一个目的就是广泛的应用,应用层次化软件结构设计 方法 的一个非常重要的目的就是可以更为科学合理的去应用构件技术。软件系统在进行了分解之后,形成了不同的构件模块,高层次构件通常被人们视为指定领域的构件。低层次构件只是与数据库或许是和物理硬件产生联系。层次划分是一个相对比较宽泛的概念,所以在层次关系方面并没有一个相对统一和规范的标准。不同构件内部的层次关系通常是上下层依附的关系。站在某个角度上来看,计算机软件的系统层次化就是指多层次技术的广泛应用,而根本原因是为了软件能够大范围的应用。采用分层模式可以非常好的展现出软件的可扩展性,系统某一层在功能上的变化仅仅和上下层存在着一定的关系,对其他层并不会产生非常明显的影响。分层模式也比较适合使用在一些标准组织当中,此外,其也是通过控制功能层次接口来保证其不会受到严重的限制。标准接口的应用能够使得不同软件可以自行开发,同时后期更新的产品也能够和其他软件具有良好的融合性。
2软件开发中多层次技术分析
2.1两层与三层结构技术分析
在两层模式当中,一般都是由数据库的服务器和客户端构成,其中,客户端能够为客户提供一个操作界面,同时,其还具备非常好的逻辑处理功能,同时还要按照指令去完成数据库的查询,而服务器主要是接收客户端的指令,同时还要按照指令对数据库完成查询,同时还要返回到查询结果当中。这种逻辑处理结构就被人们称作Fat客户,这种二层技术的客户端类型在应用的过程中能够完成非常多的业务逻辑处理工作,随着客户端数量的增加,其扩充性和交互作业以及通信性能等等都会受到影响,此外还存在着非常明显的安全问题及隐患。而计算机技术在不断的完善,传统的二层技术已经不能适应系统应用的具体要求。在这样的情况下就出现了三层结构技术类型,这种技术主要是客户端、应用服务器交换机和应用服务器构成。其中,客户端主要是用来实现人机交互,数据服务器可以让操作人员完成数据信息的访问、存储以及优化工作,服务器的应用主要是能够完成相关业务的逻辑分析工作,这样也就使得客户端的工作压力有了非常显著的下降,我们一般将这样的客户称作瘦客户。三层结构和二层结构相比其具有非常强的可重复性、维护方面更加方便,同时其安全性和扩展性也明显增强,但是在用户数量并不是很多的时候,二层结构的优势则更加的明显,所以,在软件开发的过程中,我们一定要充分的结合实际的情况和要求。
2.2四层结构技术
当前,计算机应用的环境在复杂性上有了非常显著的提升,客户对软件系统也提出了越来越高的要求,其主要表现在了软件开发周期不是很长,系统的稳定性很好,扩展性更强等方面,为了满足用户提出的更高要求,我们在开发的过程中将用户界面、业务逻辑个数据库服务器根据其功能模块进行全面的处理,将不同的模块分开,这样也就将相互之间的影响降到了最低水平。这个时候,如果使用三层分层技术就无法很好的实现这一功能,很多软件的开发人员会在数据库和逻辑层交互的过程中,增加一层数据库接口封装,这样也就实现了三层向四层的进化。四层结构体系主要包含web层、业务逻辑层、数据持久层与存储层。其中,web层可以使用模式1或模式2开发。在模式1中,基本是由JSP页面所构成,当接收客户端的请求之后,能直接给出响应,使用少量Java处理数据库的有关操作。模式1实现较为简单,可用于小规模项目快速开发,这种模式的局限性也很明显,JSP页面主要担当了控制器与视图View两类角色,其表现及控制逻辑被混为一体,有关代码重用功能较低,应用系统的维护性与扩展性难度加大,并不适合复杂应用系统开发。模式2主要是基于1vlvc结构进行设计的,JSP不再具有控制器职责,由Sen}let当作前端的控制器进行客户端请求的接收,并通过Java实施逻辑处理,而JSP仅具有表现层的角色,将结果向用户呈现,这种模型主要适合大规模项目的应用开发。业务逻辑层在数据持久层与web层间,主要负责将数据持久层中的结果数据传给web层,作为业务处理核心,具有数据交换的承上启下功能,业务逻辑层的技术依据业务及功能大小不同,能够分成JavaBean与EJB两种封装的业务逻辑,其中EJB简化了Java语言编写应用系统中的开发、配置与执行,不过EJB并非实现J2EE唯一的方法,支持EJB应用的程序器能应用任何分布式的网络协议,像与专有协议等。
3结论
当前,我国计算机应用的过程中面临的环境越来越复杂,同时在客户的要求方面也有了非常显著的提升,为了更好的满足软件应用者的要求,在软件开发工作中,分层技术得到了十分广泛的应用,以往的两层技术模式已经无法适应当今时代的建设和发展,在对两层和三层结构优缺点的分析之后,多层结构系统在应用的过程中发挥了非常大的作用,这样也就使得软件开发技术得到了显著的提升,从而极大的满足了客户对计算机软件的各项要求。
参考文献
[1]金红军.规范化在计算机软件开发中的应用[J].物联网技术,2016(01).
[2]赵明亮.计算机应用软件开发技术[J].黑龙江科技信息,2011(26).
[3]林雪海,吴小勇.计算机软件开发的基础架构原理研究[J].电子制作,2016(Z1).
计算机软件论文范文二:分层技术在计算机软件开发中的使用
【摘要】近年来,计算机技术和网络技术已经在人们的日常生活和工作中得到普遍应用。计算机开发技术已经得到了相关从业人员的普遍关注。笔者对计算机软件开发中分层技术的应用进行论述,以期提升计算机软件开发水平。
【关键词】计算机;软件开发;分层技术
1前言
科学技术快速发展,现代化进程逐渐加快,计算机软件开发也逐渐由传统二层结构开发模式转化为多层结构。其已经成为计算机软件开发过程中的重要内容和组成部分。近年来,网络环境日趋复杂,将分层技术应用到计算机软件开发中,能够提升软件系统的整体清晰度和辨识度,为人们提供一个灵活的软件应用环境,促进计算机研发技术又好又快发展。
2分层技术相关概述
2.1分层技术的概念及应用计算机开发过程中要确保软件的灵活性和可靠性,实现软件的多功能应用。分层技术基于计算机软件内部结构原理,促进计算机软件应用过程中各种不同功能的实现。因此,将分层技术应用到计算机软件开发中具有一定的优势。同时,其能够改变传统的计算机软件单项业务处理模式,实现多层次技术的开发和应用[1]。
2.2分层技术的特点在计算机软件开发中应用分层技术具有相应的特点和优势。首先,分层技术能够依据相关功能需求,对计算机软件进行扩展和计算机系统进行分解,实现对计算机软件的改造和更新,并对系统中功能层和上下层进行变革和修改。其次,分层技术能够提高计算机软件的开发质量和效率,也能够提高其软件运行的可靠性。通过对原有计算机系统的改造和变更,缩短复杂软件的开发时间,提高新产品的质量。第三,在计算机软件开发中应用分层技术,能够让计算机软件得到充分利用,并对功能层次的接口进行定义,实现软件的自动化开发,促进标准接口的应用和其端口的无缝隙对接[2]。
3分层技术在计算机软件开发中的应用
近年来,随着生活理念的革新,人们对计算机软件开发普遍关注。同时,计算机软件开发也对传统计算机软件单项业务处理模式进行变革,使其向多层次计算机软件开发转变。目前,计算机软件开发技术已经由原来的二层和三层技术转化为多层技术。
3.1双层技术的应用
双层技术在计算机软件开发中的应用,能够提升计算机软件开发的质量和效率。双层技术是由客户端和服务器两个端点组成。客户端的功能是为用户提供相应的界面,并对计算机日常应用过程中的相关逻辑关系进行处理。服务器主要用来接受客户信息,并对用户相关信息进行整合,传递给客户端。
3.2三层技术的应用
三层技术是对计算机开发过程中的双层技术进行不断完善。相较于传统的双层技术,三层技术能够确保在一定程度上增加应用服务器,同时也能够提高用户数据存储质量和效率。在计算机软件开发过程中应用三层技术,能够提高计算机信息访问效率,也能够确保计算机与人之间构建和谐的共性关系,确保计算机整体运行质量的提升,为人们提供一个良好的计算机应用环境。三层技术包括业务处理层次、界面层次和数据层次。业务处理层次主要目的是了解用户的需求,并结合用户需求对相关数据进行处理。界面层主要是搜集用户的需求,并对其进行加工,将相关结果传递给业务处理层次。数据层次主要用来对业务处理层的相关请求进行审核,并应用数据库对相关信息资源进行查询和整合。加之科学的分析,将其传递给业务层。三层技术能够提升计算机使用性能,但其用户环境比较复杂,增加了信息和数据处理难度[3]。
3.3四层技术的应用
四层技术是基于三层技术进行完善的,其包括业务处理层、web层、数据库层和存储层。其在计算机软件开发过程中的应用原理是应用业务处理层分析用户需求,并将数据层处理结果传递给web层,应用数据交换和数据访问代码来反映数据库和计算机对象之间的关系。
3.4中间件技术的应用
中间件技术被作为面向对象技术进行开发。中间件主要以分布式计算环境为背景,以实现互通和互联及资源共享应用功能,其是一种独立系统软件。它能够对异构和分布集成所带来的各种复杂技术的相关细节进行屏蔽,以降低相关技术难度。在操作系统、数据库与应用软件之间应用中间件,能够缩短开发周期,提升系统和软件运行的安全性。中间件的种类比较多。结合其相关技术特性,能将其划分为DM、MOM、OOM中间件和RPC与TPM中间件等,其已经被普遍应用到计算机软件实际开发中。
3.4.1面向消息中间件信息同步传送和异步传送都可以应用MOM中间件技术。MOM能够实现异步通信、消息传递列队化和传递过程中的安全性和可靠性。MOM分层技术在计算机软件技术开发中应用很普遍。应用消息列队中间件进行应用编程,其主要通过中间件和对方实现间接通讯。同时,其能够应用队列管理器与远地或者本地应用程序进行通信。通信过程中,通信双方只需要将消息传递给队列管理器,不需要对消息的传递过程和传递安全性进行过多的关注,有利于软件开发过程的简化。
3.4.2远程过程调用中间件在客户和服务器计算层面应用远程过程调用的中间件,其更加具有先进性和实用性。程序员可以结合客户的实际需求对相关应用进行编制。RPC比较灵活,其也能够适应于复杂的计算机环境中,并支持跨平台应用,对远端子程序进行调用,以满足编程过程中的相关细节。但是其在应用过程中仍然存在相应的缺陷,其采用同步通信方式,不利于在大型范围内进行使用,需要对网络故障和流量控制等诸多因素进行考虑。
3.4.3面向对象的中间件基于组件技术在大型应用软件中的使用比较广泛,分布系统对各个节点中不同系统平台的新组件和老版组件进行集成应用。由于其面临各种问题,使用过程中具有一定的局限性,并不能够充分发挥其作用。基于对象技术和分布式技术,面向对象的中间件提供了全新通信机制,能够在异构分布的计算环境中对传递对象的相关请求进行满足。其来源主要是本地或者远程服务器。
4结语
计算机的应用环境越来越复杂,用户的相关要求也逐渐提高,增加了软件开发的难度。在计算机软件开发中应用分层技术,并对其进行不断地优化,能够实现其安全性和拓展性,缩短开发周期,提升其整体处理能力,有效满足了客户的日常应用需求。
参考文献:
[1]李大勇.关于分层技术在计算机软件中的应用研究与分析[J].计算机光盘软件与应用,2014,(20):78~79.
[2]杨博宁.浅谈计算机软件开发中分层技术[J].科技风,2015,(08):95.
[3]贾辉.刍议分层技术在计算机软件开发中的应用[J].中国高新技术企业,2015,(30):59~60.
计算机软件论文参考相关 文章 :
1. 计算机专业毕业论文大全参考
2. 计算机论文范文大全参考
3. 计算机专业毕业论文范文大全参考
4. 计算机专业毕业论文格式范文参考
5. 计算机专科论文范文参考
6. 计算机硕士论文范文参考
软件技术论文范文
软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。
浅谈软件项目估算技术
摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。
关键词:规模估算;成本估算;实例应用
中图分类号:TP311.5
软件项目的估算历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的估算往往和实际情况相差甚远。因此,估算错误已被列入软件项目失败的四大原因之一。由此,也证明了正确对软件项目进行估算是何等重要。
在软件项目管理中,估算就是对项目将持续多长时间或花费多少成本的预测。所以说,估算正是一种对未来的预测。从这里也看以看出估算的重点就在“工作量估算”或“成本估算”,而在对这两者进行估算的过程中大多数情况下都少不了“软件规模”这个条件,所以本文将软件估算分为两种类型,第一个种是软件项目规模的估算,第二种是将估算得出的规模转换为工作量的估算或成本的估算。目前使用比较广泛的规模估算技术,如:代码行估算技术、功能点估算技术;而使用比较广泛的成本估算技术,如:COCOMO算法模型估算技术。
除了上述所列举的几种技术外,还有几种估算技术既可以用于估算规模,也可直接应用与估算工作量或估算成本,如:Delphi估算法、类比估算技术、PERT估算技术。这几种估算技术不似前面所列的技术,比较有针对行,且有具体的计算过程、计算公式。这几种技术只是一种思想,依据某个选定的科目进行估算。下面本文将简单介绍上述提到的几种估算技术,并通过具体的实例重点阐述功能点估算技术。
1 估算技术简介
1.1 代码行估算技术。代码行(LOC)指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等[1]。代码行估算技术主要是估算软件的规模,即通过该技术估算待研发软件项目有多少行代码。一般为了方便表示,使用较大的单位千代码行(KLOC)来表示待研发软件项目的规模大小。这种方法比较适用于有经验积累和开发模式稳定的公司。如果是新成立公司,使用这种估算技术则会存在很大误差,加大项目失败的风险。
1.2 功能点估算技术。功能点法是一种经过实践验证的方法,但应用成本很高,估算的工作量投入也较大。功能点估算技术最终结果是规模,仍然需要知道项目的生产率数据才能得出实际的工作量。功能点估算技术将系统功能分为输入、输出、查询、外部文件和内部文件5种类型。其中,输入是一个数据跨越系统边界,从外部到内部的基本数据处理过程。数据的来源可以是人机输入界面/接口,或是另一个应用系统;输出是一个衍生数据跨越系统边界,从内部到外部的基本数据处理过程。这些输出的数据可能会产生报表,或发到其他外部系统的输出文件;查询是一个不包含衍生数据和数据维护的基本数据处理过程,包括输入和输出两部分;内部文件存在于系统边界之内,用户可识别的一组逻辑上相互关联的数据;外部文件存在于系统边界之外,用户可识别的一组逻辑上相互关联的数据。使用功能点估算技术估算的大概步骤为:
(1)通过需求分析将系统功能按照上述5种类型进行分类。
(2)分析每个功能项的复杂程度,大致分为一般、简单、复杂三种类型,每一种类型都对应一个权重值,具体如表1。
(3)根据每个功能项的复杂权重值,求出功能项的加权和,即为未调整功能点数(UFC)。
(4)分析该系统的技术复杂度,功能点估算将与系统相关的技术影响因素分为14组(用Ai表示),每个分为6个级别,权重分别从0至5。根据分析结果及公式计算技术复杂度因子(TCF),即TCF=0.65+0.01(SUM(Ai))。
(5)将UFC与TCF相乘即为功能点数。
1.3 COCOMO算法模型。Cocomo模像是一个分层次的系列软件成本估算模型,包括基本模型、中级模型和详细模型3个子模型。3个模型采用同一个计算公式,即E=asb×EAF[2]。其中,E是以人月为单位的工作量;S是以KLOC为单位的程序规模;EAF是一个工作量调整因子,在基本模型中该项值为1,中级模型和详细模型中根据成本驱动因素确定;a和b是随开发模式而变化的因子,这里开发模式被分为3中类型,即有机式、半分离式和嵌入式。
Cocomo算法模型是一种精确易用的估算方法,如果项目没有足够多的历史数据,会使得各调整因子和系数很难确定,进而使得估算比较困难。但是一旦项目建立起这种模型,则通过Cocomo模型得出的项目工作量和项目周期具有更高的准确度。
1.4 Delphi估算技术。Delphi估算技术又被成为专家估算技术,它是由一个被认为是该任务专家的人来进行估算,且估算过程很大一部分是基于不清晰,不可重复的推理过程,也就是直觉。所以该技术中专家“专”的程度及对项目的理解程度是该技术的重点,也是难点,它的好坏直接影响估算结果的准确程度。
Delphi估算技术估算过程并不像功能点估算技术或COCOMO算法模型那样,有明确的计算方法或计算公式。它是将待估算的项目的相关信息发给专家,专家估算后由专门的负责人进行汇总,然后再发给专家估算,反复几次后得到一个估算结果,可见只是一种思想,所以它除了用来估算规模,也可以用来估算成本、风险等,即对选定的某个科目进行估算。
1.5 类比估算技术。“类比估算”,顾名思义是通过同以往类似项目(如应用领域、环境和复杂程度等)相比较得出估算结果。类比估算技术是一种粗略的估算方法,它估算结果的精确度取决于历史项目数据的完整性和准确度。类比估算技术与Delphi估算技术类似,它的用途不仅仅用在规模估算上,也可以估算成本、工作量等。 1.6 PERT估算技术。PERT估算技术,又称为计划评审估算技术,它对需要估算的科目(如规模、成本、工期等)按三种不同情况估算:一个乐观估算结果,一个最可能估算结果,一个悲观估算结果。再通过这三个结果计算得到一个期望规模和标准偏差。这种估算技术可以用于估算规模,同样也可以用于估算工期,相比较来说PERT技术估算的结果比类比估算技术的结果要更准确。
2 功能点估算技术应用实例
假设某员工管理系统,经过需求分析得知,该系统所包含功能如下:
(1)员工信息维护:添加员工、修改员工信息、查询员工信息;
(2)部门信息维护:添加部门、修改部门信息;
(3)工资统计:统计员工年薪,并打印输出。
其中,在该系统中添加一个员工资料,会使用到员工的基本信息:员工ID(标签控件)、姓名、性别、年龄、婚否、部门ID;教育情况:学校名称、所学专业、学历。对部门的维护会使用到部门的信息:部门ID(标签控件)、部门名称。员工工资信息由另外一个财务系统提供,工资表信息有员工的基本信息:员工ID(标签控件)、姓名、部门名称;工资信息:工资级别、工资金额。
根据功能点估算技术估算步骤,首先计算未调整功能点数,即各种类型功能项的加权和,分析该系统6个功能项所属类型及其复杂权重值如表2:
假设该项目的14个技术复杂度因子均为“有一定影响”,即权重值均为2,则该项目功能点数为:FP=45×(0.65+0.01×14×2)=41.85。如果知道该项目使用何种语言,可以将功能点数转换为代码行数。
3 结语
本文对目前比较流行的几种软件项目估算技术做了简单介绍。重点讲述了功能点估算技术,并通过一个实例演示了功能点估算技术的应用方法。通过本文描述可以看出每种项目估算技术都有其自己的优缺点,如果想要得到比较准确的估算结果,不能仅靠一种估算技术,而应该综合运用各种估算技术,才能得到比较全面的信息和比较准确的结果。目前,也有一些基于这些估算技术的思想的自动化估算工具产生,相信通过不断的发展,将解决软件项目成本估算难的问题。
参考文献:
[1]朱少民.软件项目管理[M].北京:清华大学出版社,2009-11.
[2]覃征等.软件项目管理[M].北京:清华大学出版社,2004.
[3]李明树,何梅,杨达,舒风笛,王青.软件成本估算方法及应用[J].Journal of Software,Vol.18, No.4, April 2007,775-795.
[4]The David Consulting Group ,Function Point Counting Practices Manual Release 4.2.1,January 2005,
[5]刘谦.软件项目估算方法在敏捷开发中的实践.中国管理网,2010-06-18.
作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。
点击下页还有更多>>>软件技术论文范文
上一篇:什么软件可以免费写作投稿
下一篇:综述类论文汇报ppt模板