让你提前认识软件开发(43):软件产品升级流程

来源:互联网 发布:linux进程调度策略 编辑:程序博客网 时间:2024/05/01 06:24

第3部分 软件研发工作总结

软件产品升级流程

 

        一个软件产品做出来之后,并不是说永远都不用变了。基于以下的种种原因,我们需要对原软件产品进行升级:

        (1) 用户对软件功能提出了新的要求,现在运行的软件不能满足用户的新需求。

        (2) 原软件存在bug,用升级的方式来修补这些bug

        (3) 对原软件的程序进行了优化,新的软件能够提升程序的执行效率。

        (4) 自主开发了一些新功能,能够提升用户的体验。

 

        对于通讯类软件产品来说,升级是一项浩大的工程,其中牵涉到很多人,包括:市场人员、开发人员、测试人员、技术支持人员等。

        一般说来,通讯类软件产品的升级流程如图1所示:

1 通讯类软件产品的升级流程

 

        下面对升级流程中的各个步骤进行详细的说明。

         1. 项目研发经理下达升级任务书

        基于上面提到的原因中的一种或几种,客户会要求对软件产品进行升级。现场的相关人员会将客户的要求告知研发经理,请他进行评估。

        研发经理评估通过之后,会向本软件的开发小组下达升级任务书,让他们安排时间按照升级任务书中的内容来制作升级包。

        升级任务书中包括以下内容:

        (1) 升级任务的下达时间和要求完成升级的时间。

        (2) 现场的设备情况和当前软件版本。

        (3) 本次升级的目标(即升级是要解决什么问题)和需要升级到的软件目标版本。

        (4) 本次升级的计划进度及参与的人员。

 

         2. 开发工程师按照升级任务书的要求制作软件升级包

         升级任务书下达之后,开发工程师就要按照里面的内容来制作软件升级包。

         软件升级包的制作流程如图2所示:

2 软件升级包的制作流程

 

        在软件升级包的制作过程中,要注意以下事项:

        (1) 在制作之前,要详细阅读升级任务书,特别要搞清楚现场软件版本是什么?要升级到哪个版本?

        (2) 对于某些软件,部署比较的复杂,牵扯到的模块也比较多。为了了解现场的部署情况,我们可能需要现场人员将该软件的相关信息返回来,这些信息包括:软件版本、配置文件、数据库脚本等。我们对现场的了解越多,制作升级包出错的概率就会越小。

        (3) 在制作升级包的过程中,如果有任何疑问,一定要向相关人员求教,不能就放在那里就不管了。软件的升级很重要,一个小小的问题就可能会导致升级的失败。

        (4) 在升级包制作完成之后,开发人员一定要先行自测,待自测无误之后再提交测试工程师验证。软件自测的相关环境可以叫测试工程师提供。

        (5) 如果软件的升级包中涉及到数据库脚本的升级,一定要让现场人员导回现场所用数据库中的数据来验证,以确保脚本处理的正确性。因为很多数据库脚本会对用户的数据进行处理,一旦处理不当,会造成用户数据的丢失或错误修改。

        在制作升级包的过程中,开发工程师还要编写升级指导书,用以指导现场人员按照步骤进行升级操作。该文档非常重要,要保证内容的严谨性及正确性。一般说来,该文档包括以下内容:

        (1) 在新版本中新增加的功能或要解决旧版本中的相关问题。

        (2) 升级前后,软件的版本号。

        (3) 本升级包中所包含的内容,如程序、数据库脚本和文档等。

        (4) 升级前的准备工作,如备份文件和数据等。

        (5) 软件升级的详细步骤及注意事项。

        (6) 升级失败后的处理步骤。

        (7) 升级成功后要验证的功能。

 

         3. 测试工程师对升级包进行详细验证

        开发工程师对升级包自测通过之后,接下来测试工程师就粉墨登场了。他们会对升级包进行严格的验证,以确保现场升级能够一次搞定。

        如果在验证的过程中出现问题,他们会及时联系升级包的制作人员,让制作人员对相关的问题进行修改。这样一个不断循环的过程,直到验证无误为止。

 

         4. 研发经理将验证通过后的软件升级包发布到现场

         在升级包验证通过之后,研发经理就会将它发布到现场,并让现场支持人员与客户约定好软件升级的时间。

         软件升级时间确定好之后,研发经理会通知相关的开发人员和测试人员做好支持工作,以应对升级过程中突发的情况。

 

         5. 对现场的升级工作进行支持

         在软件升级的过程中,相关的开发人员和测试人员需要保持通讯的畅通,即:手机要开机、即时通讯工具要打开、邮箱要登陆。如果升级中出现问题,现场人员会及时与开发人员和测试人员取得联系,让他们帮忙解决。他们会将现场出现的情况、日志等信息反馈回来,以供分析。

        顺便说一下,因为怕影响用户的正常使用,或者是时区的问题,很多的软件升级被安排到深夜执行,这就要求开发人员和测试人员辛苦一些,等升级成功之后再休息。都说搞软件的很辛苦,辛苦在哪里?就辛苦在这些地方。

 

        以上五步是一个完整的升级流程,不同的软件产品可能会略有区别。总的说来,软件升级是一个系统的工程,要确保每一步都做到很完美。

 

        随着软件原有功能的不断完善和新功能的层出不穷,对其进行升级是在所难免的,软件的成功升级是广大软件从业者的共同愿望。软件的每一次成功升级,都是售前售后、开发测试等人员通力合作的结果,都是大家用辛苦劳动换来的。不过,当听到新的软件功能被客户啧啧称赞的时候,大家都会觉得非常的欣慰,觉得付出总会有回报的。

 

 

 

(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,微信号:245924426,欢迎关注!)
11 0
原创粉丝点击