软件技术与硬件技术相比较,其发展的空间更为广阔、应用的领域更为广泛,因此计算机软件技术得到了关注和发展。下面是我为大家整理的计算机软件技术毕业论文,供大家参考。
摘要:目前,高职软件技术专业的教学改革势在必行,本文介绍了问题研究的必要性和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.
软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。
浅谈软件项目估算技术
摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。
关键词:规模估算;成本估算;实例应用
中图分类号: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.
作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。
点击下页还有更多>>>软件技术论文范文
软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。
浅谈软件项目估算技术
摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。
关键词:规模估算;成本估算;实例应用
中图分类号: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.
作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。
点击下页还有更多>>>软件技术论文范文
以前做的系统有几十页呢?对你好像多了啊
软件技术与硬件技术相比较,其发展的空间更为广阔、应用的领域更为广泛,因此计算机软件技术得到了关注和发展。下面是我为大家整理的计算机软件技术毕业论文,供大家参考。
摘要:目前,高职软件技术专业的教学改革势在必行,本文介绍了问题研究的必要性和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.
软件测试被定义为是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量。下面我给大家分享软件技术论文2000字,大家快来跟我一起欣赏吧。
软件测试技术研究
摘 要:软件测试是软件工程范畴的一项重要工作,与软件质量密切相关。本文就软件测试的概念、分类和方法等几个方面进行了论述。
关键词:软件测试;黑盒测试;白盒测试
中图分类号:TP311.52
软件测试是软件生产过程中的一个重要环节,是伴随着软件的产生而发展的,它并不是不能正常运行的软件的专利,而是为了发现所有软件缺陷而执行程序的过程。软件测试贯穿于软件开发的到投入使用的各个过程中,不同阶段的测试手段各不相同,测试成为软件产品质量控制和管理的重要手段之一。大量资料表明,软件测试的工作量占软件开发总工作量的40%以上,测试成本也占总成本的30%―50%。
1 软件测试的目标和重要性
1.1 软件测试的定义
看待软件测试的角度不同,软件测试的定义也各不相同。总的说来,软件测试就是利用测试工具按照预先设定好的方案和流程对产品进行功能和性能测试,甚至根据需要重新编写测试代码,对测试过程中可能出现的问题进行分析和评估。它是帮助识别开发完成的计算机软件的正确度、完全度和质量的软件过程,是保证软件质量的重要内容。
1.2 软件测试的目标
软件测试的正确定义是“为了发现程序中的错误而执行程序的过程”。而测试的目的决定了如何去组织测试。测试的目标是什么?G.Myers曾给出了关于测试的一些规则,这些规则可以看作是软件测试的目标:
(1)软件测试并不是为了验证软件的正确性,而是为了发现错误而执行程序的过程。(2)好的测试方案是尽可能发现目前尚未发现的错误的测试方案。(3)成功有效的测试是发现了至今尚未发现的错误的测试。从以上规则可以看出,测试是以查找错误为中心,和人们通常想象的“测试是为了验证程序的正确功能”,“成功的测试是没有发现错误的测试”等是完全相反的。所以,近年来,正确软件测试目标如下:(1)软件测试并不仅仅是为了查找出软件的错误,而是要通过进一步分析错误产生的原因和错误的发展趋势,发现一些可以通过测试避免的开发风险;(2)通过测试能够帮助测试人员设计出适合该软件更加有效的测试方法,进一步提高测试效率,缩短测试实践,降低测试费用;(3)结果完全正确的测试也是有价值的,是软件质量的一种评价,但并不是测试正确就说明该软件没有错误,随着使用的深入,功能的扩充等会逐步暴露出更多的问题,实践证明,完全没有错误的软件世间难求。
1.3 软件测试主要包括
(1)正确性和精确性测试:如果软件的运行结果不正确和不精确,那么会给用户带来很大的麻烦,甚至造成不可估量的损失,因此是保证软件质量的最重要因素。(2)容错性测试:容错性测试是在认可错误的情况下进行的测试,是检查软件在异常条件运行,是否具有防护性和能否自我恢复。容错性测试能确保系统不发生无法意料的事故,从而提高软件的安全性和可靠性。(3)性能与效率测试:用户都希望软件的运行速度更高一些,并且占用的资源更少些,性能与效率测试主要是优化软件的算法,数据结构和代码组织来提高软件的性能和效率。(4)易用性测试:易用性测试是测试软件的易用程度,就像一个常用扳手工具,拿到就能明白怎么去使用,因此易用性测试没有一个量化的指标,主观性较强。在平时使用中,当用户不能正确使用软件中的某个功能时,大多数人首先会通过各种方式学习、请教,或者向产品支持部门打电话,还有一部分用户会查阅用户手册。通常认为,用户不通过翻阅用户手册就能使用的软件易用性较好。(5)文档测试:文档测试主要检查文档的正确性、完备性和可理解性。
1.4 软件测试的基本原则
(1)尽早并不断地进行软件测试;(2)程序员或程序设计机构避免测试自己的软件;(3)测试前应当设置合理的测试用例,测试用例的设计不仅要有合法的测试数据,也要有非法的测试数据;(4)对程序修改之后要进行回归测试;(5)妥善保留测试计划、严格按照计划测试,排除测试的随意性,全部测试用例、出错统计和最终分析报告,并对每一个测试结果做全面检查。
1.5 软件测试的地位
软件的开发过程包括需求分析、设计、实现和测试四个阶段。软件测试在软件生命周期中占重要地位,是软件交付用户使用前保证软件质量的重要手段。在系统发布之前,从客户的需求出发,尽早发现问题,修改的成本越低,破坏性也越小。一旦系统投产后发现问题,其危害性被成倍放大,甚至会给双方造成不可估量的损失。
2 软件测试方法
按照不同的分类方法,软件测试可以分为多种类型。
2.1 从是否需要执行被测试软件的角度分类
静态测试:是指不需要实际运行软件,主要对软件的编程格式、程序逻辑结构等方面进行测试。静态测试是通过对源程序进行语法检查,静态结构分析、代码质量等方面找出缺陷和可疑之处,例如变量定义和生命周期检查、模块接口的正确性、是否允许递归、程序逻辑和结构审查等。
动态测试:通常的上机运行软件而进行的测试,这种方法是使程序有控制地运行,并从多种角度观察程序的行为,以发现其中的错误。在软件维护阶段,当修改软件后,除了对修改部分的软件进行常规的测试外,还应对软件的其他部分进行回归测试,所谓回归测试是指全部或部分地重复已做过的测试,它主要检查软件的修改是否在软件的未修改部分引入了新的错误。
2.2 从是否针对软件结构与算法的角度分为
白盒测试,主要是对软件的逻辑结构进行的测试。白盒测试要求测试人员对程序内部逻辑结构及有关信息来设计和选择测试用例,对程序的逻辑路径进行测试,不需测试软件产品的功能。测试过程是基于覆盖全部代码、分支、路径和条件。白盒测试是指在知道产品内部工作过程,通过设置测试用例来检测产品内部动作是否按照规格说明书的规定正确进行,检验程序是否都能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑覆盖、基本路径测试等。
黑盒测试:指测试来检测每个功能是否可以正常使用。执行严格的测试,通过对整个软件或某些软件功能,但不检查程序的源代码还是非常清楚的了解该软件的源代码程序具体如何设计。通过输入测试数据,并通过分析的结果输出到测试人员了解软件是如何工作的。在测试中,主要的功能是用来检查是否正确的程序或缺少的功能,用户界面是正确的,错误的数据结构或外部数据库访问错误,性能是正确与否,程序是否有初始化和终止错误的存在。
2.3 从测试的不同阶段分类
单元测试:指的是对每一个工作单元进行测试,了解其运行结果是否符合我们的预期。它对测试人员的要求比较高,要求测试人员对程序代码比较熟悉;一般由程序员自己编完某个单元后,先自我检查通过后,再将测试代码交给测试人员进行审核,如果发现缺陷,原开发者应当及时修正程序,这样可以尽快的发现程序中存在的错误,及时修正以提高程序开发的效率。
集成测试:是在单元测试的基础上,测试再将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动。也就是说,在集成测试之前,单元测试已经完成,集成测试中所使用的对象,已经是经过单元测试的软件单元。
系统测试:是将已经确认的计算机软件和硬件设备、网络和外围设备等元素组合在一起,对已经集成好的系统进行测试,找出所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案.它的任务是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性。
验收测试:也称为交付测试,完成了功能和系统测试后、产品发布之前所进行的测试活动,它是技术测试的最后一个阶段。
总之,随着软件开发和测试技术的不断发展,测试方法也越来越多样化,针对性更强;选择合适的软件测试方法可以让我们事半功倍。
参考文献:
[1]张永梅.软件测试技术研究[J].测试技术学报,2002,6.
[2]刘继华.软件测试技术的研究进展[J].微计算机信息,2012,10.
[3]瞿莉丽.浅析软件测试技术[J].硅谷,2010,4.
点击下页还有更多>>>软件技术论文2000字
随着信息全球化的发展,计算机的运用越来越普及。在企业方面管理和培训方面,计算机软件技术发挥了不可替代的作用。下面是我为大家整理的计算机专业 毕业 论文,供大家参考。
摘要:本文从“软件技术基础”课程的特点出发,分析和 总结 了该课程教学过程中出现的各种问题,综合其他学校该课程的教学内容和 教学 方法 ,结合我校教学环境和学生学习的实际情况,对课程教学进行了一些改革探索和实践,并取得了一定的成绩。
关键词:软件技术基础;教学改革;教学研究;
一、引言
随着科学技术的飞速发展,计算机应用已经深入到社会生活的各个领域中。熟练的操作和使用各种计算机应用软件,成为我们工作和生活的必备技能。越来越多的应用软件的设计与开发是由非计算机专业人员完成,开发出的各种软件,也大部分由非计算机专业人员操作和使用。吉林医药学院针对本校生物医学工程专业的学生,开设了“软件技术基础”课程。但由于该课程教学内容多样,教学学时有限,学生程序设计水平参差不齐等原因,给教师和学生的教学带来一定的难度。针对该课程的特点,综合其他学校的教学方式,结合吉林医药学院实际情况,对“软件技术基础”课程教学进行了一些改革探索和实践。
二、“软件技术基础”课程教学现状
第一,课程内容多,覆盖范围广。吉林医药学院的“软件技术基础”课程,是在基础课程“计算机应用基础”、“C语言程序设计”、“VB数据库程序设计”课程后开设的课程,其教学内容涵盖了四门计算机专业的课程:“数据结构”、“数据库系统”、“ 操作系统 ”和“软件工程”。在有限的学时中完成该课程的教学,教师与学生都面临很大的挑战。[1]
第二,课程学时有限。吉林医药学院“软件技术基础”课程教学有50学时,其中理论32学时。将这有限的学时分配后,各部分教学内容的教学时间更加受限,在短时间内学好该课程,对老师和学生都是极大的挑战。受课时限制,在教学中,教师对枯燥和抽象的知识无法深入讲解,没有时间通过更多的实例对概念和算法演示和说明;学生缺少足够的程序设计 经验 和调试能力,对所学内容无法融会贯通。以“软件技术基础”课程的数据结构部分内容讲授为例,对于顺序表、链表、栈、队列、树、图、排序和查找等知识,课堂的大部分时间,只能集中讲解相关知识的概念、思想及算法实现,学生练习操作时也只能是将算法在机器上实现,但具体的应用、程序设计以及调试等技巧课堂上无法细致讲解,同样,对于大部分学生,具体的应用在练习操作时练习不到。[2]
第三,学生学习目的不明确。学生在学习时,需要了解所学内容在其未来工作和生活中的目的和意义。但是,由于“软件技术基础”课程涵盖教学内容多,授课学时少,导致学生学到的知识浮于表面,课堂讲授以概念和理论为主,缺少解决实际问题经验,学生对所学内容的重要性、实用性了解不深。学生学习“软件技术基础”课程后,只掌握了一些基本概念和算法,但无法将所学应用于实践。[3]
第四,学生的程序设计水平参差不齐。吉林医药学院“软件技术基础”课程开设于学生大二下学期,学生在学习该课程前,已经学习了“C语言程序设计”,但C语言课程对于第一次接触程序设计的学生来说,概念抽象且规则繁多,掌握困难。对于C语言中数据的存储、算法编写、程序设计及调试等尤其畏惧、困惑,加深了接下来数据结构部分学习的难度。又由于“软件技术基础”课程与“C语言程序设计”课程之间间隔一个学期,这让学生本就不牢固的C编程知识在学习新的内容时更加困难。
第五,注重培养学生的应用能力。学生学习“软件技术基础”课程是为了用所学知识解决实际问题,学生的实践能力的培养是本课程教学的重中之重,如何更好的提高学生的学习兴趣,加深学生对知识的理解,同样是该课程的教学难点。以上是吉林医药学院“软件基础基础”课程面临的主要问题,各个问题相互影响和制约,进一步影响到“软基”课程的教学效果和学生学习该课程的兴趣和效果。针对以上问题,考查其他院校的教学方法和教学手段,吉林医药学院的“软件技术基础”在教学和实践环节进行了改革探索,取得了一定的成果。
三、课程教学改革探索
第一,利用现代 教育 技术,实例化教学。教材是学生获取知识的直接方法,在选择教材方面,选取案例详细的教材,弥补教学学时的不足。理论课教学是学生获取知识的重要手段,我校的教学环境优秀,每一个教室都配备有多媒体等现代化设备辅助教学,利用先进的教学设备,制作优秀的教学课件,增加动画等元素,将晦涩难懂的理论知识,通过直观的例子和生动的讲解展示给学生。如讲解数据结构中栈的存储结构、定义及算法时,利用学生熟知的手枪中的弹夹讲解;讲队列相关知识的时候,利用学生最经常使用的车站买票等生动形象的例子。再如,讲解数据库中范式概念的时候,利用学生熟悉的班级学生作为对象,分别解释各个范式的区别……
第二,对比归纳,强调总结。受到课时等客观条件限制,经多轮授课发现,学生在学习“软件技术基础”课程知识时,会有囫囵吞枣的感觉,知识无法吸收透彻并应用,已经开始下一部分知识的学习。教师需要利用自己的教学经验,在讲授过程中对知识进行凝练,对相似知识多进行归纳总结,用尽量少的语言复习与对比相关内容,让学生做到温故而知新。
第三,强化实践教学,提高动手能力。授人鱼不如授人以渔,相对于教师,学生才是学习的主体,学生学习的主动性和积极性直接影响着学习的效果。勤能补拙,督促学生利用课余时间复习C语言等学过的知识,利用实验课程序调试的机会,让学生自己讲解程序并引导学生对程序跟踪,仔细观察程序变量的变化,总结经验,对程序进行优化,打下良好的程序设计基础。吉林医药学院软件技术基础课程的实验有18学时,实验课上除了验证课堂讲授的内容,学生无法更进一步的学习深入的内容,为更好的培养学生独立操作能力和实际应用能力,我校为生工的学生开放实验室,提供自主上机练习环境。对有进一步学习需要的学生,在每周三下午开设第二课堂,由有经验的老师对学生有针对性的讲解程序设计和软件开发的方法和技巧。
第四,采用课程设计,督促学生自主学习。为更好的激发学生学习的积极性和主动性,在数据结构和数据库部分基础知识学习后,分别要求学生进行课程设计。在数据结构部分,为每一位学生提供不同的设计题目,限定提交作业时间。为解决学生可能是网络下载或他人协作帮助完成作业的情况,需要学生对程序进行注释,要求学生能读懂程序。针对数据库部分,采用学生分组完成数据库题目的方式,数据库题目可采用教师命题和学生选题的方式,学生分组采用学生自主分组,要求每组5-6成员,每位成员负责数据库的不同部分,最后根据每人负责的设计难易程度评价学生的成绩。采用课程设计的方式,给与学生学习的紧迫感和压力,对于程序设计能力稍差的学生,适当降低要求,达到锻炼学生实际动手能力、培养学生团队合作意识和协同操作能力,为学生的工作打下基础。
四、结束语
教学是一项永无止境的工作,在教学过程中,教师要根据学生的专业情况和个人学习情况及特点,有针对性的进行教学方式和教学内容的改革,运用适当的教学模式,把知识传递给学生,培养学生独立分析问题、解决问题、将所学知识综合应用于实践的实践和创新能力。
参考文献:
[1]张小瑞,孙伟,张自嘉,杨双翼.《计算机软件技术基础》教学改革探索与研究[J].中国科技信息.2012(04):129~135.
[2]陈帝伊,马孝义,辛全才.“计算机软件技术基础”课程教学方法探析[J].计算机教育2009(22):68~69.
[3]伦向敏,门洪,兰建军.《软件技术基础》教学改革探析[J].课程教育研究,2014(27)
摘要:作为一门新兴学科,计算机软件在短短的十几年中实现了跨越式发展,当今时代计算机软件技术依旧保持着旺盛的发展潜力,为人类的前进做出了巨大贡献。该文主要从计算机软件开发技术的现状、主要方式、应用以及发展趋势等方面论述了计算机软件开发技术的应用及发展趋势。
关键词:新时期;计算机开发技术;应用;趋势
1计算机软件开发技术概述
一般来说,计算机软件主要包括两大部分:应用软件和系统软件。计算机应用软件指的是为了帮助用户解决使用过程中的具体问题而设计的软件,比如娱乐、管理、文档等方面的软件;系统软件则指的是计算机本身所携带的软件,主要用于保障计算机的运行、维护等等。计算机应用软件和计算机系统软件的作用是相同的,都旨在为用户提供更好的上网体验和实用环境。从本质上来看,人们在使用计算机时运行的最为频繁的是计算机的软件系统而非计算机本身,可以说,没有计算机软件,计算机就无法正常使用。20世纪中期,世界范围内的计算机软件开发技术较为落后,仅仅停留在手工软件开发阶段,工作效率低下,远远不能满足人们日益增长的需求。伴随着全球经济的飞速发展以及第三次科技革命浪潮的开始,计算机软件开发技术也取得了长足发展,人们对其的认识也发生了变化,软件开发一词重新被定义:为了实现计算机的程序运行而采用的规则以及方法等相关的文档等都属于计算机软件的范畴。发展到当今时代,计算机软件开发技术大致经历了程序设计过程、软件过程、软件工程三个时期,随着时间的变化,计算机软件开发技术已经日趋成熟。
2计算机软件开发技术现状
2.1计算机软件开发技术现状
当今时代无所不在的网络给人们的工作生活方式带来了翻天覆地的变化,而支撑着互联网发展的正是计算机软件技术的开发和运行。随着计算机在全球范围内的普及,国内的计算机软件开发技术也迅速成长,为适应市场人才需求,各大高等院校设立了与计算机软件技术相关的专业及方向,无论是高职院校还是重点院校的专业人数比重都呈上升趋势,从事于软件开发行业的人才不断增多。
2.2计算机软件开发技术重要性
正是有了软件开发技术的不断改革创新,才推动了整个互联网行业的飞速发展,可以说计算机软件开发技术对当代信息社会的发展有举足轻重的作用,作为整个信息网络的核心部分,计算机软件技术开发将网络信息传输和远程控制变为了现实,为人们的生活、工作提供了极大地便利。计算机软件开发技术的应用大大提升了信息网络环境的安全性、隐私性,保证人们在畅想网络所带来的自由时不会受到其他因素的干扰,大大提升了人们的体验感。此外,软件技术的开发和应用可以促进计算机使用和软件技术之间的问题,实现两者有机融合,从而拓展了计算机的适用范围和适用领域,推动人类社会向前发展。
2.3计算机软件开发技术问题
首先,信用值计算问题。这是计算机软件技术开发过程中的重要问题之一,其关键在于信用机制,由于没有统一的信用机制,因此,会导致计算方法的不同。多数情况下,采取的是乘性减、加性增的方法,加性增主要是用来处理信誉度增加的问题,这样可以对恶意节点形成约束作用。其次,是数据安全问题。虽然现阶段的计算机软件开发技术应经十分成熟,但是在面对数据传送过程中的数据丢失等问题时,还是无法有效遏止,很容易造成机密文件被窃取泄露的问题,这对相关人员、机构都带来了极大的损失。最后,是版权问题。这是计算机软件开发技术中最严重最泛滥的一个问题。由于我国版权保护法规还没有完全形成体系,再加上网络资源的共享性等因素,软件技术开发的成果很容易被窃取,这大大降低了软件人员的工作效率和积极性,也会对我国的软件行业发展带来消极影响。
3计算机软件开发技术主要方式
经过几十年的发展,计算机软件开发技术的方式已经进入了成熟阶段,各方面理论知识也日臻完善,总的来说,现阶段最主要的软件开发方式主要包括计算机软件生命周期法、原型化方法和自动形式的系统开发法三种方式:3.1计算机软件生命周期法该软件开发方式亦被称为结构化系统开发方法。是三种方式中最为普遍的一种使用手段,计算机软件生命周期法着眼于软件的整体性和全局性,主要用于复杂的系统开发阶段。这种方式将软件的开发阶段划分为若干个子阶段,降低了原有软件系统的难度,便于更好的操作和维护。计算机软件生命周期法的缺点在于开发耗时长,各阶段之间缺乏独立性,前后联系密切增大了工作量。3.2原形化方法这种开发方式主要指的是相关的技术人员在商讨决定一个统一的软件模型之后进入开发阶段并不断修改调整,直到达到用户的要求即可。这也是一种较为普遍的开发手法,其优点在于以用户的需求为导向目标性强,可以降低不必要的成本和技术浪费,缺点在于适用范围较小,只可用于小型简易的软件系统开发。3.3自动形式的软件开发方法主要特点是在软件开发过程中对软件的开发目的和内容详细说明,对开发过程则不过多赘述,其优点在于可以根据软件的要求自主设计编码。
4计算机软件开发技术应用
任何一种技术的发明和应用都是为了更好地服务于人类,提升人类的生活方式和工作方式。因此,开发计算机软件就是为了给人们带来更多的便捷性、高效性,满足人们的各种需求。举例来说,在对两个不同的软件系统VB6.0+Access和Web+_ml+Active 进 行应用时,就要根据软件本身的特点来满足用户的不同需求。由于第一个软件的版本与微软的版本相同,因此在安装时就可以直接在电脑上运行,无需其他辅助的系统软件,安装成功后,该系统在使用时操作流畅快捷,使用方便,并且没有其他多余的附加产品影响用户的使用,因此,该软件的用户需求就会不断提升,可能会因为用户过多而对使用体验造成影响,这就需要人工进行调整。而第二种软件在安装时由于受到自身条件的限制,在安装时会在一定程度上降低用户使用量。这就说明在进行计算机软件技术开发时要坚持以人为本,将用户的需求放在首位,最大程度的满足用户的体验,唯有如此,才能获取更多的使用率和利润。
5结束语
计算机软件开发技术的发展趋势主要表现在以下几个方面:
1)网络化。
网络化是计算机软件开发技术的主要目标,其网络化的发展方向势必会为人类的生活生产方式产生巨大影响,人与物之间相互连接物联网将会是以后计算机软件开发技术的主要研究内容。
2)服务性。
计算机软件在开发应用之前就是为了解决人们处理问题时的难题,未来的计算机软件开发技术将借助先进的开发理念更全面、更细致的满足用户的体验和需求,所以服务性是其最根本的特征,也是今后不断向前发展的动力。
3)智能化。
计算机软件开发技术随着社会的发展逐步向智能化方向迈进,随着技术的不断进步,计算机软件开发技术会更加趋向人性化,智能化发展方向是人类计算机软件的重要进步,是高科技的一次突破性进展。
4)开放化。
计算机软件开发技术的开放化主要体现在技术开发人员之间的技术交流和共享,在技术上则指的是软件源代码的开放和软件产品的标准化,从业人员之间的相互学习可以打破行业之间的壁垒,碰撞出更多的思维火花,从根本上提高软件产品的质量,实现整个软件行业繁荣发展。
参考文献:
[1]范伟.浅论新时期计算机软件开发技术的应用及发展趋势[J].计算机光盘软件与应用,2014(13):80-80+82.
[2]刘芳.新时期计算机软件开发技术的应用及发展趋向[J].中国新通信,2015(13):89-89.
[3]左岑.试析计算机软件开发技术的应用及发展展望[J].才智,2013(12):384-384.
[4]刘凯英.浅谈计算机软件开发技术的应用及发展[J].无线互联科技,2013(1):69.
[5]潘其琳.计算机软件开发技术的现状及应用探究[J].信息技术与信息化,2015(3):249-251.
计算机专业毕业论文——软件技术相关 文章 :
1.计算机专业毕业论文范本
2.计算机专业毕业论文大全参考
3.计算机软件技术专业论文
4.计算机软件技术的毕业论文
5.关于计算机技术应用专业毕业论文
6.计算机软件本科毕业论文
5000字计算机毕业论文篇3 浅议计算机数据库安全管理 摘 要:随着计算机和网络的普遍使用,人们或企业通过数据库存放的信息越来越多。计算机数据库的安全与否则涉及到个人隐私或企业等利益各方。 文章 通过对计算机数据库概念和特征的梳理,在明确数据库安全问题的基础上,设定计算机数据库安全管理目标并制定了数据库安全管理系统模式。 关键词:计算机;数据库;安全;模式 八九十年代至此,计算机的使用越来越普遍,个人和企业都倾向于用网络来处理个人的事情,并将很多资料和信息存放在网络上以便使用。而计算机数据库就是对这一活动进行技术支撑。 人们一般将个人资料等存放在计算机数据库中以方便和安全之用。这些个人资料往往包含有个人隐私并且非常重要,只有具有相关权限的人才能够查看相关资料。同样,现代企业几乎都是通过计算机数据库来存储和管理各种业务数据。通过特定的数据库访问模式,可以为企业提供全区域全侯段数据的查询和应用方便,提高 企业管理 效率。企业数据库对企业很是重要。但是如果数据库受到人为或病毒的攻击,个人隐私或企业重要信息就面临被窃取或流失的危险,进而对个人或企业的利益造成损失。 本文通过对计算机数据库概念和特征的梳理,设定数据库管理之目标、分析数据库管理问题进而提出计算机数据库安全管理模式。 一、计算机数据库概念及其安全管理特征 (一)计算机数据库概念 计算机数据库(Database)是为达到一定的目的而将数据组织起来并存储在计算机内数据(记录、文件等)的集合。模型是数据库系统的核心和基础。按照计算机存储和操作数据的方式,从数据库发展形态和模型特点角度,将数据库划分为:网状数据库、层次数据库和关系数据库三类。计算机数据库的应用领域和范围十分广泛。按照数据库应用领域和范围,将数据库划分为:统计数据库系统、海河流域数据库系统、地质数据库系统、生态环境数据库系统、地方志数据库系统等。 总体而言,随着计算机的普及和数据库技术的不断发展,计算机数据库应用范围不断的扩大,受到越来越大的重视,并其安全性得到不断的优化和加强。 (二)数据库安全管理特征 数据库安全管理往往包含数据安全、数据完整、并发控制和故障恢复等四个方面: 1.数据安全 数据的安全是保障数据使用的前提。数据安全涉及数据本身的安全以及数据防护安全两个方面。通常需要注意防止数据在录入、处理、统计或打印中造成的数据损坏或丢失;以及因人为、程序、病毒或黑客等造成的数据损坏或丢失。为了保障数据的安全,通常需要将数据进行分类,也即将需保护信息和其他信息分开;设置用户访问权限,控制不同的用户对不同数据的访问;对数据进行审计和加密。 2.数据完整性 数据的完整是保证接收信息的全面性,包括数据的精确性和可靠性。数据完整性通常包括实体完整性、域完整性、参照完整性和用户定义完整性等四个方面。数据完整与否通常涉及到数据录入等方面。数据由于输入等种种原因,会发生输入无效或错误信息等问题。为了保证数据完整性,通常采用包括外键、约束、规则和触发器等 方法 。系统很好地处理了这四者的关系,并针对不同的具体情况用不同的方法进行,相互交叉使用,相补缺点。 3.并发控制 数据库中的数据信息资源可以说是一个“信息池”,对数据的取用不仅要满足一个用户的使用,还要允许多用户同时对数据的取用。为了保证用户取用数据一致性就涉及到并发控制。并发控制指的是当多个用户同时更新运行时,用于保护数据库完整性的各种技术。并发机制不正确可能导致脏读、幻读和不可重复读等此类问题。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。在某些情况下,这些措施保证了当用户和其他用户一起操作时,所得的结果和她单独操作时的结果是一样的。在另一些情况下,这表示用户的工作按预定的方式受其他用户的影响。 4.故障恢复 目前,保护数据库系统免受破坏的措施有很多,它能够保证数据库的安全性和完整性不被破坏以及并发事务能够正确执行,但是计算机的硬件故障、操作人员的事务这些是不能够进行避免的。而数据库中数据的正确性都会受到它的影响,甚至有时会使得数据库受到破坏,导致数据库中的部分或者全部数据的丢失。故障恢复的功能就是能够实现数据库从错误状态向某一已知的正确状态方向进行恢复。 二、数据库安全管理目标 数据的安全和完整使用是计算机数据库管理的目标,包括以下几个方面: 数据共享和统一管理。对具有使用权限的用户实现全区域或全侯段数据信息共享能够提高信息的使用效率,满足企业或个人动态办公的需求。同时数据共享必须保障共享数据的一致性和对数据的统一管理。 数据访问简化。应用程序对数据的访问进行简化,使得在更为逻辑的层次上实现应用程序对数据进行访问。数据访问简化一方面提高了对数据库中数据的使用效率,另一方面提升了个人或企业使用数据的方便性,提高工作效率。 数据有效。数据有效性一方面指数据库中的数据需是可以使用的,不能存在过多的冗杂数据;另一方面数据的逻辑一致性得到保证。 数据独立性保障。数据独立性包括数据的物理独立性和逻辑独立性。把数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,从而简化了应用程序的编制,大大减少了应用程序的维护和修改,保障数据的独立性,减少程序对数据和数据结构的依赖。 数据安全性保障。是保障在数据库共享情况下维护数据所有者利益。数据的集中存放和管理能够保证数据库安全性。数据库安全的具体目标就是提供充分的服务,并且保证关键信息不被泄露。 三、数据库安全管理存在问题 从数据库系统安全性角度来讲,数据库的安全问题包括操作方面问题、系统管理问题和数据库自身问题等三个方面。 操作方面。操作方面往往涉及到病毒、后门、数据库系统以及 操作系统 等方面的关联性。病毒方面,部分病毒可以依附于操作系统从而对数据库造成危害;操作系统后门在方便特征参数设置等的同时,也给黑客等留了后门使其可以访问数据库系统等。 管理方面。对数据库安全管理意识薄弱,重视程度不够,对数据库等的管理往往提留在设置访问权限等方面。数据库安全管控措施较少或不到位,未能定期检测和发现数据库存在的漏洞以及面临的安全威胁。 数据库自身问题。虽然关系数据库系统应用时间较长,特性较强大,产品也较成熟,但是实际中并没有在操作系统和现在普遍使用的数据库系统体现出其应该具有的某些特征,尤其是那些较为重要的安全特性,由此可见,大多数的关系数据库系统的成熟度还是不够。 四、计算机数据库安全管理措施 (一)用户标识与鉴别 用户识别和鉴别是数据库系统的最外层安全保护措施。数据库系统可使用多种识别方法,提高系统的安全级别。其中用户名输入识别、口令识别、身份随即识别等作为常用的安全防范方法。 (二)安全模式 通过安全模式来判断安全重要方面与系统行为关系,并满足关键数据安全的需求。安全模式通常包括多级安全模式和多边安全模型。多级安全模式首先在军用安全保密系统中使用,包括秘密级、机密级和绝密级三个等级。根据不同的需求设置每一级人员的访问权限。多边安全模式则能防范横向信息泄露。 (三)访问控制 按用户身份及其所归属的某项定义组来限制用户对某些信息项的访问,或限制对某些控制功能的使用。访问控制通常用于系统管理员控制用户对服务器、目录、文件等网络资源的访问。访问控制保证具有访问权限的用户的正常访问,是通过主体访问设置保护网络资源。访问控制的功能主要有以下:防止非法的主体进入受保护的网络资源;允许合法用户访问受保护的网络资源;防止合法的用户对受保护的网络资源进行非授权的访问。访问控制实现的策略:入网访问控制、网络权限限制、目录级安全控制、属性安全控制、网络服务器安全控制等。 (四)安全审计 由专业审计人员根据有关的法律法规、财产所有者的委托和管理当局的授权,对计算机网络环境下的有关活动或行为进行系统的、独立的检查验证,并作出相应评价。安全审计涉及四个基本要素:控制目标、安全漏洞、控制措施和控制测试。其中,控制目标是指企业根据具体的计算机应用,结合单位实际制定出的安全控制要求。 五、结束语 数据安全问题是存在于计算机系统和数据库系统中的常见和最为重要的问题。数据库的安全围绕着防范和减轻风险的角度展开。数据库管理最主要的目的就是通过有效的计划和措施,在保障数据共享的基础上,保障数据的安全,确保安全风险不为用户带来风险等。文章在指出数据库系统中存在安全问题的基础上,从用户识别、设置安全模式、进行访问控制等角度提出了数据库安全管理措施。 参考文献: [1]许婷,杨新荣.数据库安全技术理论研究[J].科技情报开发与经济,2007,4. [2]朱良根,雷振甲,张玉清.数据库安全技术研究[J].计算机应用研究,2004,9. [3]隽军利,李天燕,王小龙.浅析计算机数据库系统在信息管理中的应用[J].科技创新导报,2008,12. [4]刘启原,刘怡.数据库与信息系统的安全[M].北京:科学出版社,2000. 5000字计算机毕业论文篇4 浅谈计算机安全技术与防护 摘要:互连网具有开放性和匿名性的特点,这给计算机黑客、病毒利用网络实施各种犯罪活动创造了机会,同时对网络安全构成了威胁。在我们使用网络的过程中,总会感染各种各样的网页病毒,在收发电子邮件、使用QQ进行即时聊天过程中,也会导致密码被盗等情况。同时,由于安全问题,有些网站的数据被破坏,这给我们的工作带来了极大损失。 关键词:计算机;网络;安全技术;防护技术 互联网以其高效率和快捷方便改变着人们的生产与生活,在社会的各个领域得到了广泛的应用,各行各业用其来处理各种事物,比如电子邮件的发送、网上购物、信息的处理、网上炒股和网上办公。所有这些都与互连网的开放性及匿名性有关。也正因为这些特征使互联网存在着一定的安全隐患。但是网络不安全导致人们对网络望而生畏,以上问题也使人们在应用网络与计算机的过程中遭受巨大损失,我在计算机安全技术与防护方面做如下分析。 一、计算机网络信息存在安全隐患 (一)计算机本身存在的问题 计算机的弱项是面对威胁与攻击时容易被破坏甚至导致瘫痪。因为它自身的防御能力较差,被新病毒攻击时束手无策,在建立网络协议时,有些安全问题没有被安排在内,虽然又新加了许多安全服务与安全机制,但是黑客的攻击还是让计算机本身防不胜防,让一些安全措施显得无力,所以在互联网中的安全问题表现的更加严重。 (二)软件中存在的漏洞 所有的操作系统或网络软件都存在着各种各样的问题,主要是有了黑客的攻击或病毒的入侵以后才进行漏洞的修补,所以在操作系统及网络软件中还存在缺陷和漏洞,这给我们的计算机带来了很大的危险,计算机被接入网络受到的攻击也会更多。 (三)计算机安全配置不正确 进行安全配置时,因为配置不正确导致了安全漏洞的存在。比如,没有对防火墙进行配置,那么本身的作用不能得到很好的发挥,在这种特定的网络应用程序中,启动过程中,很多安全缺口也会随之打开,可以与这一软件捆绑在一起的应用软件随之启用。只有在用户禁止此程序的运行,或者对它进行了合理的配置时,才可以排除各种安全隐患。 (四)使用对象的安全意识差 当用户口令设置较简单,有时还把自己的账号借给他人用或者与他人共用,这些给网络安全造成了一定的威胁。 二、计算机病毒的威胁 随着应用的广泛,病毒的种类也在不断增多,破坏性不断增强,病毒的产生与蔓延使信息系统不再可靠,不再安全,计算机受到的威胁是巨大的,同时也给各个单位造成了很多损失,计算机病毒的入侵手段可以归结为以下几类: (一)数据的欺 非法入侵到计算机,对数据进行修改,甚至借机对假数据进行输入。 (二)特洛伊木马 在计算机内通过不正确的手段装入秘密指令或者程序,通过计算机进行犯罪活动。它通过合法的身份隐藏于其他的程序中,某时刻会发作,这时会产生威胁,当本机在完成任务时,它会实施非授权功能。比如复制一段超过系统授权的程序等。 (三)截收信息 黑客或者病毒在进行攻击时,有可能会利用搭线或者是电磁辐射的范围内进行截收,对重要信息进行截获或者借助于信息流以及自身的流向、通信频度及长度等参数加以分析,对有用的信息进行判断及保留。 (四)对程序的攻击 这种病毒的攻击性较强,活动较频繁,它深深地隐藏于计算机的存储器中,借助于木马对用户进行技术性的欺,对用户进行激活。甚至借助于逻辑炸弹来发作,对系统进行攻击并产生较大的危害性活动。 (五) 其它 网络攻击方式 黑客或者病毒破坏网络系统,使其不可用,导致合法用户对网络资源不能进行访问,拒绝各种服务,有的还会严重破坏计算机系统与网络系统,使系统信息不再完整,有些还有可能假装主机对合法用户进行非法入侵,使系统资源遭受破坏等。 三、常用的网络安全技术 (一)操作系统内核的安全性防护技术 操作系统安全内核技术主要是通过传统网络安全技术进行分析,借助于操作系统这一层次对网络的安全性进行分析与假设,对系统内核中可能存在安全性问题在内核中除掉,进一步对系统的安全性问题进行强调,在技术上不断加强。操作系统平台的安全措施主要有:利用安全系数较高的操作系统;对操作系统进行安全配置;借助于安全扫描系统对操作系统的漏洞进行检查等。美国国防部技术标准将操作系统的安全等级划分成D1、C1、C2、B1、B2、B3、A几个等级,它的安全等级主要是从低到高。当前大多数操作系统的安全等级都达到了C2级,它的特征包括:一是利用用户注册名和口令使系统加以识别;二是系统通过用户的注册名对用户访问资源的权限进行裁定;三是通过系统对所有系统中发生的所有事件进行审核与记录;四对其他具有系统管理权限的用户进行创建。 (二)网络防病毒技术 计算机病毒借助于网络环境对系统进行破坏,它的破坏力非常强,它产生的威胁与破坏力是不可估计的,比如CIH病毒及爱虫病毒就充分说明了,如果不对病毒进行提前预防,它所造成损失更大,给社会带来一系列的问题,所以,我们要加强病毒的预防。网络防病毒技术的具体实现方法主要包括对网络服务器中的文件的频繁破坏,频繁扫描与频繁监测,主要通过工作站对防病毒的芯片、网络目录以及各种文件加强了访问权限的设置等。预防病毒主要借助于网络这一整体,提高管理人员的技术与防范意识,经常对全网的客户机进行扫描,对病毒情况进行监测;通过在线报警技术,使网络上的每一台机器发生故障、被病毒入侵时,网管人员能够检测到并及时解决这些问题,使网络被攻击的损失达到最小化。 (三)对 网络技术 的加密 对网络进行加密技术的提高是保障网络安全的行之有效的一项重要措施,做了加密的网络可以防止非法窃听,还可以防止恶意软件的入侵等,对网络信息进行加密主要是对网内的数据进行保护,对网内的文件、口令及控制信息实施保护,对网上传输的数据加以保护。这种对网络实施的加密主要是通过链路加密、端点加密及节点加密几种方式来实现。链路加密的目的是为了对网络节点之间的链路信息安全进行保护;对各个端点进行加密的目的是完成对源端用户到目的端用户的数据所做的加密保护;对节点进行加密主要是对源节点到目的节点之间的传输链路进行加密保护。各用户针对网络情况对上述三种加密方式结合自身情况进行选择。 根据收发双方的密钥的异同进行分类,对这些加密算法可以分为常规密码算法与公匙密码算法。通过对其应用这一过程,人们主要是把常规密码与公钥密码有机结合。比如:使用DES或者IDEA完成对信息的加密,而使用RSA对会话密钥进行传递。假如根据多次加密所处理的比特进行分类,我们可以把加密算法分为序列密码的算法与分组密码的算法,而序列密码的算法在每次计算时只加密一个比特。 (四)加强防火墙技术 网络防火墙主要是对被保护的网络和外界所设置的屏障,它借助于计算机硬件及软件的组合形成了相对安全的网关,对内部网络进行保护,使其不受非法用户的入侵,通过对它的鉴别、限制与更改,使其跨越防火墙的数据流,对通信网络的安全提供保障,为计算机通信网络的发展提供保障。 (五)加强身份验证技术 身份验证技术主要是用户通过系统显示自己身份证明的一个过程。通过身份认证对用户的身份进行证明。通过这两个过程对通信双方真实身份进行判定与验证,借助于这两项工作完成身份的验证。计算机的安全机制主要是对发出请求的用户做出身份验证,对它的合法性进行确认,如果判定为合法用户,对该用户进行审核,判断其是否对所请求的服务或主机可以进行访问。 总之,网络安全是一项综合性、长期性的任务,它主要涉及到技术、管理以及使用的许多问题,主要包括信息系统自身的安全问题,还包括物理方面的和逻辑方面的相应措施。所以,一定要通过多种防范措施,通过各种比较保密的政策及明晰的安全策略,对信息的机密性、完整性和可用性逐步加强,给网络安全提供保障。 参考文献: [1]陈月波.网络信息安全[M].武汉:武汉理工大学出版社,2005 [2]钟乐海,王朝斌,李艳梅.网络安全技术[M].北京:电子工业出版社,2003 [3]张千里.网络安全基础与应用[M].北京:人民邮电出版社,2007 [4]吴金龙,蔡灿辉,王晋隆.网络安全[M].北京:高等教育出版社,2004 猜你喜欢: 1. 计算机专业毕业论文评语 2. 有关大学计算机专业毕业论文范文 3. 计算机系毕业论文范文参考 4. 大学计算机毕业论文范文 5. 关于计算机专业毕业论文范文 6. 计算机专业毕业论文参考
随着信息全球化的发展,计算机的运用越来越普及。在企业方面管理和培训方面,计算机软件技术发挥了不可替代的作用。下面是我为大家整理的计算机专业 毕业 论文,供大家参考。
摘要:本文从“软件技术基础”课程的特点出发,分析和 总结 了该课程教学过程中出现的各种问题,综合其他学校该课程的教学内容和 教学 方法 ,结合我校教学环境和学生学习的实际情况,对课程教学进行了一些改革探索和实践,并取得了一定的成绩。
关键词:软件技术基础;教学改革;教学研究;
一、引言
随着科学技术的飞速发展,计算机应用已经深入到社会生活的各个领域中。熟练的操作和使用各种计算机应用软件,成为我们工作和生活的必备技能。越来越多的应用软件的设计与开发是由非计算机专业人员完成,开发出的各种软件,也大部分由非计算机专业人员操作和使用。吉林医药学院针对本校生物医学工程专业的学生,开设了“软件技术基础”课程。但由于该课程教学内容多样,教学学时有限,学生程序设计水平参差不齐等原因,给教师和学生的教学带来一定的难度。针对该课程的特点,综合其他学校的教学方式,结合吉林医药学院实际情况,对“软件技术基础”课程教学进行了一些改革探索和实践。
二、“软件技术基础”课程教学现状
第一,课程内容多,覆盖范围广。吉林医药学院的“软件技术基础”课程,是在基础课程“计算机应用基础”、“C语言程序设计”、“VB数据库程序设计”课程后开设的课程,其教学内容涵盖了四门计算机专业的课程:“数据结构”、“数据库系统”、“ 操作系统 ”和“软件工程”。在有限的学时中完成该课程的教学,教师与学生都面临很大的挑战。[1]
第二,课程学时有限。吉林医药学院“软件技术基础”课程教学有50学时,其中理论32学时。将这有限的学时分配后,各部分教学内容的教学时间更加受限,在短时间内学好该课程,对老师和学生都是极大的挑战。受课时限制,在教学中,教师对枯燥和抽象的知识无法深入讲解,没有时间通过更多的实例对概念和算法演示和说明;学生缺少足够的程序设计 经验 和调试能力,对所学内容无法融会贯通。以“软件技术基础”课程的数据结构部分内容讲授为例,对于顺序表、链表、栈、队列、树、图、排序和查找等知识,课堂的大部分时间,只能集中讲解相关知识的概念、思想及算法实现,学生练习操作时也只能是将算法在机器上实现,但具体的应用、程序设计以及调试等技巧课堂上无法细致讲解,同样,对于大部分学生,具体的应用在练习操作时练习不到。[2]
第三,学生学习目的不明确。学生在学习时,需要了解所学内容在其未来工作和生活中的目的和意义。但是,由于“软件技术基础”课程涵盖教学内容多,授课学时少,导致学生学到的知识浮于表面,课堂讲授以概念和理论为主,缺少解决实际问题经验,学生对所学内容的重要性、实用性了解不深。学生学习“软件技术基础”课程后,只掌握了一些基本概念和算法,但无法将所学应用于实践。[3]
第四,学生的程序设计水平参差不齐。吉林医药学院“软件技术基础”课程开设于学生大二下学期,学生在学习该课程前,已经学习了“C语言程序设计”,但C语言课程对于第一次接触程序设计的学生来说,概念抽象且规则繁多,掌握困难。对于C语言中数据的存储、算法编写、程序设计及调试等尤其畏惧、困惑,加深了接下来数据结构部分学习的难度。又由于“软件技术基础”课程与“C语言程序设计”课程之间间隔一个学期,这让学生本就不牢固的C编程知识在学习新的内容时更加困难。
第五,注重培养学生的应用能力。学生学习“软件技术基础”课程是为了用所学知识解决实际问题,学生的实践能力的培养是本课程教学的重中之重,如何更好的提高学生的学习兴趣,加深学生对知识的理解,同样是该课程的教学难点。以上是吉林医药学院“软件基础基础”课程面临的主要问题,各个问题相互影响和制约,进一步影响到“软基”课程的教学效果和学生学习该课程的兴趣和效果。针对以上问题,考查其他院校的教学方法和教学手段,吉林医药学院的“软件技术基础”在教学和实践环节进行了改革探索,取得了一定的成果。
三、课程教学改革探索
第一,利用现代 教育 技术,实例化教学。教材是学生获取知识的直接方法,在选择教材方面,选取案例详细的教材,弥补教学学时的不足。理论课教学是学生获取知识的重要手段,我校的教学环境优秀,每一个教室都配备有多媒体等现代化设备辅助教学,利用先进的教学设备,制作优秀的教学课件,增加动画等元素,将晦涩难懂的理论知识,通过直观的例子和生动的讲解展示给学生。如讲解数据结构中栈的存储结构、定义及算法时,利用学生熟知的手枪中的弹夹讲解;讲队列相关知识的时候,利用学生最经常使用的车站买票等生动形象的例子。再如,讲解数据库中范式概念的时候,利用学生熟悉的班级学生作为对象,分别解释各个范式的区别……
第二,对比归纳,强调总结。受到课时等客观条件限制,经多轮授课发现,学生在学习“软件技术基础”课程知识时,会有囫囵吞枣的感觉,知识无法吸收透彻并应用,已经开始下一部分知识的学习。教师需要利用自己的教学经验,在讲授过程中对知识进行凝练,对相似知识多进行归纳总结,用尽量少的语言复习与对比相关内容,让学生做到温故而知新。
第三,强化实践教学,提高动手能力。授人鱼不如授人以渔,相对于教师,学生才是学习的主体,学生学习的主动性和积极性直接影响着学习的效果。勤能补拙,督促学生利用课余时间复习C语言等学过的知识,利用实验课程序调试的机会,让学生自己讲解程序并引导学生对程序跟踪,仔细观察程序变量的变化,总结经验,对程序进行优化,打下良好的程序设计基础。吉林医药学院软件技术基础课程的实验有18学时,实验课上除了验证课堂讲授的内容,学生无法更进一步的学习深入的内容,为更好的培养学生独立操作能力和实际应用能力,我校为生工的学生开放实验室,提供自主上机练习环境。对有进一步学习需要的学生,在每周三下午开设第二课堂,由有经验的老师对学生有针对性的讲解程序设计和软件开发的方法和技巧。
第四,采用课程设计,督促学生自主学习。为更好的激发学生学习的积极性和主动性,在数据结构和数据库部分基础知识学习后,分别要求学生进行课程设计。在数据结构部分,为每一位学生提供不同的设计题目,限定提交作业时间。为解决学生可能是网络下载或他人协作帮助完成作业的情况,需要学生对程序进行注释,要求学生能读懂程序。针对数据库部分,采用学生分组完成数据库题目的方式,数据库题目可采用教师命题和学生选题的方式,学生分组采用学生自主分组,要求每组5-6成员,每位成员负责数据库的不同部分,最后根据每人负责的设计难易程度评价学生的成绩。采用课程设计的方式,给与学生学习的紧迫感和压力,对于程序设计能力稍差的学生,适当降低要求,达到锻炼学生实际动手能力、培养学生团队合作意识和协同操作能力,为学生的工作打下基础。
四、结束语
教学是一项永无止境的工作,在教学过程中,教师要根据学生的专业情况和个人学习情况及特点,有针对性的进行教学方式和教学内容的改革,运用适当的教学模式,把知识传递给学生,培养学生独立分析问题、解决问题、将所学知识综合应用于实践的实践和创新能力。
参考文献:
[1]张小瑞,孙伟,张自嘉,杨双翼.《计算机软件技术基础》教学改革探索与研究[J].中国科技信息.2012(04):129~135.
[2]陈帝伊,马孝义,辛全才.“计算机软件技术基础”课程教学方法探析[J].计算机教育2009(22):68~69.
[3]伦向敏,门洪,兰建军.《软件技术基础》教学改革探析[J].课程教育研究,2014(27)
摘要:作为一门新兴学科,计算机软件在短短的十几年中实现了跨越式发展,当今时代计算机软件技术依旧保持着旺盛的发展潜力,为人类的前进做出了巨大贡献。该文主要从计算机软件开发技术的现状、主要方式、应用以及发展趋势等方面论述了计算机软件开发技术的应用及发展趋势。
关键词:新时期;计算机开发技术;应用;趋势
1计算机软件开发技术概述
一般来说,计算机软件主要包括两大部分:应用软件和系统软件。计算机应用软件指的是为了帮助用户解决使用过程中的具体问题而设计的软件,比如娱乐、管理、文档等方面的软件;系统软件则指的是计算机本身所携带的软件,主要用于保障计算机的运行、维护等等。计算机应用软件和计算机系统软件的作用是相同的,都旨在为用户提供更好的上网体验和实用环境。从本质上来看,人们在使用计算机时运行的最为频繁的是计算机的软件系统而非计算机本身,可以说,没有计算机软件,计算机就无法正常使用。20世纪中期,世界范围内的计算机软件开发技术较为落后,仅仅停留在手工软件开发阶段,工作效率低下,远远不能满足人们日益增长的需求。伴随着全球经济的飞速发展以及第三次科技革命浪潮的开始,计算机软件开发技术也取得了长足发展,人们对其的认识也发生了变化,软件开发一词重新被定义:为了实现计算机的程序运行而采用的规则以及方法等相关的文档等都属于计算机软件的范畴。发展到当今时代,计算机软件开发技术大致经历了程序设计过程、软件过程、软件工程三个时期,随着时间的变化,计算机软件开发技术已经日趋成熟。
2计算机软件开发技术现状
2.1计算机软件开发技术现状
当今时代无所不在的网络给人们的工作生活方式带来了翻天覆地的变化,而支撑着互联网发展的正是计算机软件技术的开发和运行。随着计算机在全球范围内的普及,国内的计算机软件开发技术也迅速成长,为适应市场人才需求,各大高等院校设立了与计算机软件技术相关的专业及方向,无论是高职院校还是重点院校的专业人数比重都呈上升趋势,从事于软件开发行业的人才不断增多。
2.2计算机软件开发技术重要性
正是有了软件开发技术的不断改革创新,才推动了整个互联网行业的飞速发展,可以说计算机软件开发技术对当代信息社会的发展有举足轻重的作用,作为整个信息网络的核心部分,计算机软件技术开发将网络信息传输和远程控制变为了现实,为人们的生活、工作提供了极大地便利。计算机软件开发技术的应用大大提升了信息网络环境的安全性、隐私性,保证人们在畅想网络所带来的自由时不会受到其他因素的干扰,大大提升了人们的体验感。此外,软件技术的开发和应用可以促进计算机使用和软件技术之间的问题,实现两者有机融合,从而拓展了计算机的适用范围和适用领域,推动人类社会向前发展。
2.3计算机软件开发技术问题
首先,信用值计算问题。这是计算机软件技术开发过程中的重要问题之一,其关键在于信用机制,由于没有统一的信用机制,因此,会导致计算方法的不同。多数情况下,采取的是乘性减、加性增的方法,加性增主要是用来处理信誉度增加的问题,这样可以对恶意节点形成约束作用。其次,是数据安全问题。虽然现阶段的计算机软件开发技术应经十分成熟,但是在面对数据传送过程中的数据丢失等问题时,还是无法有效遏止,很容易造成机密文件被窃取泄露的问题,这对相关人员、机构都带来了极大的损失。最后,是版权问题。这是计算机软件开发技术中最严重最泛滥的一个问题。由于我国版权保护法规还没有完全形成体系,再加上网络资源的共享性等因素,软件技术开发的成果很容易被窃取,这大大降低了软件人员的工作效率和积极性,也会对我国的软件行业发展带来消极影响。
3计算机软件开发技术主要方式
经过几十年的发展,计算机软件开发技术的方式已经进入了成熟阶段,各方面理论知识也日臻完善,总的来说,现阶段最主要的软件开发方式主要包括计算机软件生命周期法、原型化方法和自动形式的系统开发法三种方式:3.1计算机软件生命周期法该软件开发方式亦被称为结构化系统开发方法。是三种方式中最为普遍的一种使用手段,计算机软件生命周期法着眼于软件的整体性和全局性,主要用于复杂的系统开发阶段。这种方式将软件的开发阶段划分为若干个子阶段,降低了原有软件系统的难度,便于更好的操作和维护。计算机软件生命周期法的缺点在于开发耗时长,各阶段之间缺乏独立性,前后联系密切增大了工作量。3.2原形化方法这种开发方式主要指的是相关的技术人员在商讨决定一个统一的软件模型之后进入开发阶段并不断修改调整,直到达到用户的要求即可。这也是一种较为普遍的开发手法,其优点在于以用户的需求为导向目标性强,可以降低不必要的成本和技术浪费,缺点在于适用范围较小,只可用于小型简易的软件系统开发。3.3自动形式的软件开发方法主要特点是在软件开发过程中对软件的开发目的和内容详细说明,对开发过程则不过多赘述,其优点在于可以根据软件的要求自主设计编码。
4计算机软件开发技术应用
任何一种技术的发明和应用都是为了更好地服务于人类,提升人类的生活方式和工作方式。因此,开发计算机软件就是为了给人们带来更多的便捷性、高效性,满足人们的各种需求。举例来说,在对两个不同的软件系统VB6.0+Access和Web+_ml+Active 进 行应用时,就要根据软件本身的特点来满足用户的不同需求。由于第一个软件的版本与微软的版本相同,因此在安装时就可以直接在电脑上运行,无需其他辅助的系统软件,安装成功后,该系统在使用时操作流畅快捷,使用方便,并且没有其他多余的附加产品影响用户的使用,因此,该软件的用户需求就会不断提升,可能会因为用户过多而对使用体验造成影响,这就需要人工进行调整。而第二种软件在安装时由于受到自身条件的限制,在安装时会在一定程度上降低用户使用量。这就说明在进行计算机软件技术开发时要坚持以人为本,将用户的需求放在首位,最大程度的满足用户的体验,唯有如此,才能获取更多的使用率和利润。
5结束语
计算机软件开发技术的发展趋势主要表现在以下几个方面:
1)网络化。
网络化是计算机软件开发技术的主要目标,其网络化的发展方向势必会为人类的生活生产方式产生巨大影响,人与物之间相互连接物联网将会是以后计算机软件开发技术的主要研究内容。
2)服务性。
计算机软件在开发应用之前就是为了解决人们处理问题时的难题,未来的计算机软件开发技术将借助先进的开发理念更全面、更细致的满足用户的体验和需求,所以服务性是其最根本的特征,也是今后不断向前发展的动力。
3)智能化。
计算机软件开发技术随着社会的发展逐步向智能化方向迈进,随着技术的不断进步,计算机软件开发技术会更加趋向人性化,智能化发展方向是人类计算机软件的重要进步,是高科技的一次突破性进展。
4)开放化。
计算机软件开发技术的开放化主要体现在技术开发人员之间的技术交流和共享,在技术上则指的是软件源代码的开放和软件产品的标准化,从业人员之间的相互学习可以打破行业之间的壁垒,碰撞出更多的思维火花,从根本上提高软件产品的质量,实现整个软件行业繁荣发展。
参考文献:
[1]范伟.浅论新时期计算机软件开发技术的应用及发展趋势[J].计算机光盘软件与应用,2014(13):80-80+82.
[2]刘芳.新时期计算机软件开发技术的应用及发展趋向[J].中国新通信,2015(13):89-89.
[3]左岑.试析计算机软件开发技术的应用及发展展望[J].才智,2013(12):384-384.
[4]刘凯英.浅谈计算机软件开发技术的应用及发展[J].无线互联科技,2013(1):69.
[5]潘其琳.计算机软件开发技术的现状及应用探究[J].信息技术与信息化,2015(3):249-251.
计算机专业毕业论文——软件技术相关 文章 :
1.计算机专业毕业论文范本
2.计算机专业毕业论文大全参考
3.计算机软件技术专业论文
4.计算机软件技术的毕业论文
5.关于计算机技术应用专业毕业论文
6.计算机软件本科毕业论文
随着我国现代化程度的不断提高,计算机软件被应用的领域愈发广泛,其本身的创造程度也越来越高,计算机产业现在已经成为一个规模庞大的产业。下面是我为大家整理的计算机软件论文,供大家参考。
计算机软件论文 范文 一:计算机软件开发中分层技术研究
摘要:在信息化建设水平不断提高的情况下,计算机软件在这一过程中得到了十分广泛的应用,此外,计算机软件开发在这一过程中也越来越受到人们的关心和关注。软件开发技术最近几年得到了很大的改进,这些技术当中分层的技术是非常重要的一个,所以,我们需要对其进行全面的分析和研究。
关键词:计算机;软件开发;分层技术
当前信息化时代已经悄然到来, 网络技术 的发展也使得人们越来越关注软件开发行业,计算机软件从原来的二元结构模式逐渐向多层结构模式发展,中间件也成为了应用层质量和性能非常重要的一个问题,此外,其也成为了计算机软件开发应用过程中非常关键的一个技术,其与数据库, 操作系统 共同形成了计算机基础软件。这一技术的应用能够使得软件系统扩展性更强,灵活性和适应性也在这一过程中得到了显著的提升,所以,分层技术也已经在现代计算机软件开发的过程中得到了越来越广泛的应用。
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应用的程序器能应用任何分布式的网络协议,像JRMP.IIOP与专有协议等。
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. 计算机硕士论文范文参考
随着信息全球化的发展,计算机的运用越来越普及。在企业方面管理和培训方面,计算机软件技术发挥了不可替代的作用。下面是我为大家整理的计算机专业 毕业 论文,供大家参考。
摘要:本文从“软件技术基础”课程的特点出发,分析和 总结 了该课程教学过程中出现的各种问题,综合其他学校该课程的教学内容和 教学 方法 ,结合我校教学环境和学生学习的实际情况,对课程教学进行了一些改革探索和实践,并取得了一定的成绩。
关键词:软件技术基础;教学改革;教学研究;
一、引言
随着科学技术的飞速发展,计算机应用已经深入到社会生活的各个领域中。熟练的操作和使用各种计算机应用软件,成为我们工作和生活的必备技能。越来越多的应用软件的设计与开发是由非计算机专业人员完成,开发出的各种软件,也大部分由非计算机专业人员操作和使用。吉林医药学院针对本校生物医学工程专业的学生,开设了“软件技术基础”课程。但由于该课程教学内容多样,教学学时有限,学生程序设计水平参差不齐等原因,给教师和学生的教学带来一定的难度。针对该课程的特点,综合其他学校的教学方式,结合吉林医药学院实际情况,对“软件技术基础”课程教学进行了一些改革探索和实践。
二、“软件技术基础”课程教学现状
第一,课程内容多,覆盖范围广。吉林医药学院的“软件技术基础”课程,是在基础课程“计算机应用基础”、“C语言程序设计”、“VB数据库程序设计”课程后开设的课程,其教学内容涵盖了四门计算机专业的课程:“数据结构”、“数据库系统”、“ 操作系统 ”和“软件工程”。在有限的学时中完成该课程的教学,教师与学生都面临很大的挑战。[1]
第二,课程学时有限。吉林医药学院“软件技术基础”课程教学有50学时,其中理论32学时。将这有限的学时分配后,各部分教学内容的教学时间更加受限,在短时间内学好该课程,对老师和学生都是极大的挑战。受课时限制,在教学中,教师对枯燥和抽象的知识无法深入讲解,没有时间通过更多的实例对概念和算法演示和说明;学生缺少足够的程序设计 经验 和调试能力,对所学内容无法融会贯通。以“软件技术基础”课程的数据结构部分内容讲授为例,对于顺序表、链表、栈、队列、树、图、排序和查找等知识,课堂的大部分时间,只能集中讲解相关知识的概念、思想及算法实现,学生练习操作时也只能是将算法在机器上实现,但具体的应用、程序设计以及调试等技巧课堂上无法细致讲解,同样,对于大部分学生,具体的应用在练习操作时练习不到。[2]
第三,学生学习目的不明确。学生在学习时,需要了解所学内容在其未来工作和生活中的目的和意义。但是,由于“软件技术基础”课程涵盖教学内容多,授课学时少,导致学生学到的知识浮于表面,课堂讲授以概念和理论为主,缺少解决实际问题经验,学生对所学内容的重要性、实用性了解不深。学生学习“软件技术基础”课程后,只掌握了一些基本概念和算法,但无法将所学应用于实践。[3]
第四,学生的程序设计水平参差不齐。吉林医药学院“软件技术基础”课程开设于学生大二下学期,学生在学习该课程前,已经学习了“C语言程序设计”,但C语言课程对于第一次接触程序设计的学生来说,概念抽象且规则繁多,掌握困难。对于C语言中数据的存储、算法编写、程序设计及调试等尤其畏惧、困惑,加深了接下来数据结构部分学习的难度。又由于“软件技术基础”课程与“C语言程序设计”课程之间间隔一个学期,这让学生本就不牢固的C编程知识在学习新的内容时更加困难。
第五,注重培养学生的应用能力。学生学习“软件技术基础”课程是为了用所学知识解决实际问题,学生的实践能力的培养是本课程教学的重中之重,如何更好的提高学生的学习兴趣,加深学生对知识的理解,同样是该课程的教学难点。以上是吉林医药学院“软件基础基础”课程面临的主要问题,各个问题相互影响和制约,进一步影响到“软基”课程的教学效果和学生学习该课程的兴趣和效果。针对以上问题,考查其他院校的教学方法和教学手段,吉林医药学院的“软件技术基础”在教学和实践环节进行了改革探索,取得了一定的成果。
三、课程教学改革探索
第一,利用现代 教育 技术,实例化教学。教材是学生获取知识的直接方法,在选择教材方面,选取案例详细的教材,弥补教学学时的不足。理论课教学是学生获取知识的重要手段,我校的教学环境优秀,每一个教室都配备有多媒体等现代化设备辅助教学,利用先进的教学设备,制作优秀的教学课件,增加动画等元素,将晦涩难懂的理论知识,通过直观的例子和生动的讲解展示给学生。如讲解数据结构中栈的存储结构、定义及算法时,利用学生熟知的手枪中的弹夹讲解;讲队列相关知识的时候,利用学生最经常使用的车站买票等生动形象的例子。再如,讲解数据库中范式概念的时候,利用学生熟悉的班级学生作为对象,分别解释各个范式的区别……
第二,对比归纳,强调总结。受到课时等客观条件限制,经多轮授课发现,学生在学习“软件技术基础”课程知识时,会有囫囵吞枣的感觉,知识无法吸收透彻并应用,已经开始下一部分知识的学习。教师需要利用自己的教学经验,在讲授过程中对知识进行凝练,对相似知识多进行归纳总结,用尽量少的语言复习与对比相关内容,让学生做到温故而知新。
第三,强化实践教学,提高动手能力。授人鱼不如授人以渔,相对于教师,学生才是学习的主体,学生学习的主动性和积极性直接影响着学习的效果。勤能补拙,督促学生利用课余时间复习C语言等学过的知识,利用实验课程序调试的机会,让学生自己讲解程序并引导学生对程序跟踪,仔细观察程序变量的变化,总结经验,对程序进行优化,打下良好的程序设计基础。吉林医药学院软件技术基础课程的实验有18学时,实验课上除了验证课堂讲授的内容,学生无法更进一步的学习深入的内容,为更好的培养学生独立操作能力和实际应用能力,我校为生工的学生开放实验室,提供自主上机练习环境。对有进一步学习需要的学生,在每周三下午开设第二课堂,由有经验的老师对学生有针对性的讲解程序设计和软件开发的方法和技巧。
第四,采用课程设计,督促学生自主学习。为更好的激发学生学习的积极性和主动性,在数据结构和数据库部分基础知识学习后,分别要求学生进行课程设计。在数据结构部分,为每一位学生提供不同的设计题目,限定提交作业时间。为解决学生可能是网络下载或他人协作帮助完成作业的情况,需要学生对程序进行注释,要求学生能读懂程序。针对数据库部分,采用学生分组完成数据库题目的方式,数据库题目可采用教师命题和学生选题的方式,学生分组采用学生自主分组,要求每组5-6成员,每位成员负责数据库的不同部分,最后根据每人负责的设计难易程度评价学生的成绩。采用课程设计的方式,给与学生学习的紧迫感和压力,对于程序设计能力稍差的学生,适当降低要求,达到锻炼学生实际动手能力、培养学生团队合作意识和协同操作能力,为学生的工作打下基础。
四、结束语
教学是一项永无止境的工作,在教学过程中,教师要根据学生的专业情况和个人学习情况及特点,有针对性的进行教学方式和教学内容的改革,运用适当的教学模式,把知识传递给学生,培养学生独立分析问题、解决问题、将所学知识综合应用于实践的实践和创新能力。
参考文献:
[1]张小瑞,孙伟,张自嘉,杨双翼.《计算机软件技术基础》教学改革探索与研究[J].中国科技信息.2012(04):129~135.
[2]陈帝伊,马孝义,辛全才.“计算机软件技术基础”课程教学方法探析[J].计算机教育2009(22):68~69.
[3]伦向敏,门洪,兰建军.《软件技术基础》教学改革探析[J].课程教育研究,2014(27)
摘要:作为一门新兴学科,计算机软件在短短的十几年中实现了跨越式发展,当今时代计算机软件技术依旧保持着旺盛的发展潜力,为人类的前进做出了巨大贡献。该文主要从计算机软件开发技术的现状、主要方式、应用以及发展趋势等方面论述了计算机软件开发技术的应用及发展趋势。
关键词:新时期;计算机开发技术;应用;趋势
1计算机软件开发技术概述
一般来说,计算机软件主要包括两大部分:应用软件和系统软件。计算机应用软件指的是为了帮助用户解决使用过程中的具体问题而设计的软件,比如娱乐、管理、文档等方面的软件;系统软件则指的是计算机本身所携带的软件,主要用于保障计算机的运行、维护等等。计算机应用软件和计算机系统软件的作用是相同的,都旨在为用户提供更好的上网体验和实用环境。从本质上来看,人们在使用计算机时运行的最为频繁的是计算机的软件系统而非计算机本身,可以说,没有计算机软件,计算机就无法正常使用。20世纪中期,世界范围内的计算机软件开发技术较为落后,仅仅停留在手工软件开发阶段,工作效率低下,远远不能满足人们日益增长的需求。伴随着全球经济的飞速发展以及第三次科技革命浪潮的开始,计算机软件开发技术也取得了长足发展,人们对其的认识也发生了变化,软件开发一词重新被定义:为了实现计算机的程序运行而采用的规则以及方法等相关的文档等都属于计算机软件的范畴。发展到当今时代,计算机软件开发技术大致经历了程序设计过程、软件过程、软件工程三个时期,随着时间的变化,计算机软件开发技术已经日趋成熟。
2计算机软件开发技术现状
2.1计算机软件开发技术现状
当今时代无所不在的网络给人们的工作生活方式带来了翻天覆地的变化,而支撑着互联网发展的正是计算机软件技术的开发和运行。随着计算机在全球范围内的普及,国内的计算机软件开发技术也迅速成长,为适应市场人才需求,各大高等院校设立了与计算机软件技术相关的专业及方向,无论是高职院校还是重点院校的专业人数比重都呈上升趋势,从事于软件开发行业的人才不断增多。
2.2计算机软件开发技术重要性
正是有了软件开发技术的不断改革创新,才推动了整个互联网行业的飞速发展,可以说计算机软件开发技术对当代信息社会的发展有举足轻重的作用,作为整个信息网络的核心部分,计算机软件技术开发将网络信息传输和远程控制变为了现实,为人们的生活、工作提供了极大地便利。计算机软件开发技术的应用大大提升了信息网络环境的安全性、隐私性,保证人们在畅想网络所带来的自由时不会受到其他因素的干扰,大大提升了人们的体验感。此外,软件技术的开发和应用可以促进计算机使用和软件技术之间的问题,实现两者有机融合,从而拓展了计算机的适用范围和适用领域,推动人类社会向前发展。
2.3计算机软件开发技术问题
首先,信用值计算问题。这是计算机软件技术开发过程中的重要问题之一,其关键在于信用机制,由于没有统一的信用机制,因此,会导致计算方法的不同。多数情况下,采取的是乘性减、加性增的方法,加性增主要是用来处理信誉度增加的问题,这样可以对恶意节点形成约束作用。其次,是数据安全问题。虽然现阶段的计算机软件开发技术应经十分成熟,但是在面对数据传送过程中的数据丢失等问题时,还是无法有效遏止,很容易造成机密文件被窃取泄露的问题,这对相关人员、机构都带来了极大的损失。最后,是版权问题。这是计算机软件开发技术中最严重最泛滥的一个问题。由于我国版权保护法规还没有完全形成体系,再加上网络资源的共享性等因素,软件技术开发的成果很容易被窃取,这大大降低了软件人员的工作效率和积极性,也会对我国的软件行业发展带来消极影响。
3计算机软件开发技术主要方式
经过几十年的发展,计算机软件开发技术的方式已经进入了成熟阶段,各方面理论知识也日臻完善,总的来说,现阶段最主要的软件开发方式主要包括计算机软件生命周期法、原型化方法和自动形式的系统开发法三种方式:3.1计算机软件生命周期法该软件开发方式亦被称为结构化系统开发方法。是三种方式中最为普遍的一种使用手段,计算机软件生命周期法着眼于软件的整体性和全局性,主要用于复杂的系统开发阶段。这种方式将软件的开发阶段划分为若干个子阶段,降低了原有软件系统的难度,便于更好的操作和维护。计算机软件生命周期法的缺点在于开发耗时长,各阶段之间缺乏独立性,前后联系密切增大了工作量。3.2原形化方法这种开发方式主要指的是相关的技术人员在商讨决定一个统一的软件模型之后进入开发阶段并不断修改调整,直到达到用户的要求即可。这也是一种较为普遍的开发手法,其优点在于以用户的需求为导向目标性强,可以降低不必要的成本和技术浪费,缺点在于适用范围较小,只可用于小型简易的软件系统开发。3.3自动形式的软件开发方法主要特点是在软件开发过程中对软件的开发目的和内容详细说明,对开发过程则不过多赘述,其优点在于可以根据软件的要求自主设计编码。
4计算机软件开发技术应用
任何一种技术的发明和应用都是为了更好地服务于人类,提升人类的生活方式和工作方式。因此,开发计算机软件就是为了给人们带来更多的便捷性、高效性,满足人们的各种需求。举例来说,在对两个不同的软件系统VB6.0+Access和Web+_ml+Active 进 行应用时,就要根据软件本身的特点来满足用户的不同需求。由于第一个软件的版本与微软的版本相同,因此在安装时就可以直接在电脑上运行,无需其他辅助的系统软件,安装成功后,该系统在使用时操作流畅快捷,使用方便,并且没有其他多余的附加产品影响用户的使用,因此,该软件的用户需求就会不断提升,可能会因为用户过多而对使用体验造成影响,这就需要人工进行调整。而第二种软件在安装时由于受到自身条件的限制,在安装时会在一定程度上降低用户使用量。这就说明在进行计算机软件技术开发时要坚持以人为本,将用户的需求放在首位,最大程度的满足用户的体验,唯有如此,才能获取更多的使用率和利润。
5结束语
计算机软件开发技术的发展趋势主要表现在以下几个方面:
1)网络化。
网络化是计算机软件开发技术的主要目标,其网络化的发展方向势必会为人类的生活生产方式产生巨大影响,人与物之间相互连接物联网将会是以后计算机软件开发技术的主要研究内容。
2)服务性。
计算机软件在开发应用之前就是为了解决人们处理问题时的难题,未来的计算机软件开发技术将借助先进的开发理念更全面、更细致的满足用户的体验和需求,所以服务性是其最根本的特征,也是今后不断向前发展的动力。
3)智能化。
计算机软件开发技术随着社会的发展逐步向智能化方向迈进,随着技术的不断进步,计算机软件开发技术会更加趋向人性化,智能化发展方向是人类计算机软件的重要进步,是高科技的一次突破性进展。
4)开放化。
计算机软件开发技术的开放化主要体现在技术开发人员之间的技术交流和共享,在技术上则指的是软件源代码的开放和软件产品的标准化,从业人员之间的相互学习可以打破行业之间的壁垒,碰撞出更多的思维火花,从根本上提高软件产品的质量,实现整个软件行业繁荣发展。
参考文献:
[1]范伟.浅论新时期计算机软件开发技术的应用及发展趋势[J].计算机光盘软件与应用,2014(13):80-80+82.
[2]刘芳.新时期计算机软件开发技术的应用及发展趋向[J].中国新通信,2015(13):89-89.
[3]左岑.试析计算机软件开发技术的应用及发展展望[J].才智,2013(12):384-384.
[4]刘凯英.浅谈计算机软件开发技术的应用及发展[J].无线互联科技,2013(1):69.
[5]潘其琳.计算机软件开发技术的现状及应用探究[J].信息技术与信息化,2015(3):249-251.
计算机专业毕业论文——软件技术相关 文章 :
1.计算机专业毕业论文范本
2.计算机专业毕业论文大全参考
3.计算机软件技术专业论文
4.计算机软件技术的毕业论文
5.关于计算机技术应用专业毕业论文
6.计算机软件本科毕业论文