知识点滴 - Maintenance Release

What is a Maintenance Release?

什么是MR release?

维护版本是指在不改变任何核心组件或添加新功能的情况下修正安全漏洞或小错误(security flaw or minor bug)的软件版本。它们通常以十分之一或百分之一为单位进行编号,以区别于主要版本,后者的编号仅为版本 1.0、版本 2.0 等。维护版本是软件发布生命周期中系统运行和支持阶段的一部分。

每个软件应用程序都要经历软件发布生命周期。首先是系统分析和需求调查,在这一阶段要对数据和流程进行建模。然后进入设计阶段、构建阶段、实施阶段,最终进入运行和支持阶段。在最后一个阶段,通过推出维护版本,为用户提供持续的技术支持,这些维护版本可以修复错误,也可以通过重塑基本要求来升级整个系统。

维护版本通常需要修复基本的编程错误。出现这些错误的原因通常是在之前的软件生命周期的某个阶段犯了错误。例如,如果在需求分析阶段,需求传达或验证不正确,就可能导致重大缺陷,而这些缺陷要到很久以后才会显现出来。这种情况其实很常见,这也是为什么几乎所有发布过的软件都或多或少要进行维护发布的原因。

维护版本有几个基本目标。首先,维护版本应修改现有程序,以纠正需求、设计或实施阶段的错误。它还应确保新作出的修正不会干扰修改部分的其他方面,以及新作出的更改不会干扰其他部分的活动。最后,发布不应导致系统性能下降。一般来说,软件工程师会在不影响质量和可靠性的前提下尽快完成这一过程。

在发布维护版本之前,必须通过三种方法对其进行彻底测试:单元测试、系统测试和回归测试( unit testing, system testing, and regression testing)。单元测试确保被修复的特定程序段现在能正常运行。系统测试则确保新修复的程序段不会干扰其他的程序。回归测试使用统计数据来检查整体吞吐量或响应时间是否受到更改的积极或消极影响。

系统维护的最后一个也可能是最重要的一个方面是版本控制。在这一过程中,训练有素的软件配置管理员会仔细记录和跟踪所有更改。这使得软件工程师能够在维护版本遇到意外错误时进行回溯。

参考:

1,什么是MR release

What is a Maintenance Release?

相关推荐
progalchemist2 天前
Quick SwiftObjective-C测试框架入门教程
开发语言·其他·objective-c·swift
zhangzelin8882 天前
TypeScript入门指南:JavaScript的类型化超集
前端·javascript·其他·typescript
livana.2 天前
小学scrach入门项目学习幸运大转盘项目
经验分享·学习·其他·scratch
白璽-寰宇光锥舟3 天前
【寰宇光锥舟】
其他
SccTsAxR3 天前
[初学C语言]关于scanf和printf函数
c语言·开发语言·经验分享·笔记·其他
sitellla3 天前
Testify Go测试工具包入门教程
git·测试工具·其他·golang
牛马的人生6 天前
MATLAB模块库入门:提升你的工程分析效率
开发语言·其他·matlab
ps_xiaowang6 天前
React Query入门指南:简化React应用中的数据获取
前端·其他·react native·react.js
alphacoder1236 天前
RollupJavaScript模块打包器入门教程
其他
牛马的人生6 天前
GitLab入门教程:打开DevOps全流程的大门
运维·其他·gitlab·devops