前言:想要写出一篇引人入胜的文章?我们特意为您整理了软件工程应用论文(5篇)范文,希望能给你带来灵感和参考,敬请阅读。
第一篇:现代软件开发中现代软件工程的合理运用
【摘要】进入新时期以来,我国的社会经济水平与科学技术发展水平都上升到了一个新的高度,不论是在社会生产中还是在日常生活中,计算机信息技术都得到了普遍的运用。而计算机信息技术主要是在软件的支持下进行系统运行的现代科学技术,在现代软件开发中,现代软件的整体特点与结构都会对现代软件工程在其中的应用产生重大的影响,因此,必须要采用最合适的软件工程方法,让现代软件工程在现代软件开发中得到更加合理的应用。本文首先对现代软件工程方法的内涵与特征进行了分析,并重点对现代软件工程在现代软件开发中的应用进行了探讨。
【关键词】现代软件工程;合理应用;创新
随着软件开发的不断进步,一些传统的软件工程方法开始逐渐被舍弃,现代软件工程方法开始得到了全面的应用。但是在实际应用过程中,有许多现代软件工程方法出现了不相容的问题。而受到认识不够的局限,使得这种不相容的问题也很少有人提出质疑,因此也就导致其在使用的时候发生了各种各样的问题。因此,本文对现代软件工程在现代软件开发中的合理应用进行研究是十分必要的,具有非常强烈的现实意义。
1现代软件工程方法的内涵与特征
现代软件工程方法大致可以分为分析、设计、编码、测试与维护这五大阶段,其虽然取代了传统的软件工程方法,但是两者之间还是存在着很多的相似之处。比如,在分析阶段中,现实生活中存在的事件是现代软件工程方法面对的对象,也就是说其面对对象并不是虚拟性的,因此也就表明其对象的性质与特征能够对事件进行反映与产生作用。而分析阶段与设计阶段之间又存在着很大的差异,在设计阶段中,其尤其注重某一个反映系统中的具体事物和时间。总的来说,现代软件工程方法打破了传统软件工程自发式的限制,并且以传统软件工程方法为基础,使用了一种模块式的开发方法,借助现代先进的信息技术与计算机技术对系统进行了优化,使现代软件工程更加规范化与系统化,能够与不同层次不同水平的用户需要相适应。而且,现代软件工程方法还可以进行修改,这也是其另一个突出的特点,是其可靠安全的具体表现。
2在现代软件开发中合理应用现代软件工程的对策
2.1从实际情况出发,在现代软件开发中选择
最合适的现代软件工程方法在现代软件开发的过程中,软件体系结构是不可避免会用到的,但是软件体系结构的重点还是放在软件的分层结构上,其中的数据多数都是源自数据库,目前还缺乏一个明确的概念。就目前来看,我国在现代软件开发中所使用的数据库管理系统还是一种传统的数据库形式,信息更新缓慢,面对对象的管理系统也没有得到真正的广泛应用,而是仅仅停留在形式与表面上。除此之外,传统数据库管理系统的功能与作用也没有充分发挥出来,仅仅在共享信息与存储数据等方面发挥出了效用,虽然能够在处理数据与保证数据安全上起到效果,然而对于一些层次与水平较高的查询来说,其无法得到灵活的运用。因此,在计算机信息技术有了更快发展的新形势下,必须要将传统软件工程方法的效用与优势充分发挥在现代软件开发过程中,在此基础下,不断对面对的对象进行扩展,在条件允许的时候,还可以面对整个系统,这样不仅能够对数据存储进行优化,而且还能够对操作步骤进行规范化处理,有利于在现代软件开发中为现代软件工程的合理运用奠定一个稳固的基础。
2.2对软件工程理念进行创新,将全新的软件
工程理念贯彻到现代软件工程中现代软件开发不只是在计算机领域中得到了应用,在餐饮服务行业、医疗卫生行业等社会各个行业中都有现代软件开发的身影。在现代社会中,使用软件已经不再单单是为了提高工作效率,而且在激发工作人员积极性、主动性上也发挥出来巨大作用。同时,在现代软件的开发与利用中,社会各行各业也都会根据相关的规则标准来进行操作,使得软件行业的发展开始出现了规范化的趋势。在此基础上,为了能够让现代软件工程在现代软件开发中得到更加合理的应用,就有必要对软件开发观念进行更新,打破传统软件工程的限制与束缚,推动软件开发应用工作得到更加顺利的进行。以医疗卫生事业为例,将软件开发引入到医疗卫生行业中,不仅能够让医疗资料的整理更加系统化与科学化,减少了其出错的可能性,而且还能够通过软件来对医护人员的行为进行规范,让医院患者的病情能够最及时的发现与监控,从而才能够对患者采取最及时的治疗措施,既保障了患者的生命安全,还能够缓和紧张的医患关系,能够促进医疗卫生事业的更好发展。但是在实际应用过程中,有部分软件开发公司没有对软件开发程序进行规范化处理,导致人员分工出现问题,不仅为之后软件的使用买下了隐患,而且还降低了软件开发的效率。如果软件开发公司要针对医疗卫生事业开发相关的应用软件,但是由于其在没有进行统筹规划与掌握详细情况的时候就进行开发,不仅会导致开发出来的软件无法满足医院工作的需要,还会对软件开发公司与医院造成不可估计的损失。因此,必须要在开发软件的时候坚持科学软件工程理念的指导,如此才能够保证开发出来的软件能够实现其应用的效果。
3结语
综上可知,在现代软件开发中,必须要选择科学的现代软件工程方法,对软件开发理念加以创新,并将其贯穿到软件开发的全过程中,结合实际情况,实现现代软件工程在现代软件开发中的合理运用。
参考文献
[1]王强.现代教育技术在高校计算机教学中的应用——评《现代软件开发技术与计算机应用》[J].当代教育科学,2015(09):81.
[2]苏警.刍议现代软件工程在现代软件开发中的有效运用[J].吉林工程技术师范学院学报,2015(10):76-78.
[3]刘强,陈越,骆斌,古天龙,吴洁明,裴小兵,朱少民,白晓颖.“软件工程”课程教学实施方案[J].中国大学教学,2011(02):41-44.
[4]吴宜灿,胡丽琴,龙鹏程,罗月童,李亚洲,曾勤,卢磊,张俊军,邹俊,许德政,柏云清,周涛,陈红丽,彭蕾,宋勇,黄群英,FDS团队.先进核能系统设计分析软件与数据库研发进展[J].核科学与工程,2010(01):55-64.
[5]史光梅,何颖波,吴瑞安,莫军,李阳春,张亚林.面向对象有限元并行计算框架PANDA[J].计算机辅助工程,2010(04):8-14.
作者:刘鹏 单位:成都理工大学信息科学与技术学院
第二篇:软件工程技术发展趋势分析
摘要:软件工程技术是现代信息化时展的支柱之一,其是经历了无数次的创新与改革,才发展到了现在这个成熟的阶段,而软件工程技术未来的发展不会只停留在现在这个阶段,其将会不断的创新和发展。由于软件产业和信息产业在不断的发展,因此对软件工程技术方面也有了更高的期望。本文主要以计算机发展和软件工程的发展为切入点,进而结合目前我国电子市场的发展方向对于软件工程技术的发展趋势进行了详细的分析。
关键词:软件工程技术;信息产业;发展趋势
引言
软件是一种生产较难且知识密度较强的产品,与一般的产品有着许多不同之处。由于上世纪计算机刚刚兴起,其成本较大,所以只有很少一部分人能使用计算机软件编写程序,其生产能力可想而知,这种现象极大的制约了计算机软件的发展。直到上世纪六十年代,计算机软件才得到了人们的关注,认识到计算机软件的重要性,随着计算机在市场中应用较广现象发生,对计算机软件的需求量也便随之增加,同时对软件设计也就相应的有了一定复杂性的要求,社会生产中软件工程技术也就需要不断的创新。本文主要目的便是针对软件工程技术的发展趋势进行探讨,在探讨的过程中,不可能将软件工程技术的发展进行孤立的分析,我们首先要考虑到的便是计算机和软件工程在发展中的变化,由此才能有效的推测出计算机软件工程发展趋势。
一、计算机发展的变化
从计算机模型来说,冯•诺依曼理论体系中的计算机二进制码一直被沿用,但是从计算机能力而言,主要在以下几点中发生了变化:第一、摩尔定律的出现使CPU的运算能力达到了一定的高度,其运算能力有了很大的提高,但是在单科CPU方面上,运算能力的提升是十分困难的。第二、多线程多核技术以及并行运算技术给服务器处理能力方面带来了很大的便利,并且这两种技术也得到了飞速的提升,冲出了服务器处理能力的瓶颈,致使许多计算机能力向着服务器端发展,C/S模式(胖客户端结构)不再受欢迎[1]。反之,B/S模式(瘦客户端结构)逐渐得到了人们的欢迎。第三、在互联网的迅速发展中,推进了云计算的发展。
二、软件工程发展的变化
在软件工程的发展过程中,主要发生了以下几个方面的改变:第一、由于计算机能力正在向服务器端方面不断靠拢,具备较高的计算机能力和实用的中间件技术是当展的潮流,也是大型软件系统在开发过程中的必经之路[2]。第二、由于中间件技术在计算机中的使用,可以协助计算机处理一些细小的事件,中间件技术的介入可以有效的节省软件开发人员的时间和精力,软件开发人员可以将大量的时间放在业务逻辑中,进而精简代码行数,使软件开发的规模逐渐缩小,软件工作人员更好的完成本职工作,对其工作进行良好的定位。第三、随着计算力各方面能力不断的增强,使软件的使用逐渐得到了普及化。第四、随着互联网不断的发展和普及,使原本较为分散的软件开发人员又被重新整合在了一起,只要框架与基础合适,他们就可以将软件工具有效的开发出来。
三、软件工程技术发展趋势
(一)全球化趋势
随着全球化趋势不断的加速,软件开发行业在发展过程中所面临的环境也发生了较大的变化,在此过程中,使用传统的管理方式对软件开发进行管理已经显得十分吃力了。全球化合作是未来软件在开发中的新方向,因为信息化的不断普及,使许多软件对开发的环境有了更高的要求,部分软件在国内是无法良好的进行下去的,需要在国外完成。同时,软件外包的发展在软件全球化共同协作中发展步伐逐渐变快,许多从事软件外包工作的公司也得到了全方面的发展,这些软件外包公司,通过对软件工程进行合理计划,将编程部分、设计思想、软件测试、软件维护和软件等各个模块分裂开来,分配给不同的国家完成。这个分配的过程便是实现信息全球化的基础,并且该过程已经逐渐成为了许多外包公司主要的发展手段[3]。
(二)软件技术得到广泛应用
开放性的软件计算方式是软件工程领域中的一种新趋势。由于软件本身就是一中开放性的技术,再加上全球化的协同合作不断的加强,这种新趋势将必然成为软件工程在未来发展过程中的方向和重点。同时,开放性计算给软件技术开发人员带来了不同程度的便利,这种计算方式更加有利于开发者之间的沟通和交流,在后期的维护中,将更加专业和容易,对与开发者和客户来说,其一个共赢的方式。
(三)模块化思想的挑战
软件工程全球化协作不仅给软件开发者带来了许多机遇,同时也给软件工程的发展带来了各种各样新的挑战。各软件公司在发展的过程中,竞争也逐渐激烈,正是由于这种激烈的竞争,使软件开发逐渐向着模块化思想发展。模块化的设计思想主要是基于解决实际生活中传统技术不灵敏的问题提出的,其本质便是以科学的手段,将相似和已知的软件结构进行分类,同时用一定的方式,将其模块化。这种模块化设计思想的提出,不仅提高企业之间的竞争力和软件开发的效率,还对软件工程技术未来的发展带来了长远的意义。
四、结论
随着计算机硬件的不断完善,以及软件全面的发展和创新,软件工程也将向着更加高效化和规范化的方向发展。当前,软件工程所研究的主要内容是软件设计方案、工程管理技术、软件开发模型和工程支持技术。这几部分的发展已经相当成熟,致使软件不再是原来单一的面貌,而是集科学性、复杂性和有效性于一体的技术。同时在软件工程技术发展的过程中也还存在着一些问题,应着重根据其特点,努力找到相关解决办法。在发展的同时,摒弃掉原有的弊端,进而朝着良性发展目标前进。
参考文献:
[1]张忠华.软件工程发展历程及其发展趋势探讨[J].计算机光盘软件与应用,2014,11(24):69-71.
[2]何金泽.软件工程技术发展分析[J].信息化建设,2015,05(09):398.
[3]杨锐.浅谈计算机软件工程的发展趋势与未来展望[J].计算机光盘软件与应用,2014,13(17):70-71.
作者:李晓欢 单位:中石化管道储运有限公司信息化管理处
第三篇:软件工程标准化现状思考
【摘要】本文是笔者从国外,国内实际情况分析了软件工程标准化的现状,探讨了软件工程标准化的主要问题和解决方法。希望通过本文,能对国际和国内的软件工程标准化进程有所帮助。
【关键词】软件工程;标准化;科学管理;生命周期;体系
1软件工程的关键问题及解决
软件工程是一门工程性学科,其目标是成功的创建一个大型的软件系统,做到:消耗较少的开发成本;达到预期的目标;代码的可维护性和可移植性;增强软件性能的优化。实现社会生活及经济运行中各样事务的自动化和智能化管理,服务人们的生产和生活。当前软件工程主要面临的问题有:开发与维护的费用过高;不必要的资源浪费;软件的可靠性不强,优化效果不显著;软件工程的专业性人才稀缺;后期软件维护和软件重构比较麻烦。解决方法:合理规划开发与维护费用,增强代码的质量,避免开发过程中的严重错误和重大修改;通过分析和总结,提高的软件的可靠性,精减重复及陈余代码,加大优化力度;政府及高校加强对软件工程的专业化培养,与市场相结合,提高从事软件工程工作者的专业水平;软件开发过程中,提前规划好后期维护和重构的可行性方案,增强代码的层次结构和接口。
1.1软件工程生存周期
软件生存周期是指开发成型直到报废的生命周期,其中有可行性分析、需求分析、系统设计、编码、调试与测试、问题定义、验收和运行、维护升级到报废的过程。由于近年面向对象的代码设计和编程思想的逐渐成熟,使得代码的可维护性和重用性提高,软件生命周期的概念在渐渐模糊。
2国际、国内软件工程标准化状况
国际上,随着计算机造价成本的降低,计算机的应用逐渐从军事和政府发展到民用和经济领域。传统的开发方式和设计理念已经无法适应这一快速增长的需求,于是人们逐渐把注意力放在计算机软件的研究中来,并开始研发软件建设的相关工具,70年代中期,软件工程这一概念相继提出,为计算机的研究和发展奠定了良好的基础和机会,80年代中期,软件工程的发展遇到一个瓶颈性问题:软件的生产水平远低于硬件的生产水平。于是面向对象的概念、方法和开发语言逐渐产生,并且逐渐发展成当今社会的主流技术。软件工程的发展也逐渐走向正轨,成为计算机软件领域的一个新兴学科。国内,软件工程标准化的概念最早在1984年提出。这一年,我国信息技术标准化技术委员会成立了软件工程技术分委员会,使得软件工程独立的分支出来,在委员会的领导下,至今已经出台了超过30个国家标准,将软件工程得到了标准化的规范,但在我国软件工程标准化过程中依然存在许多问题。
3国内软件工程标准化工作分析
在我国软件工程标准化进程中出现这样或那样的问题是无法避免的,毕竟我们相对于国际上起步和专业研究都比较晚。以下是笔者总结的几个比较有典型和有针对性的问题。
3.1是项目目标制定不够合理
导致在软件的开发成本和工作进程上存在严重偏差。管理者未能在计算机项目管理中使用有效的管理手段,缺乏大局意识,在软件开发过程中未能提前制定好合适的项目计划和开发、维护成本规划。使得加大了软件开发的难度和操作性。
3.2是软件的质量未能达到国际先进水平
其主要原因是缺乏相应的管理制度,企业和高校的培训和课程中少有关于软件工程质量管理能力的教学,导致大部分从事者开发过程中缺乏管理能力和规划思维,增加了开发成本和编程错误,从而减低了软件的质量。
3.3是软件功能实现和操作方式是不够人性化
软件功能未能充分分析用户的需求,项目在调试和测试阶段,没有适当考虑用户的使用的方便性和实效性。这容易导致产品最终的产生量和用户的需求量存在比较反差,不利于企业提高经济效益。
4国内软件工程标准化问题解决方案
因此,我国要逐步实现软件工程的标准化进程,与国际水平接轨,笔者认为需要从以下几个考虑:
4.1制定合理的项目目标
管理者努力学习国外先进的项目管理方案与国内环境相结合,整理从合适的项目目标规划,从而减少软件开发过程中不必要的消耗和失误,减少开发成本,提高软件的质量。
4.2引进国际先进的软件质量标准
并与国内实际情况相结合,创造出使用于中国的软件质量标准化管理体系,加快跟上国际先进水平。
4.3要进一步加强国内核心软件技术的开发和研究
现在大多大型软件和系统的核心程序都是由国外垄断,我国购买其使用权才能进口使用,长期发展下去不利于我国的市场占有额和国际竞争力。因此,政府和高校要加大核心软件的开发和研究投入,在借鉴的基础上不断创新,使得在当前信息化时代的大潮流中占据领先位置。
5结语
软件工程标准化是一个任重而道远的过程,需要我们不断的努力,从错误中总结经验,分析原因。对于我国软件工程标准化发展,只要我们一切从实际出发,结合我们的实际情况,积极建立一个属于我们的自己的软件工程标准而努力,在现今社会,信息化和科技化是时代趋势,而这其中起推动作用的主要是计算机软硬件技术,而要提高整个行业的生产效率,也离不开软件工程实践的标准化。
参考文献:
[1]王亚楠.刍议软件工程标准化现状与分析[J].计算机光盘软件与应用,2013(20).
[2]杜楠.软件工程标准化浅析[J].中国标准导报,2015(1).
[3]李刚,董火民,扬子江,韩红强.软件工程标准化现状与分析[J].四川大学学报(工程科学版),2007(S1):73~77.
[4]古俊.浅谈软件工程标准化现状与发展[J].电脑迷,2014(9).
作者:叶舟 单位:桂林电子科技大学信息科技学院
第四篇:软件工程中计算思维研究
摘要:计算思维能力的培养需要选择适当的课程知识作为载体,并在教与学的过程中有意识、有计划地展开。文章通过分析软件工程课程的基本知识点与计算思维能力点之间的关系,探讨了《软件工程》教学过程中计算思维能力培养的策略和方法。
关键词:软件工程;计算思维;能力培养
1引言
2010年,教育部高等学校计算机科学与技术教学指导委员会编制的《高等学校计算机科学与技术专业人才专业能力构成与培养》中指出,计算机专业人才的专业基本能力主要包括计算思维能力、算法设计与分析能力、程序设计与实现能力、系统能力[1]。在教学过程中,如何培养学生的专业基本能力需要我们进行深入的探讨和研究。软件工程是计算机科学与技术、网络工程等专业的专业必修课,具有综合性、实践性和工程性特点,它涉及软件技术、方法和管理等各个方面。软件工程课程的教学目标,是使学生理解和掌握软件工程的基本思想、方法和技术,能够对实际问题进行需求分析、系统设计和编码测试,学会软件开发的方法和过程;能够综合应用前修课程知识,并将所学知识融会贯通,应用到实际问题的开发过程中。这一教学目标与计算机专业能力的培养目标是一致的,因此,软件工程的教学对培养学生的专业基本能力起着非常重要的作用。文章重点探讨计算思维能力的培养问题。首先概述计算思维和计算思维能力的内涵,然后分析软件工程课程知识点与计算思维能力点之间的对应关系,最后探讨如何在软件工程课程的教学过程中渗透计算思维方法,通过理论教学和实践教学培养学生的计算思维能力,进而提高学生的工程素质。
2计算思维
计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为,它包括了涵盖计算机科学之广度的一系列思维活动[2]。计算思维是利用计算机解决实际问题的思维方法,它的本质是抽象(Abstract)和自动化(Automation)。典型的计算思维包括一系列广泛的计算机科学的思维方法:递归、抽象、分解、关注点分离、约简、迭代、预置和缓存、保护、冗余、容错、回溯、纠错和恢复等等。计算思维能力是指人们运用计算思维方法思考的能力。对于计算机专业人才的培养,计算思维能力主要包括问题及问题求解过程的符号表示、逻辑思维与抽象思维、形式化证明、建立模型、实现类计算和模型计算、利用计算机技术等[1]。这些能力的培养需要以课程知识为载体,在教师有意识、有计划的引导下,在不断的实践过程中进行实施。
3软件工程课程知识点分析
软件工程是研究软件开发和软件管理的一门工程学科,它主要包括技术和管理两方面的内容。在新建本科院校的计算机类专业,软件工程课程重点讲授软件技术方面的知识,包括软件工程基本概念、基本原理和基本方法,强调应用计算机技术解决实际问题的方法和步骤,使学生掌握软件开发各个阶段规范的方法、工具和过程。软件工程知识体系主要有结构化方法和面向对象方法两大部分,下面重点分析两种软件开发方法涉及的知识点与计算思维能力点的关联。
3.1面向过程方法知识点分析
结构化软件开发方法的主要过程是:需求分析、系统设计、编码测试、运行维护,每个阶段都要遵循规范的方法和步骤,通过严格的评审后才能开始下个阶段的工作。各个阶段的主要知识点为:①需求分析:主要包括数据分析、功能分析和状态转换分析。数据分析是对软件要处理的数据进行分析,确定数据实体及其属性,并分析实体之间的关系,建立数据模型;功能分析是按数据流的处理过程对软件的功能进行分析,建立功能模型;状态转换分析是对系统状态进行分析,确定引发系统状态转换的事件及分析状态转换的过程,建立行为模型。②系统设计:主要包括概要设计和详细设计。概要设计完成体系结构设计、数据设计和接口设计,按功能分析的结果将一个复杂系统分解为若干个简单模块,并确定各个模块之间的接口形式;详细设计完成各个模块的算法设计,通常用流程图或盒图表示。③编码测试:主要包括编码规范和测试技术。编码规范主要是程序设计风格和编写程序代码的规范,编写规范的程序代码实现系统的各项功能;测试技术主要包括白盒测试技术和黑盒测试技术,设计合理的测试用例对软件进行模块测试、组装测试、确认测试和系统测试,保证软件的质量。④运行维护:主要包括运行程序和软件维护活动。在用户的实际环境中运行程序,发现错误后调试程序,改正软件错误,完善系统的各项功能,满足用户的需求。在基于结构化方法开发软件过程中,涉及到大量的计算思维方法:在需求分析阶段,对实际问题进行简化、抽取问题的本质,应用了约简、抽象方法;在概要设计阶段,将复杂问题分解为若干个简单问题,用到关注点分离方法;数据库设计用到抽象和分解的方法;在调试程序的过程中,从发现错误的地方开始,沿程序的控制流往回追踪分析程序代码,直到找到错误,体现了回溯方法的应用。应用计算思维方法开发软件,能够训练学生的计算思维能力。例如:需求分析阶段的数据流图、实体关系图、状态转换图,设计阶段的层次结构图、算法流程图,编码阶段的程序代码都是分析问题和求解问题的符号表示,分析和设计的过程就是逻辑思维与抽象思维的过程,需求分析过程就是建立模型的过程,由此可见,软件工程的知识点与计算思维的能力点是相互关联的。
3.2面向对象知识点分析
面向对象软件开发方法的主要过程是:需求分析、系统设计、编码测试、运行维护。但与结构化方法相比,面向对象方法的特点是按对象分解系统,更符合人类认识问题和解决问题的一般方法和过程。主要知识点为:①面向对象分析:主要包括对象分析、功能分析和状态转换分析。对要处理的对象、类及接口进行分析建立对象模型,用类图描述;从用户的角度分析系统的功能,建立用例模型,用用例图描述;分析系统的交互作用及状态转换,建立动态模型,用状态图、顺序图描述。②面向对象设计:主要包括体系结构设计、各个子系统设计及类设计。体系结构设计要根据用户的需求选择体系结构风格,设计系统的框架;对各个子系统的设计主要有问题域子系统、人机交互子系统、任务管理子系统和数据管理子系统;类设计以问题领域的对象设计为核心,设计出详细的对象模型。③面向对象实现:主要包括编写程序代码和软件测试。编写类、接口、包都要遵循规范的命名规则和编程风格,做到源程序文档化和数据说明标准化。软件测试主要是类测试和系统测试。④面向对象维护:与结构化方法类似,面向对象维护也是对软件在投入运行之后出现各种错误进行调试和纠错,完善软件的功能,满足用户的需求。面向对象的需求分析过程是建立对象模型、用例模型和动态模型的过程,对象分析过程是一个典型的抽象过程;功能分析将系统抽象和分解为若干个用例,是抽象和分解、关注点分离方法的典型应用;面向对象的设计和实现是在需求分析的基础上多次反复迭代的演化过程,对各个子系统的设计也用到抽象和分解、关注点分离方法。这些计算思维方法的应用对应着问题求解过程的符号表示、逻辑思维与抽象思维、建立模型、实现类计算和模型计算、利用计算机技术等计算思维能力点,通过面向对象方法开发软件,达到训练学生计算思维能力的目的。
4培养学生思维能力探究
以课程知识为载体,重点从意识、理解、实践三个层次入手,循序渐进的提高学生应用计算思维方法解决实际问题的能力。
4.1强调思维能力的重要性
从笔者有关计算思维调研结果来看,大部分学生不了解计算思维的概念,在分析问题和解决实际问题的过程中,不会应用计算思维方法,即使用到一些计算思维方法也是无意识的。因此,在课堂教学和实践教学过程中,要充分发挥教师的主导作用,教师要将课程知识与实际问题紧密结合,激发学生学习兴趣,有意识地、系统地讲解计算思维的方法,让学生认识到计算思维方法在求解实际问题中的重要地位。
4.2采用案例教学
在教学过程中,选择一个学生比较熟悉的应用系统,如学生成绩管理系统、图书管理系统等,以这个系统的开发过程贯穿教学始终,有计划、有意识地讲解计算思维方法在系统开发各个阶段的应用,让学生领悟计算思维方法,理解计算思维方法在实际问题中的应用。通过需求分析训练学生的抽象思维和建立模型能力。通过系统设计、算法设计训练学生的逻辑思维能力。通过编写程序训练学生用符号表示问题及问题求解过程的能力。通过对实际项目的分析,让学生理解利用计算机求解问题的典型方法和过程。
4.3重视实践教学
软件工程课程是一门实践性很强的课程,课程实践环节可分为课程实验和课程设计两部分。课堂上的案例教学有助于学生形成计算思维的意识,理解计算思维在实际问题中的应用。课程实验中让学生以小组的形式模拟案例开发一个简单的系统,小组成员分工合作,应用计算思维方法完成需求分析、系统设计、编码测试过程,实现系统的主要功能。课程设计是在课程结束后进行的综合性的实践环节,训练学生综合应用知识的能力、应用计算思维解决实际问题的能力和团队合作能力等。此外,通过实习实训、毕业设计等综合性的实践环节,以及大学生创新创业项目、程序设计大赛等活动,进一步强化、提升学生的计算思维能力。
5结语
计算思维能力的培养不可能通过一门课程完成,需要通过系列课程有意识、有计划、持续地训练。文章对如何在软件工程的教学过程中渗透计算思维方法,培养学生计算思维能力做了一些初步的探讨,实践表明,将计算思维方法融入课程的教学过程中,提高了学生解决实际问题的能力和计算思维能力,对应用型人才的培养大有裨益。
参考文献:
[1]教育部高等学校计算机科学与技术教学指导委员会.高等学校计算机科学与技术专业人才专业能力构成与培养[M].北京:机械工业出版社,2010.
[2]周以真.计算思维[J].中国计算机学会通讯,2007,(11):77-79.
[3]蒋宗礼.计算思维之我见[J].中国大学教学,2013,(09):5-10.
[4]刘强等.“软件工程”课程教学实施方案[J].中国大学教学,2011,(02):41-44.
[5]郑人杰等.软件工程概论[M].机械工业出版社,2011.
作者:郭咏梅 张剑妹 韩冰 马桂芳 赵秀梅 单位:长治学院计算机系
第五篇:软件工程构件服务研究
摘要:基于构件的软件工程是面向对象软件工程的一种延续与传承,可以说,构件这一概念也是对象概念的取代。本文概述了当前基于构件软件工程中存在的不足,并说明了构件软件开发的过程,旨在为构件软件工程技术的发展提供一定的参考意义。
关键词:构件服务;软件工程;构件软件
一、当前基于构件的软件工程技术存在的问题
1.1 CRBA。CORHA基本上可以分成动态调用与静态调用两种,前者相较于后者其手段要稍微灵活,可移植水平也要高一些,然而,其调用方式操作起来较为复杂,速度也非常缓慢。CORBA效率非常低,而且缺乏一定的安全性,并非处在一个集成的开发空间内。 CORBA中1DL接口文件被编译成两个方面,即stub和skeleton 。stub发起的每一次对象请求,都必须要经过两次及以上的打包、解包,通过ORB核心,导致CORBA的效率低下,这也使得CORBA失去了竞争能力,如今,已逐渐消失在主流的软件开发技术的序列。
1.2 COM+。由于并非独立的中间层,因而COM+无法产生软件界统一的标准,进而只可以受限在微软内部和兼容软件。COM+无法屏蔽硬件与操作系统之间的差异性,并给予一个非常一致的构件运行工程环境[1]。除此之外,COM+还没有NET Framework框架和运行时。COM、COM+并未真正处理好DLL hell问题,一旦安装新的软件应用程序,就会有条件损坏最开始运行正常的应用软件程序,使一些用户感到恐慌,这也正是COM+最大的不足。
1.3 NET。NET在构件层面上相对而言是最为成功的,其.NET Framework框架在运行过程中及时翻译,这也是迈向软件工厂的重要枢纽。然而,不可否认的是,.NET离真正意义上的软件工厂仍然有一段距离。NET并非一切的软件开发都做到即插即用,此外,.NET跨语言平台仅限于微软的产品,离构件软件的开发还有很大距离。
二、基于构件的软件工程技术开发过程
2.1系统分析。基于构件的软件工程技术系统分析的主要原则:一是抽象:从很多事物中去掉个别的、非本质的特征,选择一些共同的、本质的特征,称之为abstaction。Abstaction是生成概念的重要形式。对于分析来说,抽象原则具有两个层面的作用[2]。一方面,虽然问题域中事物相较比较复杂的,然而分析员并不需要明确与解释它们的一切,只需要分析研究其中与系统目标有关的事物及其本质特征。另一方面,通过舍弃个体事物在细节上的差异,选择一样的特征而获得事物的抽象概念,CBD中分类便是如此取得。二是封装:构件的属性、服务以及接口紧密结合在一起,让构件可以全力集中而整体地描述一个具体的事物。封装的信息隐蔽作用反映了事物的相对独立性。三是继承:在CBD系统研究过程中充分运用继承原则,换言之,便是每个由一般类与特殊类产生而成的特殊结构。将一般类的构件实例与全部特殊类的构件实例都一起具备的相关属性、服务、接口,一次性彻底的在一般类展开显式的意义。
2.2蓝图设计。在进行系统分析的背景下,便能够开展有关的蓝图设计了。由于基于构件的软件开发非常有代表性的特点便在于“搭积木”,这也在一定程度上和修建一座大楼是非常类同的,蓝图设计中的蓝图,顾名思义,也就是等同于大楼整体的一张设计图。其要首先定义好所需要的一些构件,把所有系统逐一拆解成为一级子模块,一旦一级子模块过于繁琐、复杂,则还可拆解成为二级子模块。
2.3构件集成和测试。独立的构件购买后,第一,要实施二级子模块的组装和测试,将其进行全部组装,实施两方面的测试,即兼容、功能。在一切测试都符合标准之后,就把二级子模块展开组装,开展一级子模块的兼容性与功能测试。一级子模块测试也符合标准之后,就需要进行最后的软件系统集成测试。在测试的过程中,也许会产生在购买构件时产生的部分问题,可利用发E电子邮件告知构件交易中心,构件交易中心再通过电子邮件通知构件开发商。
三、结束语
综上所述,基于构件的软件工程主要是面向对象软件工程的一种可持续化的延续与延伸,对象这一概念本质上无法真正地体现出工业上标准下的零部件。换言之,也就丧失了标准接口这个过程,因而构件概念又是对象概念的取代,构件的软件涵盖了诸如构件名、属性、服务以及接口四部分,可以非常出色地体现现实世界中的事物,而且在组装软件的时候,支持即插即用。
参考文献
[1]战锴.软件工程技术发展趋势研究[J].电子技术与软件工程,2013,13(14):51.
[2]金晶.对软件工程技术今后发展的思索[J].中国管理信息化,2015,12(21):162.
作者:吴丽娜 单位:宿迁学院信息工程学院