软件维护:软件生命周期中的重头戏
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
"软件工程基础课件 chapter 10软件维护.ppt" 软件工程是一门复杂的学科,涵盖了软件的整个生命周期,包括设计、开发、测试以及一个至关重要的阶段——软件维护。在软件产品经过验收测试并交付给用户后,软件维护阶段才真正开始,这是一个比开发阶段更持久且更具挑战性的过程。 第十章主要介绍了软件维护的相关概念和重要性。首先,软件维护分为四种主要类型:修正性维护,用于修复软件中的错误和故障;完善性维护,目的是改进软件的功能和性能;适应性维护,确保软件适应环境变化,如操作系统更新或法规变更;以及预防性维护,提前改进软件,防止未来问题的发生。 软件维护的必要性不容忽视,因为它占据了软件总成本的67%。尽管如此,许多软件组织往往把重点放在开发阶段,认为这是企业成功的关键,而对维护人员的重视不足。维护人员常常面临没有足够或准确文档的情况,这使得他们的工作极具挑战性,因为他们在修复错误时可能会引入新的错误,而且需要进行回归测试以确保软件的可靠性。 软件维护工程师的角色是多面手,他们需要具备从需求分析到测试的全套技能。然而,维护工作在软件行业中往往被视为次要任务,技术实力较弱的员工常被分配到这个岗位。这种观念需要改变,因为维护工程师的角色至关重要,他们确保软件持续运作并满足用户需求。 在软件维护的管理方面,正确报告和跟踪错误是关键。错误报告应详尽描述错误现象、触发错误的操作、操作序列以及运行环境等信息,以便于维护工程师定位和解决问题。有效的管理策略还包括使用CASE(计算机辅助软件工程)工具,这些工具可以自动化部分维护过程,提高效率和准确性。 逆向工程在维护过程中也扮演着重要角色,它允许开发人员理解现有代码的结构和功能,尤其是在缺乏原始设计文档的情况下。对于面向对象的软件,逆向工程可以帮助维护人员重构代码,使其更易于理解和维护。 总结起来,软件维护不仅是软件生命周期的一部分,而且是一个复杂且耗资巨大的过程。为了确保软件系统的持续稳定性和满足用户需求,必须给予软件维护充分的关注和投入,提供适当的管理和工具支持,以及尊重和培养具备全面技能的维护团队。
![](https://csdnimg.cn/release/download_crawler_static/77669385/bg7.jpg)
![](https://csdnimg.cn/release/download_crawler_static/77669385/bg8.jpg)
剩余35页未读,继续阅读
![ppt](https://img-home.csdnimg.cn/images/20210720083527.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
import requests import re import time #使用requests获取网页源代码 import requests import re import time #获取首页源码 html=requests.get('https://www.kanunu8.com/book3/6879/').content.decode(encoding='gbk') # print(html) #获取所有章节链接 herf=re.findall('',html,re.S) print(herf) start=time.time() for i in herf: #通过链接获取每一章的源码 chapter_html=requests.get('https://www.kanunu8.com/book3/6879/'+i).content.decode(encoding='gbk') # print(chapter_html) title=re.search('size="4">(.*?)<',chapter_html,re.S).group(1)#获取章节名称 content=re.findall('(.*?)
',chapter_html,re.S)#获取每一张p标签内的内容,结果返回为列表 content_str="\n".join(content).replace("
","")#列表转为字符串并替换多余符号 with open('动物农场/'+title+'.txt','w',encoding='utf-8') as f: f.write(title) f.write(content_str) end=time.time() print(f'单线程耗时{end-start}')请详细江一下这段代码
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/aa877a775d86458fa249755d804f00d2_pengtaohanyu.jpg!1)
- 粉丝: 206
- 资源: 2万+
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- Lombok 快速入门与注解详解
- SpringSecurity实战:声明式安全控制框架解析
- XML基础教程:从数据传输到存储解析
- Matlab实现图像空间平移与镜像变换示例
- Python流程控制与运算符详解
- Python基础:类型转换与循环语句
- 辰科CD-6024-4控制器说明书:LED亮度调节与触发功能解析
- AE particular插件全面解析:英汉对照与关键参数
- Shell脚本实践:创建tar包、字符串累加与简易运算器
- TMS320F28335:浮点处理器与ADC详解
- 互联网基础与结构解析:从ARPANET到多层次ISP
- Redhat系统中构建与Windows共享的Samba服务器实战
- microPython编程指南:从入门到实践
- 数据结构实验:顺序构建并遍历链表
- NVIDIA TX2系统安装与恢复指南
- C语言实现贪吃蛇游戏基础代码
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)