深入分析了软件项目实施中影响进度的主要原因,根据软件开发过程中不同阶段进度管理的特点,将软件项目进度管理划分为4个主要的工作阶段:计划阶段、需求阶段、实施阶段及收尾阶段。结合各阶段进度管理工作的特点,说明进度管理需要解决的关键问题及相应的解决办法。
论文关键词:进度管理;项目计划;软件工程;软件项目管理
随着计算机应用的日益普及和深入,软件产品的规模越来越大,复杂性越来越高,传统个人作坊式的开发方式已经越来越不适应软件产业发展的要求,软件产业已逐步进入以团队开发为主的阶段,软件开发过程中的项目管理工作日益受到人们的关注和重视。在软件项目实施过程中,影响项目成功的因素有许多,其中进度管理是软件项目管理的一个重要方面。
1影响软件项目进度的因素分析
统计表明:导致软件项目不能按进度要求完成的主要因素有以下几个方面:
1)缺乏详细准确的项目计划。项目计划确定了项目的范围、进度、审核、验收、费用等项目管理的诸多因素,是整个软件生命周期中的重要环节,也是项目管理最重要的方面之一。项目计划是项目跟踪和管理的重要基础。许多项目失败就是由于缺乏详细准确的项目计划,导致项目进度管理失去控制。
2)缺乏对需求变更的有效管理。对于应用软件项目来说,影响项目进度的一个非常重要因素就是项目实施中的需求变更。需求变更管理不善将会导致开发工作不断反复,开发进度停滞不前。
3)开发过程缺乏有效的控制和管理。软件开发过程中,一方面,由于开发工作缺乏有效的监督检查机制,造成软件开发各阶段的进度管理工作失去控制;另一方面,由于开发过程中的阶段性成果失去有效的版本管理,使整个开发工作陷入混乱。
4)不重视团队建设工作。目前,软件开发过程中存在的一个严重问题就是人员的流动问题,许多合同软件项目从开始实施到项目完成人员流动频繁。造成这种现象的原因固然有许多,但一个根本的原因就是在项目实施中忽略了团队建设,造成整个项目团队没有凝聚力。
2软件项目进度管理的阶段划分
在软件开发过程中,无论采用什么样的开发模型,软件开发都要经过“启动一需求一设计一编码一测试一验收”等多个工作阶段。为了深入分析研究各阶段中影响项目进度的主要因素,根据各阶段进度管理的特点,将软件项目的进度管理工作划分为4个阶段:计划阶段、需求阶段、实施阶段、收尾阶段。这4个阶段与软件工程各阶段的关系如图1所示。
计划阶段进度管理的重点是从软件项目整体进度管理的要求出发,对项目实施中影响进度的全局因素进行分析,制定项目实施的总体工作计划;需求阶段是开发过程中项目双方协作最为密切的一个工作阶段,进度管理工作涉及到对项目双方工作进度的管理和控制;实施阶段的特点是全部工作由项目开发方承担并完成,进度管理工作的重点主要是对开发方的工作进度和产品质量进行管理;收尾阶段的工作重点是如何做好项目的验收工作,进度管理工作主要是项目验收的准备和验收工作的实施。
3计划阶段的进度管理
在软件项目启动阶段,需要根据项目的合同条款及总体工作的目标要求,制定整个项目的总体工作计划,即要对项目实施中的各项活动做出周密的安排。计划阶段与进度管理有关的因素主要有以下3个方面:
1)项目进度计划在项目的初期,项目负责人首先应该根据项目的合同要求,明确项目的工作范围。然后依据工作内容,对资源、成本及工作进度做出合理估算。进度计划应明确项目开始日期及完成日期,项目各工作阶段的工作内容及开始时间和完成时间等。由于项目进度计划是整个项目计划工作的基础,项目的进度计划必须详细、准确、合理。项目的进度计划将是进行项目进度跟踪和控制的重要依据。
2)里程碑设置为了便于对进度计划的执行情况进行跟踪和控制,需要对项目进度计划中某些重要的时间点进行设置,即将这些时间点设置为里程碑。里程碑描述了每一开发阶段项目应达到的状态。每当项目进行到每一个里程碑时间点时,要进行本阶段进度完成情况的工作检查。里程碑确定了软件开发各工作阶段的最后完成时间及需要交付的阶段性工作成果。
3)需求的变更控制对软件项目进度影响最大的因素是需求变更。所以不论是ISO9000认证,还是CMM认证都是十分强调对需求的变更控制。对软件项目的变更控制管理工作必须从项目计划阶段开始,确定需求变更的工作流程。这有助于将需求变更带来的不利影响减到最小程度。由于软件项目实施中存在许多不确定因素,所以项目实施过程中要允许对项目计划进行调整,但是对计划的修改工作都必须在有效地控制下进行。
4需求阶段的进度管理
需求分析阶段的工作目标是要获取详细、准确地用户需求,分析工作要想按计划完成,需要项目双方共同努力才可以实现。本阶段进度管理工作的因素主要有3个方面:技术因素、管理因素及沟通因素(图2)。
1)快速原型技术及需求复用技术。快速原型技术和软件复用技术是开发方快速、准确获得用户需求的主要技术手段。通过原型技术可有效解决软件产品可见性差的问题,用户通过对原型系统实物的使用,有助于提高对未来系统的认识能力。利用需求复用技术可以复用其他相似系统的需求分析结果,有助于加快整个需求分析的工作进度。
2)进行需求的管理。需求阶段的工作一方面是进行需求的获取;另一方面需要对已获取的需求进行管理。通过需求管理,一方面可以有效遏制需求分析阶段的需求变更,确保需求分析的工作进度;另一方面通过良好的需求管理工作,可以提高需求分析结果的可复用性。
3)与用户进行有效的沟通。分析人员要快速、准确地获得用户的实际需求,除了具有优秀的需求分析经验和技能外,很重要的一点是必须与用户进行良好的沟通。通过有效的沟通工作,分析人员一方面可以准确、全面地了解用户的真实想法,提高需求分析的工作进度和质量;另一方面也容易赢得用户的信任和尊重,在需求分析工作中得到用户更多的支持和配合。
5实施阶段的进度管理
项目实施阶段包括设计、编码、测试几个软件开发工作阶段。开发工作在本阶段进入以开发方为主的项目实施阶段。本阶段影响项目进度的主要因素有以下两个方面(图3)。
5.1组建结构合理的项目团队,提高团队战斗力
1)组建结构合理的项目团队。实施阶段的项目团队需要由具有不同技能的技术人员组成。在组建团队时,项目负责人必须根据工作内容,分析项目实施过程中涉及到的技术因素,确定项目团队的人员构成,在项目实施中遇到相应技术问题时,团队中都有熟悉该领域的人员能够予以解决。所以结构合理的项目团队是各阶段工作进度按计划进行的关键。
2)职责明确、分工合理。在各阶段项目实施的过程中,要求项目组各成员的工作分工和责任明确,防止团队成员挑肥拣瘦、推委扯皮、不负责任现象的发生,使开发工作从制度上得到保证。
3)加强团队建设,降低人员风险。团队开发的最大问题就是团队管理。一个人心涣散、人员流动频繁的开发团队,很难做到按计划、高质量地完成软件开发任务。所以项目负责人要加强项目团队的建设工作,营造一种团结协作、认真负责、积极向上的工作氛围,增强团队的凝聚力和战斗力,降低团队成员流动的频率,做好人员流动风险的防范工作。只有团队稳定,团队具有较强战斗力,项目进度计划才能得到落实和保证。
5.2采用新技术、新方法提高开发工作的劳动效率
采用软件工程研究的新技术、新方法支持各阶段软件开发工作,是提高软件开发工作效率,加快软件开发进度的有效手段。提高软件项目工作进度的技术手段有2类。
1)软件复用技术。软件复用技术适用于软件开发的各个工作阶段。通过软件复用可以大大加快软件开发的工作进度并提高产品质量,所以复用技术是提高软件开发劳动生产率的重要手段。要在项目团队甚至整个软件企业实现更大范围的软件复用,做好知识管理工作是实现软件复用的根本。对于软件开发中的知识管理来说,目前还是一个薄弱的环节,制约了在更大范围内进行软件复用的能力。
2)CASE技术。计算机辅助软件工程(CASE)技术是提高软件开发工作效率的另一个主要的手段。通过用于辅助软件开发、运行、维护和管理的工具支持,能够加快软件开发速度,降低开发成本。
6收尾阶段的进度管理
收尾阶段是整个软件项目实施的最后阶段,本阶段进度管理的目标是做好项目验收的准备工作,使软件顺利通过用户验收并交付使用。本阶段进度管理工作的重点体现在以下2个方面。
1)做好验收测试工作。在软件项目验收之前需要接受用户的验收测试。对于合同软件项目来说,用户的验收测试工作往往以系统试运行的形式出现。为使软件系统能够顺利通过验收测试并交付用户使用,项目组首先要做好试运行工作计划与试运行工作准备;其次,要做好试运行期间运行情况的记录,试运行结果数据将是软件能否通过验收的重要依据;再次,对于系统试运行期间出现的问题,项目组需要认真分析原因。及时完成系统的修改和完善工作。
2)做好验收文档资料的准备工作。软件项目验收的一个重要内容就是文档资料验收。在项目验收之前。项目组需要根据合同要求,向用户项目验收组提供相关的软件系统文档资料。为保证文档资料的准确、全面。并能顺利通过用户的验收,需要对文档资料进行认真准备和审核,防止将不合格的文档资料提交给用户,造成工作上的返工。
目前,进度管理问题已经成为软件项目实施的主要问题。文中研究了软件项目实施中影响进度的主要因素,提出了一个软件项目进度管理的阶段划分方法,给出了各阶段进度管理需要解决的重点问题。文中给出的软件项目进度管理策略适合于合同软件开发的进度管理工作,对其他类型的软件项目实施也具有一定的参考。
新课程标准认定中学生的信息技术应用技能为非零起点。然而,现实情况是复杂多变的,由于受不同的环境和不同教育的影响,使得学生在信息技术的基础以及兴趣、意志等非智力因素上呈现了很大的差异。因此,教学总会面临学生水平参差不齐的状况。在差异存在且不可能消除的前提下,如何实施有差异的教学,培养学生的信息素养,是广大信息技术教师面临的一大课题。本文作者根据自己在初中信息技术教学中面对学生差异开展教学活动的策略所...
主要介绍利用ASP技术设计和开发安阳钢铁网站,如何进行网站动态设计,以便于网站的维护与更新,并且体现了网站可更新性、可兼容性、可发展性的设计理念。 随着互联网技术的不断革新与发展,给全球经济带来新的革命,中国正在以迅捷的速度建立自己的互联网环境,随着这种环境的逐步形成,企业已经意识到网络对其本身的影响,从而纷纷建立起企业形象和商业宣传类型网站。主要是为了全面展现企业的整体理念,介绍公司的业务和宣...
针对复杂物流系统的复杂性,提出了一种分布式多代理仿真体系结构,阐述了该体系结构在复杂物流系统仿真中的应用过程,将复杂物流系统分布式多代理仿真体系结构和集中式仿真体系结构相结合,提出了集成的复杂物流系统仿真体系结构. 论文关键词:复杂物流系统;体系结构;分布式仿真;多代理仿真;集中式仿真 复杂物流系统的复杂性包括结构复杂性、不确定性、信息的失真与放大、组织机构的动态性等….对于各种...
针对软件项目和项目开发中的复杂性、易变性和不可预见性,研究了软件项目管理流程方法设计了软件项目运作过程的总体流程,分析了各阶段流程的进入条件、主要工作过程和工作结果 论文关键词:软件过程;软件项目管理;流程管理 1引言 长期以来,软件项目高失败率的状况一直困扰着人们,研究表明,软件项目失败的原因主要有两个:一是应用项目的复杂性;二是缺乏合格的软件项目管理人才。实践证明缺乏有效的项目管理是导致...
文章针对计算机网络具有联结形式多样性、终端分布不均匀性和网络的开放性、互连性等特征,致使网络易受黑客、怪客、恶意软件和其他不轨的攻击的安全和保密问题,归纳并提出了一些网络信息安全防护的方法和策略。 近年来,伴随着互联网技术在全球迅猛发展,人们在提供了极大的方便,然而,信息化在给人们带来种种物质和文化享受的同时,我们也正受到日益严重的来自网络的安全威胁,诸如网络的数据窃贼、黑客的侵袭、病毒发布者...
网络安全的根本目的是防止通过计算机网络传输的信息被非法使用。信息和数据安全的范围要比计算机安全和网络安全更为广泛,它包括了信息系统中从信息的产生直到信息的应用这一全部过程。密码技术是保护计算机信息安全的主要手段之一,使用密码技术可以保证信息的机密性,还可以保证信息的完整性和确定性,防止信息被篡改、伪造和假冒。 论文关键词:网络;信息安全;密码技术 计算机网络信息安全的两个基本需求是保密性和完整...
计算机基础课的教学不同于现代化教育体系中的那些传统的课教学,它的教学是一种极其复杂的过程。建构主义教学理论恰好提供了一种与传统的教学理论不同的学习理论;利用建构主义学习理论指导计算机基础课的实践教学我认为是现代化计算机教学的一个改革的方向。 论文关键词:计算机基础教学;传统教学;建构主义;意义建构;协作学习 0、引言 随着计算机科技遵循”摩尔定律”飞速发展的事实,以及...
本文通过电子政务的表现形式,阐述了电子政务的核心与本质的内容,并在研究、分析影响电子政务建设的信息全等因素的基础上,阐述了如何通过信息安全等级保护制度的实施及其过程中必须遵循的一些原则,按阶段、分级别提高信息安全保障能力和水平,维护国家安全、社会稳定和公共利益,保障和促进信息化建设健康发展。 论文关键词:等级保护;信息安全;电子政务 0引言 当代信息技术和互联网技术的迅猛发展,使得电子政务成...
在电子政务建设中,如何准确把握信息安全与应用建设的关系,既有效减小安全风险,又保证应用顺利开展,是许多信息系统建设者、使用者都会遇到的问题。对于这一问题的圆满解决,既需要有微观上的技术手段,又要宏观上的理论指导和观念更新,尤其是宏观方面的考量,在信息系统建设的整体把握和政策导向方面尤为重要。本文通过对应用与安全两者在信息系统中所处位置的形象比喻,试图理清应用与安全之间既相互矛盾、又互为依存的关系,...
应用信息安全技术提高电子政务系统的安全性是一个迫切需要解决的问题。本文首先剖析了电子政务系统信息安全方面存在的问题,其次研究了信息安全技术在电子政务系统中的应用,涉及到安全区域的有效划分、重要信息的有效控制以及系统VPN的台理设计等等,在一定程度上保证了电子政务系统的安全。 1引言 电子政务是提升一个国家或地区特别是城市综合竞争力的重要因素之一,电子政务系统中有众多的政府公文在流转,其中不乏重...
影响因子:0.330
影响因子:1.430
影响因子:4.930
影响因子:0.110
影响因子:0.000
影响因子:2.290
影响因子:9.703
影响因子:3.226