软工总结(23—25)——软件维护

2024-08-26 04:58
文章标签 总结 25 23 软工 软件维护

本文主要是介绍软工总结(23—25)——软件维护,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

          软件维护是软件生存周期的最后阶段,也是最长的阶段。软件维护所花费的人力、无视、时间高达整个软件生存周期的60%—70%。  软工视频中对软件维护的讲解我大致分为三个部分:基础知识、应用知识、扩展知识。
            
            基础知识
            基础知识重点是对软件维护的一个简单的介绍。上一篇博客中也提到,要想认识一个新的事物。首先要知道他的概念,然后是存在的作用,也可以说是目的,在后是有什么特点或特性。发句牢骚,其中当你总结的多的时候发现其实每学习一个东西是有共同点的。
             概念: 软件维护是指软件系统交付费用后,为了改正软件在运行时的错误,或者为满足新的需求而加入新功能的软件修改的过程。    简单来说就是修改软件的过程。
             目的:1、修改软件的错误。分为两方面:(1)发现潜在的错误,并修改 。(2)修改已近出现的错误。       2、增加软件的功能和性能。   3、延迟软件寿命。这是是软件维护的总目标,其实前两个目的从别的方面也是在延迟软件的寿命。因为不管你从怎样修改软件最终的目的都是让软件正常使用,更好的为客户服务。
             特性:文章的一开始我就介绍了,软件维护的一个显著的特性。时间长、工作量大、成本高;当然还有其他的特性像维护困难、维护有副作用等。维护困难在学习软件实现的时候多多少少也有提到,因为软件的维护人员,往往不是开发人员所以对软件的熟悉度低,还有技术人员对维护兴趣不高等,都造成了软件维护娥困难。维护有副作用,这个我们应该也有体会。在修改机房代码的时候,往往修改一处错误会引起其他地方的错误。特别是在修改变量的时候,所以在软件设计时也说的,尽量不要使用全局变量。
              
             应用知识
             应用知识就是在软件维护的过程中要具体选择和考虑的问题了。首先是维护的类型。(1)适应性维护:为了适应发展,使软件适应外部新的硬件、软件、或者数据环境的变化而做的修改。也可以理解为延长软件的使用寿命。(2)完善性维护: 满足用户的提出的新的要求,对软件的功能进行补充和完善。 (3)纠错性维护:也称为改正性维护,解决软件潜在的问题和已近出现的问题。软件维护中各类维护所占的比例如下图。


                过程,也称为软件维护的步骤(个人理解)。由于视屏和书上没有明确软件维护的具体步骤。我想做一件事情肯定要有步骤,即使吧步骤不唯一,也要大概有个模型。所以我就自己总结出一套软件维护的步骤,只是宏观的。(1)建立组织维护:即建立要维护软件的小组。(2)编写维护的工作文档:文档包括,维护评估、维护计划。 (3)规定复审的评价标准:即确定软件维护的程度。
                 方法:软件维护的方法包括:(1)面向维护技术——涉及软件开发的所有阶段。(2)维支援技术——支持软件维护阶段技术。 (3)维护档案记录——做好档案记录,才能为维护评价提供有效的数据。 (4)维护评价——确定软件维护的质量。
                 
                  扩展知识
                   之所以叫扩展知识,是因为视频中只是简单的一提。而我仅仅限于知道有这个东西,具体做什么、怎么用都不了解。(1)软件可维护性:就是修改软件或软件维护的容易程度。
  (2)逆向工程:软件的逆向工程是分析程序,力图在比源代码更高的抽象层次上建立程序表示的过程,它是一个软件恢复的过程。(3)再工程: 软件再工程是指对既存对象系统进行调查,并将其重构为新形式代码的开发过程。
          
             总结:软维护是软件开发不可缺失的部分,一个软件不可能不需要维护。既然是这样,那么在软件开发的过程中就要记录好相关文档,规范的编写程序,为软件日后的维护做好准备工作。


这篇关于软工总结(23—25)——软件维护的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1107609

相关文章

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Nginx Location映射规则总结归纳与最佳实践

《NginxLocation映射规则总结归纳与最佳实践》Nginx的location指令是配置请求路由的核心机制,其匹配规则直接影响请求的处理流程,下面给大家介绍NginxLocation映射规则... 目录一、Location匹配规则与优先级1. 匹配模式2. 优先级顺序3. 匹配示例二、Proxy_pa

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio

MySQL基本查询示例总结

《MySQL基本查询示例总结》:本文主要介绍MySQL基本查询示例总结,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Create插入替换Retrieve(读取)select(确定列)where条件(确定行)null查询order by语句li

Linux区分SSD和机械硬盘的方法总结

《Linux区分SSD和机械硬盘的方法总结》在Linux系统管理中,了解存储设备的类型和特性是至关重要的,不同的存储介质(如固态硬盘SSD和机械硬盘HDD)在性能、可靠性和适用场景上有着显著差异,本文... 目录一、lsblk 命令简介基本用法二、识别磁盘类型的关键参数:ROTA查询 ROTA 参数ROTA

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

Python实现图片分割的多种方法总结

《Python实现图片分割的多种方法总结》图片分割是图像处理中的一个重要任务,它的目标是将图像划分为多个区域或者对象,本文为大家整理了一些常用的分割方法,大家可以根据需求自行选择... 目录1. 基于传统图像处理的分割方法(1) 使用固定阈值分割图片(2) 自适应阈值分割(3) 使用图像边缘检测分割(4)

Windows Docker端口占用错误及解决方案总结

《WindowsDocker端口占用错误及解决方案总结》在Windows环境下使用Docker容器时,端口占用错误是开发和运维中常见且棘手的问题,本文将深入剖析该问题的成因,介绍如何通过查看端口分配... 目录引言Windows docker 端口占用错误及解决方案汇总端口冲突形成原因解析诊断当前端口情况解