我想开发软件-「失败or成功?」

admin 软件开发资讯 2019-04-23 14:20 0

我想开发软件要怎么才能成功
 
 关键词:我想开发一个软件要注意什么、做软件开发的公司怎么选择
 
 我从事软件开发工作已经有十年了,这十年中,亲眼所见,亲耳所闻,报纸,杂志,网络上有各种各样软件项目开发的经验和教训,总的感觉是,成功的少,而失败的多,有的是部分失败,有的是完全失败,那么软件为什么会失败呢?也经常有朋友问我想开发软件要怎么才成开发成功?对于这个问题的回答,有各种各样的答案,总结起来,大概是这么几种,本文从六个方面对软件开发失败原因进行分析。
 
 需求不明确,把握不充分
 
 这是我们经常遇到的问题。一方面,由于客户(需求方)IT知识缺乏,一开始自己也不知道要开发什么样的系统,或者懒于系统地整理出来,经常是走一步算一步,不断地提出和更改需求,使得软件开发方叫苦连天。另一方面,软件开发方由于行业知识的缺乏和设计人员水平的低下,不能完全理解客户的需求说明,而又没有加以严格的确认,经常是以想当然的方法进行系统设计,结果是与需求方的标准偏移太多,导致推倒重来。因此,需求分析必须注重双方理解和认识的一致,逐项逐条地进行确认。需求不明确是软件开发失败的重要原因之一。 
 
 工数估算过少
 
 软件开发的工数估算是一项很重要的工作,必须综合开发的阶段、人员的生产率、工作的复杂程度、历史经验等因素,将一些定性的内容定量化。对工数的重要性认识不足,经常用拍脑袋的方式草算,是最常见的问题。还有,软件开发经常会出现一些平时不可见的工作量,如人员的业务与新技术培训时间、各个开发阶段的评审、测评时间等,经验不足的项目经理经常会遗漏这些工数的计算。同时,还有如下一些原因也是很典型的:
 
 我想开发软件-「失败or成功?」:出于公司客户和公司上层的压力在工数估算上予以妥协。例如,客户威胁要用工数更少的开发商,公司因经营困难必须压缩削减费用、缩短工期,最后只能妥协,寄希望于软件开发员工加班。软件开发者过于自信或出于自尊心问题,对一些技术问题不够重视,或者担心估算工数多被嘲笑。过分凭经验。由于有过去的成功经验,没有具体分析就认为这次项目估计也差不多,而没有想到这次项目可能规模更大、项目组成员更多、素质各异、新员工很多,而且软件开发的是一个新的行业。
 
 项目组织过小
 
 每个公司都希望以最少的成本完成软件开发项目,人手不足是大多数软件开发过程中都会面临的问题。还有一种情况是软件开发组成员的技术水平达不到软件开发的要求,公司只能提供这些分配好的软件开发技术人员,或者由于软件开发负责人的失误,在软件开发工数估算时没有明确要求技术水平,寄希望于软件开发人员自己的努力。甚至一些项目经理认为,在项目启动时不需要高水平的软件开发技术人员。
 
 我想开发一款软件要多少钱
 
 软件开发计划不充分
 
 没有良好的软件开发计划和开发目标,软件开发的成功就无从谈起。软件开发计划太粗略,主要反映在以下几个方面:
 
 ①工作分担(责任范围)不明确,工作分割结构与软件开发组织结构不明确或者不相对应,各成员之间的衔接不明确,导致有一些软件开发工作根本无人负责。②每个软件开发阶段的提交结果定义不明确,中间结果是否已经完成,完成了多少模糊不清,结果是到了软件开发后期堆积了大量工作。③软件开发计划没有指定阶段或检查点,也没有规定设计评审期。④软件开发计划没有规定进度管理方法和职责,导致无法正常进行进度管理。
 
 设计能力不足
 
 我想开发软件-「失败or成功?」:软件开发组设计人员能力的低下是项目失败的原因之一。一方面,由于对技术问题的难度未能正确评价,将设计任务交给了与要求水平不相称的软件开发人员,造成设计结果无法实现。另一方面,随着资源外包现象的日益普遍,一些公司经常因工期紧而匆忙将中标的项目部分转包给其他协作公司,这些公司的软件开发设计开发能力如不加仔细评价,就会对整个软件开发造成影响。
 
 项目经理的管理能力不足
 
 没有及时把握进度。项目经理自己也不知道项目的状态,下属人员报喜不报忧,害怕报告问题后给自己添麻烦。进度管理必须随时收集有关项目管理的数据,项目开发人员总是担心管理工作会增加自己的工作量,不愿配合。管理人员甚至不知道应该收集哪些相关数据。
 
 由于没有进行定期的项目评审报告会,表面上进展顺利而实际上隐藏着很多危机。管理人员总是轻信下属的报告而没有加以认真核实。
 
 出现严重问题时,管理人员没有根据现阶段状况重新评价需求分析结果、工数估算、设计结果等就匆忙采取头痛医头、脚痛医脚的措施,致使问题更加严重,所以对待发现的问题要从根本上解决。
 
 以上是我想开发软件-失败or成功全文,文章中谈到了项目失败的几方面原因,实际上还有很多原因,很难一一列举。通过这些原因的列举,希望能激起读者的共鸣。
 
 
 

发表评论

评论列表(条)