软件开发论文范文
时间:2023-04-06 08:35:51
导语:如何才能写好一篇软件开发论文,这就需要搜集整理更多的资料和文献,欢迎阅读由公务员之家整理的十篇范文,供你借鉴。
篇1
1制定详尽的开发和交付流程
将软件开发周期从几年缩短到一个月甚至两个星期,这需要制定详尽的软件开发和交付流程。而详尽的软件开发和交付流程也是实现Scrum所必须遵守的。在Scrum中一个交付周期被称为一个Sprint。在每个Sprint开始之前,要有一个Sprint的计划会议(Sprintplanmeeting)。Sprint计划会议是在业务分析师和用户确定好当前阶段的需求分析之后,将可以进行开发的部分按照需求的优先级顺序排列好开发任务(Story),再由开发人员对任务进行难度评分,最后团队根据可变因素如团队成员情况,开发环境状态等确定下一个Sprint的任务。为了加强团队内部的沟通和及时掌握开发交付情况,Scrum要求团队每日开站立会议(Standupmeeting),站立会议通常1到2分钟每人,主要说明前一天的工作内容,存在什么问题,以及今天的工作计划。当然在每个Sprint快结束的前一天,要开评审会议,来报告进度,通常情况下是软件会议制定软件当前Sprint的软件计划。中国有句古话叫做“吾日三省吾身”,每个Sprint结束还有一个最为重要的会议就是回顾会议(Retrospectivemeeting)。回顾会议主要是总结上一个Sprint,保持优点,克服缺点。确保每个会议的有效性是Scrum实现的基础。
2结对编程,提高软件开发效率
篇2
根据银行应用软件的开发现状以及银行系统对开发技术的需求,分析其中存在的问题,例举比较典型的问题并做如下分析:开发技术过于保守银行软件开发仍旧使用比较传统、保守的技术,整个开发的过程中暴露出诸多技术矛盾。例如:银行系统积极、全面的发展,而应用软件开发技术始终止步不前,延续以往infomixC技术框架,结合IBM小型机,无法在应用软件开发上实现技术突破,反而被银行系统陈旧的技术限制。银行应用软件开发技术越落后,表示软件开发项目的价值越多,开发技术过于保守成为银行软件开发的一大问题。
2软件开发的测试匮乏
银行在应用软件开发后,需要安排相关的测试技术,检测应用软件的安全及可用性,同时检测银行软件开发程序是否合理,测试属于银行应用软件开发的主要技术,能够保障银行软件的安全应用。实际银行软件开发后,测试技术出现严重的匮乏情况,例如:某银行开发的AS400,其中的应用软件是由开发人员监督测试的,本身不具备完整的测试系统和专业的测试人员,引发严重的技术问题,最主要的是整个测试过程中并未发现任何程序问题,与软件开发技术的实际不符,应用软件在AS400的开发过程中,需经多次测试技术监督后,才能达到安全的状态,表明软件开发测试技术的缺陷。
3开发文档不足
银行应用软件的开发文档是指软件设计、编程到开发所有的文档资料,跟随应用软件的开发而产生,其与应用软件的程序一致,属于一项不能缺失的资料。银行应用软件开发人员不重视开发文档,将软件开发的重点放在实践部分,忽略开发文档的存储,直接影响了银行软件的应用与维护,导致银行软件因缺乏维护根本而失效,降低软件开发使用的寿命,更重要的是科研知识得不到充分应用。
4银行应用软件开发问题的解决对策
4.1引进软件开发新技术
银行应用软件开发需要专业的技术支持,开发人员既要熟悉银行软件的业务知识,又要具备专业的技能,开发银行应用软件项目时,才能保障银行软件具备优质的实践性。银行在应用软件开发技术方面,可以采取引进的思想,推进新技术的发展,针对软件开发新技术的引进,提出两点技术性的原则,如:(1)引进更为精细化的大数据处理,比如Oracle、DB2等,应用在银行软件开发中,发挥此类技术精确、专业的能力,确定新技术后才能辅助于银行应用软件的开发技术。(2)通过软件开发新技术的引进,实现全能技术,银行软件开发系统内比较常见的是C语言、Java和vb,开发人员必须掌握所有语言基础,同时还要对其中一门语言做到精通,用于适应银行系统内繁琐的IT运行,有利于银行应用软件技术的精细化发展。
4.2完善软件测试技术
银行应用软件开发的测试技术,偏重于业务类的软件。结合银行应用软件开发的过程,分析软件测试技术的应用,其在应用软件开发测试中体现在三个方面,分析如:(1)界面测试。(2)容错性测试。(3)响应测试。
4.3强化文档管理
银行应用软件开发可以通过评审的方式,强化文档管理。因为文档管理在软件应用中发挥重要的作用,既可以做为通信工具,又可以指导软件操作,所以开发人员需要保障文档资料的完整性,确保文档资料符合标准。
5结束语
篇3
软件测试时一是为了发现软件在研发编写过程中存在的错误,从而及时对程序进行修改和完善,使软件的各项功能够顺利使用。二是为了根据用户要求,来对软件的各项功能和用户使用体验感受进行改善,使用户在使用软件时更具舒适感。而在当前的软件检测过程中,主要在两个方面不够规范:一是一些软件开发员缺乏责任心,在软件编写完成后,马马虎虎地进行检测,对一些影响使用体验的程序放任不管,不去做优化处理;二是软件开发者在检测时没有让用户参与进来,而自作主张的对软件功能进行了修改。这两方面问题不仅降低了用户在使用软件过程中的感受,还导致了用户在后续软件维护中的成本增加。
2软件维护不够规范化
任何产品在售出后,消费者都有享受产品的售后服务的权利,而商家也必须承担为消费者提供售后服务的义务。对于计算机软件,也同样有着“售后服务”,即软件开发者对于软件的后期维护和调试。在当前的软件维护过程中,主要存在着两方面问题:一是一些软件开发者将完成的软件交付后,就一走了之,面对软件使用者在软件使用过程中出现的问题也常常置之不理,推卸责任;二是有些软件开发者在处理软件使用者所遇到的问题时,超出市场的价值规律,漫天开价,索取高昂的维护和调试费用,有些使用者出于无奈也常常忍气吞声,吃了哑巴亏。可以说,以上这四方面的不规范问题不仅影响计算机开发人员的工作形象,还会形成计算机软件领域的同业恶性竞争,长久之,将会使充满信心的软件开发这一朝阳产业变得暗淡无光,最终使软件使用者和消费者蒙受损失。
3加强计算计软件开发规范化对策思考
3.1提高计算机软件开发规范化的认识
计算机软件开发是一项与人们学习、工作和生活有着密切联系的系统性工程,计算机软件只有在人们的认可和使用中才能发挥出自身的作用和价值。然而当前计算机软件过程中所存在的规范化问题,已经对计算机软件在市场中的推广和使用造成了很大的影响。要使这一问题得到根本解决,首先必须从思想观念上进行转变。为此,我们只有不断提高软件开发的准入门槛,提高软件开发者对于软件开发规划范的责任意识,使其从思想层面加强对自身的工作要求。同时,还应当不断完善计算机软件开发方面的相关法律和行业标准,使软件开发的各个过程受到制度监督和法律约束,保证软件开发者以诚信、敬业知心开展计算机软件开发工作。此外,我们还要认真思考,对计算机软件开发的设计、检测、维护等一系列的环节所存在的问题进行深入分析,提出切实可行的对策,最终推动计算机软件开发实现规范化发展。
3.2加强计算机软件设计规范化
计算机软件设计开发主要是依据用户要求设计研发的计算机系统软件或计算机系统中的某一部分应用软件,是一项涉及很多方面的系统工程。因此,软件开发者需要对市场的需求、客户的要求、设计人员的技术层次等方面进行综合的分析,而后开始设计软件。为此,在设计开发前要充分了解软件的运行环境,在深入调研后再进行设计开发。同时根据用户的不同需求,确定设计风格和内容,进而严格遵循计算机软件设计标准,进行概要设计和详细设计,把具体设计策略、软件内部构造和制作流程进行安排部署,并呈现给用户。1)软件概要设计的规范化。概要设计的标准就是按照用户的需求,根据产品的不同建立各个系统模块的目标软件系统,对这些模块的接口下达指令,使他们紧紧联系在一起并链接到下一个模块,做到层层相联系。为此,开发者要不断规范概要设计,有能力建立起能够管理整个软件系统的数据库,并使其中的每个模块都要形成相配套的管理方案,并在这一过程中,把各模块的接口尽可能的简单化处理。不仅各模块都能分工合作,还能紧密的联系,这样才能有效保证了系统持续稳定的运行,进而保障用户能够清晰地理解软件的设计。2)软件详细设计的规范化。所谓软件详细设计,就是对概要设计标准全面进行细化,把概要设计一项一项地分解开来,使概要设计的内容得到更加详尽的解释说明,然后把各个模块进行系统、精确、全面的阐述,最终使各个模块的概要设计功能进一步细化分解。为此,开发者要具体围绕算法和软件内部构造这两个方面,及时规范模块的输出输入以及它们的性能,把每一个模块进行细化,划分具体的功能。需要注意的是,开发者在进一步规范计算机软件设计研发中,必须要使软件的设计具有精确的算法和内部构造,这样不仅会对拟写的源代码有帮助作用,还会使软件设计更为的科学合理。最后软件开发者还要根据用户需求,在积极完善详细设计标准的基础之上,才可以进行系统规范的计算机软件设计研发。在研发过程中,仍需要对软件各个模块都进行程序上的划分,只有在准确评估了检测报告后,利用各个模块接口的精准性能,才能对计算机软件进行系统的、有程序的、循序渐进的设计研发,才能保证计算机软件的先进、合理和高效。
3.3计算机软件开发编码的规范化
在进行软件的设计与开发方面,要首先对软件进行的设计有一个相对清晰的标准,即对软件进行概要设计的标准以及软件详细设计的标准,在设计完成后,要对软件进行加工编码工作。为计算机软件进行编码,是开发设计计算机软件的重中之重,只有将计算机编码开发设计正确,才能够保证程序的完整无缺,进而保证软件的正常运行。计算机软件在编码过程中,要按照软件设计规范化的标准,并把用户需求的方方面面都考虑在内,然后根据软件的运行环境,进行软件编码,这样才能设计开发出适合用户特点、满足用户需求、操作简便的计算机软件。
3.4加强计算机软件检测规范化
我们在检测软件过程中,发生错误是在所难免的,如何避免和消除所犯的错误,使软件能够较长时间使用,是软件检测必须面对的实际问题。这样的问题存在于软件设计研发的各个阶段,软件检测的效果同样也决定了软件的使用寿命和软件设计研发的质量。因此,必须加强软件的检测工作,切实地解决好软件研发过程中存在的问题。目前,我们主要检测用户所要求的软件功能以及计划内容、性能需求等。所以,我们必须要保证在检测软件的过程中要有用户共同参与,专业人员要把软件设计思路和所想达到的目的进行系统了解,利用专业知识和规范化检测方法对所开发的软件进行详细认真的检测,从而发现设计漏洞和存在的问题,看是否达到了用户的要求。同时,要进一步规范检测过程,对软件系统的各个功能模块要进行全面完整的检测和测试,同时对检测的数据和检测结果进行存档,以备在修改时能够及时找到问题所在,通过对存在问题加以修改和完善,使软件性能得到进一步提高,反复修改检测后,把软件的性能调试到最好的使用效果。此外,还要组成独立的软件测试小组对软件进行反复验证和全方位测试,确认软件的各种性能达到良好的效果。在检测工作结束后,要撰写检测报告,对软件设计研发及检测结果进行全面分析总结,做出正确的评估。计算机软件设计研发是根据用户需求来实现的,是一种计算机系统或系统中的部分软件,计算机软件不是每一台计算机都相同的,它是根据用户的不同需求而添加的,它包括办公软件、商业软件、家庭应用软件等不同类型,软件的研发是由用户需求、专业人员设计、最后经过测试和用户认可的一种产品,软件的使用者要想得到合法的软件使用权,就必须得到软件研发机构的许可,这样,一个计算机软件才具有了真正的生命力。
3.5加强计算机软件维护规范化
计算机软件产品维护也是软件开发规范化的最后一道程序,它主要是把在运行过程中出现的问题进行及时维修,把在测试中遗漏的错误进行修改,不断完善软件的各种性能,让软件更好地适应运行环境。软件维护同样要具有规范化要求,我们必须要使软件开发者认真按照程序进行操作,不能出现旧的问题没有解决有出现了新的问题,要减少软件维修的所产生的负面影响,维护和维修过程要有详细记录,填写维修报告,做到软件维修正规化和标准化,从而实现软件功能的不断扩展和补充,使软件达到最好的运行和使用效果。此外,还要培养软件开发者在维护软件工作中的责任心意识,要从市场实际出发,遵循价值规律,诚信真实地开展软件维护,最终使软件开发行业的环境得到净化,促进整个行业向前发展。
4结束语
篇4
论文摘要:计算科学主要讲述了一种科学的思想方法,计算科学的基本概念、基本知识它的发展主线、学科分支、还有计算科学的特点、发展规律和趋势。
引言:随着存储程序式通用电子计算机在上世纪40年代的诞生,和计算科学的快速发展以及取得的大量成果。计算科学这一学科也也应运而生。《计算科学导论》正如此书的名字,此书很好的诠释了计算科学这一学科,并且指导了我们应如何去学好这一学科。使得我们收获颇多。并且让我深深的反思了我的大学生活。正如赵老师书中所讲的:“计算科学是年轻人的科学,一旦你选择了计算科学作为你为之奋斗的专业类领域,就等于你选择了一条布满荆棘的道路。一个有志于从事计算科学研究与开发的学生,必须在大学几年的学习中,打下坚实的基础,才有可能在将来学科的高速发展中,或在计算机产品的开发和快速更新换代中有所作为。
<一>什么是计算科学和它的来历
计算科学主要是对描述和变换信息的算法过程,包括其理论、分析、设计、效率分析、实现和应用的系统研究。全部计算科学的基本问题是,什么能(有效的)自动运行,什么不能(有效的)自动运行。本科学来源于对数理逻辑、计算模型、算法理论、自动计算机器的研究,形成于20世纪30年代的后期。
随着存储程序式通用电子计算机在上世纪40年代的诞生,人类使用自动计算装置代替人的人工计算和手工劳动的梦想成为现实。计算科学的快速发展以也取得大量成果,计算科学这一学科也也应运而生。
<二>计算科学的发展
a、首先先介绍图灵机
图灵机的发明打开了现代计算机的大门和发展之路。图灵机通过一条两端可无限延长的袋子,一个读写头和一组控制读写头的(控制器)组成它有一个状态集和符号集,而此符号集一般只使用0和1两个符号。而就是这个简洁的结构和运行原理隐含了存储程序的原始思想,深刻的揭示了现代通用电子数字计算机的核心内容。现在通用的计算机是电子数字计算机,而电子数字计算机的发展是建立在图灵机的基础之上。他的二进制思想使计算机的制作的简化成只需两个稳定态的元器件。这在今后的计算机制作上无论是二极管或集成电路上都显示了明显的优越性。
b、计算机带动的计算学科
1946年随着现代意义上的电子数字计算机ENIAC的诞生。掀起了社会快速发展的崭新一页。计算机工作和运行就摆在了人们的面前。
1、计算机语言
我们要用计算机求解一个问题,必须事先编好程序。因此就出现了最早的机器指令和汇编语言。20世纪50年代后,计算机的发展步入了实用化的阶段。然而,在最初的应用中,人们普遍感到使用机器指令编制程序不仅效率低下,而且十分别扭,也不利于交流和软件维护,复杂程序查找错误尤其困难,因此,软件开发急需一种高级的类似于自然语言那样的程序设计语言。1952年,第一个程序设计语言ShortCode出现。两年后,Fortran问世。作为一种面向科学计算的高级程序设计语言,Fortran的最大功绩在于牢固地树立了高级语言的地位,并使之成为世界通用的程序设计语言。Algol60的诞生是计算机语言的研究成为一门科学的标志。该语言的文本中提出了一整套的新概念,如变量的类型说明和作用域规则、过程的递归性及参数传递机制等。而且,它是第一个用严格的语法规则——巴科斯范式(BNF)定义语言文法的高级语言。还有用于支持结构化程序设计的PASCAL语言,适合于军队各方面应用的大型通用程序设计语言ADA,支持并发程序设计的MODULA-2,支持逻辑程序设计的PROLOG语言,支持人工智能程序设计的LISP语言,支持面积对象程序变换的SMALLTALK、C等。
2、计算机系统和软件开发方法
现代意义上的计算机绝不是一个简单的计算机了而也包括了软件(系统软件、应用软件)。各种各样的软件使得计算机的用途大大增强。而软件开发也成为了一个重要课题和发展方向。软件开发的理论基础即是计算模型。随着计算机网络、分布式处理和多媒体的发展。在各种高级程序设计语言中增加并发机构以支持分布式程序设计,在语言中通过扩展绘图子程序以支持计算机图形学程序设计在程序设计语言中已非常的流行。之后,在模数/数模转换等接口技术和数据库技术的支持下,通过扩展高级语言的程序库又实现了多媒体程序设计的构想。进入20世纪90年代之后,并行计算机和分布式大规模异质计算机网络的发展又将并行程序设计语言、并行编译程序、并行操作系统、并行与分布式数据库系统等试行软件的开发的关键技术依然与高级语言和计算模型密切相关,如各种并行、并发程序设计语言,进程代数,PETRI网等,它们正是软件开发方法和技术的研究中支持不同阶段软件开发的程序设计语言和支持这些软件开发方法和技术的理论基础----计算模型
3、计算机图形学
在计算机的硬件的迅速发展中。随着它的存储容量的增大,也掀起了计算机的巨大改革。计算机图形学、图像处理技术的发展,促使图形化界面的出现。计算机图形学是使用计算机辅助产生图形并对图形进行处理的科学。并由此推动了计算机辅助设计(CAD)、计算机辅助教学(CAI)、计算机辅助信息处理、计算机辅助测试(CAT)等方向的发展。图形化界面的出现,彻底改变了在一个黑色的DOS窗口前敲代码输入控制命令的时代。同时也成就了一个伟大的公司Microsoft。
4、计算机网络
随着用户迫切需要实现不同计算机上的软硬件和信息资源共享。网络就在我们的需求中诞生了。网络的发展和信息资源的交换使每台计算都变成了网络计算机。这也促进计算机的发展和广泛应用。
<三>计算机学科的主线及发展方向
围绕着学科基本问题而展开的大量具体研究,形成学科发展的主流方向与学科发展主线和学科自身的知识组织结构。计算学科内容按照基础理论、基本开发技术、应用以及他们与硬件设备联系的紧密程度分成三个层面:
1、计算科学应用层
它包括人工智能应用与系统,信息、管理与决策系统,移动计算,计划可视化,科学计算机等计算机应用的各个方向。
2、计算科学的专业基础层
它是为应用层提供技术和环境的一个层面,包括软件开发方法学,计算机网络与通信技术,程序设计科学,计算机体系结构、电子计算机系统基础。
3、计算科学的基础层
它包括计算科学的数学理论,高等逻辑等内容。其中计算的数学理论涵盖可计算性与计算复杂性理论形式语言与计算机理论等。
<四>计算机的网络的发展及网络安全
(1)计算机网络与病毒
一个现代计算机被定义为包含存储器、处理器、功能部件、互联网络、汇编程序、编译程序、操作系统、外部设备、通信通道等内容的系统。
通过上面定义,我们发现互联网络也被加入到计算机当中。说明了网络的重要以及普及性。21世纪是信息时代。信息已成为一种重要的战略资。信息科学成为最活跃的领域之一,信息技术改变着人们的生活方式。现在互联网络已经广泛应用于科研、教育、企业生产、与经营管理、信息服务等各个方面。全世界的互联网Internet正在爆炸性的扩大,已经成为覆盖全球的信息基础设施之一。
因为互联网的快速发展与应用,我们各行各业都在使用计算机。信息安全也显得格外重要。而随着计算机网络的发展,计算机网络系统的安全受到严重的挑战,来自计算机病毒和黑客的攻击及其他方面的威胁也越来越大。其中计算机病毒更是很难根治的主要威胁之一。计算机病毒给我们带来的负面影响和损失是刻骨铭心的,譬如1999年爆发的CIH病毒以及2003年元月的蠕虫王病毒等都给广大用户带来巨大的损失。
我们想更好的让计算机为我们服务,我们就必须很好的利用它,利用网络。同时我们也应该建立起自己的防护措施,以抵抗外来信息的侵入,保护我们的信息不受攻击和破坏。
(2)计算机病毒及它的防范措施:
计算机病毒是一组通过复制自身来感染其它软件的程序。当程序运行时,嵌入的病毒也随之运行并感染其它程序。一些病毒不带有恶意攻击性编码,但更多的病毒携带毒码,一旦被事先设定好的环境激发,即可感染和破坏。
<一>、病毒的入侵方式
1.无线电方式。主要是通过无线电把病毒码发射到对方电子系统中。此方式是计算机病毒注入的最佳方式,同时技术难度也最大。可能的途径有:①直接向对方电子系统的无线电接收器或设备发射,使接收器对其进行处理并把病毒传染到目标机上。②冒充合法无线传输数据。根据得到的或使用标准的无线电传输协议和数据格式,发射病毒码,使之能够混在合法传输信号中,进入接收器,进而进人信息网络。③寻找对方信息系统保护最差的地方进行病毒注放。通过对方未保护的数据链路,将病毒传染到被保护的链路或目标中。
2.“固化”式方法。即把病毒事先存放在硬件(如芯片)和软件中,然后把此硬件和软件直接或间接交付给对方,使病毒直接传染给对方电子系统,在需要时将其激活,达到攻击目的。这种攻击方法十分隐蔽,即使芯片或组件被彻底检查,也很难保证其没有其他特殊功能。目前,我国很多计算机组件依赖进口,困此,很容易受到芯片的攻击。
3.后门攻击方式。后门,是计算机安全系统中的一个小洞,由软件设计师或维护人发明,允许知道其存在的人绕过正常安全防护措施进入系统。攻击后门的形式有许多种,如控制电磁脉冲可将病毒注入目标系统。计算机入侵者就常通过后门进行攻击,如目前普遍使用的WINDOWS98,就存在这样的后门。
4.数据控制链侵入方式。随着因特网技术的广泛应用,使计算机病毒通过计算机系统的数据控制链侵入成为可能。使用远程修改技术,可以很容易地改变数据控制链的正常路径。
<二>病毒攻击的防范的对策
1.建立有效的计算机病毒防护体系。有效的计算机病毒防护体系应包括多个防护层。一是访问控制层;二是病毒检测层;三是病毒遏制层;四是病毒清除层;五是系统恢复层;六是应急计划层。上述六层计算机防护体系,须有有效的硬件和软件技术的支持,如安全设计及规范操作。
2.严把收硬件安全关。国家的机密信息系统所用设备和系列产品,应建立自己的生产企业,实现计算机的国产化、系列化;对引进的计算机系统要在进行安全性检查后才能启用,以预防和限制计算机病毒伺机入侵。
3.防止电磁辐射和电磁泄露。采取电磁屏蔽的方法,阻断电磁波辐射,这样,不仅可以达到防止计算机信息泄露的目的,而且可以防止“电磁辐射式”病毒的攻击。
4.加强计算机应急反应分队建设。应成立自动化系统安全支援分队,以解决计算机防御性的有关问题。
很多公司都有因为电脑被入侵而遭受严重经济损失的惨痛经历,不少普通用户也未能避免电脑被破坏的厄运,造成如此大损失的并不一定都是技术高超的入侵者所为,小小的字符串带给我们的损失已经太多。因此,如果你是数据库程序开发人员、如果你是系统级应用程序开发人员、如果你是高级计算机用户、如果你是论坛管理人员......请密切注意有关字符漏洞以及其他各类漏洞的最新消息及其补丁,及时在你的程序中写入防范最新字符漏洞攻击的安全检查代码并为你的系统安装最新的补丁会让你远离字符带来的危险。经常杀毒,注意外来设备在计算机上的使用和计算机对外网的链接。也可以大大有效的避免计算机被攻击。
<五>总结
在学了计算科学导论之后,让我更深入的了解了我将来要从事的学科。计算科学导论指导着我们该怎么学习计算机。让我更清楚的知道我们信息安全专业的方向。正如计算科学这座大楼一样,在不断的成长。信息安全也必将随着网络的进一步发展而更多的被人们重视。总之学习了这门课之后让我受益匪浅,也知道自己应该好好努力,争取在自己的专业领域上有所成就。
参考文献:
1、《计算科学导论》(第三版),赵志琢著,科学出版社2004版
2、《计算机病毒分析与对抗》傅建明彭国军张焕国编著武汉大学出版社2004版
篇5
1.1强调学生的职业素质
现代化职业教学要求培养出具有良好生活素质、劳动素质、人文素质和职业素质的社会人才。致力让每一个学生都成为一个可以全面化发展的人,不仅具有良好的职业技能,而且具有良好的生活技能,不仅具有良好的科学素质,而且还要懂得关爱他人、理解他人、保护他人,不仅可以对职业的变化有良好的适应能力,而且还要具有良好的责任心。因此,在课程改革的过程中,要注意将人文课程和职业技术课程有机的结合起来。
1.2将学生作为教育主体
企业级应用软件开发传统的教学过程中,教师往往是课堂的主体,学生在学习的过程中缺乏主体性,只是被动的学习课程,抑制了学生学习的创造性和积极性,为了对当前的教学局面进行转变,就需要将学生作为教学的主体,树立学生为主体的教学理念,首先,在进行课程的编制的时候,要让学生参与进来,其次在课程计划和课程教学上,要将学生的主体作用充分发挥出来,让学生拥有选择课程的权利,最后,在实际教学时,要将学生的创造性和积极性充分发挥出来,让学生参与到咨询、计划、检查和评价等工作中来。
2课程改革的相关措施
2.1对学习型的教师观念进行深化
企业级应用软件开发课程改革中,处处都渗透着现代教育理念,而课程改革的开展离不开教师的支持、很明显,教师是驾驭新课程的关键。所以,要想进行课程改革,老师首先要对传统的观念进行转变,对自身的能力进行提升。教师要保持一个与时俱进的心态,可以和学生一起进行学习,可以更好的驾驭课堂,为学生树立良好的学习榜样。不断的发展自我、提高自我,实现“教学相长”的教学目标。
2.2积极探索新的教学观念
在传统的教学过程中,老师更多的是注重教材,强调标准答案,只关注知识点。但是在现在,新课程要求对教学思路进行创新,使用自主合作学习和探究性学习的教学模式取代被动接受的教学模式。教学思路的创新并不是短期内就可以实现的,也不是随意编造的,只有老师将基础工作做好,认真的对学生进行研究,才能激发出学生的思维灵感,才可以真正实现思路的创新。假如教师只是一味的将课堂作为展现自己教育水平的一个平台,即使课程妙语连珠,也并不一定是一个成功的课堂。只有在此基础上,保证学生也可以学习精彩的教学才算是真正精彩的教学。教师一定要打破以往“满灌式”的教学模式,给予学生充分的思考空间,注意对学生的学习信心进行培养。将教学课堂转变成学生学习的课堂。如此,才可以为使学生学到知识、应用知识,促进学生的可持续发展。
2.3做好评价教学
篇6
关键词:软件工程管理开发人员组织结构用户
一、引言
软件工程管理目前还没有引起人们的足够重视。究其原因:首先是人的传统观念,工程管理不为人们所重视;另一方面软件工程是一个新兴的学科领域,软件工程管理的问题也是刚被提出的。同时,由于软件产品的特殊性,使软件工程管理涉及到很多学科。因此.对软件工程管理,人们还缺乏经验和技术。但事实证明,由管理失误造成的后果要比程序错误造成的后果更为严重。很少有软件项目的实施进程能准确地符合预定目标、进度和预算的,这也就足以说明软件工程管理的重要。
二、软件工租,理的内容
目前软件生产自动化程度很低,在开发过程中人是起决定性的因素,因此,软件工程管理很大程度上是对人的管理。我们可根据软件产品的特点.分析软件下程管理的具体内容,它包括对开发人员、组织机构、用户、文档资料等方而的管理。
(一)开发人员
软件开发人员一般分为:项目负责人、系统分析员、高级程序员、初级程序员、资料员和其他辅助人员.根据项目的规模人小,有可能一人身兼数职,但职责必须明确。不同职责的人,要求的素质不同。如项目负责人需要有组织能力、判断能力和对重大问题能做出决策的能力;系统分析员则要有概括能力、分析能力和社交活动能力;程序员需要有熟练的编程能力等。人员要少而精,选人要慎重。软件生命期各个价段的活动有分工又互相联系。因此,要求选择各类人员既能胜任工作,又要能相互很好地配合.没有一个和谐的工作气氛很难完成个复杂的软件项目。
(二)组织机构
组织机构不等于开发人员的简单集合。这里的组织机构要求:好的组织结构、合理的人员分工和有效的通讯。软件开发的组织机构没有统一的模式。下面简单介绍三种组织机构。
1.主程序员组织机。IBM公司提出的主程序员组是软件系统结构化思想在组织上的体现。它的目的是为了保证全组的协调和统一。一位高级工程师(主程序员)主持计划、协调和复审组的全部技术活动。技术人员(一般25人)负责分析和开发活动,一位后援工程师支持高级工程师的工作,并且在该项目继续进行时,可以代替高级工程师工作,以减少可能的损失.
2.专家组。专家组强调每个人的才能,把每个人都看作是某一方面的专家,由这些专家组成一个开发机构。这种组织结构虽然能发挥所有工作人员的积极性,但往往有可能出现协调上的困难,选择这种方式要慎重.
3.民主组织.民主组织由从事各方面工作的人员轮流担任组长。很显然,这种组织结构对调动积极性和个人的创造性是很值得称道的。但是由于过多地进行组长信息“转移”不符合软件工程化的方向。
(三)用户
我们是为用户开发软件的,在开发过程中自始至终必须得到用户的密切合作和支持。作为项目负责人,要特别注意与用户保持联系,掌握用户的心理和动态.防止来自用户的各种干找和阻力。
1.用户不积极,不配合。这种表现通常来自对采用先进技术持怀疑态度的用户,他们心理上的抵触情绪会在行动上表现为消极、漠不关心。在需求阶段,做好这部分人的工作很重要,通过他们中的业务骨千,才能真正了解到用户的要求。要使他们认识到:计算机的发展和应用是现代化的必然趋势,使用计算机将会带来巨大的经济效益:让他们掌握新的技术和方法去取代某些可能过时的或淘汰的专长。
2.用户求快求全.这种表现来自对使用计算机持积极态度的人.他们中一部分人希望一个早上就能用上计算机,并且全能用上计算机。要他们认识到;开发一个软件项目不是一朝一夕就能完成的,软件工程不是靠人海战术就能加快的工期。另外,即使计算机能够处理的事情,系统也不能下于包罗万象,贪大求全。要根据现有的条件量力而行。如果系统大而全,必然会很复杂,开发时间就拖得很长,因此可能会导致一个系统的失败或性能太差.
3.用户需求变化.在软件开发过程中,用户可能会不断提出新的要求和修改以前提出的要求。从软件工程的角度不希望有这种变化。但实际上,不允许用户提出变动的要求是不可能的.因为一方面每个人对新事物有一个认识过程,不可能一下子提出全面的、准确的要求:另一方而还要考虑到与用户的关系。对来自用户的这种变化要正确对待:要向用户解释软件工程的规律,并在可能的条件下部分或有条件地满足用户的合理要求.例如:软件需求分析阶段结束后软件的设计口标已经确定,这时用户要求的重大变化要导致设计目标的变化,特别是到软件开发的后期,一般不可能满足这种变化的要求。要向用户解释清楚工程的内在规律,但对用户提出的如性能等局部方而的要求,只要是合理的,就要加以考虑。
4控制。人员控制是对开发组织内部人员控制。就是要保证开发人员的积极性和稳定性。人员的频繁更换或流动将会大大增加软件出错误的机会。至少要保证软件项目每一期工程或软件生命期每一阶段中人员的相对稳定性。同时注意发挥每个开发人员的积极性和创造性。经费控制要编制详细的经费预算。并在各阶段进行经费的核算。在经费上失去控制,软件项目就没有经济保证。质量控制与各阶段的复审在意义和作用上是一致的,在此不再叙述。
5.文档资料。开发过程的各种活动后都要反映在文档资料上。每一个阶段的文档资料是以后各阶段工作的基础,又是对前面各阶段工作的复审。软件工程管理很大程度上是通过对文档资料管理来实现的。因此,要把开发过程中的初步设计、中间过程、最后结果等建立成一套完整的文档资料。文档标准化是文档管理的重要方面。
篇7
本文较详尽地分析了美国软件版权判例的三个发展阶段,指出:尽管美国计算机法律界对于软件版权保护“仍处于一种积极的动荡状态”,争论仍然存在,但经过几年的深入发展,美国软件版权保护出现了向版权法基本原理回归的健康倾向。外国正反两个方面的经验值得参考借鉴。
关键词计算机软件版权保护判例
1980年,美国国会通过了版权法修正案,将计算机软件正式纳入版权法的保护对象。由于美国计算机软件在全球的主导地位以及其在全球经济技术等方面重要影响,八十年代开始,世界各国纷纷也以版权法作为计算机软件知识产权保护的主要形式,从而形成了国际主流。但是,由于计算机软件的版权问题同计算机软件的技术及其发展是紧密相连的,法律界在具体处理软件的版权问题时遇到许多前所未有的新问题,并不断地引发出争论。为此,国际计算机法律界进行了大量的研究和探索,其中,世界上软件产业最发达的美国计算机法律界所遇到的问题最早也最多。因此,可以说美国在这方面已走在前面,特别是,美国法院在近十几年中对一系列软件版权案判处而形成的判例,不但丰富和发展了美国软件版权的法律体系,而且在很大程度上左右了世界软件版权保护的进一步发展。因此,了解和分析美国软件版权判例的发展,对于我们把握国际软件保护的发展趋势,不断完善我国软件版权保护是很有借鉴意义的。
一、美国前期软件版权判例简单回顾
美国虽然于1980年通过立法对计算机程序正式予以版权保护,但在法中没有作出很多具体规定,实际上是留给美国法院根据立法原则,已有的判例和具体案情进行处理,通过案例不断地丰富发展其法律体系。
美国前期的计算机程序案例主要是涉及计算机程序能否享有版权保护,什么形式或什么类型的计算机程序能够享有版权保护。现在这些案例被称为计算机程序版权纠纷的第一代案例。例如:Tandy公司诉Pesonal微计算机公司案(1981年)、Apple公司诉Franklin公司案(1983年)、Apple公司诉Formula公司案(1984年)等。其中影响最大、最具代表性的是Apple公司诉Franklin案(该案可详见电子工业出版社《计算机软件著作权保护手册》第129页,案件2)。通过这一系列案例解决了计算机程序作为版权保护对象的基本问题,具体地讲,主要包括以下一些结论:
1.计算机程序的源代码形式和目标代码形式都具有版权;
2.系统程序(包括操作系统、编译程序等)和应用程序一样都具有版权;
3.固化在ROM电路等载体上的程序具有版权;
4.微程序也可享有版权(详见《计算机软件著作权工作手册》第136页,案例4:NEC诉Intel案(1989年))。
以上这些通过美国第一代案例所总结出的结论已逐步被美国乃至世界计算机法律界所接受,有的甚至已纳入立法的法律内容。例如:有关计算机程序的源代码形式和目标代码形式都享有版权保护的内容在《欧洲共同体关于计算机程序保护的指令》、我国《计算机软件保护条例》以及关贸总协定关于知识产权的协定(Trips)中都有相应的规定。
二、计算机软件版权保护向深入发展
随着软件版权保护的发展,法律界面临着从简单的、逐字逐句的复制行为发展到带有伪装的拷贝行为的问题。再加上计算机软件作为一项智力劳动成果,它同一切人类文化科技成果一样,不可能凭空而降,它总是在不断继承、借鉴他人成果基础上不断改进、创新、发展而成的。根据版权法的基本原理,只要是利用原有软件的思想,则是合法的。因此,正确合理地区分计算机软件的思想概念与表现的界限,不但涉及对某个软件是否侵权的判定,而且直接涉及在软件开发过程中如何做到既能吸收他人软件中的先进技术,又不致陷入版权纠纷,同时还能享有自主的版权。从更深的角度来讲,正确合理区分软件的思想与表现,关系到版权法保护的基本宗旨,即通过保护软件版权所有者的合法权益,鼓励创作开发更多更先进的软件,促进技术和产业的健康发展。
上述第一代判例得到的结论从一定角度上讲,就是认定各类各种形式计算机程序的编码(包括源代码和目标代码)——美国法律界将其称为程序的文字性(Literal)部分,都是作品的表现,理应受版权法保护。而程序的功能目标,法律界也一致公认为属于作品的思想范畴,不受版权法保护。但是,在上述编码与功能目标两个“极端”之间存在着一个中间地带,例如程序的总体结构、接口设计、屏幕显示等等——美国法律界往往将这部分内容称为程序的非文字性部分,而这部分中间地带中哪些属于程序作品的思想概念,哪些属于程序的表现,这些有关软件开发中的版权问题,成为了计算机软件版权保护深入发展中的关键问题。
美国处理上述问题的案例出现在八十年代中期,例如:SAS公司诉S&H公司案(1985年)、Whelan诉Jaslow公司案(1986年)和Plains合作社诉Goodpasture公司案(1987年)。这些案例又称为第二代案例。其中最著名的也是影响最大的是联邦第三巡回法院二审判决的Whelan公司诉Jaslow公司案(该案可详见《计算机软件著作权工作手册第155页,案例12》)。
美国法院在处理计算机程序版权纠纷,采用了一些判断准则,其中最普遍的是所谓“接触加实质相似性”准则(Access&SubstantialSimilarity)。也就是说,法院在判定一个软件是否侵权时,首先要考虑被告是否曾经接触过原告的版权作品,如果被告有可能“看到或得到原告的程序”,则满足了“接触”条件。其次,法院要将两个程序进行相似性比较,比较包括文字成分(编程代码等)和非文字成分的相似性比较。如果出现相似或实质相似,就有可能判定侵权。这对于文字成分出现相似的情况,问题不大。而对非文字性成分相似的情况,相似的非文字成分必须是属于程序作品的表现时才有可能侵权。如果该相似的非文字成分是属于程序作品的思想概念范畴,就不应该认定为侵权,因为这是版权法原理所允许的。因此,问题又归结为程序作品,特别是其非文字性成分的思想和表现的区分。
美国第三巡回法院在审理Whelan诉Jaslow案中,提出:被告程序作品的思想就是该作品总的功能目的,除此之外,任何对该功能和目标不是必要的成分都应该视为表现。该法院认为,被告的程序虽然与原告程序编码完全不同,但两者的结构、顺序和组织(SSO)相同或相似,故构成了侵权,将计算机程序的版权保护一下子从文字性编码扩展到它的结构、顺序和组织。
除了计算机程序的结构、顺序和组织之外,八十年代中期开始,美国出现了许多涉及所谓计算机程序的“外观与感觉”(Look&feel),即程序的屏幕显示和用户接口版权纠纷的案件。例如:Broderbund公司诉Unison案(1986年)、Digital公司诉Softklone公司案(1987年)和Lotus公司诉Paperback公司与Stephenson公司(1990年)等(以上案例可参见《计算机软件著作权工作手册P168-178》)。这阶段的“外观与感受”案例与“SSO”版权案例都表现出明显的深入扩大版权保护范围的趋向。它们明确地提出,计算机程序中的非文字性成份,包括程序的SSO和用户界面中选单及其结构和组织、应答词及其显示形式和图象、命令和语法、功能键按击顺序和编排等,只要具有原创性和非显见性均可能享有版权……
从八十年代中期到九十年代初,这种将计算机软件的思想范围缩小,扩大受保护的表现的作法,虽然也有不同的作法(例如:1987年美国第五巡回法院判决的Plains合作社诉Goodpasture公司案),但是总的来讲,在美国法律界占了主导地位,同时也影响到了其他的国家,有些欧洲国家也开始采取了类似的扩大版权保护的作法。
三、当前软件版权保护向合理方向的新发展
从上述八十年代中期到九十年代初的美国第二代软件判例来看,美国对计算机软件的版权保护已经逐步背离了版权保护的基本原则,已经从保护“表现”深入到保护“思想”。其原因主要是,计算机软件的技术性较强,其思想和表现往往混合在一起,难以区分,而美国司法界对技术又不太熟悉。此外,美国计算机界,特别是大企业希望能给予软件的保护越强越好,以维护其优势地位也是一个重要因素。对这种做法,美国法律界乃至国际法律界是有不同意见的,尤其在日本,一些法学界人士对之提出了强烈的批评。同时,产业界的反应也是强烈的。持反对观点人士认为,目前,开发新软件总是要借鉴他人的思想的,没有人会一切从头做起。按照上述案例的作法,只是对资金雄厚的大公司有利,加强了大型软件公司的垄断地位,不利于竞争,并将遏制可兼容性产品的开发,使软件开发者如履薄冰,同时也使用户在软件的品种、价格方面失去选择机会,这将窒息软件产品的创新,不利于软件技术和产业的发展,有悖于版权法的宗旨。
随着争论的深入,九十年代初,形势出现转机。以1992年美国第二巡回法院判决的ComputerAssociatesInternational公司诉Altai公司案(简称Altai案)为标志的所谓第三代判例表明,美国软件保护又出现了逐步回归到版权基本原则上的趋势。
美国Altai案从根本上否定了Whelan案判决中建立起来的SSO等判断规则,同时又在版权基本理论和准则的基础上,结合软件的特点,提出了较为科学、合理的判断规则。
美国第二巡回法院在判决Altai案中认为:
(1)“一个程序仅含有一个思想”的观点不能成立,每个子程序至少有一个“思想”。在计算机领域,许多子程序已被标准化和规范化,以致于它们几乎在无意中就被写入计算机程序中,从而否定了Whelan案的“计算机程序思想唯一性”原则;
(2)一个程序中并不是只有一个结构;程序分解后的各个层次都存在一个结构,认为程序的“结构、顺序和组织”必然构成作品的“表现”的观点毫无根据。从而否定了Whelan案的SSO准则。
该法院在Altai案中提出了一套新的判断规则——“抽象、过滤和比较”三步判断法。具体内容为:
第一步对计算机程序进行抽象(Abstraction)。首先对指控他人侵权的原告程序分解为各级构成层次,从代码、子模块、模块……直到最高层次的功能设计,对程序分层次逐级抽象,将思想抽象出来。随着抽象层次的上升,被抽象出来的思想就越多,而剩下的“表现”就越少。
第二步过滤,即将抽象掉思想的各层次的表现,逐层次进行“过滤”。根据硬件环境、兼容性条件、效率因素、公有领域因素等外部因素过滤出不受保护的内容。
第三步比较,把过滤后剩余的部分与被指控侵权的程序在逐个抽象层次进行比较,以确定被告是否复制了过滤后剩下的“表现”。为确有复制,还需进一步评价被复制部分在程序中所占的重要性。
第二巡回法院在Altai案中提出并采用的合理界定计算机程序版权保护的范围的基本规则及其判断法则,较好地解决了版权基本原理在计算机软件方面的运用问题,体现了司法解释要与立法最终目的保持一致,既有效地保护权利人的合法权益,又有利于鼓励创新、鼓励合法竞争的公共利益。因此,引起了美国乃至各国计算机法律界的高度重视。在随后直至当前,从美国发生的众多计算机软件纠纷案来看,Altai案的法则已经普遍地为美国法律界所接受,并且在此基础上,有了进一步的发展和丰富。总的来说,有以下几方面特点:
1.分层抽象思想,Whelan案的SSO等法则已被实际否定
从近五年的美国案例来看,尽管美国各法院在判断计算机程序的版权保护范围的作法各有差别,但几乎所有的法院都拒绝采用Whelan案中提出的判别法则。人们越来越清楚一个程序包含许多层次的思想。Whelan案判决的法则普遍被认为过于简单化和保护过宽,所谓SSO法则实际已被否定。许多法院广泛地对计算机程序应用抽象法则(第九巡回法院称之为“内部”法则,而“过滤”则称为“外部”法则),确定不受保护各层次的思想,将其排除于侵权考虑之外。从而缩小了自Whelan案以来的受保护范围。
至于层次的划分一般都是自代码到功能目标设计逐层进行,但其中具体划分为几个层次,则根据具体案情,各有特色。例如:Altail案中法院是假设了目标码、源代码、参数表、服务要求和整体轮廓5个层次,进行抽象的。
又如:美国第十巡回法院在GatesRubber案中(1993年),是“按照与程序创作过程平行的方式”分成目标代码、源代码、算法及数据结构、模块、程序结构或构造、主要目标6层进行抽象的。
2.过滤作为判别法则的重要步骤,考虑了更多的因素
“过滤”是“三步判断法”中极重要的一个步骤,通过“过滤”将计算机程序中不受保护的成分剔除出去,显然将直接影响版权保护的范围。如果过滤得越多,则受保护的范围越小,侵权的可能性也越小。对于软件开发来说,其回旋的空间也越大。近年来,美国法院普遍接受“三步判断法”的法则,其关键在于广泛地采取了过滤法(或称外部法则等,实质差不多)来确认不受保护成分。而且总的趋势是过滤中考虑了更多的因素,也就是合理地缩小了版权保护范围。
过滤一般首先将根据版权法的基本原理进行。例如:第十巡回法院在Autoskill案中(1992年),首先根据如下原理进行过滤:
(1)根据思想——表达两分法原则程序的主要目的和功能总是不受保护的思想,类似地,每一典型模块也具有各自的目标和功能,而模块的基本功能和目标也是不受保护的思想或过程。
(2)根据过程(属于思想)和表现的两分法原则版权保护不能延及程序所体现的过程,而“通常,过程是作为部分系统构造、模块内部操作或算法出现的。”
(3)事实“计算机程序中,事实常常在很多抽象层次中出现,而且常常是作为部分数据结构或代码中的文字表达。”
(4)公有领域必须过滤出程序中所有非原创的成分,包括处有公有领域的成分。
(5)同一性原则版权必须拒绝保护那些“与思想、过程、发现等不可分离或紧密结合的表达。”
(6)精彩场景原则(Scenesafaire)第十巡回法院在该案中还应用了文学戏剧等作品中的精彩场景原则,对软件中某一特定主题的标准的或一般性的表现,也予以过滤,认为不应受保护。
最新的案例表明,美国法院在处理软件版权纠纷进行过滤时,还充分考虑计算机软件的特点:鉴于计算机软件是一个实用性很强的作品,其开发过程与一般文字作品不同,必然受到诸多因素的限制。如果将由于这些限制因素而造成的表现相似也视为侵权,显然也是不合理的。这就是所谓“外部因素”限制了表现的观点和作法。即将由于“外部因素”限制而产生的表现的相似不作为侵权论处。
其实,“外部因素”限制了表观的观点,在1987年美国联邦第五巡回法院审理Plains案中就已提出。当时,第五巡回法院就以棉花市场规律等作为外部因素限制了被告程序的表现为理由,否定了对被告侵权的指控。近年来,美国法院对“外部因素”的认识更加深入,在运用过滤法则中,确认了更多的“外部因素”,要求在相似性分析中过滤相关成分,从而限制或缩小版权的保护范围,近年来,一些判决中提到的外部因素有:
(1)硬件限制(Altai案、GatesRubber案和Cams案)即排斥对那些由于计算机硬件或其他硬件环境特征、标准等限制而产生的软件相似成分的保护;
(2)功用性(如Apple诉Microsoft案,第9巡回法院(1994年)、Capcom诉DataEast案,1994年等)即为功能目的纯粹的功能项或其编排将予以过滤掉。例如:著名的Apple公司诉Microsoft案中,法院指出:“纯功能性的项目或这些项目为了功能性目的”编排,完全不受版权保护所限。
(3)产业标准和用户要求产业标准和用户要求作为外部因素,即将那些由于符合产业标准而出现的相似部分排除于版权保护之外,是近年来美国法院的新提法(也有不同观点)。这个观点在GatesRubber案、Apple诉微软案、BrownBag案(第9巡回法院,1992年)和Capcom诉DataEast等案中均有反映。例如:美国法院在Apple诉Microsoft案中指出:“用户接口的功能元素或它们在产品中同类的编排的相似性并不暗含非法复制,但是标准化却跨越了竞争产品的功能性考虑”。“过度地扩大版权保护可能产生反作用,不利于固定的兼容标准的利用。”该法院又提出:“一些视觉显示和作品的功能目标紧密相关,都形成了标准,如果计算机程序的‘市场因素在决定顺序和组织时起了重要的作用’,那么这些模式可能会成为思想概念,而不为任何个人所用。”
(4)兼容性要求允许开发兼容软件一向是产业界的共识,在法律界也是没有很多疑义的。但在具体的司法案例中,将兼容性作为外部因素以限制版权保护范围则是近年来才出现。例如在Altai案中,法院提出,与其他程序共同运行的兼容性要求作为“外在考虑”因素,将限制程序员编写程序时的自由选择,从而限制了计算机程序中受保护的表现的范围。在第二巡回法院审理的GatesRubber案中,也提出软件兼容性要求所决定的程序部分应予以排除、过滤。
(5)除了上述之外,另外一些“外部因素”也被提出来作为“过滤”的条件如效率性,即设计编程中要求具有较高或最佳效率,进入公有领域可以自由使用的成分,广泛接受的编程方式等。
3.比较
比较是三步判断法则的第三步。通过比较,确定被指控侵权的程序与原告程序是否相似或实质相似,是原先美国法院一贯采用的方法。引入三步判断法则后,美国法院对如何进行比较以及判定侵权进一步进行了探索,并提出一些新的观点和做法。
(1)比较只对抽象——过滤后的成分进行从Altai案、GatesRubber案和Autoskill案来看,部分法院认为,被过滤的成分应该完全不予考虑。相似性比较只能根据过滤之后剩下的成分,然后才作出判断。
(2)在Apple诉Microsoft案、BrownBag等案中,法院提出,程序中某些过滤的成分,虽然就其本身来说,单独是不受保护的,但这些成分可以组成一个比其总和更强的作为整体的可能构成可版权的表现这种观点源自于汇编作品(或编辑作品)的版权,对于那些本身不享有版权的材料,如果在将其进行编排、挑选等工作,构成一个汇编作品,并体现一定独创性的话,则该汇编作品也是可以享有版权的。显然这种观点也是合理的。值得注意的是,这些法院在提出整体可能有版权的同时,又强调了,在这种情况下的比较,应该要求更高的相似性。
(3)新的更高的相似性比较标准
美国判例法在处理软件版权纠纷中发展了判定侵权的相似性标准,其中最突出的是,提出了“实质相同(或完全相同)”标准。例如:第九巡回法院在Apple诉Microsoft案中提出,对单个元素的复制。侵权的认定标准是采取“实质相似性”还是“实质相同性”标准,要根据这些元素是否受制于限定原则,如外部因素等来决定。如果受制于限定原则,则应该使用“实质相同”标准。第五巡回法院在EngineeringDynamiss案中(1994年)也提出,如果技术和思想概念约束限制了表达思想的可行的方式,那么只有“完全相同”的复制才可提讼。
“实质相同”标准也被提出来应用于对程序作品的整体分析比较之中,第九巡回法院认为:对于那些大多数由可受保护的元素组成的作品,将在实质相似的标准下,提供“宽”的保护;而对于那些大部分由本身不受保护的元素所组成的作品,其保护范围只限于其所构成的作品的原创性的节选和编排,将在严格的实质相同的标准下比较分析,以提供“窄”的保护。
4.其他一些新作法
(1)“不计琐细”准则的最后删选
目前,美国有的法院在进行侵权比较分析后,即使发现“相似”或“相同”的部分或元素,还要将此部分与整个程序进一步比较,看其在产品中所处的地位和作用。如果此部分内容对整个作品的作用影响不大,就仍可能按照“不计琐细”原则,不能构成侵权的基础。例如:第十一巡回法院在审理Mitek案时,经过抽象——过滤——比较三步检测分析后,进一步使用“实质相同”标准,对程序作品进行整体比较,最后判定原告程序中5个非文字成分是可受保护的且与被告程序中的成分相似。但是,法院最终仍判决不存在侵权,其理由是这5个相似成分在程序作品作为整体中,缺乏重要性,属于原告程序中的“不计锁细”部分。
(2)一些标准的用户接口成分不受保护
近年来,美国出现了一系列所谓软件的“外观与感受”的版权纠纷案例。“外观与感受”不是一个版权术语,它被用来标识软件的各种非文字成分。例如:“外观”往往是指计算机程序的外在各种视听成分,屏幕显示用户接口的可见部分和其他可视的和可听的输出部分。“感觉”则往往包括程序中的动态的操作流程、键盘设计和其他能产生各种功能的方法等。从表面上看,“外观与感受”只涉及用户界面及其开发的版权问题。实际上,它必然与整个软件开发过程中的版权问题有关,特别是,这些案例的处理将影响到对软件开发中接口界面(不仅仅是用户接口)的版权处理。近年来美国“外观与感受”案例的处理结果虽然各不相同,但有一点是趋同的,即一些标准用户接口成分不受保护。例如:图形接口的基本特征,除了特别有其特色,与功能无特殊关系等成分之外,一般不受保护。这种处理方法,对于兼容性软件开发商来说,在处理难以回避的接口版权问题方面,将是有利的。
(3)判断侵权时更多地使用专家证据
现在,美国法院无论在抽象——过滤阶段,还是在比较和整体判断相似性方面,都更广泛地采用专家论证以判断是否侵权。早期,由于计算机软件的技术复杂性,专家的论证在案件判定方面占较重要的地位。以后,随着Whelan案侵权准则的简化,在“外观和感受”案件中,法院往往提出以普通观察者的观察和印象作为判决时的参考。如今,随着三步判断法则的使用,无论是抽象层次的划分,外部因素及其他限制原则的选取和使用,还是实质性相似的分析……都缺少不了专家的论证,这也是一般普通观察者难以胜任的。这是计算机软件本身技术特征所决定的。在软件版权纠纷处理方面,专家的论证已显示出越来越重要的作用。
四、结束语
综上所述,美国法律界近年来的一个明显倾向是,在有关软件开发中的版权问题方面,缩小了版权保护范围,为新软件的开发者提供了更广阔的天地,更宽松的环境。
篇8
关键词:产学研合作;专业研究生培养;实践教学
中图分类号:G642
文献标识码:B
文章编号:1672-5913(2008)06-0029-02
中国对日软件外包开发领域近5年以来一直以50%的增幅持续发展,会日语并懂得国际软件开发规范的中国IT人才已成为国内对日软件外包企业的最热门人才。为适应时展需要,北航软件学院把握时机,从实际现状出发,依托自身强势的品牌优势,为国家发展及学子前程量身打造特色的专业,成为中国目前唯一能提供日文应用软件开发方向硕士学位的正规教育机构,并摸索出一套以“产学研”为主体的教育培养模式。
1培养模式的设计思想
“产学研”模式是一种从实际到理论又到实际的全新教学模式,这种人才培养过程要求培养机构与生产企业进行紧密联合,从而从生产、管理的一线前沿了解最新的、最为需求的工程技术、工艺方法以及新的应用理论;同时从企业那里得到设备、项目、技术。然后,利用这些教育信息和教育资源按照企业实际的要求,通过制定课程体系、编写和研究理论联系实际的教材来培养学生,使学生得到的知识是最新的、最实用的。
在培养过程中,学生在校不但可以学习到技术,而且可以参与学校或者企业的科研项目,实现第一次理论与实践的结合;由于该专业的学生有较多机会在日企或中日合资企业实习、就业,因此在完成了系统的理论学习和实践之后,学生又有机会到国外企业中实际工作,学习国外的先进技术和经验,这样就实现了理论与实践的第二次结合。通过以上两次理论联系实际、工与学的结合,培养学生将来在企业工作所需的基本素质。
我们将研究生培养思路确立为“强化基础、突出实践、重在素质、面向创新”,坚持教学的基础性和科学性。具体做法是:把当前成熟的软件工程理论成果和思想,凝炼成基础课体系的核心,整合和优化专业课程体系,突出学科交叉与融合;同时加强学生现代工程技术的实践能力和外语实用能力的培养,全面提升学生素质教育质量,使学生具备自主创新的潜力。
作为对日软件开发人才的培养,日语不仅是这类人才的专业工具,而且是领会日企文化的基础。因此,我们要求毕业生:日语水平达到国际交流基金日语能力考试二级以上,且具有较强的英语能力;训练有素且深谙日本企业文化、具有较强的国际竞争意识和团队合作精神;熟悉日文软件开发流程与规范,具有使用全日文软件开发环境、编写日文开发文档能力,可以胜任日文软件开发各个层次的实用型、复合型人才。
2基本培养模式
2.1科学设置课程体系
采用先进的工程化方法进行软件的开发和生产,是实现软件产业化的关键技术手段,这就需要培养大批软件工程领域的实用型、复合型软件工程技术和软件工程管理人才。设计科学实用的课程体系,是实现上述培养目标的基本保证。
应用领域广、技术更新快是当代软件工程技术最显著的两大特征,因此在设计对日软件开发专业的课程体系时,我们遵循了先进性、灵活性、复合性、工程性和创新性五个基本原则。
2.2实用外语教育
在日本的企业或对日外包的企业,不会日语几乎无法进行沟通,限制了发展和培养机会。通过学习日本的企业文化,学生不仅了解了中日文化差异等问题,以后在日企实习、工作中可以更快适应并融入到公司中去,而且可以全面了解日本文化和设计风格,熟练掌握软件开发技能和软件管理,这对日文应用软件开发设计有莫大的帮助。
在具体实施日语教学过程中,我们采取由中国教师教授日语语法,日籍教师教授会话和听力练习的教学方式。同时也没有放松对学生英语能力的加强,成为能掌握中、日、英3种语言的短缺人才。
3“三级”实践教学体系
3.1理论与实践结合的核心课程
产学研合作应贯穿于学生培养的全过程中。在理论教学中,要突出理论联系实际,知识与应用的结合。例如,专业核心课程“双语软件工程规范化设计”,既包括从需求到软件设计过程中的四项主要基础技术,即需求分析、设计法、文档、和设计审查,同时还介绍了软件工程及软件开发工具、环境、工程中的成熟技术、成功与失败的案例分析、软件工程最新话题等前沿性内容,实现了在软件工程领域中的理论联系实际。课程的学习强调了与工程的结合,由日籍一线软件工程师在全日文开发环境下讲授,配备实训教材并提供日文软件实训。在教师指导下以团队形式完成一定规模的项目,实施规范化的项目分析、设计、实现、测试及维护各环节训练,加强学生的动手能力和日文文档的撰写能力,培养协作交流精神。培养学生能真正掌握一门实用外语,具备良好的阅读、理解和撰写外语资料的能力和进行国际化交流的能力。对于致力于软件外包领域的专业学位获得者,应精通外语,了解外包国文化和软件工程规范。
3.2配合核心课程的系列教材
配合核心课程,我们还主编并由科学出版社等出版了软件工程所急需的国家“十一五”规划教材――“软件工程设计与实践”、“计算机日语”、“软件工程规范化设计”、“软件工程设计案例与分析”等。学术界和工业界专家对系列教材给予较好评价:“这种内容及其组织方法在我国已出版的软件工程专著和教材中不多见,此系列教材可以为我们树立应用性著作的范例。”
3.3实践教学体系
为了综合培养学生的工程技术能力,在学生毕业前还安排了三级实践性教育。学生应能满足面向产业和领域需求,具有坚实的基础理论、宽广的专业知识,具有创新意识,具有运用先进技术方法和现代技术手段解决工程问题的能力,具有独立从事软件研发,以及担负工程项目的组织与管理能力。
一级实践:用来测试学生基本掌握的编程能力及使用基础工具的能力;比如用C++来编写程序,使用Oracle数据库等;通过这级实践的同学可以进入二级实践的考核。
二级实践:通过团队协作来完成。实践项目大都来自于各个企业,在实践过程中,学生们按照日企的标准分当不同的角色,完成不同的任务,最后要在有日本资深专家的现场,用日语来讲解自己做的项目,通过二级实践的同学有资格去企业实习。
三级实践――企业实习:
(1) 与Fujitsu、NEC、RICOH等200多家日文软件开发企业建立合作关系,共建日文应用软件开发专业实习基地。NEC日本总公司、NTTdata(日本电信)、理光、富士通等公司提供专业奖学金,金额累计高达4000余万元日元/年。
(2) 学院在日本建立了30多家实习基地。
(3) 福建最大最成功的软件企业――福建富士通信息软件有限公司是北航软件学院的战略合作伙伴。学院已在福州富士通开设了该方向软件工程硕士点,于2004年12月正式开学。
(4) 与日本Kinsoft株式会社、NETCOM株式会社以及系统综研株式会社等公司组建合资企业,在学院内部建立“零距离”学生实习与就业基地。
学生通过企业的面试后直接进入企业实习,在企业中完成实际项目,同时完成自己的毕业设计或论文。
4工程技术与研究兼并的论文要求
(1) 两种类型论文特点的对比分析
工程型论文要有产品;研究型论文要有理论价值。
工程型论文强调实用性和社会效益;研究型论文则需要有关调研、问题分析、方案选择、创新验证等的严格根据和论据。
工程型论文书写格式要按国家规范;研究型论文书写格式相对自由。
(2) 两种类型兼有的论文要求
有一定的理论价值、实际应用意义和社会效益。
将以工程背景的项目,做有关调研的同类产品的对比分析、问题分析、方案选择、创新结果汇报。
将工程规范和研究书写格式进行合并。
论文选题一般应直接来源于企事业单位,具有明确的应用背景和实用价值,同时应具有先进性、一定的技术难度和工作量,能体现作者综合运用本专业基础理论和专知识较好地解决工程实际问题的能力、从事软件项目研发和管理的能力,以及创新和研究的意识。
论文一般要求结合企业实际需求选择研究题目。对这类项目,除需指定学校指导教师外,还需指定一名企业指导教师共同负责指导,由软件学院负责监督和管理。我们的研究生培养在毕业设计(论文)的环节中采用双导师制,即学校导师和企业导师,以保证产学研合作教育在毕业环节上的有效实施。
论文要求结构合理,层次清楚,讨论研究论据充分,写作认真,文图标准规范,数据详实准确,软件文档符合标准规范。
5教学效果分析
北航软件学院从市场的需求出发,与国外大学和领导性的企业联合办学。为学生提供了国际化的实习和就业机会(学院已经安排了200多人出国实习/就业),吸引了大量的学生。通过对毕业生情况跟踪调查看出,我们的毕业生已分布在国内的诸多大中型企业、政府部门、科教院所、外资企业。根据我们的初步统计,2005、2006年工程硕士研究生达到了98%以上就业率,平均起薪达到了6000元/月。
参考文献
[1] 王建华. 创新“产学研”合作模式 提升高校服务社会能力[J]. 中国高等教育,2006,(17).
[2] 徐辉. 高等教育发展的新阶段―论大学与工业的关系[M]. 杭州大学出版社,1990.
[3] 蔡克勇. 论教学、科研和生产联合体[J]. 高等教育研究,1986,(4).
[4] 刘力. 美国产学研合作模式及成功经验[J]. 教育发展研究,2006,(7):16-22.
[5] 王庆. 校企合作:高校办学的有效途径[J]. 上海高教研究,1997,(2).
篇9
在软件工程工程硕士培养的诸多问题上,做了一些有益探索与研究,针对性地提出了一套适合于省属高校软件工程全日制工程硕士培养的解决方案,希望能为同类型高校提供人才培养的借鉴。研究生培养方案的制定,重点需要解决课程体系设置、培养流程规划与控制。对专业学位研究生而言,还需要解决专业实践能力的培养与训练这一关键问题。
1.课程体系设置软件工程学科正式确立的两个标志性文件是2004年IEEE推出的软件工程知识体(SWEBOK)和软件工程教育知识体(SEEK)。两个文件内容相近,都包含了软件工程核心类的知识领域、基础类或前导类的知识领域,以及其他相关领域的知识[4]。软件工程研究生的培养从原则上说应遵循上述两个文件,围绕上述知识领域进行教学。但由于这两个文件将软件工程的知识体系划分为知识点,各领域之间必然存在重复和交叠。在课程设置上无法照搬上述两个文件。以SEEK为基础,我们对软件工程的课程设置进行规划。整个课程设置被分为五个层次,分别为工程基础课程、计算机基础课程、软件工程核心课程、扩展课程和实践课程,如图1所示。课程开设顺序大体按照五个层次由低到高依次开展。其中,工程基础课程提供软件工程所需数学理论基础、外语能力培养、软件工程文档写作、论文写作基本功训练。计算机基础课程提供软件开发必须的计算机基础知识,如网络、算法和数据库知识。相对于本科课程而言,此类课程讲授内容更深入全面。软件工程核心课程设置了高级软件工程、软件体系结构和软件测试与质量保证三门课程。高级软件工程侧重于软件分析与设计、软件工程过程、软件开发案例分析。软件体系结构侧重于结构风格、案例研究、共享信息系统、结构描述、结构的分析与评估、特定领域的软件体系结构和流行的软件体系结构等。软件测试与质量保证着重于软件质量的改进,讨论如何提高软件质量的方法。扩展课程包含系列领域知识课程,研究生可根据研究方向选择两门;软件开发工具讲授最新流行的软件开发、过程管理所需要的软件工具的使用,以实践教学为主。软件开发新技术研讨课程以讲座形式开展,教师和学生均可作为一个专题的主讲。实践课程包含校内实践、校外实践和毕业设计三个环节。
2.培养流程与实施教育部明文规定,专业学位研究生学制原则上为两年,同时要求应届本科生进行专业实践不少于一年。一般来说,研究生在校课程学习时间应有一年左右,加上专业实践的一年,如何合理安排学习计划,在两年内完成培养环节成了一个现实的重要问题。我校以周为单位制定了四川师范大学软件工程专业学位研究生培养流程,如表1所示:上表规划了研究生培养中的几个关键环节,依次为报到入学、课程学习、校内实践、校外实践、开题、毕业设计、论文写作和送审答辩。第一学期研究生主要是课程学习,同时在校内导师指导下开展文献阅读和编程能力锻炼。第二学期前半学期结束理论课程的学习。后半学期和暑期开展校内实践和毕业设计开题工作。第三学期研究生到实习基地进行校外实践。从第二学期后半段和整个第三学期,学生在专业实践的同时,需完成毕业设计。从第二个寒假开始直到第四学期前六周,研究生完成毕业论文的初稿。从第七周开始,进行论文修改、、盲评和答辩工作。从培养流程表可以看出,这种安排具有两个显著特点。一是理论课程学习安排在一个半学期完成,二是实践课程分为校内实践和校外实践。研究生理论课程学习任务并不重,完全可压缩到一学期半,同时可为实践提供更多时间。校内实践非常有必要。由于是省属高校学生大多能力一般,为保障学生进入企业能融入研发团队从事技术工作,必须先期培训其实践能力。这种安排时间较为紧凑,也比较合理,符合专业学位研究生侧重于实践能力培养的要求,也在两年的学制内确保了研究生的实践时间不少于36周。
二、专业实践能力的培养与训练
软件开发能力是软件工程专业硕士必备的核心能力,其能力培养既是对前端课程学习效果的检验,也是后端毕业设计和就业的必然需要。我校将软件工程专业硕士实践能力培养融入了众多环节。从前期的实验型课程教学,到中期的校内实践、再到后期的校外实践和毕业设计。实验型课程教学解决软件设计开发的基础技能,校内实践解决中小规模软件设计开发能力,校外实践和毕业设计解决中大规模软件设计能力。
1.实验型课程教学包含软件工具的使用训练、软件开发环境的搭建、软件开发案例分析和新技术研讨。软件工具的使用训练学生单个软件开发工具的使用,如项目管理软件Project、开发文档化软件Rational、软件测试工具LOADRUNNER、QTP、TD等。由于这些工具结构分散,还需进行开发环境的搭建训练。开发环境搭建训练内容一为搭建基于微软的VSTS和VisualStudio的开发平台,适合.net方向;内容二位、为搭建基于IBMRSA和Eclipse的开发平台,适合J2EE方向。软件开发案例分析中研究生将自己放在决策者的角度来思考项目所涉及到的具体问题,增强了学生的实际应对能力。新技术研讨促进学生或主动或被动地掌握了一些新兴技术,拓宽了技术领域。
2.校内软件开发实践采用项目驱动形式开展。要求研究生必须申报各类实际的软件开发项目,如四川省苗子工程、学校研究生科研创新项目、学院研究生科研创先项目。研究生可组织本科生参与项目实施,但必须任项目组长,在项目中担任核心角色,完成软件需求文档审定、软件架构设计、软件详细设计、大部分编码工作、测试方案制定等重要工作。
3.校外软件开发实践在上述环节经历后,研究生已经掌握中小规模软件开发的基本技能,此时将研究生派到实习基地,实战参与企业软件开发项目。其实践由校内导师和企业导师共同负责。前期技能的培养已保证研究生胜任企业中一般性的软件开发角色。
4.毕业设计研究生在校内和校外实践的36周中,还需要同时进行毕业设计的开题、实施。研究生可结合企业实习工作完成毕业设计。专业实践的考核分为定期汇报和实践环节结束汇报两种形式。研究生应每隔两个月集中汇报一次实习期工作心得,取得的成绩等。实践结束时在全院公开汇报,其成绩作为实践课程成绩。
三、结论
篇10
参考文献的写作要按照论文当中标注的先后依次用阿拉伯数字编码,用方括号标注序号,如果作者反复引用该文献,在论文当中用同一序号标注就可以了,关注学术参考网查看更多优秀的参考文献,下面是小编采编收集的关于数据库设计论文参考文献,希望可以帮助到大家。
数据库设计论文参考文献:
[1]谭怀远.让Oracle跑得更快2——基于海量数据的数据库设计与优化.电子工业出版社,2011.
[2]冯建华.数据库数据库系统设计与原理[M].清华大学出版社,2004.
[3]康诺利,何玉洁.数据库设计教程[M].机械工业出版社,2005.
[4]任巍.铁路巡检作业信息实时管理系统的数据库设计[J].信息与电脑(理论版).2015(02)
[5]谭峤.SQLServer数据库性能优化研究[J].硅谷.2014(08)
[6]林元彦.SQLServer数据库性能分析与优化[J].电子技术与软件工程.2013(17)
数据库设计论文参考文献:
[1]李金靖.浅析软件开发中的数据库设计的理论和实践[J].计算机光盘软件与应用,2011(15).
[2]曹志锦,王永梁.基于RS485的多级串行通信实验系统设计及应用[J].实验技术与管理,2002,19(5):65-67.
[3]李金靖.浅析软件开发中的数据库设计的理论和实践[J].计算机光盘软件与应用,2011(6).
[4]ThomasM.connolly.数据库设计教程[M].北京:机械工业出版社,2005.
[5]刘亚军.数据库设计与应用[M].北京:清华大学出版社,2007.
数据库设计论文参考文献:
[1]谢星星,朱婵.PowerDesigner系统分析与建模实战[M].北京:机械工业出版社,2015.5.
[2]李波,孙宪丽,关颖.PowerDesigner16从入门到精通[M].北京:清华大学出版社,2016.
[3]萨师煊,王珊.数据库系统概论[M].4版.北京:高等教育出版社,2006:55-77.
[4]郭东恩.数据库原理及应用[M].郑州:河南科学技术出版社,2008:31-160.