您当前的位置:首页 > 发表论文>论文发表

软件项目管理论文范文_软件项目管理论文范文模板

2023-12-08 16:52 来源:学术参考网 作者:未知

软件项目管理论文范文

软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。

浅谈软件项目估算技术

摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。

关键词:规模估算;成本估算;实例应用

中图分类号:TP311.5

软件项目的估算历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的估算往往和实际情况相差甚远。因此,估算错误已被列入软件项目失败的四大原因之一。由此,也证明了正确对软件项目进行估算是何等重要。

在软件项目管理中,估算就是对项目将持续多长时间或花费多少成本的预测。所以说,估算正是一种对未来的预测。从这里也看以看出估算的重点就在“工作量估算”或“成本估算”,而在对这两者进行估算的过程中大多数情况下都少不了“软件规模”这个条件,所以本文将软件估算分为两种类型,第一个种是软件项目规模的估算,第二种是将估算得出的规模转换为工作量的估算或成本的估算。目前使用比较广泛的规模估算技术,如:代码行估算技术、功能点估算技术;而使用比较广泛的成本估算技术,如:COCOMO算法模型估算技术。

除了上述所列举的几种技术外,还有几种估算技术既可以用于估算规模,也可直接应用与估算工作量或估算成本,如:Delphi估算法、类比估算技术、PERT估算技术。这几种估算技术不似前面所列的技术,比较有针对行,且有具体的计算过程、计算公式。这几种技术只是一种思想,依据某个选定的科目进行估算。下面本文将简单介绍上述提到的几种估算技术,并通过具体的实例重点阐述功能点估算技术。

1 估算技术简介

1.1 代码行估算技术。代码行(LOC)指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等[1]。代码行估算技术主要是估算软件的规模,即通过该技术估算待研发软件项目有多少行代码。一般为了方便表示,使用较大的单位千代码行(KLOC)来表示待研发软件项目的规模大小。这种方法比较适用于有经验积累和开发模式稳定的公司。如果是新成立公司,使用这种估算技术则会存在很大误差,加大项目失败的风险。

1.2 功能点估算技术。功能点法是一种经过实践验证的方法,但应用成本很高,估算的工作量投入也较大。功能点估算技术最终结果是规模,仍然需要知道项目的生产率数据才能得出实际的工作量。功能点估算技术将系统功能分为输入、输出、查询、外部文件和内部文件5种类型。其中,输入是一个数据跨越系统边界,从外部到内部的基本数据处理过程。数据的来源可以是人机输入界面/接口,或是另一个应用系统;输出是一个衍生数据跨越系统边界,从内部到外部的基本数据处理过程。这些输出的数据可能会产生报表,或发到其他外部系统的输出文件;查询是一个不包含衍生数据和数据维护的基本数据处理过程,包括输入和输出两部分;内部文件存在于系统边界之内,用户可识别的一组逻辑上相互关联的数据;外部文件存在于系统边界之外,用户可识别的一组逻辑上相互关联的数据。使用功能点估算技术估算的大概步骤为:

(1)通过需求分析将系统功能按照上述5种类型进行分类。

(2)分析每个功能项的复杂程度,大致分为一般、简单、复杂三种类型,每一种类型都对应一个权重值,具体如表1。

(3)根据每个功能项的复杂权重值,求出功能项的加权和,即为未调整功能点数(UFC)。

(4)分析该系统的技术复杂度,功能点估算将与系统相关的技术影响因素分为14组(用Ai表示),每个分为6个级别,权重分别从0至5。根据分析结果及公式计算技术复杂度因子(TCF),即TCF=0.65+0.01(SUM(Ai))。

(5)将UFC与TCF相乘即为功能点数。

1.3 COCOMO算法模型。Cocomo模像是一个分层次的系列软件成本估算模型,包括基本模型、中级模型和详细模型3个子模型。3个模型采用同一个计算公式,即E=asb×EAF[2]。其中,E是以人月为单位的工作量;S是以KLOC为单位的程序规模;EAF是一个工作量调整因子,在基本模型中该项值为1,中级模型和详细模型中根据成本驱动因素确定;a和b是随开发模式而变化的因子,这里开发模式被分为3中类型,即有机式、半分离式和嵌入式。

Cocomo算法模型是一种精确易用的估算方法,如果项目没有足够多的历史数据,会使得各调整因子和系数很难确定,进而使得估算比较困难。但是一旦项目建立起这种模型,则通过Cocomo模型得出的项目工作量和项目周期具有更高的准确度。

1.4 Delphi估算技术。Delphi估算技术又被成为专家估算技术,它是由一个被认为是该任务专家的人来进行估算,且估算过程很大一部分是基于不清晰,不可重复的推理过程,也就是直觉。所以该技术中专家“专”的程度及对项目的理解程度是该技术的重点,也是难点,它的好坏直接影响估算结果的准确程度。

Delphi估算技术估算过程并不像功能点估算技术或COCOMO算法模型那样,有明确的计算方法或计算公式。它是将待估算的项目的相关信息发给专家,专家估算后由专门的负责人进行汇总,然后再发给专家估算,反复几次后得到一个估算结果,可见只是一种思想,所以它除了用来估算规模,也可以用来估算成本、风险等,即对选定的某个科目进行估算。

1.5 类比估算技术。“类比估算”,顾名思义是通过同以往类似项目(如应用领域、环境和复杂程度等)相比较得出估算结果。类比估算技术是一种粗略的估算方法,它估算结果的精确度取决于历史项目数据的完整性和准确度。类比估算技术与Delphi估算技术类似,它的用途不仅仅用在规模估算上,也可以估算成本、工作量等。   1.6 PERT估算技术。PERT估算技术,又称为计划评审估算技术,它对需要估算的科目(如规模、成本、工期等)按三种不同情况估算:一个乐观估算结果,一个最可能估算结果,一个悲观估算结果。再通过这三个结果计算得到一个期望规模和标准偏差。这种估算技术可以用于估算规模,同样也可以用于估算工期,相比较来说PERT技术估算的结果比类比估算技术的结果要更准确。

2 功能点估算技术应用实例

假设某员工管理系统,经过需求分析得知,该系统所包含功能如下:

(1)员工信息维护:添加员工、修改员工信息、查询员工信息;

(2)部门信息维护:添加部门、修改部门信息;

(3)工资统计:统计员工年薪,并打印输出。

其中,在该系统中添加一个员工资料,会使用到员工的基本信息:员工ID(标签控件)、姓名、性别、年龄、婚否、部门ID;教育情况:学校名称、所学专业、学历。对部门的维护会使用到部门的信息:部门ID(标签控件)、部门名称。员工工资信息由另外一个财务系统提供,工资表信息有员工的基本信息:员工ID(标签控件)、姓名、部门名称;工资信息:工资级别、工资金额。

根据功能点估算技术估算步骤,首先计算未调整功能点数,即各种类型功能项的加权和,分析该系统6个功能项所属类型及其复杂权重值如表2:

假设该项目的14个技术复杂度因子均为“有一定影响”,即权重值均为2,则该项目功能点数为:FP=45×(0.65+0.01×14×2)=41.85。如果知道该项目使用何种语言,可以将功能点数转换为代码行数。

3 结语

本文对目前比较流行的几种软件项目估算技术做了简单介绍。重点讲述了功能点估算技术,并通过一个实例演示了功能点估算技术的应用方法。通过本文描述可以看出每种项目估算技术都有其自己的优缺点,如果想要得到比较准确的估算结果,不能仅靠一种估算技术,而应该综合运用各种估算技术,才能得到比较全面的信息和比较准确的结果。目前,也有一些基于这些估算技术的思想的自动化估算工具产生,相信通过不断的发展,将解决软件项目成本估算难的问题。

参考文献:

[1]朱少民.软件项目管理[M].北京:清华大学出版社,2009-11.

[2]覃征等.软件项目管理[M].北京:清华大学出版社,2004.

[3]李明树,何梅,杨达,舒风笛,王青.软件成本估算方法及应用[J].Journal of Software,Vol.18, No.4, April 2007,775-795.

[4]The David Consulting Group ,Function Point Counting Practices Manual Release 4.2.1,January 2005,

[5]刘谦.软件项目估算方法在敏捷开发中的实践.中国管理网,2010-06-18.

作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。

点击下页还有更多>>>软件技术论文范文

人力资源论文:浅析软件项目中的人力资源管理

人力资源论文:浅析软件项目中的人力资源管理

软件项目团队建设是实现软件项目目标的保证,团队文化和团队精神是团队成功的重要基础,建立一种“相互帮助,共克难关”的工作氛围十分重要。本文初步揭示了项目人力资源管理的含义与内容、软件项目中的人力资源管理流程和获取方法,以及一些常见问题的解决方法与途径。

软件项目的人力资源管理与项目的进度、成本、整体质量和存在风险等方面管理一样,也是一个项目组织必不可少的管理职能。

一、软件项目人力资源管理的含义和内容

软件项目人力资资源管理就是根据软件项目的目标、项目的进展情况和外部开发环境的变化,采用科学的方法,对项目团队成员的思想、心理和行为进行有效地管理,充分发挥他们的主观能动性,实现项目的目标。项目人力资源管理的重点集中在两个方面:一时针对个人的;另一方面是针对团队的。

软件项目人力资源管理包括计划制定、获取人员和建设团队三个阶段。按照业务管理的流程,还可以具体划分为资源规划、解雇、招聘、筛选、培训等基本活动。

软件项目人力资源管理的主要内容包括:

(1)对软件项目进行组织和规划。项目组织规划是项目整体人力资源的计划和安排,是按照项目目标通过分析和预测所给出的项目人力资源的数量和质量上的明确要求、具体安排和计划。

(2)获取和分配软件项目人员。软件项目组织通过招聘获得所需要的人力资源,并根据各自的技能进行工作安排,由于项目的一次性和项目的临时性,项目组织的人员获得与配备和其他组织的人员获得与配备是不同的。

(3)软件项目组织成员的开发。包括:项目人员的培训、考核,激励等等。

(4)团队建设。

由于在项目工作中人员的需求可能是不连续的,容易造成人员的浪费和成本的提高。比如:某软件项目现有20人,设计阶段需要10人;审核阶段需要1周,但不需要项目组成员从参与;编码阶段是高峰期,需要15人,但在测试阶段只需要8人。往往这些阶段进行过程中,会出现没有工作安排的人员。根据大多数大中型软件开发项目的统计,对开发人员的要求是随机变化的,一开始资源需求量较小,然后逐渐上升,达到某个时间常数时需求量达到高峰,之后再逐步下降,减少到较低的数值。

二、软件项目团队的特点

软件项目团队建设,就是吧与软件项目相关的人员组织起来实现项目目标,这是一个持续不断的过程,也是项目经理和项目团队的共同职责。通过团队成员的共同努力能产生群体的协作效应,从而获得比个体成员绩效总和大得多的团队绩效。项目团队不仅可以通过团队成员之间相互的沟通、信任、合作和承担责任,高效地利用有限的人力资源,而且有助于加强员工间的交流与协作。一个好的软件项目管理团队应该具有以下几个特点:

(1)有好的团队带头人,他对项目管理有很丰富的经验,是团队凝聚力的核心,有很好项目组织及人员协调能力。

(2)好的团体,应该有好的知识及能力体系。每个人毕竟不能什么都会,但对于一个团对应该能做很多事情。就软件项目团队而言,就应该在需求、分析设计、编码、测试等重要阶段有具有此能力的人去参与。对于不同的行业,不同的项目,对项目团队的要求也是不同的。如一个游戏项目团队和一个电信软件团队的差别就是很大的。比如:一个WEB开发项目团队,就要有美工、动画设计人员,WEB端、Server端优秀的开发人员。这样去组织一个团队才可能把WEB项目的开发阶段做好,做的很专业。

(3)好的团队,要保证团队目的与个人目的的统一。这也是管理组织学中团队效力及团队效率的问题。也只有这样才能保证团队有凝聚力,稳定、健康的发展。

(4)好的团队,目标明确,目标统一。

(5)要有良好的沟通,乐与交流习惯。融洽的团队环境。

(6)良好的团队组织及团队合作习惯,不能有什么小的派别等。

(7)好的团队,人员职责分明。

(8)好的团队,有一个好的团队学习习惯。这是团队能力提高的阶梯。

三、软件项目团队的冲突管理

冲突就是个人、团队、组织限制或阻止另一部分个人、团队、组织达到预期目标的行为。软件项目团队内部成员之间相互了解越深入,彼此合作越默契,团队建设也就越出色,效率也会因此提高,但是人与人之间相互了解需要一定的磨合时间,在这一时期必然会存在很多方面的.冲突,需要及时对这些冲突做出有效处理。在项目运作过程中,存在冲突是很经常也很正常的,但如果仅仅是试图避免冲突或者是压制冲突,只能是进一步恶化冲突,导致效率的严重下降。冲突既有积极的一面,也有消极的一面,如果能有效地解决这些冲突,可以有助于改善团队的建设和项目的状况,给团队一个学习与提高的机会;如果解决不当,有可能会给项目埋下隐患或者使得整个团队处于一种混乱状态,最终导致解散、失败。因此项目团队管理者要引导冲突解决结果向着团队成员积极协作有利的方向发展,而不是向着消极的方向发展,造成不可挽救的恶果。解决冲突的方式主要有:建立完善的解决冲突的方针与管理程序;冲突双方直接沟通协调,解决矛盾;利用会议解决冲突;在所有的解决方式中都离不开沟通,解决冲突过程中,沟通的方式有很多,如:口头沟通、书面沟通、正式沟通、非正式沟通、面对面或者是通过其他方式沟通等,这需要根据项目以及冲突的不同性质选择不同的沟通方式,以达到效率最高。一般解决软件项目开发过程中的冲突可以从以下几方面出发:

(1)沟通协调一定要及时。团队内必须做到及时沟通,积极引导,求同存异,把握时机,适时协调。唯有做到及时,才能最快求得共识,保持信息的畅通,而不至于导致信息不畅、矛盾积累。

(2)善于询问与倾听,努力地理解别人。倾听是沟通行为的核心过程。因为倾听能激发对方的谈话欲,促发更深层次的沟通。另外,只有善于倾听,深入探测到对方的心理以及他的语言逻辑思维,才能更好地与之交流,从而达到协调和沟通的目的。同时,在沟通中,当对方行为退缩、默不作声或欲言又止的时候,可用询问引出对方真正的想法,去了解对方的立场以及对方的需求、愿望、意见与感受。所以,一名善于协调沟通的人必定是一位善于询问与倾听的行动者。这样不但有助于了解和把握对方的需求,理解和体谅对方,而且有益于与他人达成畅通、有效的协调沟通之目的。

探析软件项目管理中的PERT技术应用论文

探析软件项目管理中的PERT技术应用论文

软件项目管理是通过对项目参与人员、项目目标产品、实施过程和项目本身进行前期评估和开发阶段的管理等方式,确保项目能够在规定的时间范围内以更低的成本获取项目预期目标或超过预期。因此,软件项目管理决定着软件开发的成功与否,软件开发公司也通过先进管理技术的引入来提升软件项目管理质量,PERT技术就是代表性的技术之一 。 本文通过阐述软件 项目管理 现状、PERT技术基本内容以及该技术在软件项目管理中的应用,系统分析软件项目管理中PERT技术的应用现状及发展前景。

软件开发项目管理是软件开发领域的专业性项目管理活动,其成败关系到整个项目的成败,并影响到企业整体的商誉、市场和盈利能力。所以,软件企业需要关注项目管理能力的提升。而实现这一目的的重要途径之一就是在项目管理过程中应用各种技术对软件项目管理质量进行提升,从而确保项目的成功。PERT技术是软件项目管理中常用的技术之一,主要通过对项目进行整体评估和进度安排的方式提升项目的可行性以及开发效率,以降低项目风险,确保开发者的利益。因此,有必要对PERT技术进行深入的研究,从而更好的应用与软件项目管理,促进软件开发行业的发展与进步。

一、PERT技术简介

PERT技术全称计划评价与审查技术(Program Evaluation and Review Technique),是20世纪50年代中期发展起来的一种科学的计划管理技术, 最初是用于美国海军部开发北极星潜艇系统时为协调3000多个承包商和研究机构而开发的,其理论基础是假设项目持续时间以及整个项目完成时间是随机的,且服从某种概率分布。PERT可以估计整个项目在某个时间内完成的概率。

简单地说,PERT是利用网络分析制定计划以及对计划予以评价的.技术。它能协调整个计划的各道工序,合理安排人力、物力、时间、资金,加速计划的完成。在现代计划的编制和分析手段上,PERT被广泛的使用,是现代化管理的重要手段和方法。

PERT网络是一种类似流程图的箭线图。它描绘出项目包含的各种活动的先后次序,标明每项活动的时间或相关的成本。对于PERT网络,项目管理者必须考虑要做哪些工作,确定时间之间的依赖关系,辨认出潜在的可能出问题的环节,借助PERT还可以方便地比较不同行动方案在进度和成本方面的效果。

二、PERT技术在软件项目管理中的应用

计划评审技术属于网络计划技术的分支,主要用于项目管理和活动计划评估,最初是美国为了提升军事项目研发效率开发的计划管理模式,主要以数理统计为基础,运用网络方法和电子计算机方法进行实施,简称PERT技术。其基本原理是将一个完整的项目分割成单独的小项目,然后根据小项目间的关系进行分析,并绘制网络图;再通过网络图分析各项目运行时间和先后顺序,寻找出项目运行主线,并对项目的每一个环节进行可行性评价,确认项目整体的可行性,不断修正项目计划,从而达到项目管控和提高成功率的目的。

1.绘制活动分析表

PERT技术的主要操作步骤需要依据项目流程图绘制分析表格,而时间由三点法确定。三点时间法主要涉及三种时间:最乐观时间,最可能时间和最悲观时间。 其中最乐观时间为当所有外界影响因素均对项目产生正面影响时,项目完成的预期时间;最可能时间为当项目正常运行时,完成项目所需的时间,一般可参考同类项目的运行平均值;最悲观时间为假设项目会遇到比一般项目更多的不利因素影响时,项目完成最长需要的时间。通过以上分析,最终绘制出活动分析表。

2.绘制网络图

首先罗列出分割完毕的小项目即单独运行的活动,并筛选出不需要前提活动运行完毕即可实施的项目,也就是可以在项目初期直接运行的活动,然后依据这些项目进行紧前活动添加,逐步绘制出网络图。

3.网络时间计算

在时间轴上,时间对应的是点,在网络图上,节点与事件相对应,起始点表示事件开始,终止点表示事件的完成,中间节点表示该节点所在箭线的事件过程。根据上述对应关系进行活动的网络时间计算。

4.关键线路与时间差

关键线路为项目最佳运行方案,但是在实际操作过程中总会遇到各样的影响因素导致不能运行该线路,因此需要寻找最合适线路,而不同线路与关键线路的时间差很大程度上决定了线路的选择,同一个项目可以同时存在多个关键线路。

5.项目优化

项目优化的目的在于以最低的成本获得最高的项目成果。成本包括材料成本、人力成本、时间成本和其它成本,因此,需要考虑项目耗资和耗时两个方面。此外,项目的费用核算可以单独进行小项目核算,也可直接对项目整体进行成本评估。项目优化的主要途径为成本优化,成本优化的过程为:首先选取成本最小的关键线路进行实施,然后计算项目如果进行加速运行时带来的人力成本增加值,最后评估该线路整体成本,如满足预期则确定最终线路,如不能满足预期值则继续进行线路选取,重复上述步骤。

以上为PERT技术在软件项目管理中主要应用方式和常用管理路线,在具体的项目管理过程中需要针对具体项目特点进行调整,但是主要目的都是以最低成本获取最高成果。

三、结语

计划评审技术的应用有助于软件开发的项目管理人员更精确的评估项目完成时间、更有效的监督项目进展和预期完成质量,属于典型的项目进度控制方法。虽然PERT技术极大的促进了软件项目管理的质量,降低了软件开发风险,但是依然需要看到在该技术引入软件项目管理中后,容易对软件开发项目造成一定程度的专业性影响,如为了追求更低的成本和更快的工期,可能需要牺牲一部分软件附属功能,虽然不会对软件开发主体造成损害,但是可能会在一定程度上降低软件的用户友好度和使用舒适度,这些需要项目管理者正确把握该技术的应用尺度,不能一味追求利益而导致软件质量的低下。作为工程技术人员,应该对计划评审技术的应用研究应继续深入,探索更为合理和有效的引入方式,在不损害项目预期目标的前提下,提高项目质量和降低项目成本,为软件开发领域的进步做出贡献。

软件项目管理论文的参考文献

你好,我在中国知网搜的

[1] 朱利娜,周宁. 软件项目管理的思考[J]. 平原大学学报, 2007,(02) .
[2] 罗铁清,王莹,王如龙. 软件项目管理流程分析与设计[J]. 计算技术与自动化, 2005,(03) .
[3] 杨智明. 软件项目管理过程[J]. 科教文汇(下半月), 2006,(09) .
[4] 陆伟. 软件项目管理及其在中小规模开发中的实施[J]. 电脑知识与技术, 2005,(08) .
[5] 郭国印,张秀伟,赵政文. 软件项目管理技术分析研究[J]. 微处理机, 2007,(05) .
[6] 周慧. 论软件项目管理[J]. 现代电子技术, 2003,(18) .
[7] 邓杰超. 软件项目管理探析[J]. 华南金融电脑, 2007,(01) .
[8] 窦燕. 影响软件项目管理关键因素的探讨[J]. 燕山大学学报, 2004,(04) .
[9] 李凌. 软件项目管理中的进度控制问题研究[J]. 中国科技信息, 2005,(17) .
[10] 陈丽杰. 浅析软件项目管理中的需求管理[J]. 科技资讯, 2007,(14) .

希望对你有帮助~

知道 举手之劳团队 队长:晓斌

相关文章
学术参考网 · 手机版
https://m.lw881.com/
首页