流星又来临
软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。
浅谈软件项目估算技术
摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。
关键词:规模估算;成本估算;实例应用
中图分类号: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.
作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。
点击下页还有更多>>>软件技术论文范文
甲壳小咪
软件工程毕业论文的写法如下:
题目设置不合理,类别与层次不清晰,选题匹配效果差。学生的毕业设计课题一般都按照指导老师的研究方向和实际工程项目提供,但每年真正来源于工程实践题目比例较少。部分题目理论性强,学生根据所学知识不能很好理解;部分题目开发工具复杂,占用了毕业设计的大部分时间。
在选题时可能导致学生想选的题目选不上,能力差的学生所选题目难度大,影响学生的积极性,导致选题效果差,造成毕业设计很难完成。毕业设计监控工作实施困难,效果较差。软件工程专业毕业设计一般包含选题、开题、中期检查、程序测试、撰写毕业论文、答辩、成绩评定。
软件开发的毕业论文主要写的是开发软件的整个过程。可行性分析,需求分析,总体设计,详细设计,编码,文档,测试等都要写的,主要写的还是前五项。
但对这些环节的监控有时候会形成空白带,毕业设计不在实验室进行,有的学生在实习单位实习,有的学生在外地找工作,老师不能定时与学生见面,老师无法了解学生的具体情况,且学生提交的各阶段文档流于形式,只有指导教师在进行监控,未形成完善的监控体系,导致监控不到位,监控效果较差。
小剑2016
一、文章标题标题高工职称论文题目是一篇论文给出的涉及论文范围与水平的第一个重要信息,也是必须考虑到有助于选定关键词不达意和编制题录、索引等二次文献可以提供检索的特定实用信息。论文题目十分重要,必须用心斟酌选定。有人描述其重要性,用了下面的一句话:"论文题目是文章的一半"。(1).准确得体要求论文题目能准确表达论文内容,恰当反映所研究的范围和深度。(2).简短精炼力求题目的字数要少,用词需要精选。至于多少字算是合乎要求,并无统一的"硬性"规定,一般希望一篇论文题目不要超出20个字.参加医学论文发表相关栏目文章。(3).外延和内涵要恰如其分"外延"和"内涵"属于形式逻辑中的概念。所谓外延,是指一个概念所反映的每一个对象;而所谓内涵,则是指对每一个概念对象特有属性的反映。例如:如何快速发表论文。二、作者姓名 作者单位:(包括单位全称、邮政编码)三、[摘 要](以摘录或缩编方式复述文章的主要内容)50~300字四、[关键词](选用可表达文章主要内容的词或词组)3~8个关键词五、正文高工职称论文格式要求正文篇幅一般在2000--8000字不等,包括简短引言、论述分析、结果和结论等内容。文中出现的外文缩写除公知公用的首次出现一律应标有中文翻译或外文全称。文中图、表应有自明性,且随文出现,并要有相应的英文名。文中图的数量一般不超过6幅。图中文字、符号、坐标中的标值和标值线必须写清,所有出现的数值都应标有明确的量与单位。文中表格一律采用"三线表"。文中有关量与单位必须符合国家标准和国际标准。用单个斜体外文字母表示(国家标准中专门规定的有关特征值除外;如要表示量的状态、序位、条件等,可对该单个字母加上下角标、阿拉伯数字以及"′""^"等),避免用中文表示。正文章节编号采用三级标题顶格排序。一级标题形如1,2,3,…排序;二级标题形如1.1,1.2,1.3,…排序;三级标题形如1.1.1,1.1.2,1.1.3,…排序;引言不排序。六、参考文献高工职称论文格式要求有专著(M),论文集(C),报纸文集(N),期刊文章(J),学 位论文(D),报告(R),标准(S),专利(P),其他未说明文章(Z)参考文献如为专著,项目包括:作者姓名. 书名. 版本. 出版地:出版者,出版年;参考文献如为期刊,项目包括:作者姓名. 版本. 年. 月. 卷(期)~年. 月. 卷(期). 出版地:出版者,出版年;参考文献如为电子文献,项目包括:作者姓名. 电子文献题名. 文献出处或网址,发表或更新日期.七、作者简介与作者联系方式包括作者简介(100字以内)出生年月性别毕业院校学历主要研究方向。作者联系方式,包括:地址,邮编,电话,(含手机)E-mail等。
Rainbow蓓
高级工程师论文要求如下:
一、独立或作为第一作者(合作撰写论文不得超过3人)撰写专业论文两篇及以上,其中至少有一篇在专业刊物(有书刊号)上公开发表。确定一篇为主送论文,主送论文须独立撰写,主送论文字数不少于3000字。
同时,提交论文应注意以下要求:学位论文不得作为职称评审论文报送;若报送以外文发表的论文,需同时提供中文译稿,且审核时以中文内容为准;提交的论文应确保与所提交的书面材料完全相同,凡未按要求上传论文材料的,材料受理点将不予受理。
提交公开发表的论文,申报人员应在材料申报截止日前提供正式出版刊物,论文录用证明、报刊及电子论文等不作为申报依据,凡在材料申报截止日无法提供正式出版刊物的,材料受理点将不予受理。
各高评委对申报人所提交主送论文将进行重合度检测,经查实存在学术造假行为的,实行“一票否决”。
二、高级工程师的评定,发表论文只是一部分,除此之外,还有比如重大研究成果,重大工作成绩,发明专利,专著等等,对于发表论文的要求,其实不同的省份不同的单位是不一样的,有是两篇省级期刊就够了,有的要求是国家级或者核心期刊。
高级工程师职称评审会一般会问什么问题?发表职称论文的价格是多少?论文考试答辩取消、条件放宽,答案在下面文章里。搜:《论文热线要我发.先起腰.发我就发腰(换成同音
软件工程可以写的题目多啊。开始也不怎么懂,还是学姐给的文方网,写的《基于Windows平台的HIPS系统设计与实现》,靠谱的说研究生教育网络管理系统的设计与实现
系统架构设计师包含三个考试科目,各科目考试形式都是笔试。系统架构设计师各科目满分均为75分,考试时间分别安排在上午和下午,上午考试题型和下午考试题型有所不同。软
这个领域能写的课题有很多的,像软件工程与应用这本刊,接收以下这些领域的文章:软件架构、软件设计方法、软件领域建模、软件工程决策支持、软件工程教育、软件测试技术、
软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。 浅谈软件项目估算技术 摘 要