软件的概念
- 格式:doc
- 大小:78.50 KB
- 文档页数:2
计算机软件的概念是什么
计算机软件我们常常在生活中提到,但是软件具体到解释是什么东西,有很多人都是不清楚的,今天小编整理了关于计算机软件的问题,下面就跟小编一起来看看计算机软件的概念是什么吧。
软件的概念
软件是用户与硬件之间的接口界面。
用户主要是通过软件与计算机进行交流。
软件是计算机系统设计的重要依据。
为了方便用户,为了使计算机系统具有较高的总体效用,在设计计算机系统时,必须通盘考虑软件与硬件的结合,以及用户的要求和软件的要求。
软件的含义
(1)运行时,能够提供所要求功能和性能的指令或计算机程序集合。
(2)程序能够满意地处理信息的数据结构。
(3)描述程序功能需求以及程序如何操作和使用所要求的文档。
软件的特点
(1)计算机软件与一般作品的目的不同。
计算机软件多用于某种特定目的,如控制一定生产过程,使计算机完成某些工作;而文学作品则是为了阅读欣赏,满足人们精神文化生活需要。
(2)要求法律保护的侧重点不同。
著作权法一般只保护作品的形式,不保护作品的内容。
而计算机软件则要求保护其内容。
(3)计算机软件语言与作品语言不同。
计算机软件语言是一种符号化、形式化的语言,其表现力十分有限;文字作品则是人类的自然语言,其表现力十分丰富。
(4)计算机软件可援引多种法律保护,文字作品则只能援引著作权法。
关于计算机软件的概念小编就说到这里,希望小编的阐述能够对你们的理解有所帮助,如果有关于计算机软件的法律问题,欢迎咨询我们律伴的在线律师。
文章来源:律伴网/。
软件下定义
软件是一组指令和数据的集合,可以被计算机系统执行,以完成特定任务的程序。
它可以在计算机硬件上运行,通过输入、处理和输出数据来实现某种功能或解决问题。
软件可以具体分为系统软件和应用软件两种类型。
系统软件是一类控制计算机系统硬件和提供基本服务的软件,例如操作系统、编译器、驱动程序等。
它们主要用于管理计算机的资源、提供文件系统、运行其他软件和控制外部设备。
应用软件是一类用于满足特定需求或实现特定任务的软件,例如办公套件、图形设计软件、媒体播放器等。
它们通过用户界面与用户交互,并利用系统软件的支持来实现各种功能。
软件通常包括源码和可执行代码两种形式。
源码是用程序设计语言编写的人类可读的文本文件,可以由编译器或解释器转换为机器代码执行。
可执行代码是由编译器或解释器生成的二进制文件,可以直接在计算机上运行。
软件开发是指通过编写、测试和维护源码,将软件从概念转化为可使用的产品的过程。
它涉及需求分析、设计、编码、测试和发布等多个阶段,其中还包括软件工程、项目管理和质量保证等方面的活动。
软件工程1、软件的概念:软件是计算机系统中与硬件相依存的另一部分,包括程序、数据、以及相关的文档。
2、软件的组成:程序、数据、文档。
3、软件危机:指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
4、软件危机消除的办法:P51、必须充分吸取和借鉴人类长期以来从事各种工程项目所积累的行之有效的原理、概念、技术和方法,特别要吸取几十年来人类从事计算机硬件研究和开发的经验教训。
2、应该推广使用在实践中总结出来的开发软件的成功的技术和方法,并且研究探索更好更有效的技术和方法,尽快消除在计算机系统早起发展阶段形成的一些错误概念和做法3、应该开发和使用更好的软件工具。
总之,解决软件危机,既要有技术措施,又要有必要的组织管理措施。
5、软件工程的含义:采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它,这就是软件工程。
6、软件生命周期的过程以及任务。
(1)问题定义(2)可行性研究(3)需求分析(4)总体设计(5)详细设计(6)编码和单元测试(7)综合测试(8)软件维护****************************以上为第一章******************第二章●数据流图有四种成分:源点或终点,处理,数据存储,数据流●画DFD(数据流图)的指导原则:1.符号要使用标准符号2.恰当的命名3.流入流出的数据流的条数一致4.名字要保值一致(平衡)5.遵守加工编号规则6.处理必须既有输入流又有输出流(注意:源点和终点可以相同也可以不同)●数据字典的作用:数据字典(DD)的作用也正是在软件分析和设计过程中给人提供关于数据的描述信息。
●数据字典的内容:(1)、数据流(2)、数据流分量即数据元素(3)、数据存储(4)、处理*********************** *******以上为第二章************************************第三章●实体-联系图(ER)图的概念:ER图中包含了实体、联系和属性3中基本成分,通常用矩形框代表实体,用连接先关实体的菱形框表示关系,用椭圆形或圆角矩形表示实体(或关系)的属性,并用直线吧实体(或关系)与其属性连接起来。
计算机软件的定义和分类
计算机软件是指计算机系统中的程序及其文档,程序是计算任务的处理对象和处理规则的描述,文档是为了便于了解程序所需的阐明性资料。
计算机软件总体分为系统软件和应用软件两大类。
系统软件是各类操作系统,如 Windows、Linux、UNIX 等,还包括操作系统的补丁程序及硬件驱动程序,都是系统软件类。
应用软件可以细分为通用软件、行业软件和专用软件。
通用软件是指一些常用的工具软件,比如办公软件、图像处理软件、杀毒软件等;行业软件是指针对特定行业的应用软件,比如工业设计软件、医疗管理软件等;专用软件是指为某些特定用途而开发的软件,比如科学计算软件、航空航天软件等。
计算机软件是计算机系统的重要组成部分,它的质量和性能直接影响到计算机系统的效率和稳定性。
随着计算机技术的不断发展,计算机软件也在不断更新和完善,以满足不同用户的需求。
总的来说,计算机软件是一种重要的信息技术产品,它的应用范围非常广泛,涉及到人们生活的各个方面。
随着信息技术的不断发展,计算机软件的作用将会越来越重要。
软件总的来说,软件就是指用以指挥计算机运行活动所使用的程序。
有两类软件:应用软件和系统软件。
程序员设计和编制应用软件来完成面向用户的某些应用,诸如收帐和工资系统等。
系统软件更为通用,通常是独立于应用的。
它支持基本的计算机功能以及所有的应用领域(而不是特殊的应用)。
系统软件可以将系统软件从逻辑上分成主要的几类。
下面我们对每一类作概括介绍。
1.编译程序。
编译程序将一种高级语言的指令(如,COBOL)翻译成计算机能解释的指令。
读者应该记住:任何一台计算机都是用机器语言来执行所有的程序,而不论这些程序是用BASIC、FORTRAN或是COBOL编写的。
高级程序设计语言只不过是给用户提供了一种方便,“源”语言形式的程序是不能执行的。
2.源程序。
它由程序员编写的一些语句组成,由编译程序对它进行编译。
程序员请求该程序,于是系统从辅存中调出COBOL编译程序并装入到主存。
然后,编译程序将源程序翻译成目标程序。
这种目标程序是机器语言形式,通常存放在辅存上以便今后调用并(或)直接执行。
编译的过程可能是费时间的,特别对于大型程序更是如此,在规则地调度生产性程序时,将直接“调用”(从磁盘检索)并执行目标程序,不需要进行编译。
如果对源程序作了某些修改,那么必须对它重新编译以产生最新版本的目标程序。
3.解释程序。
解释程序基本上执行与编译程序相同的功能,只是方式上不同而已。
解释程序按顺序翻译并执行每一条源程序语句。
解释程序的优点是当语句出现语法错误时,可以立即引起程序员注意,而程序员在程序开发期间就能进行校正。
解释程序的缺点是不能像编译程序那样充分地利用计算机资源。
4.模拟和仿真程序。
这类系统软件允许一台计算机就像是另一台计算机那样工作。
当把程序转换到另一台不兼容的计算机上时,模拟程序和仿真程序特别有用。
直到现有程序全部被转换成新的计算机格式后,原来为一台老的计算机编写的程序才能在新的计算机上执行。
从技术上讲,仿真程序是硬件和软件的结合,而模拟程序则完全是软件。
1、软件是能够完成预定功能和性能,并对相应数据进行加工的程序和描述程序及其操作的文档。
2、信息隐藏模块中的软件设计决策信息封装起来的技术,只知道它的功能以及对外的接口,而不知它的内部细节3、对象对象是现实世界中个体或事物的抽象表示,是其属性和相关操作的封装。
4、软件可维护性指软件被理解、改正、调整和改进的难易程度。
5、原型是目标软件系统的一个可操作模型,它实现了目标软件系统的某些重要方面。
6、黑盒测试方法是已知产品应该具有的功能,通过测试检验每个功能是否都能正常使用;7、实体—关系图描述系统所有数据对象的组成和属性,描述数据对象之间关系的图形语言。
8、数据抽象把一个数据对象的定义(或描述 )抽象为一个数据类型名,用此类型名可定义多个具有相同性质的数据对象。
9、α测试是指软件开发公司组织内部人员模拟各类用户行为对即将面市的软件产品(称为α版本)进行测试,试图发现错误并修正。
10、完善性维护成任务是根据用户在使用过程中提出的一些建设性意见而进行的维护活动。
11、技术风险指软件在设计、实现、接口、验证和维护过程中可能发生的潜在问题,对软件项目带来的危害。
12、软件生存周期软件产品从形成概念开始,经过开发、运行(使用)和维护直到退役的全过程称为软件生存周期,包括软件定义、开发、使用和维护三部分。
13、白盒测试是已知产品内部工作过程,通过测试检验产品内部动作是否按照产品规格说明的规定正常进行。
14、预防性维护是为了进一步改善软件系统的可维护性和可靠性,并为以后的改进奠定基础。
15、状态图描述类的对象的动态行为。
它包含对象所有可能的状态、在每个状态下能够响应的事件以及事件发生时的状态迁移与响应动作。
16、内聚性内聚性是模块独立性的衡量标准之一,它是指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
17、软件工程方法是软件生产的组织方式,包括对软件过程的建议、使用的标记法、进行系统描述的规律和设计指南。
软件工程概念第一章:软件定义1.软件( Software):计算机系统中与硬件相互依存的另一部分,它是包括程序(Program),数据(D ata)及其相关文档( Document)的完整集合。
2.软件的特征:逻辑复杂,开发复杂,成本高,风险大,维护困难。
3.按软件功能分类:系统软件,支撑软件,应用软件。
系统软件:操作系统,数据库管理系统,设备驱动程序,通信处理程序等。
支撑软件:文本编辑程序,文件格式化程序,程序库系统等应用软件:商业数据处理软件,工程与科学计算软件,计算机辅助设计/制造软件,系统仿真软件,智能嵌入软件,医疗、制药软件,事务管理、办公自动化软件。
按软件规模分类:微型,小型,中型,大型,甚大型,极大型。
按软件工作方式分:实时处理软件,分时软件,交互式软件,批处理软件4.软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题5.软件危机主要是两个问题:1.如何开发软件,以满足对软件的日益增长的需求?2.如何维护数量不断膨胀的已有软件?5.软件危机的表现:1.成本高,开发成本估计不准确2.软件质量不高、可靠性差3.进度难以控制4.维护非常困难5.用户不满意6. 由于软件质量问题导致失败的软件项目非常多。
6.产生软件危机的原因:1.与软件本身的特点有关 2.与软件开发与维护的方法不正确有关.软件工程学的目的:以较低的成本研制具有较高质量的软件软件工程技术的两个明显特点:1.强调规范化2. 强调文档化软件工程的基本原理(7条):1.用分阶段的生命周期计划严格管理2.坚持进行阶段评审3.实严格的产品控制4.采用现代程序设计技术5.结果应能清楚地审查6.开发小组的人员应该少而精7.承认不断改进软件工程实践的必要性8.软件工程方法学包含3个要素:方法、工具和过程9.软件生命周期:软件定义(问题定义,可行性研究,需求分析),软件开发(总体设计,详细设计,编码和单元测试,集成测试),运行维护(持久满足用户需求)10.软件过程模型:瀑布模型,快速原型模型,增量模型,螺旋模型,喷泉模型。
综合阐述对软件的理解
软件是计算机系统中的一种抽象概念,它是由一系列指令和数据组成的,并用于实现特定的功能或完成特定的任务。
相对于硬件而言,软件是可以修改和更新的,它是计算机系统的灵魂。
首先,软件是计算机操作的核心。
无论是个人电脑、移动设备还是服务器,都需要软件来管理和控制硬件资源的使用。
软件可以管理硬件资源的分配、调度和访问,使得计算机能够高效地执行各种任务。
其次,软件可以为人们提供各种各样的功能和服务。
从操作系统到办公软件、娱乐软件再到应用软件,软件可以满足人们的不同需求。
通过软件,我们可以进行文字编辑、图像处理、视频播放、游戏娱乐等各种操作,软件已经成为现代生活不可或缺的一部分。
此外,软件还可以提高工作效率和生产力。
通过使用软件,人们可以自动化和简化很多重复性的任务,提高工作效率。
例如,电子表格软件可以对数据进行自动计算和分析,大大减少了人工计算的工作量;项目管理软件可以帮助人们更好地协调和安排工作任务,提高团队的组织和协作效率。
最后,软件还可以改变人们的生活方式和社会结构。
随着移动互联网和智能设备的普及,各种各样的移动应用软件涌现出来,改变了人们的沟通方式、购物方式、娱乐方式等。
同时,软件还催生了新的产业和就业机会,促进了经济的发展和社会的进步。
总之,软件在现代社会中扮演着重要的角色。
它不仅是计算机系统的核心,也是人们获取各种功能和服务的重要渠道,同时还具有提高工作效率和改变生活方式的作用。
随着技术的不断推进,软件的影响力和重要性将会进一步扩大。
软件的概念:软件=程序+文档。
软件是能够完成预定功能的可执行计算机程序包括使程序正常执行所需要的以及有关描述程序操作和使用的文档。
特点:软件是一种逻辑实体,而不是具体的物理实体。
因此,它具有抽象性。
软件的生产与硬件不同,没有明显的制造过程。
对软件的质量控制,必须立足于软件开发方面。
在软件的运行和使用期间,没有像硬件那样的磨损、老化问题。
软件的开发和运行往往受到计算机系统的限制,对计算机系统有不同程度的依赖性。
迄今为止,软件的开发尚未完全摆脱手工艺的方式。
软件本身是复杂的软件的成本相当昂贵相当多的软件工作涉及到社会因素。
分类:按软件的功能划分:系统软件、支撑软件、应用软件按软件的规模划分:微型、小型、中型、大型、超大型按软件的工作方式划分:实时、分时、交互、批处理按软件服务对象的范围划分:项目软件、产品软件(2)软件的发展和软件危机(一般)计算机软件发展的各个时期1. 第一代(60年代中期之前)程序设计阶段硬件通用,软件专用;程序规模小,编写者和使用者为同一人(同组人)。
2. 第二代(60年代中期-70年代中期)程序系统阶段出现“软件作坊”、产品软件;“个体化”开发方法。
3. 第三代(70年代中期之后)软件工程阶段软件开发成为一门新兴的工程学科——软件工程。
4. 第四代(90年代后)现代软件工程阶段。
软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
主要是两个问题。
1. 如何开发软件,怎样满足对软件的日益增长的需求。
2. 如何维护数量不断膨胀的已有软件软件危机的主要表现:1. 对软件开发成本和进度的估计不准确2. 用户不满意3. 软件质量不高、可靠性差4. 软件常常不可维护、错误难以改正。
5. 缺乏适当的文档资料6. 软件成本占系统总成本的比例逐年上升7. 软件开发速度跟不上计算机发展速度(3)软件工程过程(重点)软件工程的基本原理:1. 用分阶段的生命周期计划严格管理2. 坚持进行阶段评审3. 实行严格的产品控制4. 采用现代程序设计技术5. 结果应能清楚地审查6. 开发小组的人员应该少而精7. 承认不断改进软件工程实践的必要性软件工程方法学3要素:方法、工具和过程第二部分软件过程2(1)软件生命周期的基本任务(重点)软件生命周期的各个阶段:(定义、开发、使用及维护)(1)问题定义(2)可行性分析(3)需求分析: 分析软件需求,编写软件需求规格说明(4)概要设计和详细设计: 确定软件体系结构,设计软件模块(5)程序编写(6)软件测试(7)运行和维护(2)Rational 统一过程(次重点)识记:RUP(统一软件开发过程)的6条软件开发经验(①迭代式开发②管理需求③体系结构④可视化建模⑤验证软件质量⑥控制软件变更)理解:RUP软件开发生命周期(初始阶段、细化阶段、构造阶段、迁移阶段)第三部分结构化分析(一)考核知识点及考核目标(1)软件需求分析概述(重点)需求分析:是指开发人员要准确地理解用户的要求,进行细致的调查分析,将用户非形式化的需求陈述转化为完整的需求定义,再由需求定义转化为相应的软件需求规格说明书(即需求分析的结果)的过程需求分析的任务:是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求过程:可行性分从收集资料到形成软件需求分析文档,一般来说要经过四个过程:获取用户需求,分析用户需求,编写需求文档,评审需求文档可行性分析的内容?经济可行性技术可行性运行可行性法律可行性需求分析的主要原则?一. 确定对系统的综合要求1. 功能需求2. 性能需求3. 可靠性和可用性需求4. 出错处理需求5. 接口需求6. 约束7. 逆向需求8. 将来可能提出的要求二 .分析系统的数据要求三. 导出系统的逻辑模型四. 修正系统开发计划(2)结构化分析方法(重点)结构化分析方法的含义:结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止第四部分结构化设计(1)软件设计的目标和任务(重点)软件设计的重要性:软件设计是后续开发步骤及软件维护工作的基础。
如果没有设计,只能建立一个不稳定的系统结构。
软件设计的任务:将需求分析的结果(分析模型与需求分析规约)转化为实际软件系统的一个模型或软件表达式,即用于构造软件的“蓝图”。
(2)程序结构与程序结构图(重点)(3)模块的独立性(重点)所谓模块,是指具有相对独立性的,由数据说明、执行语句等程序对象构成的集合。
程序中的每个模块都需要单独命名,通过名字可实现对指定模块的访问。
在高级语言中,模块具体表现为函数、子程序、过程等。
一个模块具有输入/输出(接口)、功能、内部数据和程序代码四个特征。
模块的独立性:模块独立性, 是指软件系统中每个模块只涉及软件要求的具体的子功能, 而和软件系统中其它的模块的联系最小且接口是简单的.一般采用两个准则度量模块独立性。
即模块间耦合和模块内聚耦合是模块之间的互相连接的紧密程度的度量。
内聚是模块功能强度(一个模块内部各个元素彼此结合的紧密程度)的度量。
模块独立性比较强的模块应是高内聚低耦合的模块。
模块化:模块化是指将整个程序划分为若干个模块,每个模块用于实现一个特定的功能。
划分模块对于解决大型复杂的问题是非常必要的,可以大大降低解决问题的难度。
模块化可以降低解决问题的复杂度,从而降低软件开发的工作量。
模块化不但可以降低软件开发的难度,而且可以使程序结构清晰,增加易读性和易修改性。
此外,模块化还有利于提高代码的可重用性及团队合作开发大型软件的可行性。
抽象是人类在解决复杂问题过程中使用的思维工具,即抽出事物本质的共同的特性而暂不考虑它的细节.软件系统进行模块设计时,可有不同的抽象层次。
在最高的抽象层次上,可以使用问题所处环境的语言概括地描述问题的解法。
在较低的抽象层次上,则采用过程化的方法。
结构化程序中自顶向下、逐步求精的模块划分思想正是人类思维中运用抽象方法解决复杂问题的体现。
此外,在程序设计中运用抽象的方法还能够提高代码的可重用性。
(4)结构化设计方法(次重点)(5)结构化数据系统开发方法(一般)1.系统规则用结构化系统开发方法开发一个系统,将整个开发过程划分为首尾相连的五个阶段,即一个生命周期(Life Cycle)根据用户的系统开发请求,进行初步调查,明确问题,确定系统目标和总体结构确定分阶段实施进度,然后进行可行性研究;2. 系统分析:分析业务流程、分析数据与数据流程、分析功能与数据之间的关系,最后提出分析处理方式和新系统逻辑方案;3. 系统设计:进行总体结构设计、代码设计、数据库(文件)设计、输入/输出设计、模块结构与功能设计,根据总体设计,配置与安装部分设备,进行试验,最终给出设计方案;4. 系统实施:同时进行编程(由程序员执行)和人员培训(由系统分析设计人员培训业务人员和操作员),以及数据准备(由业务人员完成),然后投入试运行;5.系统运行与维护:进行系统的日常运行管理、评价、监理审计,修改、维护、局部调整,在出现不可调和的大问题时,进一步提出开发新系统的请求,老系统生命周期结束,新系统诞生,构成系统的一个生命周期。
在每一阶段中,又包含若干步骤,步骤可以不分先后,但仍有因果关系,总体上不能打乱。
第五部分结构化实现(1)软件测试的基础(重点)软件测试是动态查找程序代码中的各类错误和问题的过程,软件测试是保证软件可靠性的主要手段。
测试阶段的主要任务是发现并改正软件中的错误。
白盒测试和黑盒测试是软件测试的两类基本方法。
软件测试通常至少分为单元测试、集成测试和系统测试三个基本阶段。
软件维护的目的是要保证软件的正常运行,尽可能延长软件生命周期。
软件测试的对象:软件测试并不等于程序测试。
软件测试应贯穿于软件定义与开发的整个期间。
需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为软件测试的对象。
(2)测试用例设计(重点)黑盒法该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求。
因此,黑盒测试又称为功能测试或数据驱动测试。
黑盒测试是功能测试,根据程序的功能来测试设计用例。
白盒法该方法把被测试对象看成一个白盒子,测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。
白盒法根据被测程序的内部结构设计测试用例。
(3)白盒测试用例设计(重点)1逻辑覆盖:是以程序内部逻辑为基础的测试技术,2语句覆盖的含义是选择足够多的测试用例,使得被测程序中的每条语句至少执行一次。
3判定覆盖就是设计若干个测试用例,运行所测程序,使得程序中每个判断的取真分支和取假分支至少经历一次。
判定覆盖又称为分支覆盖。
判定覆盖的每个语句至少经历一次。
4条件覆盖就是设计若干个测试用例,运行所测程序,使得程序中每个判断的每个条件的可能取值至少执行一次。
(条件覆盖使得每个语句至少执行一次。
)5判定/条件覆盖就是设计足够的测试用例,使得判断中每个条件的所有可能取值至少执行一次,同时每个判断的所有可能判断结果至少执行一次。
即要求各个判断的所有可能的条件取值组合至少执行一次。
6条件组合覆盖就是设计足够的测试用例,运行所测程序,使得每个判断的所有可能的条件取值组合至少执行一次(4)黑盒测试用例的设计(重点)等价类的划分:输入数据的可能值划分为若干个等价类,使每类中的任何一个测试用例,都能够代表同一等价类中的其他测试用例,把漫无边界的随即测试变成有针对性的等价类测试。
(需要考虑有效等价类和无效等价类)边界值分析的方法过程:使被测程序能在边界值及其附近运行,从而更有效得暴露从程序中隐藏的问题;(5)软件测试的策略(重点)测试步骤:单元测试(测试模块功能)编译→静态分析器检查→代码评审→动态测试(白盒黑盒)组装测试(测试软件设计信息)自顶向下测试:先广后深、先深后广;自底向上测试;两种测试混合。
确认测试(测试软件需求信息)测试组装完毕的程序是否满足SRS系统测试(测试与系统其它部分的兼容性等)对硬件或其他软件是否实现SRS要求第六部分维护(一)考核知识点(1)软件维护的定义(重点)1. 纠错性维护:纠正在开发期间未能发现的问题2. 适应性维护: 适应性维护就是为了和变化了的环境适当地配合而进行的修改软件的活动。
3:完善性维护:不断改善和加强,以满足用户的新需求等,4. 预防性维护:“把今天的方法学应用于昨天的系统以满足明天的需要”。
改善软件的可维护性(2)软件维护的特点(一般)1 结构化维护与非结构化维护差别悬殊2 维护的代价高昂3 维护的困难性(3)软件维护过程(一般)首先必须建立一个维护组织,随后必须确定报告和评价的过程,而且必须为每个维护要求规定一个标准化的事件序列。