计算机软件论文汇总十篇

时间:2023-03-16 15:27:00

序论:好文章的创作是一个不断探索和完善的过程,我们为您推荐十篇计算机软件论文范例,希望它们能助您一臂之力,提升您的阅读品质,带来更深刻的阅读感受。

计算机软件论文

篇(1)

一、引言

你的电脑是否曾经提醒过你:您是盗版软件的受害者。但是对此提醒好像大部分的人都不以为然,甚至有的人觉得不仅不是受害者还是受益者。仔细计算一下你的电脑里的操作软件,有多少是盗版,盗版WindowsXP、盗版杀毒软件、盗版MicrosoftOffice……因为你享受了廉价的盗版软件带来的便利。可是你有没有想过自己侵犯了软件企业的权益。

2005年9月,西宁某公司未经北京北大方正电子有限公司许可,在其营业场所内的一台兼容机上安装了盗版的方正软件系统。西宁某厂在其营业场所的激光照排机主控制电脑上安装了方正软件系统,据调查,该软件信息窗口处有使用胶版作业的记录。2006年2月21日,北京北大方正电子有限公司以西宁某公司、西宁某厂的上述行为严重侵犯该公司的着作权为由,向西宁市中级人民法院提讼,请求西宁某公司和某厂停止侵权、赔礼道歉并赔偿经济损失。

QQ的软件着作权是由腾讯控股有限公司所有,然而教师陈寿福对QQ做出的多项改动得到了许多用户的喜爱。这些改动包括拦截正版QQ的广告,但他却为了自己牟利而在珊瑚虫版上捆绑了其他网络公司的一些广告和垃圾信息。腾迅最早在2002年就曾指控陈寿福侵犯其软件着作权,并警告后者停止传播珊瑚虫QQ。而陈寿福也有所行动。他设计出一种非侵入性的软件补丁让自己的程序成为独立的软件,并能够在同一台电脑上与腾迅QQ并列运行。但到了2003年,他又开始对外提供珊瑚虫QQ。到了2006年,面对珊瑚虫QQ受欢迎程度呈有增无减的趋势,腾迅以侵犯其软件着作权为由将陈寿福告上法庭,并索赔人民币50万元(折合6.8万美元)。这场官司以腾迅胜诉告终,法院判陈寿福赔偿腾迅10万元,而后者也服从判决缴纳了赔款。而2007年8月初,腾迅向其总部所在的深圳警方报案,8月16日陈寿福被拘留。腾迅所称,陈寿福侵犯了腾迅的着作权并以此非法牟利。目前,此案还未有定论。

二、计算机软件侵权的原因分析

1、软件登记不被重视

按照我国颁布实施的《计算机软件保护条例》的规定,软件着作权登记采取自愿原则,登记与否不影响其开发完成的软件着作权产生和软件着作权的商业运作。由于登记并不影响实际权利的享有,故很多企业认为软件是否进行登记并不重要。然而,登记最大的作用就是对权利的公示性。而且由于软件着作权程序不同于传统的着作权,其存在方式是以虚拟数据存储于计算机中,易丢失,因此,企业应加强对软件着作权的登记工作,可以减轻在侵权诉讼中的权属举证责任,也可以减少不必要的管理需要,降低企业的运营成本。

一方面,软件登记机关在软件着作权登记的具体工作中,按照我国保护软件知识产权的法律、法规,并参照有关软件技术标准,针对在软件登记申请中的法律关系和技术状态出现的“显而易见”的问题进行必要的审查,努力做到将软件着作权纠纷隐患消除在萌芽状态,以减少软件着作权纠纷;另一方面,企业在遭遇软件着作权侵权的情况下,作为软件着作权的权利人,有举证证明权利所有的义务。在软件着作权没有登记的情况下,企业需要将软件独立研发的原始资料全部以及研发的最初时间等呈现出来才能证明自己系正当权利人。而有时由于时间问题或企业对资料保管上存在缺漏,导致软件开发的原始资料丢失,此时要主张自己是软件着作权人,就比较困难,从而导致侵权诉讼的败诉。而在已经进行了软件着作权登记的情况下,由于登记的公示性,登记记载的着作权人无需对权利所属再行举证,举证责任转由对方提供相反的证据,从而降低了诉讼风险。

2、合同约定不够明确

软件着作权使用许可合同是指软件着作权人在软件着作权保护期内授权他人在合同规定的条件、范围和时间内使用其软件,并通过这种授权而获得报酬的合同。许可使用方式主要包括:独占许可、独家许可、普通许可。企业在签订软件着作权使用许可合同中易忽略对使用方式、使用的权利范围进行明确约定。如企业原本意图签订独占许可合同,而未对使用方式进行明确约定,使得软件着作权人又将该软件许可他人使用,导致企业支付了软件使用费后所生产的产品不具有市场独立性,失去竞争优势。另外对于约定使用的权利范围不明确,由于现行法律规定,在软件着作权使用许可中,对于合同中未作约定的权利,被许可方不得使用,故在软件着作权许可使用合同中,应对被许可的权利进行列明,否则很容易在使用过程中造成权利受限或构成侵权。

3、实质性权利保护遭遇忽略

《计算机软件保护条例》第十条规定:本条例对软件着作权的保护不延及开发软件所用的思想、处理过程、操作方法或数学概念等。因此,软件着作权的保护并不能制止以不同方式表达同一构思的实质侵权。对于以不同方式表达同一构思的实质侵权如何保护,目前企业界尚不明了。特别是在目前利用反向工程获取软件结构一般不认定为侵犯软件着作权的情况下,为防止此类侵权,企业应将用于特定产品的软件与企业硬件产品相结合,申请专利保护,软件一旦与产品硬件结合,在产品申请专利的情况下,对于软件也就可以通过专利进行保护。如此,对软件就可以达到强保护的目的。

4、保密措施不够严密软件反向工程是指将他人的目标代码程序利用反汇编、反编译软件使其还原为汇编代码的过程。虽然目前对于反向工程获取软件源代码的手段是否合法、合理问题理论界尚存在争论。但在我国司法实践中已经明确对于通过反向工程手段获得软件源代码的行为本身是不构成侵权的。但同时规定:“当事人以不正当手段知悉了他人的商业秘密后,又以反向工程为由主张获取行为合法的,不予支持。”这里实际指的是对软件作为商业秘密保护的阐述。但很多时候,企业软件通常作为产品推向市场,市场的公开化导致获取产品途径正当化,此时,要防止他人通过反向工程获取软件源代码的主要手段就只能通过技术加密行为来进行。我市目前软件企业产品推向公开化市场的并不多,主要是为特定企业定制软件,另外很多企业为自身生产的需要,也有自行开发的软件。对此,企业一要加强内部软件的保密度,尽量减少非正当途径获取软件的几率,同时也不能完全依赖于对软件的商业秘密保护。对于软件本身,更应当加强技术加密手段,即使在他人通过不正当途径获取软件时,增加其反向工程的难度,减少知识产权纠纷,降低企业软件开发投资风险。

5、法律保护亟待完善

目前对计算机软件保护模式主要包括专利保护、版权(着作权)、商业秘密保护、不正当竞争保护和商标保护。而在我国,主要通过《着作权法》实施对计算机软件的着作权保护,同时我国出台了专门的《计算机软件保护条例》,以专门立法的形式加强对计算机软件的保护。对于计算机软件的专利保护、商标保护,在我国的计算机软件保护体系中很少涉及。其中专利保护仅指我国专利局1993年的《专利审查指南》中的规定:涉及计算机程序本身或者数学方法本身的发明专利申请不能授予专利。同时又指出,如果一件含有计算机程序的发明专利申请的主题能够产生技术效果,构成一个完整的技术方案,就不能仅仅因为该专利申请含有计算机程序而不授予专利权。而商标保护是指软件产品商品化后通过注册商标防止盗版软件的发行、出售等。

三、计算机软件保护的对策

根据多宗计算机软件侵权案件的判例,再结合我国目前保护计算机软件各种法律的欠缺和不完善,在保护计算机软件方面应从以下方面注意。

1、重视软件登记,加强识别能力

软件使用包括企业自行研发的软件使用,也包括企业通过购买或被许可使用他人软件。对于企业自行研发的软件使用,需要注意的是,由于软件着作权的非唯一性,其他软件开发者通过独立研发可以研发出与权利人一致或基本相似的软件,两者之间的着作权并不冲突,可以同时并存。此时,企业要做好着作权备案登记工作或保存好原始开发资料,防止在使用过程中被他人指认侵权,做好软件登记工作,减少侵权诉讼风险。

对于企业购买他人软件使用过程中,主要是做好防盗版工作,如上所述,企业应通过正当途径购买软件,并保存好购买软件的正规发票。同时加强企业采购人员对正版和盗版软件的识别能力,降低企业经营风险。另外企业在签订软件许可使用合同中,应明确许可方式,签订保密条款,并明确被许可的权利范围、使用地域范围和使用期限,对于利用被许可软件再行开发出新成果的归属双方也可事先进行约定。

2、重视自我保护,加强软件加密

就企业软件管理而言,第一,加强对软件产品的保密工作,减少不必要人员的接触。第二,对于核心技术人员,因对于软件的基本原理、构思等并不受软件着作权的保护,因此,员工的流失必然存在对软件着作权实质侵权的威胁。因此,企业应尽量保证技术核心人员的稳定性。对其工作期间所开发的软件(包括自由开发软件)应明确约定归企业所有,并设立相应的奖励制度。

对于软件本身,第一,提高软件加密程度,增加反向工程获取软件源代码的难度;第二,对于能够与企业硬件产品结合的软件,尽量与产品一起申请专利保护。第三,对推向市场的软件产品申请注册商标,通过实施品牌战略加强对软件产品的保护。

3、重视法律维权,加强侵权举证

当企业不可避免地遭遇到计算机软件侵权纠纷时,如何适当地进行举证,成为诉讼胜败的关键点。企业遭遇侵权时,首先应当提供作为权利人的证据,软件着作权进行登记的重要性也就在这里体现了。由于登记的公示性,只要没有相反的证据,软件着作权的登记人就是理所当然的着作权人。对于没有登记的软件着作权,权利人可以提供软件源程序、软件首次开发完成的时间等证据证明自己是着作权人。其次,需要举证的就是侵权事实的存在。对于这一块举证,企业通常存在难度。因为一般侵权发生地都不在企业控制范围内,企业也没有相应的适当途径能够进入侵权地。对于盗版软件销售中侵权行为的取证,可采用三种方式。

公证取证方式,由权利人与公证机关工作人员一起作为购买者购买盗版软件,并就所购软件进行封存以及对整个购买过程进行公证。这样的公证,在民事侵权诉讼中,如果没有相反的证据,一般都能够得到确认。对于软件着作权侵权行为的公证取证中,应注意的是,由于计算机软件不同于其他着作权,通过一般的拍照、复制等公证保全方式有时并不能达到证据所应有的证明力,因此,在计算机侵权取证中,应尽量聘请专家或专业鉴定机构参与取证,增加证据的证明力;通过行政执法手段对侵权行为进行认定。在公证机关工作人员无法进入的侵权地,无法通过公证取证的方式进行证据收集,此时可通过版权局对侵权地进行查处,对于行政执法机构已经认定的侵权行为,在没有相反的证据情况下,法院都予以直接认定;申请法院进行证据保全,但申请证据保全一般应提供侵权存在的初步资料,否则法院一般不予采纳。

篇(2)

软件复用技术的提出成为消除这种危机的一种解决方案。近年来,特别是20世纪90年代以后,面向对象方法和技术成为主流的软件开发技术,使得软件复用被视为解决软件危机一条现实可行的途径。与此同时,模型构件技术、分布式系统、领域工程、自动生成技术又为软件复用注入了新的活力,本文对面向对象系统分析阶段软件复用模型进行了研究和探讨。

一、软件复用

软件复用的概念是在1968年NATO软件工程会议上被第一次引入的,在其后的几十年中,进行了许多复用技术的研究和实践活动,但因技术和非技术方面的种种因素,造成复用技术在整体上对软件产业的影响不尽人意。面向对象方法和技术的出现及成熟,为软件复用提供了强有力的技术支持,尤其是软件构件技术的发展为其注入了新的活力,使得软件复用研究重新成为热点,被视为解决软件危机、提高软件生产效率和质量的一个现实可行的途径,同时也成为了避免软件开发中重复劳动的解决方案,并在一定程度上降低了软件开发的费用。目前,软件复用技术主要从两个方面来考虑:产品复用、过程复用。

产品复用:所谓产品复用是指复用已有的软件产品。目前基于构件的和面向服务的软件开发模式就是建立在这种软件复用的基础上的。这两种开发模式主要通过对现有的构件和服务进行合成或集成,从而生成所需要软件的过程。产品的复用是目前软件复用技术研究的焦点,在这个复用的过程中涉及到的关键技术是构件技术和软件架构技术,在成熟的构件和架构的技术上,可以使产品复用达到良好的效果。

二、面向对象系统分析(OOA)阶段软件复用模型

1.OOA阶段可重用性的本质

编程阶段不同类型的编程软件和类有不同深度的可重用性:高深度、中深度、低深度。

所谓高深度重用是指在不进行任何改变就可以直接使用重用产品的重用,像可视化开发工具中的所有控件,就属于这方面的重用;目前,面向服务的软件开发技术中对服务的重用,只要程序员获得服务者提供的接口,就可以直接使用别人开发的产品,这种复用也是高深度的复用技术,因此高深度的软件复用,可重用性最好;所谓中深度的重用,程序员可以根据自己的开发经验,开发出一些比较通用的组件,在具体的使用中,对这些通用的组件只要稍作修改就可以应用于具体的项目中去,这种复用可重用性较好。当然,对于低深度的可重用性就于具体的项目相关,它只能局限于该项目,可重用性最差。由此可见,可重用性与业务逻辑的相关性是成反比例关系的:越是与业务逻辑无关的重用,重用性越好;反之则越差。

2.OOA阶段软件复用模型研究

OOA阶段的软件复用,在一定程度上可以说是建立在许多优秀的系统分析员实践和经验基础之上的复用,是一种思想上的复用。在这个阶段的软件复用更具有通用性和重用性,因此,构造这个阶段的软件复用模型,可以使复用达到更好地效果。

3.范式抽象

所谓范式就是抽象的解决方案模板,它可在不同具体项目中使用。范式抽象就是在此基础上提出的对范式的设计方法。针对不同的问题域,就应该有与之对应的设计方法,这样可以使范式的设计达到很高的重用性。针对OOA阶段具体现状,有三种范式抽象方法:

(1)关系抽象

在OOA阶段,针对具体的项目,会分析出大量的关系模型。例如在学校排课表系统中,需要定义教师类,它包括教师姓名、性别、职称等有关教师的基本信息,同时,为了便于教师很快得出自己的上课表,还需要定义一个与教师对应的教师课表类,这个类显示了一周中教师的课程安排情况;在网上购物系统中,需要定义一个购物者类,包括了购物者的相关信息,同时为了得到购物者所购的物品,还需定义一个购物车类,该类描述了购物者与所购买的物品的对应关系。这两个系统的具体业务是不同的,但教师类与教师课表类、购物者类与购物车类的关系却是基本相同的,都是一个实体对另一个实体的拥有关系,同样,所进行的操作也基本相同,诸如都涉及到对所拥有实体的查询操作等。因此可将这种关系抽象出来,定义为拥有关系,然后在此关系的基础上定义相应的操作。这种关系就可以以范式的形式保存起来,在不同的项目中都可重用这种范式。同样,还可抽象出许多其他的关系范式,如实体——内容关系,上下级关系等。这些关系都是不依赖于具体的项目和业务的,可重复使用,只是在针对具体的业务时,在相关属性和方法上稍作修改就可以了。

(2)相似对象抽象

在不同项目的OOA阶段,还会分析出大量的相似对象或类,例如用户、用户组、角色、权限等在所有涉及到权限管理的系统中都会出现这类对象;在一些相同领域的项目中,由于涉及的领域的标准化,有些对象的相似性以及相同的机率会更大。对于这些相似程度如此大的对象来说,由于其在项目开发中的相对独立性,把这些对象模型以范式的形式保存起来会使分析的结果得到更大的重用。

按照上述思想进行的范式抽象称为相似对象抽象,这种抽象依据的是分析阶段的对象模型,这种对象模型具有独立的、高度的相似性,抽象出来的范式可称为对象范式。这种范式与具体项目之间的相似可称为表面相似性。表面相似越接近,范式的重用性就越大。

(3)领域抽象

所谓领域抽象是用于某一领域的抽象问题的解决方案。在同一个领域的项目开发过程中往往能够总结出更多的相似性,包括关系相似性和表面相似性,将二者相结合,可构建出与行业有关的构件。这种构件是建立在具体领域上的一种抽象,称为领域抽象。领域抽象的过程可借助领域工程的知识和方法。其中在OOA阶段主要用到了领域分析的方法。所谓领域分析是被称为领域工程更大的学科中的第一项技术活动。当业务、系统或产品域被定义为长期的业务策略,则可以展开持续的创建强健的可复用库的工作,其目标是能够在领域中以非常高的可复用构件率来创建软件。领域分析在领域抽象过程的作用是从OOA得出的对象、关系、行为模型的抽象出与领域相关的领域范式,其中包括关系范式、相似对象范式和处理过程范式等。这些范式与前面提到的范式唯一不同就是有了特定领域的标识,这在同一领域的开发中将达到高度的重用性。

三、总结

本文通过对软件复用技术的分析,提出了一种面向对象系统分析阶段软件复用的模型,并对此模型中所涉及到范式抽象方法做了探讨,并把它们应用于具体的项目中去,从而很好地利用的设计思想,大大提高了项目的完成速度。另外,对于范式库的研究也为建立在高层上的软件复用库管理提出了新的研究课题:例如对于编码阶段复用构件库的检索条件也可以扩展为以范式为索引的检索等。这些都成为下一步的研究课题。

[参考文献]

[1]RogerS•Pressman著,黄柏素、梅宏译:《软件工程实践者的研究方法》,机械工业出版社1999年版。

[2]黄靖、赵海光:《软件复用,软件合成与软件集成》,《计算机应用研究》2004年。

篇(3)

人们运用互联网的人数越来越多,互联网已经普及,为了能够合理的解决网络平台的不同步问题,实现网络平台的互操作,中间件技术应运而生,其作为一种新型的软件,能够在网络环境下,能够将系统软件和应用软件良好的结合在一起,其性质是一种分布式软件,能够解决网络平台不同步的问题,能够使应用系统实现转移的效果,而且,现在互联网技术发展迅速,中间件的使用也越来越明确,中间件能够使计算机软件朝着更加集中的应用方式转变,能够支持系统软件的运行,而且,中间件能够对高级软件的工作起到支持的作用,中间件在系统软件和应用软件之间起到了良好的统一作用,便于软件的开发。中间件技术已经成为用户的主要需求,其种类也非常多,主要有数据访问、远程、事务处理等作用,而且其面对的对象也是非常广泛的,其可以在系统软件和应用软件之间形成一种互动的机制,能够实现各类软件的通讯,能够高效地在不同的异构之间传递信息,现在,我国使用的中间件主要有微软公司的COM,其具有良好的开放性和兼容性,能够在不同品牌的计算机上使用,在不同的异构环境之间都可以使用。软件的产业模式在更新,软件的研发都是以客户的需求为根本的,WWW由之前的两个体系变成了三个体系,中间件也能够在互联网之间连接,现在又研发了一种新的中间件,WEBSERVICES产生,其能够结合不同公司的中间件的功能,具有更好的开放性,并且具有查询的功能,运用编程语言,完善了操作系统,实现了一种开放、动态的模式。

1.2网络计算

网络计算与传统的计算机技术相比较,其可以使不同类型的服务器统一起来,都连接在统一的网络上,其网络结构更加完善,能够为社会和机构提供一体化的服务,提供高性能的计算能力,能够形成大型的数据库,具有可视化的功能。网络计算将计算机硬件有机地统一在一起,并且实现了网页的有机统一,能够将储存的信息、软件资源、信息和数据等联结在一起,便于对资源的统一管理,用户可以自主地选择网络上的资源进行使用,而且信息比较透明,他们可以根据自己的需要进行搜索,无需在多个网站中搜索,为用户提供了高效、透明、系统、安全的资源共享系统。

2我国计算机软件发展的挑战

2.1国际金融危机对我国的软件市场带来了冲击

当前,国际上一些发达的国家也受到金融危机的影响,其经济在下滑,在全球范围内,软件市场的前景不是特别乐观,造成我国的软件市场也受到一定的影响,导致我国软件市场的发展延缓。

2.2国内软件市场的竞争日益严峻

我国很多软件研发的跨国公司在国外的经营效果并不好,这使得他们在极力地扩大国内市场,这就导致了我国的软件市场压力过大。

3我国软件技术发展趋势

我国的物联网技术正在发展,成为了我国的一种新型的战略化的产业,物联网发展能够起到一定的示范作用,能够促进我国各类产业的发展。我国的基础类软件发展比较迅速,实现了网络化、可信化与智能化软件的研发,我国的工业软件和嵌入式软件在广泛地研发,国家正在借助信息技术产业实现各类工业的发展,使信息技术能够带动我国工业的发展。我国进入了云计算时代,云计算为用户提供了一种虚拟的网络环境,提高了用户的工作效率,云计算也将应用于各类产业,促进我国工业的发展。

篇(4)

2用户方面

⑴养成计算机软件维护的意识。对于多用户而言,计算机软件的维护似乎没有什么实际意义,只要不影响到自己的工作,没有必要去进行维护。⑵安装防护能力强的杀毒软件。为了保证计算机软件的安全运行,安装防护能力较强的杀毒软件是必要的。⑶经常清理计算机内存。计算机内存过多也会影响软件的安全性和运行效率,因而要定期进行计算机内存清理。对计算机内存进行清理包括对无用文件的清理,也包括对非常用软件的清理,尤其要注意的是要尽量减少C盘的储存数据。⑷经常对硬盘进行维护。对硬盘进行维护能减少垃圾数据对软件的影响,维护硬盘主要在于:第一,定期对硬盘进行扫描、清理、木马查杀等,清理废弃的数据,减少对内存的占用。第二,要注意对重要文件进行备份,减少计算机风险。⑸养成文明上网的习惯。第一,不浏览不健康的网站,减少电脑接触病毒的机会。第二,不打开来路不明的链接地址。第三,不进行“翻墙”行为,减少恶意木马的攻击。

3计算机软件工程维护中需注意的问题

3.1促进软件开发者和用户的合作维护并不是某一方的工作,而是软件开发者和用户共同的课题。作为软件开发者,应该不断改进技术,在提高软件使用性能的同时加强对软件防护性技术的探索。作为用户,应该在计算机使用过程中养成良好的软件维护意识,并将工作过程中出现的问题反馈给计算机软件开发者,以便在后期开发中改进相应技术。

3.2加强对相关软件维护知识的宣传为了提高用户的计算机维护技术,应该加强维护知识的宣传。首先,经营商应在用户购买电脑时给予详细的讲解,让用户意识到软件维护的重要性。第二,开发者应制订详细的维护说明书,减少用户的疑惑。第三,网络管理者可以在相应电脑界面给出维护建议,提醒用户及时对电脑进行维护。

篇(5)

我们知道,之所以进行计算机软件开发,主要目的在于通过更加高效便捷的软件设计方便用户的使用,所以从这个层面上来看,软件的应用性是衡量其质量的重要参考标准。基于这一因素,计算机软件开发首先要考虑的就是增加使用的便捷性,其次要兼具可扩展性、安全性、可维护性以及稳定性等特性。根据笔者的工作经验来看,有些软件在设计时就是没有考虑到这一因素,导致好的设计却缺乏广泛的使用市场。其次,伴随着计算机软件更新换代速度的加快,软件在开发设计时还应该考虑到版本兼容的问题,同时还要拥有数据自动恢复的功能,只有这样,才能够占据更高的市场份额,也才能够进一步推广使用。

2计算机软件开发应用的具体表现形式

全球化经济的发展推动了互联网技术与产品的应用,计算机软件作为科技时代的产物能够缩短人们之间的距离,实现资源共享,也为实时互动交流提供了可能。正是基于这些功能,计算机软件才能在保持多个用户独立性的前提下实现统一连接,通过更加宽广的数据分析处理平台的提供,使人们的使用与操作更加高效便捷,推动了数据时代的到来。除此之外,计算机软件开发技术通常还与信息处理设备、移动通信设备联合使用,真正做到便捷用户操作的应用性。

二计算机软件开发技术的未来发展趋势

1计算机软件开发的网络化与智能化趋势

随着信息化时代的到来与个人计算机的普及,网络化也成为不可逆转的计算机软件的发展潮流与趋势。互联网的发展使得世界各国之间的距离不断拉近,不同国家之间人们的信息交流与共享也推动了网络化的进一步发展。只有基于网络化发展方向,计算机软件才能为世界各国的人们提供更加便捷的、优质的信息服务。而人工智能技术已经被应用于了社会生活的各个方面,也取得了新的进展与更广泛的应用。随着人们对计算机软件需求的不断提升,计算机软件的智能化方向也是不可逆转的必然趋势。从宏观角度来看计算机软件开发技术的智能化进程的推进,对于整个现代化计算机时代的发展具有重要的意义。

2计算机软件开发的开放化和融合化趋势

计算机软件的开放化趋势也是不可避免的,所指是用于软件开发的软件源代码以及软件产品的设计标准等进一步公开化,并通过共享促进软件开发人员之间的交流与创新。软件开发是一项需要创新思维的工作,行业人员之间通过互相交流与学习达到共同进步,也有助于产业的发展与提升,并逐步走向成熟。计算机软件开发的融合是指软件开发科学与其他相关科学如电气化、自动化以及机械化等相融合,并融入网络化、数字化以及智能化等计算机核心理念与技术,实现计算机软件开发产业整体水平与市场竞争力的提升,从而能够占据更高的市场份额,也造福于广大计算机软件用户。而随着计算机软件更加贴近人们的日常生活,计算机软件的开发也更加以客户的需求为主,所展现与提供的优质服务也是智能化与融合化的必然结果。

篇(6)

二、影响软件维护的要素分析

(一)设计团队的变化:很多软件设计团队,在完成了一项软件设计的时,会解散该团队,很快各自都找到新的团队,开展新的软件设计工作。原本对该软件设计有所了解的成员逐渐离开了团队,随着人员的不断变动,到最后余下的员工很可能对该软件最初开发的目的、方法都不是很了解,导致该软件无法在后期得到修复和完善,最终导致报废。这样不仅会浪费大量的人力、财力、物力,同时也会给新的工作团队平添工作量。

(二)用户的需求:在最初签订软件的开发和修改合同的时候,维护人员和客户没有进行很好的沟通,没有很好的了解顾客的需求,导致在后期的修改当中,很多设计人员按照自己的意思来对软件进行修改,和客户的需求根本不相符。

(三)隐性错误:很多维护软件的工作者,在对软件进行维护的时候,会在软件的内部加入一些隐性的风险,降低了软件的整体质量。(四)团队素质:一个团队素质的高低,同样也对软件维护的质量到很大的影响。员工是否具有软件维护的专业技能,能否解决顾客提出的各种问题。该团队是否是属于急功近利型,一味追求经济利益,而忽略了质量的追求等等,都是需要考虑的因素。

三、软件维护的策略

对软件的维护,主要分为九个主要的步骤。首先要仔细阅读客户对自己软件提出的需求说明,在了解客户需求的基础上,来针对问题软件继续拧修改设计,列出设计方案进行评审,评审通过后,开始重新编码,然后进行单位测试、集成测试、回归测试这三项测试,待测试完成之后,确认测试,最后在一次进行评审。对软件的维护工作,不能大意,因此应有一只专门团队来对软件进行维护,且在团队内部要明确每一个成员的工作任务和责任,避免资源的重复利用和未充分利用。在接受客户需求时,要为客户发一张需求登记表,客户在该表上填写软件出现的问题,包括问题的具体类别,希望通过修改达到的效果,软件运行的平台,出现问题的场合和时间等。在对软件进行修改和完善的过程中,要仔细分析源编码设计的原理、习惯,对其进行遵守,不要轻易地更改,以保证软件在修改前后能够保持和谐。若是一个客户提出了多个维护的需求,可以更具需求等级的高低,对其进行顺序的划分。在修改该软件之前,要对该软件进行备份处理,在软件完成修改之后,要对软件进行及时地调试,最后开会对该软件进行评议,并且做出总结,从本次软件的修改当中,能够收获成功的经验,同时也能吸取失败的教训。软件的修改人员之间要互相交流和分享彼此的经验。若是软件修改的幅度比较大,修改人员应当针对自己修改的情况制定一个修改的说明书,具体说明修改了哪些部分,被修改之后的软件如何使用和进行日常的维护。除了编写说明手册之外,还可以编写参考手册。针对该软件可能会发生的错误情况进行预测,并在该手册中写出会出现的情况,具体解决办法。注意该语言的运用要通俗易懂,因为很多客户并不具备很多的计算机专业知识。在对该软件完成维护之后,要进行回归测试,测试圆满完成后,可交给客户去使用。一个软件,在进行了多次修改和完善之后,其维护性就会逐渐降低,当其降低到一个最低程度时,再一次修改已无法满足客户提出的需求,因此应当放弃该软件,重新根据客户需求开发新的软件。

四、软件维护的副作用

对软件进行反复的修改和完善,虽然可以满足客户提出的不同需求,但是其自身也有一定的风险。因为从理论上来说,在每一次对软件进行修改的同时,都增加了错误发生的可能性。对该错误的发现,可以通过文档的设计和最后的回归测试来解决,但是仍然不能忽视一个问题,就是维护软件会产生的负面效果。其主要表现在如下的几个方面:代码修改:对代码的修改一定要谨慎,不到逼不得已,尽量不要修改。因为一个看似很简单的代码修改工作,就可能对整个软件产生很大的影响,影响可能大到整个软件无法正常运行。虽然副作用有大有小,但是不可否认的是,对代码进行修改很可能就会产生一些错误,而正是由于这些看似很小的错误,导致软件质量的下降。因此,在代码修改过程中,一定要贯彻一个法则,即Murphy法则。数据结构的修改:在修改软件过程中,会不可避免地对数据结构也进行一定的修改。数据结构在整个软件中,占据很重要的地位。因此在对其进行维护的时候,需要对立面的部分要素进行完善,完善过后的软件可能无法再适应现有的数据,导致其在日后的运行出现错误。这就需要软件维护者,在设计文档的时候小心谨慎,降低数据修改带来的风险。

篇(7)

通常来讲,分层是指将属性不同的物质放置到不同层面,从而使物质之间顺利隔开。计算机软件分层技术主要是指将不同设计方案通过分层的方法实现对计算机的不同控制,从而满足不同的功能需求。其中,不同层级之间形成了一个完整的系统,每一层级在级别上是平等的。计算机软件开发分层技术主要应用于软件构架设计,软件构建最初呈单层结构且该结构以相关的编程技术和数据库结构作为基础。然而,随着信息技术的不断发展,计算机广泛普及到千家万户,传统的单层结构已经远远不能满足人们的需要,因此软件分层结构开始在我国大力推广。应用计算机软件分层技术,可以有效实现软件结构分层,从而使软件功能越来越强大,充分满足用户的需求。

1.2计算机软件分层技术优点

目前,计算机软件分层技术在我国得到了较为广泛的应用,该技术开始逐步完善,使我国网络技术得到了更快的发展。将计算机软件分层技术应用到软件开发领域,不仅可以有效保障新开发软件的安全和质量,也可以有效缩短软件开发周期,从而减少了软件开发过程中的浪费,有利于软件企业节约成本,提高经济效益。计算机软件分层技术的一大优点就是可以有效实现构件循环利用,这样既节省了软件开发时间,又有利于软件开发事业的进一步发展。一般来说,应用软件分层技术可以将构件分为低层次和高层次两大类,低层次构件的应用相对较为广泛,一般来说,在不同层次软件构架中都会得到应用。相对来说,高层次构件应用存在一定局限性,只有在某些特定功能模块才会得到应用。应用计算机软件分层技术,可以将软件功能进行逐一分层,不同功能层次之间共同构成了完整的软件系统。计算机软件分层技术大大地改善了软件的结构和功能,使软件在保持相对独立性的同时具有一定的灵活性和可变性,因而这一技术值得应用推广。

2软件开发中的分层技术探讨

2.1双层结构技术

一般来说,双层结构指的是客户端及服务器作为构架形成的双层数据库系统,其中,客户端用于为用户提供可视化界面,可以有效处理计算机之间的部分逻辑关系,服务器可以有效实现数据的查询和计算,并能及时向用户反馈相关数据的处理结果。通常来讲,双层结构技术对于用户较少的情况较为适用,可以有效处理不同计算机之间的相互逻辑关系。然而,对于用户较多的情况,计算机对于数据处理就会不及时,容易导致运行迟缓、容易出错和费用较高等一系列问题,同时也不利于数据传输的安全,因此,应用软件分层技术对计算机软件进一步开发才能解决上述问题。

2.2三层结构技术

基于双层结构技术的局限性,进一步开发了三层结构技术。三层结构技术主要是对双层构架进行一定程度上的拓展和延伸,使构架分层更为清晰,各分层之间相互独立又相互联系,共同促进软件系统功能的完善。与双层结构技术不同,三层结构技术奖服务器分为应用服务器及数据服务器两大类,应用服务器可以有效处理各数据之间的逻辑关系,而数据服务器只需要对数据进行相关处理即可。三层结构技术客户端不再处理计算机之间的部分逻辑关系,而是集中进行可视化服务,从而有效真正实现人机互动。三层结构技术一般包括界面层、数据层及业务处理层三个层面的软件结构,各软件结构之间相互协调,共同促进软件功能的优化。界面层主要面对广大用户,并将用户的需求数据送至业务处理层进行业务处理,业务处理层能够实现对数据的有效分析及处理,并将数据处理结果输送至数据层,数据层接收到业务处理层的相关信息之后就会对数据进行相关的查询和处理,并及时反馈到业务处理层,并进一步反馈到界面层,三个不同界面层次相互独立又相互联系,共同促进了数据处理工作的顺利进行,有效提高了软件系统的功能。由此可见,三层结构技术较双层结构技术更有其优越性,目前我国采用三层结构技术和双层结构技术配合使用的方法,可以有效控制成本。

2.3四层结构技术

随着用户量的不断增加,人们对计算机软件性能的要求也越来越高,而软件运行环境越来越趋于复杂化,计算机软件需要进行大量数据的处理,三级结构技术因其各模块之间具有一定的相互影响,难以保障数据数据的更精确、更快速,因此,四层结构技术应运而生。四层结构技术可以使界面层、业务处理层及界面层各层次之间更为相互独立,从而使数据处理工作更高效、更快捷。通常来讲,四层结构技术在三级结构技术的基础上增加了储存层,可以有效实现对数据的分类、储存及修改等功能。四层结构技术的界面层包括两种形式,一种主要包括JSP页面,其结构相对来说较为简单,可以直接将用户所需要的数据进行查询,并及时反馈,然而该种模式不利于系统的升级和维护,因而不利于大型系统开发。第二种界面模式以MVC结构为基础,非常有利于较为复杂软件系统的开发。四层结构技术目前来说发展还不成熟,在我国应用还不广泛,但是随着科学技术的不断发展,四层结构技术终将取代三层结构技术的地位,成为我国软件开发设计的主流。

2.4五层结构技术

四层结构技术可以有效实现对数据精确处理,然而对于某些特定功能的实现却显得无能为力,因此,五层结构技术应运而生。五层结构技术在四层结构的基础上,将数据层分解成资源层和集成层两大模块,集成层可以有效实现对用户需求数据的处理,从而便于用户持久性访问,资源层可以起到数据库的相关功能。相对于四层结构技术,五层结构技术对于数据的处理功能更进一步完善,然而五层结构技术的应用存在一定局限性,只有为实现特定功能才能使用,因此还不能大力推广应用。

篇(8)

逻辑最早是哲学中的词汇,在古希腊时期,很多哲学家在辩论的过程中,为了可以说服对方,自己的思路必须清晰,符合人们正常的思维,逐渐的形成了逻辑语言的概念,随着数学理论的发展,要想解决特定的问题,必须进行相应的推理和证明,而推理的过程中,就要使用逻辑语言,这样推理才能够符合人的思维。计算机的出现,对于科技的发展来说,是革命性的,很多人将计算机作为第三次科技革命的标志,通过计算机的使用,不但改变了人们的生活习惯,同时也在很大程度上提高了工程的效率,而计算机是在数学模型的基础上,因此控制计算机工作的软件,也必须具有一定的逻辑性。在计算机出现的早期,受到计算机性能等影响,程序的编写还采用二进制的机器语言进行,这种0和1组成的二进制语言,在编写的过程中,必须具有一定的逻辑性,计算机才能够去运行,现在程序的编写已经采用高级语言,如JAVA和C语言等,利用这些语言进行程序的编写时,逻辑关系的体现更加重要。

1.2逻辑语言的特点

从语言学上来看,语言主要可以分成三种,分别是自然语言、带符号的数学语言、以及形式化的逻辑语言,逻辑语言的出现,主要是因为逻辑学发展的需要,古时候受到知识水平的限制,人们在讨论问题时,经常会发生一些争执,为了解决这种争执,人们希望能够建立像数学那样完美,具有特定符号的语言,这就是逻辑语言。与其他的语言相比,逻辑语言具有很高的严谨性,这种语言将逻辑推理,转化成为了数学语言,在遇到具体的问题时,就可以利用这种没有歧义、严谨的语言,通过计算的方式,来解决这个问题,随着逻辑语言自身的发展,在解决实际问题时,人们首先会建立一个数学模型,然后采用数学的方式进行求解,极大的提高了解决问题的效率。由此可以看出,逻辑语言的特点是严谨性和普遍性,能够用来描述所有的问题,而且在这个过程中,不会出现任何的歧义,现代计算机软件的发展,很大程度上就是建立在逻辑语言的基础上,通过实际的分析可以知道,每个程序都是一个数学模型,而描述这个模型的就是逻辑语言。

1.3逻辑语言的发展

从语言的三种形式可以看出,其发展也可以分成三个阶段,首先是自然语言,在人类文明的初期,受到科学技术上的限制,人们的思维还不是很严谨,因此表达比较随便,采用自然语言进行交流,现在的日常生活中,依然使用这种语言,随着自然科学的发展,语言开始分为书面语和口语,在对科学进行描述时,主要采用书面语进行,这种表达方式具有一定的特殊性,尤其是在数学科学中,需要加入一些常用的符号,逐渐的形成了数学语言。逻辑语言的出现,是数学语言发展的结果,但是在逻辑语言刚出现时,主要建立在理论的基础上,很难在现实中使用,计算机是逻辑语言实践的结果,通过数学二进制和实际电路的结合,就可以利用逻辑语言来解决实际问题,计算机程序的出现,使得逻辑语言发展到了一个新的高度,在程序设计中,考虑到计算机的严谨性,必须采用逻辑语言进行。

2计算机软件开发的现状

2.1我国计算机软件开发的现状

通过实际的调查发现,目前我国计算机软件开发能力较低,现在使用的软件,很多都是国外软件公司开发的,虽然近年来随着国家的重视,加大了对软件公司的鼓励和扶持,在很大程度上促进了我国软件技术的发展,我国软件产业出现了一个黄金期,但是受到盗版市场等影响,很多软件公司的产品没有市场,导致现在我国还没有大型的软件公司。印度是现在世界上软件产业先进的国家之一,其在发展的过程中,也遇到了和我国一样的问题,但是在政府强硬的打压下,盗版市场得到了控制,为软件公司的发展,提供了一个良好的环境,我国与印度的国情相近,为了促进我国软件产业的发展,借鉴了其成功的经验,近几年政府部门出台了很多政策法规,对盗版进行严格的控制,在一定程度上改善了我国软件行业的环境。但是计算机软件行业经过了多年的发展,已经形成了良好的产业链,核心的软件技术都掌握在西方国家手中,我国要想发展自己的软件产业,面临的难度较大,而受到我国教育水平的影响,软件开发人员的整体水平较低,在很大程度上限制了我国计算机软件开发水平的提高。

2.2影响计算机软件开发的因素

在实际的计算机软件开发中,首先要进行需求分析,在计算机软件出现的早期,受到计算机性能的限制,软件都比较简单,只是进行一些简单的数学计算,因此不需要进行需求的分析,程序的编写都具有一定的针对性,人们遇到实际问题时,编写一个程序,来解决这个问题,由于计算机没有存储设备,程序无法进行存储,再遇到这个问题时,还要进行程序的编写。随着软件技术的发展,计算机语言得到了很大的进步,在传统的0和1二进制语言中,软件的编写非常复杂,为了方便软件的开发,人们对计算机语言进行了改进,把难理解的汇编语言等低级语言,变成了易懂的高级语言,同时软件的应用也有了很大的进步,要想满足不同领域的需求,软件自身也变得越来越复杂。由此可以看出,影响计算机软件开发的因素有很多,需求分析的效果、计算机语言等,都能够对软件的开发造成很大的影响,尤其是计算机语言的使用,现在的软件为了获得一定的市场,都会增加自身的功能,导致其体积越来越大,根据软件开发的实际情况,都会分成几个模块,要想让软件具有良好的可维护性、易读性等,必须采用严谨的逻辑语言。

3基于逻辑语言的计算机软件开发分析

3.1逻辑语言的表现形式

逻辑语言作为一种理论性的语言,如何使用这门语言解决实际问题,一直都是人们研究的重点,受到技术条件的限制,这个想法没有实现,随着科学的进步,物理学家们根据数学家的设想,制作出了现代电子计算机,从本质上来说,计算机自身就是一个数学模型,而这种模型就采用逻辑语言来描述,通过电路的通和不通两种状态,将数学二进制很好的联系起来。这样就可以利用逻辑语言来解决实际问题,计算机在应用的过程中,根据不同领域的实际需要,针对性的开发了应用软件,因此计算机的应用就是软件的应用,而在软件的开发,就是将计算机语言,按照一定的逻辑关系进行排列,然后计算机按照程序的指令,一步一步的去执行。由此可以看出,软件程序其实就是逻辑语言的表现形式,在计算机刚出现时,程序的编写比较简单,通常都是由几个指令构成,可以不考虑语句之间的逻辑关系,但是现在的程序非常复杂,很多软件占用的空间达到了GB的级别,这样复杂软件的开发,要考虑维护性和易读性等,因此必须具有清晰的逻辑关系。

3.2逻辑语言的使用

现在的软件开发中,主要采用C语言等高级语言进行编写,由于软件要实现不同的功能,因此在实际的设计中,人们根据具体的功能,将软件分成了相应的模块,每个模块实现软件的一个功能,然后设立一个主程序,通过特定的扫描机制,在需要哪个功能时,就调用相应的模块,这样程序可以很简单的实现维护等操作。计算机是以数学为基础,具有很高的严谨性,在程序编写时,如果一个语句出现错误,就会导致整个软件无法执行,因此在实际的开发过程中,必须采用严谨的逻辑语言进行,只有这样才能够确保程序可以被执行,通过实际的调查发现,现在的编程软件功能非常完善,在程序编写完成之后,可以进行相应的编译和运行,如果程序存在问题,就无法完成编译,编程软件会提出出错的位置,如果是命令的拼写错误,很好进行修改,如果是逻辑关系出现了错误,那么修改就比较困难,如果采用逻辑语言进行编写,就可以在很大程度上避免逻辑关系错误的问题。

篇(9)

2软件开发分层技术应用分析

2.1两层和三层结构技术两层结构的计算机软件是由数据库的服务器和客户端共同组成,其中客户端主要是面向客户的服务界面,其功能为逻辑处理、显示服务器的指令以及供客户对服务器进行查询。这种逻辑结构被称为胖客户,一旦客户数量增加,客户端不能进行相应的扩展。同时,这种逻辑结构不能进行良好的交互,维护成本比较高,存在一定的安全风险。随着计算机技术的发展,大型计算机系统需要更加复杂的软件结构,两层和三层结构的应用系统出现。两层和三层结构的软件,主要由客户端、应用服务器和数据服务器构成,提供人机交互、数据访问、数据存储和优化,服务器和应用程序服务器可以实现逻辑服务,大大降低了客户端的负担,被称为瘦客户端。通过三层的C/S结构可以实现程序的应用目的,并向数据层提出数据请求。相对于二层结构来说,三层结构技术可以有效降低客户端和服务器之间的网络负荷。同时,三层结构技术具有可重用性、强扩展性、安全性和易维护性。如果客户端用户数量不多,两层结构更具有优势,所以计算机软件开发人员,应该依据实际的需要,采用适合的软件结构。

2.2四层技术随着计算机和网络技术的进步,应用软件的计算环境也发生变化,所需要处理的数据和逻辑变得更加复杂。在软件实际编程过程中,数据处理更加迅速、计算更加准确、逻辑更加复杂。三层结构软件技术在拓展性、安全性方面具有优势,但不能实现三个技术的彼此独立,也不能满足Web技术的计算要求。在这样的背景下,就需要在三层结构的数据层和逻辑层之间增加封装层,形成四层结构技术。四层结构技术由存储层、业务层、数据层和Web层构成,其中Web层是依据客户的需要选择适当的处理方式。如果用户需要少的结构,Web层就向数据处理层直接发送信息,以满足数据处理层的表达需求。如果用户需要较多的结构,Web层通过大量的数据和信息分析,改进各方面的工作效率,以此满足大规模的数据需求,实现网络层业务的逻辑处理。在技术架构方面,虽然四层结构技术尚不成熟,但在未来将取代三层结构软件,成为计算机软件开发架构的主流形式。

3中间件技术伴

随不同的软件开发技术的发展,系统中的中间件数量不断增加。目前,中间件技术在交通、金融和邮电等领域得到广泛应用。MOM分层技术作为中间件技术的一种,被广泛地应用于各种中间件的开发中。该技术不仅具有一般中间件技术的优点,还具有异步传送的优点。当对应用消息列队中的中间件进行编程的时候,MOM分层技术可以将信息同步传输,更加安全、可靠。中间件技术可以实现不同区域之间的信息通讯,简化软件的开发形式。用户只需将消息交给对的管理器,无需关心数据的丢失和数据的传输问题。因此,中间件技术可以克服软件间结构不同带来的问题,兼容各种发展的开发技术,满足用户需求。

篇(10)

2浅谈软件工程的发展

根据相关文献以及研究学者的研究报告信息资料等得知,软件工程的发展大致经历过以下三个时代,分别为程序设计时代、软件时代、软件工程时代。另外,软件工程生产如同建筑工程生产活动一样也会经历以下阶段,即定义阶段、开发阶段、维护阶段等。此外,软件工程相较于其他工程学科而言存在着以下不同点,例如:建筑工程活动中,当设计图纸出现后,几乎不存在回溯的问题,而在软件工程活动中,每一阶段将会面临多次修改,并且还会产生多次回溯问题,除此之外,软件生产开发之后,其还会面临着运行维护问题,如果用户要求发生变更,则相应的对软件应用进行开发与修改。

3探讨计算机软件开发的相关方法

由于计算机软件开发活动具有一定的复杂性与繁琐性,其开发质量均与其每一步骤相关,因此,为了保障应用软件系统的开发质量,则需要严格按照相关步骤要求来进行,首先拥有清晰的思路,并且遵照相关原则来进行开发、生产,与此同时,还需要采用相应的软件开发方法、图示等进行,另外,在对软件工程进行开发活动的时候,相关软件开发工程师以及工作人员需要保持高度统一、协调,从而为应用开发软件提供有力保障。通过经验的积累结果得知,当前应用软件的开发方法有以下三种,例如:原型化方法、软件生命周期法、自动形式的系统开发方法等,该文以下将应用软件开发的相关方法逐一介绍与分析:1)关于软件开发的原型化方法分析当软件开发工程师以及工作人员对相关定义以及处理算法没有进行确定,并且不了解该软件操作系统的适用性以及人机界面形态等情况下,则需要通过原型化方法来对软件进行开发与生产。2)关于软件开发的生命周期法分析首先,相关软件开发工程师以及工作人员需要从时间的角度对软件定义、开发以及维护等一系列问题进行分析与研究,并且将其步骤分成若干个部分,然后需要严格的对每一部分进行设立相应标准,当前面部分内容完成后,则可以开始下一个部分内容。3)关于软件开发的自动形式系统开发方法分析这种开发方法相较于其他方法较简单,其主要通过第四代技术来设定要求、自动设计、自动编码而实现开发软件的目的,这是由于第四代技术中含有大量的软件开发工具,只需要相关软件开发工程师给予软件设计内容,则第四代技术即可按照其要求进行规范处理、分析,从而实现软件开发的目。

4探讨数据库的安全设计

4.1计算机用户管理工作流程一般情况下,用户管理者需要通过对每一系统操作工作人员进行建立相关权限设置,并且对每一系统操作人员的可操作范围进行了限定,由此可以看出,对用户登录模块的实现主要包括两个数据库,即工作权限数据库、工作人员数据库等,从而有效维护了计算机用户数据库的安全性,大大降低了安全风险系数。

4.2预留部分冗余字段对计算机用户的IP地址以及访问时间等进行预留部分冗余字段,从而有利于后期应用软件的维护工作,从而大大提高应用软件维护效率以及节省大量时间,无论对于软件后期维护工作而言,还是对计算机用户而言均具有着十分重要的意义。

上一篇: 小学生获奖数学论文 下一篇: 材料类专业导论论文
相关精选
相关期刊