软件项目版本和项目文档如何管理

管理软件项目版本:1、建立明确的版本号标识;2、确定版本的目标;3、制定版本内容;4、设计发布的策略。管理软件项目文档:1、保证有效沟通;2、与所采用的工程方法相匹配;3、满足产品生命周期管理的需要;4、区分文档的记录与整理。

软件项目版本和项目文档如何管理-Worktile社区

一、管理软件项目版本

1、建立明确的版本号标识

为了使工作规范化、统一化,我们需要明确标识产品的版本编号。目前业界在软件版本的命名上,通常会采用以下方式:

版本号命名规则

例如:1.2.1, 2.0, 5.0.0 build-13124。其中,构建版本号通常由编译程序自动生成,对外不提供。

版本号更新规则

  • 主版本号更新规则:产品功能发生全新的优化,包括页面、体验和技术上的全面更新优化。如下图所示两个产品的版本号升级。
  • 子版本号更新规则:1、产品新增了重要功能模块;2、在原来功能基础上作了重要更新;3、严重Bug的修复。
  • 修订版本号更新规则:1、新增或优化一般的功能模块;2、一般Bug的修复。

版本号后缀

版本号后面可以加入Alpha、Beta、Gamma、RC、Release等后缀,用来表示软件当前所处的阶段:

  • Alpha:内测版。此版本表示该软件在此阶段主要是以实现软件功能为主,通常只在开发者内部交流,或者提供给测试人员测试用,一般而言,该版本软件的Bug较多,需要继续修改。
  • Beta:公测版。该版本相对于α版已有了很大的改进,消除了严重的问题,但还是存在着一些缺陷,需要经过多次测试来进一步消除,可以提供给一定的目标用户大规模体验测试。
  • RC 版:候选版本。是 Release Candidate 的缩写,意思是发布倒计时,该版本已经相当成熟了,完成全部功能并清除大部分的Bug。
  • Release 版:该版本意味“最终版本”。是经过前面版本的一系列测试之后,最终交付给用户使用的一个版本。该版本有时也称为标准版。

2、确定版本的目标

在确定版本上线需求的时候,往往容易只考虑那些最紧急的、用户反馈非常多的、所谓优先级较高的需求,然后将这些需求整合到下一次的版本发布计划中,但是这么做无疑是捡了芝麻却丢了西瓜,因为忽视了对整个产品目标的实现。

海盗模型是一种以用户为中心的、着眼于转化率的漏斗模型。这个经典的数据模型把目标整体分成了五个部分,即:获取用户(Acquisition)、激活用户(Activation)、提高留存(Retention)、获取收入(Revenue)和自传播(Referral)。

  • 获取用户:即拉新,一般是用户的注册、下载、关注等行为。通常用新增用户数来作为考量。任何一款产品上线之初都避不开这个环节,而且拉新是会持续的伴随整个产品生命周期。一般在刚刚上线核心功能后,都会重点关注并优化用户的注册登录的路径,甚至通过不断的埋点来获取数据,从而做数据分并优化需求。
  • 激活用户:即促活,一般会以用户的在线时长、与其他用户的互动频次等数据来做以考量。初期用户的活跃度是至关重要的,甚至对产品以后的发展会有很长远的影响。
  • 提高留存:留存:指在经过一段时间后有多少用户留了下来,一般情况下会以月、周、日的时间维度来作为数据考量,也就是我们常说的DAU、WAU和MAU。
  • 获取收入:即变现。不止是软件的开发方获得收入变现,用户也可以在这一步获得利益。
  • 自传播:即用户可以自发的向身边用户推荐我们的产品。

3、制定版本内容

版本的目标确定了,我们就需要从需求池中挑选需求了。需求很多,但是开发资源紧张或存在其他一些客观因素,不能在一个版本中全部实现。那么我们怎么对这些需求进行排序呢?

基于KANO模型确定需求优先级

在KANO模型中,根据不同类型的需求与用户满意度之间的关系,可将影响用户满意度的因素分为五类:兴奋型需求、期望型需求、基本型需求、无差异型需求、反向型需求。

  • 兴奋型需求:就是哪些藏在暗处的、用户意想不到的,需要挖掘/洞察的需求。
  • 期望型需求:实现此需求,用户满意度会提升;不实现此需求,用户满意度会降低。对于这类需求,不仅要满足,还要保证质量。
  • 基本型需求:基本型需求,即痛点,对于用户而言,这些需求是理所当然必须满足的。
  • 无差异型需求:用户根本不在意的需求,对用户体验毫无影响,无论提供或不提供此需求,用户满意度都不会有改变。对于这类需求,没有必要花大力气去实现。
  • 反向型需求:用户根本都没有此需求,实现这类需求用户满意度反而下降。所以这类需求不能去实现。

4、设计发布的策略

版本发布策略需要考虑的问题是:直接发布给所有用户?还是先让一部分用户试用?

比如说可以先让内部用户使用,内部用户对软件质量问题容忍度是很高的,还可以帮助发现很多问题。还有就是采用灰度测试的发布策略,让一小部分用户先用新功能,如果没发现什么问题,再继续扩大用户规模,如果有问题,也只是影响少量用户。例如:苹果的iOS系统,用户也可以选择安装最新的 Beta 版本,可以先体验新功能,但是必须忍受系统的不稳定。

二、管理软件项目文档

1、保证有效沟通

文档的主要作用是用于沟通,在所有的软件规划、设计、实现、运行、使用、服务等相关人员之间的信息交换。在文档编写过程中,要求所传递信息做到完整、准确、简洁,特别是要能够适合读者理解。紧紧抓住信息沟通这一核心目的,对于无论是制作文档模板还是编制具体文档,都是很重要的指导思想。记得早年学习过国标的软件工程文档规范,不仅文档很多,而且很多的文档的名列前茅章都是背景介绍,曾经试图按照这种规范来编写文档,名列前茅章写了几行就实在是写不下去了,这确实会令许多的软件开发人员感到抓狂,在今天更加强调响应速度的开发过程要求来说,几乎是无法执行的。因此,在编写文档时,关键就抓住两点:一时明确文档的读者对象,二是站在读者角度把读者希望了解的信息完整、准确、简洁的描述清楚。写文档和读文档,就如同是作者与读者之间在对话,把要传递的内容描述清楚,文档的目的就达到了。啰里啰嗦的无关内容,不仅浪费作者和读者的时间,也会影响对文档重要信息的突出。

2、与所采用的工程方法相匹配

在软件研发方面有许多不同的工程方法,瀑布式、原型法、敏捷开发等等,不同的开发过程实际意味着不同的生产工艺,那么在不同的工艺方法中各道工序的工作内容和要求不同、工序之间的衔接要求不同,必然也会对文档的要求产生不同。因此,在编写文档时,也需要考虑开发项目中所采用的工程方法的因素,在单位制定软件开发文档模板时,也需要考虑不同的文档体系,以支持不同的开发过程方法。

3、满足产品生命周期管理的需要

就产品文档而言,有的文档可以是增量式的,只说明某一个版本的具体情况,而有的文档则需要是全量式的,需要随着新版本的发布而不断更新,保持与最新版本相一致,最典型的例子就是用户手册,通常都要随着版本的更新不断进行同步更新,对应旧版本的用户手册已经没有实用价值。另外像产品使用的FAQ这类文档,也是需要不断加以补充、更新,并且以全量版本的方式发布。同时,像系统技术架构、数据结构、发生变更的代码等,这些其实也需要维护全量的最新版本,才能有效支持后续版本的设计开发的需要。因此在文档管理中,也需要对文档进一步细分,同时满足产品版本升级项目过程的需要,和产品生命周期持续发展以及最终交付使用及服务支持的需要。

4、区分文档的记录与整理

很多的人对于文档都很头疼,需要花费很多“额外”的时间来编写,但实际上我们看到,许多需要在文档记载的实质内容其实并不缺少,在软件研发的项目过程中,该讨论、该沟通的内容实质并不少。对此稍作区分可以看出,问题出在“整理”文档上。所以在实践中,可以将文档的形成分成两个阶段,一是在过程中形成的记录,这些记录可以是手画的草图拍成照片,可以是简单的会议记录,也可以是工具软件本身生成的特殊格式的输出文件,比如数据库设计文档、项目计划文档,这些专业工具形成的特殊格式的文件,其实比转换成EXCEL或PDF文档要好用,而且能够真正在后续的执行中继续发挥作用。能反映实质内容的这些记录形式,其实也是文档。

延伸阅读

软件项目文档编制要求

  •   标准化:从需求分析开始到投产应用所有涉及的每一种文档,都要给出一个可以执行的模板,所有完成的文档从里到外都要非常工整,具有专业水准,符合ISO9000及CMM质量标准要求。
  • 易用性:编制的各种软件文档,要便于不同的岗位人员进行阅读、理解、学习和使用。
  •  简洁性:要求软件项目中需要编写的文档内容突出主题,只反映要描述的问题,不包含其他不必要的东西,语言表达简明扼要,一清二楚,如有可能,可以配以适当的图表,以增强其清晰性。
  • 针对性:文档要按不同的类型、面对不同的对象,实行差异化编制,根据实际需要进行编写,也就是说文档编写目的要明确,因需而变。例如管理文档主要面向管理人员,用户文档主要面向用户,这两类文档不应像开发文档(面向开发人员)那样过多使用软件的专用术语。
  • 一致性:文档的行文应当十分确切,对于同一现象的描写,不能出现多义性的描述,同一项目中几个文档描述的内容应当是一致的,相互之间没有矛盾。
  • 完整性:任何一个文档都应当是完整的、独立的,没有遗漏和丢失的内容。也就是说每一种文档在设计时可以包含必要的图形、模型、叙述、表、索引、附录和参考文献,列举的这些内容都是完整的。同一软件项目涉及的几个文档之间可能存在部分内容相同,这种重复是必要的,不要在文档中出现“见XX文档XX章节”的现象。
  • 灵活性:在实际操作中要针对软件项目规模和复杂程度的不同,对现行的文档进行修正,决定编制的文档种类。可以依据自身软件开发情况,制定一个对文档编制的规定,用列表的形式列出在项目什么条件下,应该形成哪些文档,这些文档的详细程度。
  • 可追溯性:在软件项目的开发过程中,各个阶段编制的文档不是孤立的,而是与各个阶段完成的工作有密切的关系,随着项目开发工作的进展,具有一定的继承关系,体现出了可追溯的特性,如软件需求会在设计说明书、测试设计方案及用户手册中有所体现。
  • 设定优先级:在软件项目众多的文档中,其中一些文档必定是关键文档,起到非常重要的作用。对于这类文档要设定优先级别特别关注,不能有任何的错误存在,对于一些关键的地方要特别标记,特别说明。

文章标题:软件项目版本和项目文档如何管理,发布者:Z, ZLW,转载请注明出处:https://worktile.com/kb/p/34310

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Z, ZLWZ, ZLW认证作者
上一篇 2023年1月4日 下午9:09
下一篇 2023年1月4日 下午10:01

相关推荐

  • 服务型企业如何管理团队

    服务型企业管理团队的方法:一、建立项目化组织结构;二、制定项目管理流程;三、建立项目管理工具平台;四、建立项目管理文化;五、建立项目绩效评估机制。要实现项目化管理,企业需要建立一套完整的项目化组织结构,以确保项目执行的有效性和效率。 一、建立项目化组织结构 要实现项目化管理,企业需要建立一套完整的项…

    2023年3月22日
    38700
  • Java中的日志记录和审计如何实现

    Java中实现日志记录和审计通常涉及以下4个核心要素:1、选择恰当的日志框架,2、定义日志级别和格式,3、确保线程安全与性能,4、集成审计机制。 其中详细描述3、确保线程安全与性能是至关重要的环节。在多线程的应用环境中,日志记录系统必须能够处理并发日志写入,同时需要注意的是日志操作不应该显著降低应用…

    2024年1月8日
    38500
  • 项目管理是什么工作

    项目管理是一种系统地规划、组织、动员和控制资源以成功实现具体目标的职业。1、确保项目目标与组织的战略目标相一致;2、协调跨职能团队以完成项目任务;3、控制项目范围、时间、成本和质量;4、处理风险并确保项目按时按预算完成;5、沟通项目信息给利益相关者。强调协调跨职能团队的意义至关重要,因为它不仅影响任…

    2024年1月8日
    23100
  • 研发团队的管理方法

    在掌握研发团队的管理方法方面,1、明确目标与规划、2、强化团队沟通、3、推行敏捷开发、4、进行技能培训与发展、5、激励与奖赏机制是关键。明确目标与规划 确保所有成员对团队的愿景、目标和里程碑有共同的理解,这样他们才能朝着同一方向努力,有效推进研发进程。 一、建立明确的目标和规划 成立研发团队的首要任…

    2024年1月10日
    26400
  • pmo如何管理多个项目

    方法:一、资源需合理分配;二、多项目与战略实现息息相关;三、项目之间相互依赖与约束;四、项目的优先次序至关重要;五、团队间的协作和沟通频繁;六、项目的变更显得更加复杂多变。资源是有限的,同一资源不可能在同一时间供所有的项目使用。 一、资源需合理分配 资源是有限的,同一资源不可能在同一时间供所有的项目…

    2023年3月30日
    34400
  • json类库有哪些

    json类库有:1、FastJson;2、Json-lib;3、Gson;4、Jackson。Fastjson是一个Java语言编写的高性能功能完善的JSON库。它采用一种“假定有序快速匹配”的算法,把JSON Parse的性能提升到极致,是目前Java语言中非常快的JSON库。 1、FastJso…

    2023年1月15日
    84500
  • 社团管理系统设计

    社团管理系统设计的重点在于提高社团运营效率和成员体验。1、功能多样性:系统需包含管理人员信息、成员信息、活动组织、财务管理等多方面功能。2、用户友好界面:任何管理系统的成功与否,用户界面都起着决定性作用。3、数据安全性:成员的隐私保护和数据安全是系统设计时的重中之重。4、拓展性与可维护性:随着社团的…

    2024年1月9日
    29400
  • 简单的团队协作工具有哪些

    简单的团队协作工具有:1、Worktile;2、Teambition;3、Asana;4、Trello;5、Tower;6、Google Docs;7、Quip;8、Slack。其中,Worktile是一款主要面向中小团队的协同办公工具。 1、Worktile Worktile是一款主要面向中小团队…

    2023年1月4日
    78600
  • 什么是电商运营

    电商运营(Electronic Commerce Operation,简称ECO),从名字上来看就可以分成两块,分别是电子商务与运营,前者是后者的平台。电商运营是指在电子商务环境中,通过各种方式帮助企业促进销售的过程,它包括市场营销、产品运营、物流运营、技术运营、客服运营等。 一、电商运营是什么 电…

    2023年3月24日
    1.6K00
  • 有哪些优异的Java开源项目

    优异的Java开源项目有:1、Spring-Cloud-Admin;2、zuihou-admin-cloud;3、Spring Batch;4、Redis;5、PolarDB-X。Cloud-Admin 是国内为数不多的基于 Spring Cloud 微服务化开发平台,具有统一授权、认证后台管理系统…

    2023年2月6日
    93500

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部