软件项目的风险

项目的风险管理(人员部分) 1759137 谢汉森

软件开发项目中,人员中发生风险的问题最具有不确定性。这个不确定性包括开发人员和客户。

团队中较有可能出现的失误,比如人员流动,工作交接问题出现失误,没有比较完备的人员组织系统等等。这都是在开发过程中出现的。回到人员本身,又大概可分为三个方面:

1)人员技术达不到要求:假设项目开始之初设定每个人都能完成自己的目标,一旦开始工作,未必能如愿。每个人都是有差距和差异的,不同的完成进度会给整个项目带来很大风险。个别人员的技术缺陷,应该留有后备人员补充,项目组也应及时注意每个人的进度,加强审查,保证能顺利完工。

2)项目组沟通问题:开发人员在进行代码实现时出现问题,上报后未能及时与项目组人员进行有效沟通,很可能导致进度拖后,所以建立一个完善的沟通反馈机制是非常重要的。

3)开发人员积极性缺乏:开发人员敷衍了事,没有对代码仔细检查,认为做完自己的事情,没有出现差错即可,很可能导致产品质量下降,甚至报废。经理应该加强团队凝聚力,建设集体荣誉感。

客户中可能存在的问题:

1)后续对产品规划产生较大的改动,致使前代产品不能向下兼容。

2)提出不合理的增求,提供的成本不足以维持后续开发。

   

 

 

 

 

 

 

 

项目的风险管理(流程部分)1759121 蔡旭洋

  1. 项目的预算

很少有公司拥有无限的预算,项目亦然,所以项目的利益相关者首先要确定他们的项目是否取得了巨大的成功或巨大的失败是最重要的。我们的项目初步定下来了具体做项目所需求的东西,但是计划永远赶不上变化,在项目进行的过程中,肯定会需要再添加其他设备,还有与其他公司需要一定的合作,或是需要他们的某些信息,这就会导致我们的项目预算不足,这是一个很严重的问题。

解决方法:估算成本的时候要现实。确保从所有适用的利益相关者获得投入。更重要的是建立突发事件。这一步是至关重要的。PM需要考虑到不在他控制范围内的事物,例如可能会影响供应量、资源、劳动力、融资、产品/服务短缺、汇率等的外部环境因素。今天的价格或费率可能不会贯穿到项目的后期阶段。确保供应商履行承诺并准备后备计划。获得其他利益相关方的信息资源并审查供应商有助于制定可满足需求的现实的预算,即便有意外的情况影响成本。

频繁的预算监督对于防止预算的过度失控来说也至关重要。通过频繁的预算审查来维持项目的机会远远大于你预测一次并忘记的可能性。范围蔓延是项目超支的主要原因之一。由于计划外的工作进入项目,可收费的小时数和项目预算可能会失去控制。项目经理必须为项目的初始要求中不涵盖的工作创建变更单,仔细管理范围。变更单授权项目的额外资金,以支付额外工作费用,从而使项目与新预算保持一致。

保持预算的重要部分是确保所有团队成员也了解当前的预算状况。让项目团队了解项目预算预测,一个知情的团队才是拥有其项目所有权授权团队。

  1. 需求

我们的项目是做一个app,帮助水产养殖户进行信息交流,但是因为项目开发人员中是没有对水产养殖这个行业有相关了解的人员的,所以会导致可能在项目开发到一半时,从水产养殖行业的相关人员那里了解到的需求和我们在项目初期调研所总结出来的需求有一定更新和更改,这就是我们可能面临的需求风险。

方法:预防这种风险的办法是需要团队成员的高度配合和密切协作的阶段,在进行需求分析的时候要仔细分配团队成员的工作,具体分配如下:如项目经理负责需求分析阶段项目进度的安排和控制;参与项目的各种资源调度;负责项目的总体协调工作,人员组成为双方项目负责人。系统分析人员要通过与用户进行良好的沟通,了解业务流程、功能需求、系统构想和项目目标,完成软件需求说明书的编制任务,等等。

项目的风险管理(技术部分)1759139 王越

  1. 开发和测试工具风险

(1)  新技术引入

技术创新是一种具有探索性、创造性的技术经济活动。在开发过程中引入新技术,不可避免地要遇到各种风险。、

解决方法:通过T形软件开发、充分论证、多阶段评审、同行经验等措施可降低新技术风险。

(T形软件开发:在项目开发早期,开发小组应该建立系统的架构,解决关键技术难题、开发系统的基础构件,并对系统所需要应用的技术做深度探索。例如:基于JavaEE5构建全国联网售票系统,涉及到分布式事务处理、海量数据存储、异构平台互连等关键问题,应该优先处理这些问题;对开发所涉及到的EJB3、JSF、JBoss Seam、Eclipse RCP等技术,要做深度探索。)

(2)  性能问题

由于先期设计不足,性能问题往往在系统切换或新系统使用一段时间后暴露。出现性能问题往往要进行大量的优化工作,甚至局部的或全面的重新设计。无论是用户还是开发者,谁都不希望出现性能问题。

解决方法:

一.性能规划
在系统设计时,应做好前期做性能规划,对可能出现性能问题的环节做到充足的估计。在做数据库设计时,尽可能在开发过程中解决了性能问题。不至于到了项目后期才解决性能问题,既费钱又费时。

二.性能测试
在开发过程中,要重视性能测试和压力测试,尽可能模拟现实使用环境,搭建测试平台。另外,由于开发环境的计算机往往比生产环境的计算机配置高,在做测试时应尽量找一些配置低的机器、较小的网络带宽进行测试。

三.充足的调试时间
在项目开发计划中,为后期性能优化留有余地。在对系统进行性能优化后,要进行性能测试和压力测试,可能还要做几次回归测试。因此,应该留有充足的时间和人力。

(3)  测试技术风险

某些项目存在技术难度,测试能力和经验所限,技术水平相对较差导 致测试进展缓慢,测试结果准确性不够,项目发布日期延期等问题.

解决方法:学习相关技术,寻找最佳的解决方法。

(4)  技术兼容性风险

硬件产品之间、系统软件(操作系统、中间件、数据库管理系统)与主机设备之间、系统软件之间、应用软件与系统软件之间以及应用软件之间,都可能存在兼容性问题。往往系统集成的项目越复杂,兼容性问题就越有可能存在。

解决方法:

一.设计先行
在做系统的总体设计方案时,务必把好相关产品的选型关,确保网络、主机、系统软件与应用软件之间不要存在较大的技术兼容性问题。在网络平台建设方案中,明确相关设备的技术参数和配置要求。

二.售前产品测试
在做项目招投标工作时,要求投标方在售前提供产品兼容性测试,以避免在项目实施过程中才暴露技术兼容性问题。涉及应用软件开发的集成项目,要在开发工作的早期,做技术兼容性测试,以避免在项目开发后期才暴露技术兼容性问题。

  1. 平台和安全性

(1)  木马程序

解决方法:一旦中了木马程序。可以用最新版的杀毒软件进行查杀。

(2)  安全漏洞

威胁网站安全的因素并不是全部来自外部。Web服务器和网站自身的软件漏洞才是致命的。漏洞一旦被黑客发现并利用,会产生灾难性的后果,导致用户信息泄露,或者服务器崩溃。

解决方法:应及时更新或打上补丁,降低被攻击的概率。

  1. 发布产品的技术

掌握的发布产品的技术落后,无相关渠道发布。

解决方法:学习发布产品的技术,寻找相关渠道方。

  1. 与我们产品相关的技术

得不到与我们产品相关的技术方的授权。

解决方法:联系技术方,经过商谈,让其授权。

项目的风险管理(环境部分) 徐梓渊 1759131

 

1. 开发环境:组员在项目开发开始一段时间后,感觉当前的开发环境与本项目不够贴合,从而选择了新的开发环境导致之前的工作白费;组员在学习新开发工具的时间过长,导致项目进度缓慢;开发环境不能及时配置完成、开发环境的配置设施为及时到位,拖慢项目进度。

解决方法:在项目开始之初,就明确开发用的环境并做好相关准备;督促组员新学习开发工具,加快学习进度。

2. 自然界:部分自然灾害(台风、地震……)导致水产行业受到冲击,从而导致受本论坛影响而从事水产养殖的客户利益受到损失,怪罪于本论坛,使平台口碑下降。

解决方法:论坛提供相关的止损建议;提醒用户投资需谨慎。

3. 法律法规:一些用户在使用论坛后未取得相关执照就养殖一些特定水产品(娃娃鱼、鳄鱼……),受到相关部门惩罚,影响论坛的形象。
解决方法:论坛在展示水产品种类时,特别标注那些需要取得相关执照才能养殖的水产品种类。

4. 市场竞争:同类产品恶性竞争,导致用户流失,

猜你喜欢

转载自www.cnblogs.com/hunzaicai/p/10747143.html