技术管理:项目开发中的几种风险管理

软件开发是一种高脑力,高体力,高风险的活动,在开发过程的任何一个阶段都可能存在风险。
在项目开发过程中,为了使项目开发更加平稳,获取更高的价值。避免风险,缓解风险带来的不利影响。所以要进行有效的风险管理

一:什么是风险管理

风险管理是对项目风险进行识别、分析、应对和监控的过程,是项目管理中很重要的管理活动,有效的实施软件风险管理是软件项目开发工作顺利完成的保证

二:项目管理中存在哪些风险

A:需求不明确

需求不明确,这个是项目开发中最容易遇到的问题,也是开发经常遇到的问题。这类问题往往是需求要求未细化,需求描述不清楚,需求考虑不周全,需求逻辑矛盾等等,
这些问题的出现,往往会影响项目的开发进度,甚至打击开发人员的积极性。

那怎么解决?
1、写出详细的需求文档
写出详细的需求文档,甚至可以和开发一起讨论重要的需求

2、开发原型图
产品经理用原型开发工具,开发出原型图,这样把需求可视化了,能让开发人员更清楚的了解需求,有利于开发人员的逻辑开发。

3、需求讨论会
对于那些大项目,用户比较多的项目,需要收集更多的用户需求,跟各个部门配合,大家一起讨论这些需求,把需求明确定义,排定开发优先级

4、需求分析
需求分析是一个项目的基础,是重中之重的事情。
因为你开发的软件项目,用户是不是喜欢?能不能帮助用户解决问题?是不是用户需要的产品?这些都涉及到了用户需求分析,能不能抓住用户痛点,然后提炼出用户需求,这些都是需求分析的基础

后补:第一:最重要的是了解自己公司的业务,才能更好的理解需求,才能判断哪些是真需求,哪些是伪需求,哪些是不重要的需求。
第二:同理心,站在对方的角度考虑问题

B:项目管理缺少可见性

在项目开发过程中,缺少可视化的管理。
在管理项目的时候,让大家能够感受到项目开发的进度,用眼睛能够看到项目开发到哪里了,有一个直观的感觉

1、看板
可以把项目分成几个大的模块,每个模块下面有几大功能,写到看板上面,然后在后面写上开发的进度百分比,让大家都能够看到这个项目开发进展情况

2、甘特图
甘特图也可以对项目的进度进行管理,可视化

3、持续集成
我们把一个较大的项目集成分成小的项目来开发,每次都集成这个小项目,而不是一次开发完一次集成大的项目。这样我们可以每一天每一周都进行集成,遇到了错误就可以及时的改正。“大事化小”的方法

持续集成,让项目的进度跟踪工作也变得容易。也能看见已完成和未完成的功能 - 可视化。

4、bug管理
用一些bug管理工具,进行bug的集中管理,也是一种很好的可视化管理。

C:一次性开发完成

我们开发项目最终是要交付功能完善的项目。
对于小型项目,可以一次性开发完成并交付。但是对于大项目,我们可以设置里程碑式的开发模式,阶段性的交付。这样既可以修正前面开发阶段中出现的bug,也可以阶段性的完成功能点,大家有一点满足感。
里程碑式:把大项目分解为几个小的里程碑,每一个完成的里程碑都是一段开发的结束。分阶段的完成项目的开发方式。分解的方法模式

D:新技术

新技术,它是一把双刃剑,既能促进你的开发效率,交付效率增加,也能给你制造未知的bug,从而降低软件的可用性。
因为新技术一般都是为了更为有效的解决问题才发明的。但是因为新,可能存在潜在的风险和bug,而这种风险又是未知的。

怎么样降低这种风险?
1、技术活跃度
我们要看看这种技术活跃度,开发这种技术的人是不是很活跃,不时的修改bug,在社区回答问题等等。 还有这个技术的社区是不是很活跃,大家积极的讨论各种问题,用这种技术解决各种问题,开发出各种项目等等。

2、大厂使用情况
看看其他场景的使用情况。通常情况下,大厂一般都会有布道会之类的,我们可以看看大厂使用这种技术的情况,他们做了那些项目,解决了哪些问题,可以参考参考

3、自己实践
自己动手实践。自己亲自去探索这门技术,看看它的使用,难易度,这门技术解决了什么问题,适不适合现阶段使用,全面的进行评估。

4、开发人员掌握的程度
对于新技术,开发人员有多少人愿意尝试,有多少已经尝试了,哪些人掌握的比较好,这些都是需要搞明白弄清楚。因为只有成员掌握了,遇到问题才能很好的解决。

E:质量管理

交付的项目,一般我们都希望用户操作满意,带给用户良好的体验,而不要出现操作不顺畅,甚至出bug之类的质量问题。

1、自己测试
测试人员要尽可能多的测试软件,找出潜在的bug风险。
开发人员尽可能多的写功能测试,自己来测试自己开发的功能是不是有bug,积极的保证自己写的代码质量不出大的问题。

2、自动测试
引入一些自动化的测试,来测试软件各方面的功能

3、code review
开发人员可以相互交叉code review,不仅能相互学习,还能自查bug。
或者更高级的人员review低级别人员写的代码。
这些都是保证软件质量的一些手段。

F:人员流动的风险

公司的人员流动是一件很正常的事情,不管是谋求自身发展还是对公司发展不满,总会有一些人员的流动。我们不能因为人员的流动,就给项目开发进度带来影响。
1、程序开发文档
一些难点程序,必须要有程序开发文档来说明这段程序开发过程,目的

2、人才储备
后备人才的培养,最好形成一个梯队,前面的人员离职之后,梯队后面的人能顶上来。
所以领导要做好日常人才的培养工作。平常多组织大家相互交流项目开发经验,比如在开发项目中使用了好的方法,好的设计模式,好的架构,都可以在技术分享会上宣讲,这样大家相互交流,促进大家技术的发展,也让大家相互了解开发的项目内容。

3、核心功能分配
核心功能的开发,可以分解成多个部分,分配给不同的开发人员来开发,不要集中在某个人身上。

4、人员轮岗
轮岗的好处当然不止这一个,还有很多好处。
比如可以培养同理心,站在对方角度考虑问题,因为你到他的岗位了,就必需站在他这个岗位上思考问题。
比如对业务的熟悉,不止是自己的那一小块业务技术了。
以后与这个岗位沟通,协作也更顺畅。
等等,好处多多。

[完]

posted @ 2019-05-18 18:15  九卷  阅读(1855)  评论(0编辑  收藏  举报