威海软件定制开发常见问题

发布时间:2020-08-10 15:33:02

为了使软件开发有效地控制进度,有必要分析影响进度的各种因素, 或及时采取必要措施,以尽量减少计划进度与实际进度之间的偏差,实现对项目的积极控制。 影响软件开发项目进度的因素很多,例如人为因素,技术因素,财务因素,环境因素等。在软件开发项目的实施中,人为因素是最重要的因素,而技术因素是 归根结底也是人为因素。 软件开发项目进度控制的常见问题主要体现在对某些因素的考虑上。 常见问题包括以下情况:

关于软件开发问题的讨论


一、80-20原则和过于乐观的进度控制

80-20原则在软件开发项目进度控制方面,项目的80% 工作可以在20%的时间内完成,而其余20%的项目工作需要80%的时间。 这80%的项目工作不一定是在项目的早期阶段,而是可以分布在项目的所有阶段,但是其余20%左右的项目工作大部分是在后期。 因此,当软件开发进入编码阶段时,它将给人一种“快速进步”的感觉,这使项目经理,项目团队成员,用户和高级领导者产生了过于乐观的估计。 一些领导者看到该软件已交付给用户,他们最终在地面上“达成了交易”,与此同时,他们可能撤回了一些不必要的人力资源。 但是在许多情况下,这是处理用户不合理的交付期限的最后手段。 这样的结果会延迟以后的工作,同时,如果该软件尚未成熟,则会对用户造成不良影响。


二、范围和质量因素对进度的影响

软件开发项目的变化比其他任何建设项目都要频繁,这可能是由于软件 该程序是一种“隐形”和“易于修改”的东西。 用户根据需要进行更改。 这导致需求扩散。 有时项目经理不知道如何拒绝,加上说“我可以”的心理因素,通常会同意修改。 这样,将小零件集成到许多零件中逐渐影响了项目的进度。

如果表面上已达到目标,但检查后质量仍未达到要求,则必须对其进行重新加工以增加人力资源投资并及时增加投资。 实际上,它正在延迟进度。 无论是水平还是垂直查看,某些任务的质量都会影响整个项目的进度,而正面的某些任务的质量则会影响背面的某些任务的质量。


三、资源和预算变化对进度的影响

最重要的资源是人力资源。 有时,某些区域的人员不足,或者在多个项目的情况下,某些方面的人员被其他项目吸引,或者参与多个项目,或者不能在其他项目中参与该项目。 另一个非常重要的资源是信息资源,例如某些国家标准和行业标准。 用户可能无法提供它们,但是需要收集或购买它们。 如果不能及时获得它们,将会影响需求分析,设计或编码的工作。 。 其他资源,例如开发设备或软件未交付,也会影响进度。

预算实际上是一种资源,它的变化会影响某些资源的变化,从而影响进度。



四、低估了软件开发项目的实现条件 < 对技术开发项目的实现条件的低估表现为对技术难度的低估,对协调复杂性的低估以及对环境因素的低估。

首先是低估技术难度。 软件开发项目团队成员,有时甚至是企业的高级项目主管,常常低估了项目的技术难度。 低估技术难度实际上是高估了人们的能力,认为或希望将根据已制定的乐观项目计划顺利实施该项目,但实际上并非如此。 软件开发项目本身的高科技特征表明,在其实施中将存在许多技术难题。 除了需要高级技术人员实施外,还必须考虑科学研究和项目实验来解决一些性能问题;

其次,它低估了协调的复杂性和协调的难度。 多个项目团队参与项目时进行协调。 软件开发项目团队成员强调个人智慧和个性,这给项目工作协调带来了更多复杂性。 当一个大型项目由许多子项目组成时,不仅会增加彼此之间充分沟通的难度,而且还会增加项目协调和进度控制的难度。

另外,公司高级项目经理和项目经理经常低估环境因素,包括用户环境,行业环境,组织环境,社会环境和经济环境。 低估这些条件有主观和客观原因。 对项目环境的了解不足,导致准备不足。


五、项目状态信息收集情况

由于项目经理的经验或素质,项目状态信息的收集不够及时。 准确性和完整性相对较差。 其他原因也可能导致此现象。 一些项目团队员工报告好消息,但不报告担忧。 他们不希望其他人知道他们的工作情况糟糕。 例如,软件程序的编译可以首先编译一些肤浅的东西。

如果项目经理或管理团队未能做到这一点,那么现有的界面似乎已经完成了任务,但实际上它只是一个“原型”系统或演示系统。 及时检查并发现这种情况,将对项目的进展产生严重影响,当然,如果需要始终保持彼此警惕的气氛,管理人员应检查并做出改进。 管理角度和系统角度,使每个人都可以进行现实的沟通。温伯格说:“无论您有多聪明,如果没有信息,对项目的成功控制就是没有源头的水和没有根的树。”

信息收集和安排


六、实施计划的严格性

而不是将计划作为项目流程行动的基础, 将计划放在一边,然后更随意地执行。例如,对于内部 或项目团队的外部沟通,人员,周期,方法和方法应在计划中明确说明,并且不应省略。 但是,在实际的项目过程中,可能会出现沟通不及时或无法完全到达所有项目涉众的情况。 。

如果项目计划本身有错误,那么错误计划的实施肯定会产生错误。 例如,计划者在计划系统框架设计中的错误以及进度表中的错误。 在实际的项目实施中,除此类错误外,还可能由于项目实施中的错误而引起项目麻烦。 例如,项目的客户和其他项目干系人没有及时针对项目情况采取必要的措施,或者所采取的措施不适合特定情况,没有影响或产生了副作用。 此外,如果将项目中的某些工作(例如某个子系统或模块,组件)分包给第三方进行开发,则无法对其进行有效管理,这也将导致进度延迟。


七、计划变更调整的及时性

渐近细节是项目的特征,特别是对于软件开发项目,不是一个静态过程。 最初的项目计划可以更粗略地制定。 随着项目的进展,尤其是在明确要求之后,可以进一步澄清项目计划。 这时,应调整和修订项目计划,并应通过变更程序获得项目关系。 人类的共识。 随着项目的进行,该计划应逐步完善,调整和修订。 没有及时调整或随机且不负责任的计划的项目很难控制。 在高科技产业中,快速变化是主要特征。 因此,计划的制定需要在某些条件和假设下采用渐进细节方法,并随着项目的进行不断完善,调整,修改和改进。 对于较大的软件开发项目的工作分解结构,可以使用两种甚至多种WBS方法。 即,整体WBS根据整体阶段划分,并且次WBS专门用于需求调查阶段和轮廓设计完成之后的详细设计或编码阶段。 由于所需的功能点与设计的模块或组件之间没有一一对应的关系,因此详细设计或编码阶段的辅助WBS仅在轮廓设计完成后才能准确获得,而代码模块或组件 组件合理划分获得的第二个WBS可以有效地掌握和控制详细设计,编码阶段甚至测试阶段的进度。 一些项目的要求或设计不够详细,无法为工作任务的分解,平衡分配和进度管理提供参考。 因此,随着需求的细化和设计的清晰,应及时调整项目的分工和进度,根据项目的变化制定项目计划,使项目进度与项目一致 计划。


八、不可预见事件的影响将不予考虑

假设,约束,风险等。 被认为是“不完整的”,导致了一些不可预见的事件,这些事件在项目进度中并未考虑。 例如,由于不可预见的事件(例如,项目资源(尤其是人力资源,患病人员以及 辞职后,项目团队成员暂时还有其他更紧急的任务和人员轮换。 完善基于以下假设:劳动力不会短缺,员工不会生病,员工不会搬家。 公司环境,社会环境,自然灾害和人为影响等事件对项目进度的控制。 在项目计划中应充分考虑项目假设,约束,风险和对策对进度的影响,并在项目进度期间应定期进行审查。 再次查看是否存在新的条件,新的假设和约束。 潜在的条件和风险将影响项目的进度。 假定可以通过艰苦的工作直接解决问题,并且必须解决这些问题以确保按计划完成项目; 约束通常很难处理,但是可以通过其他方式来避免或补偿,例如牺牲进度,质量等。 ; 情况的假设和约束相对清晰。 如果问题不确定,则应在风险分析中列出该问题,以分析可能性,影响和实施措施。 实际上,疾病本身和工作人员的流动性不是问题,因为没有人可以充分考虑所有其他情况,而这并不是必须的。 但是,某些情况(例如加班或休息日)分配给项目工作,这会使项目更加不确定。 当然,在可能的情况下,我们必须为每种可能的情况做好准备,但是,如果预防成本更高,有时我们还必须承担某些风险,并考虑对冲。 损失和影响均由风险本身引起。此预防措施是不必要的。


九、程序员因素对进度的影响

有两种影响进度控制的一般开发人员心态:一种是技术完美主义。 二是自尊心。

技术完美主义的一个普遍现象是,一些程序员由于进度,经验和其他原因的压力而急于做这些事情。 例如先编写代码,然后在达到一定水平后再想一些更好的主意,或者查看一些更好的技术的介绍,或者认为外部结构可能是 更加美化,或者可以更优化内部结构,以便他们可以单独调整或公开软件以尝试新技术。 相反,使用这些新技术是否会对完成项目的目标产生任何影响,相反,它可能会带来潜在的不确定性危险。 这种方法不是基于用户的需求或项目团队的总体目标,而是会对软件开发的进度产生更大的影响。

自尊的一般可视化是,一些程序员在遇到一些自己无法解决的问题时倾向于发现自己,而不是问周围有经验的人。 。 有些人可能会通过聊天室等向其他人要求匿名建议。 如果幸运的话,它将很快得到解决,否则需要大量的实践和探索。 并且,如果您与周围的人进行协商,那么几天后您可能已经解决了问题。


十、不考虑软件开发的循环和重复特性

播放过程的分类 不同的软件开发太好了,调度时任务也不同。紧凑而僵化的结果是,系统频繁提交项目进度报告仅在表面上起作用, 并且按照计划的时间表提交结果仅在表面上起作用。 因为存在“高层策略,下层策略”,所以强制性条款使一些人产生误解:如果项目计划“声明”,则只能执行其中的一部分。 严格实施的结果是加密。 文本在该阶段没有被修改,此外,“里程碑”的错误概念会使人们轻易地错误地认为前一阶段的工作成果都是“审查”并完成的,但现实可以做到。 只是因为申请期已过,审阅者评论。 如果上下针迹是不同的人,则不会进行错误检查;如果上下针迹是相同的人,则可以非正式地更正先前的线错误,但是要按时间进行 能源消耗是下一阶段。 ,并且没有这种修改的记录。 这样的阶段进度控制措施实际上只是表面的。 最常见的情况是用户限制了在合同中提交软件系统的时间,实际上,这个时间远远不足以完成项目任务,而只能执行合同计划。 铜。 您不仅可以按照时间协议发送实际未完成的软件系统,完成系统安装,而且此时的“任务完成阶段”只是一个表面现象, 系统已经安装,但可能尚未经过严格和彻底的测试。 也有可能仅完成部分功能,某些功能被省略,某些功能从整个功能中被忽略,某些功能的某些过程被忽略,例如 在将隐式数据输入数据条目之前设置默认值和数据。诸如输入检查之类的功能已经实现了相当原始的功能。 这样,分发系统并不意味着完成项目,并且在交付项目后将花费更长的时间。


十一、其他因素

以上因素是影响项目进度的主要方面,此外还有许多其他因素。 实际上,最重要的因素仍然是人为因素,这里的人员包括项目中涉及的所有人员。 由于软件开发的性质,项目经理的素质,经理的资格,用户因素,项目成员因素等都会影响项目进度。 由于篇幅所限,不可能一一列出,这里只能分析几个常见因素。

不可否认,控制软件开发项目进度的能力具有一定的运气。 特别是对于需要用户合作的软件开发项目,其控制与用户的成熟度,软件应用领域的成熟度以及用户的成熟度息息相关。 行业标准的完整性。 在控制方面,将有一些与客户打交道的经验。 虽然我们说客户是上帝,并且以客户为中心,但我们并不一定要赋予他们权力。 重要的是我们如何领导,指导和理解。因此,项目控制的质量还与参与人际关系的人员的经验有关。

尽管存在许多不可控制的要素,但我们有责任首先区分可以控制的事物和不能控制的事物。 第一个项目经理是尽可能扩大可控范围,减少不可控领域,第二个是不要在“不可控”上花费太多时间, 但要花更多时间控制可控任务并采取预防措施。 ,以减少不可控制的因素对项目进度的影响。

一旦项目进入实施阶段,几乎每个项目经理的活动都会围绕进度进行。 进度控制,成本控制和质量控制目标是相反且一致的。 项目进度,质量和成本形成相互限制的三角关系,这需要项目经理进行平衡。




服务热线:4006068008 0531-85860101 15589999555邮箱:zlxk@zlxk.com地址:山东省济南市高新区鑫盛大厦2号楼24层

Copyright 2023,ALL Rights Reserved zlxk.com | | (c) Copyright 2024版权所有 鲁ICP备20032954号-1网站地图