软件项H的有效管理,对项目的成败具有至关重要的作用。软件项目的风险体现存些方血,如何回避这些风险,存本文中进行了探讨,最后指出建立合理的管理流程,对软件项目的管理来说,是非常重要的。
论文关键词:软件项目:管流程;风险分析
0引言
软件项目管理的提出是在2O世纪70年代中期的美国,当时美国国防部专研究了软件开发不能按时提交,预算超支和质量达到用户要求的原因,结果发现70%的项目是因为管理不善引起的,而非技术原因。于是软件开发者开始逐渐重视起软件开发中的各项管理。到了20世纪90年代中期,软件研发项日管理不善的问题仍然存在。据美国软件工程实施现状的调查,软件研发的情况仍然很难预测,大约只有10%的项目能够在预定的费用和进度下交付。
究竟怎么样才能做好软件项目的管理及风险分析,保证项目顺利实施呢?这是个比较复杂的问题,下面就软件项目的特点,缩合大家的经验总结,谈一点看法。
1软件项目管理风险分析
软件项目管是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对人员、产品、过程和项目进行分析和管理的活动。目的是为了让软件项目尤其是大型项目的整个软件生命周期(从分析、设计、编码、测试、到维护全过程)都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。
怎样进行有效的项目管理呢?首先我们来分析下影响软件项目的质量因素。
软件项目,尤其是大型项目有二项非常重要的因素,会影响整个项目的进度与质量,它们分别是:“人”、“流程” 与“技术”。
“人”是项目中最难预料与掌控的一项要素,人可分成两部份,一是客户,二是开发团队。
“技术”是指软件项目所使用的开发半台,主要指开发环境及开发语言。是最容易掌握的部份。
“流程”是指软件开发流程或是项目流程,定义流程的目的是要掌控所有的情况。项目的最大敌人是时间及预算,这两者都是有限的,如何在有限预算内准时完成项目,可说是一项艺术。
1.1“人”因素分析
“人”是指客户和开发团队,其中开发团队的因素对项目影响很大,对于这方面影响因素主要分析如下:
·人员技能未达到要求
在项目开始之初,我们假设项目成员都能够达到组织级的要求,但往往并不是每个成员都能够达到要求。而且项目中每个成员的生产率差异可能很大,也给项目进度安排造成影响。所以在项目始之初,应该对项目成员的技能进行一次总体的评估,对于大家都欠缺的技能,应该安排统一的培训,后续需要对培训的效果进行跟踪;对于个别人员技能欠缺的,应该单独预留自我学习时间或通过以师带徒的方式进行培养,使其技能能够尽快达到要求:对于项目新员的工作和任务,应该加强评审和检查,保证输出不出现大的偏差而导致后续大量的返工。对于这方影响因素主要分析如下:
·项目成员责任心不强
态度决定一切,细节决定成败。对于项目过程中的各项任务,经常出现由于项目成员责任心不强敷衍了事,导致产出的工件质量较差,引起大量返工的情况。在这种情况下,项目更应该加强项目规范的建设,项目经理应加强同这些成员的单独沟通,加强项目的团队建设和集体荣誉感。让项目成员感觉到做的系统是他们自己的产品,而不是公司的项目,项目经理的项目。
·项目沟通问题
在软件项目中,保证项目各种角色和成员中的高效沟通是很重要的,如何建立起快捷顺畅的沟通渠道,采用最佳的沟通方式来解决问题,必须在项目中经常强调。如果一周的项目任务花存实际做事情上有2天,而花在沟通上却占用了3天,这时必须及时分析和总结原因。沟通最重要的就是要在最短的时间里面,采用各种方法或工具,使交流双方或多方达成一致。
·项目人员流失
项目人员特别是项目关键成员在项目进行过程中的流失,对项目影响很大,对于这种情况,应该在项目开始之初,就作为专门的风险进行跟踪,并考虑具体的应对措施。
1.2“流程”因素分析
软件的开发流程般定义为:
需求分析一可行性分析一概要设计一结构化设计一详细设计一编码一软件测试一软件维护。
“流程”中软件项目的风险,主要体现存4个阶段:软件需求阶段、软件设计阶段、软件实现阶段和软件维护阶段
·软件需求阶段
软件的开发是以用户的需求开始,在大多数情况下,用户需求要靠软件开发方诱导,才能保证需求的完整,再以的形式形成《用户需求》这一重要的文档。需求分析更多的是开发方确认需求的可行性和一致性的过程,在此阶段需要和用户进行广泛的交流和确认。需求和需求分析的任何疏漏造成的损失,会在软件系统的后续阶段被一级级地放大,因此本阶段的风险最大。
·软件设计阶段
设计的主要目的在于软件功能正确地反映了需求,需求的不完整和对需求分析的不完整或者错误,在设计阶段将被成倍地放大。设计阶段的主要任务是完成系统体系结构的定义,使之能够完成需求阶段的即定目标;另一方面也是检验需求的致性和需求分析的完整性和正确性。
设计阶段的风险主要来自于系统分析人员。分析人员存设计系统结构时过于定制,系统的可扩展性较弱,会给后期维护带来巨大的负担和维护成本的激增。对用户来说系统的使用比例会有明显的折扣,甚至会造成软件寿命过短。反之,软件结构的过于灵活和通用,必然引起软件实现的难度增加,系统的复杂度上升,可靠性降低,给实现和测试阶段带来风险,系统的稳定性也会受到影响。从另一个角度上看,用户需求和将来软件运行环境的变化都是必然的,目前软件设计的所渭的“通用性”是否就能很好的适应将来需求和运行环境的变化,都是需要认真折衷的,而这种折中也蕴涵着很大的风险。
设计阶段蕴涵的另一种风险来自于设计文档。文档的不健全不仅会造成实现阶段的困难,更会在后期的测试和维护造成灾难性的后果,例如根本无法对软件系统进行版本级,甚至是发现的简单错误都无从更正。
·软件实现阶段
软件的实现从某种意义上讲是软件代码的生产。源代码木身也是文档的一部分,同时它又是将来运行于计算机系统之上的实体。源代码书的规范性,可读性是该阶段的主要风险来源。规范的代码生产会把属于程序员自身个性风格的成分引入代码的比例降到最低限度,从而减小了系统整合的风险。
·软件维护阶段
软件维护包含两个主要的维护阶段,一个是软件生产完毕到软件试运行阶段的维护,这个阶段是一种实环境的测试性维护,其主要目的是发现在测试环境中不能或末发现的问题;另一个阶段是当软件的运行不再能适应用户业务需求或是用户的运行环境(包括硬件平台、软件环境等)时进行的软件维护,具体可能是软件的版本升级或软件移植等。
1.3“技术”因素分析
存软件项目开发和建设的过程中,技术因素是一个非常重要的因素。项目组一定要本着项目的实际要求,选用合适、成熟的技术,千万不要无视项目的实际情况选用一些虽然先进但并非项目所必须且自己又不熟悉的技术。如果项目所要求的技术项目成员不具备或掌握不够,则需要重点关注该风险因素。
2建立项目管理流程
那么如何解决这些问题呢?实际上很多模型已经给出了答案,比如RUP、QoS、XP等,但是大家在学习和使用这些模型的时候,往往觉得这些模型提出的概念和实施比较难以操作,另外就是不管是RUP、Q0S还是XP,既然是一个方法模型,就不可避免要描述为一个完整的、系统化的理论模型,否则就体现不出理论的完整和逻辑的严谨。下面我们只是把以软件设计为核心的开发管理流程化,避免在频繁发生外界变化的情况下,变被动为主动。
软件项目管理除了按照既定的管理流程进行有效的控制,还要对各阶段的文档进行标准化管理,保证文档的完整和标准化,为软件后期的维护提供有力的支持。
3结束语
软件项目管理和其它的项目管理相比有相当的特殊性。首先,软件是纯知识产品,其开发进度和质量很难估计和度量,生产效率也难以预测和保证。其次,软件系统的复杂性也导致了开发过程中各种风险的难以预见和控制。幸运的是,时问和预算都是可摔制的,并不是指我们可以控制时间快慢或长短,是如何叫确知道哪一个时间点,需要何种产出物,而我们有多少的预算町以完成。为了有效控制,我们需要一个标准的流程,只要照着规矩走,一切都好办。
持续集成是极限编程12个基本原则之一,正在被越来越多的团队所采用。软件项目管理涉及到九大知识领域,贯穿于软件过程的始终,目的是为了让软件项目的整个软件生命周期(从分析、设计、编码到测试、维护全过程)都能在管理者的控制之下,以预定成本按期,按质的完成软件交付用户使用。持续集成这种软件开发实践,对于软件项目管理的各个领域的管理有着积极的作用。 一、引言 软件项目经理不但要用管理知识管理整个项目.还...
介绍了信息系统建设中软件项目管理的理念,深入探讨了软件项目管理的组织模式、内容、配置管理、质量管理、风险管理及人员管理等,并给出了软件项目计划书的范本。 论文关键词:软件项目管理;软件配置管理;软件项目计划书 1软件项目管理的组织模式 1.1项目管理委员会。项目管理委员会是公司项目管理的最高决策机构,—般由公司总经理、副总经理组成。主要职责如下:(1)照项目管理相关制度管理项...
个人知识管理工具是实施知识管理的物质基础,通过对综合性的个人知识管理系统的比较分析,提出选择个人知识管理工具的原则,使个体能够高效地进行知识整合,提高个人在社会和组织中的价值。 论文关键词:个人知识管理工具;知识操作;知识组织;知识共享 1个人知识管理工具的类型 个人知识管理是知识识别、获取、开发、共享、利用和评价的过程。研究者从不同角度对个人知识管理工具进行了不同的分类。钟琳从企业中知识的...
计算机网络入侵会给系统带来灾难性的后果,为了降低网络入侵带来的风险,可以运用网络攻防实验来模拟网络入侵。阐述了攻防实验是对系统风险评估的有效手段,是信息安全技术的重要组成部分。攻防实验在刚起步的时候仅仅是对信息安全技术的有效提升,而之后它的重要性会逐渐增加并开始成为信息系统风险评估的重要技术补充。重点从技术的角度叙述了攻防实验的主要方法,从而使攻防实验井然有序地进行。 论文关键词:攻防实验技术;...
针对软件项目和项目开发中的复杂性、易变性和不可预见性,研究了软件项目管理流程方法设计了软件项目运作过程的总体流程,分析了各阶段流程的进入条件、主要工作过程和工作结果 论文关键词:软件过程;软件项目管理;流程管理 1引言 长期以来,软件项目高失败率的状况一直困扰着人们,研究表明,软件项目失败的原因主要有两个:一是应用项目的复杂性;二是缺乏合格的软件项目管理人才。实践证明缺乏有效的项目管理是导致...
本文提出了一种适用于IEEE754-1985标准的浮点数除法器的设计体系。本文的除法器体系基于NewSvoboda-Tung除法算法原理,采用基数为8的MROR(maximallyredundantmaximallyrecorded)符号数位集实现。在NST除法器中,被除数和除数都必须经过预处理。本文采用了一种预处理的硬件设计方案,该方案的时间复杂度为一个固定的常数(不依赖于除数数位的长短)。在除...
本文主要分析了我国软件项目管理的现状及存在的误区,总结了软件项目管理方面的经验,提出了初步的解决方案和办法。 随着计算机硬件水平的不断提高,计算机软件的规模和复杂度也随之增加。计算机软件开发从“个人英雄”时代向团队时代迈进,计算机软件项目的管理也从“作坊式”管理向“软件工厂式”管理迈进。这就要求软件开发人员特别是软件项目管理...
本文通过电子政务的表现形式,阐述了电子政务的核心与本质的内容,并在研究、分析影响电子政务建设的信息全等因素的基础上,阐述了如何通过信息安全等级保护制度的实施及其过程中必须遵循的一些原则,按阶段、分级别提高信息安全保障能力和水平,维护国家安全、社会稳定和公共利益,保障和促进信息化建设健康发展。 论文关键词:等级保护;信息安全;电子政务 0引言 当代信息技术和互联网技术的迅猛发展,使得电子政务成...
针对物流企业信息系统的建设现状,提出了物流网格的概念,并基于GlobusTookit的五层沙漏结构搭建六层物流网格体系结构,在此基础上,构建基于网格的物流公共信息平台,实现物流企业信息系统的集成整合与信息共享。 1引言 随着互联网时代的到来,企业的生产成为虚拟企业联盟之间的产品全生命周期的协作与信息资源的充分共享,这就要求跨越不同企业之间存在的空间差距,利用网络实现资源共享,开展异地协同的快速...
由校园网运行和信息安全问题,提出加强校园网管理,提高教师和学生信息安全意识。并对具体的网络管理实施方法和信息安全保护措施进行探究和实践。 一、引言 随着校园网络建设的不断发展,学院在教学、管理、科研以及对外信息交流等多方面对校园网的依赖性日渐增强,以网络的方式来获取信息、存储信息和交流信息成为学院教师和学生使用信息的重要手段之一。然而,就目前的网络运行状况来看,校园网信息安全问题日益突出,网络...
影响因子:3.557
影响因子:0.000
影响因子:3.315
影响因子:0.340
影响因子:15.304
影响因子:1.072
影响因子:1.530
影响因子:0.000