软件工程毕业论文提纲范文
拟写论文提纲是论文写作过程中的重要一步,软件工程毕业生要如何写论文提纲呢?
摘要 5-6
Abstract 6
目录 7-9
第一章 绪论 9-15
1.1 研究背景与意义 9-10
1.2 国内外研究现状 10-12
1.2.1 数据仓库技术国内外应用情况 10-11
1.2.2 人口数据分析应用国内外现状 11-12
1.3 本文主要研究内容 12-13
1.3.1 研究目标 12
1.3.2 研究内容 12-13
1.4 本文组织结构 13-15
第二章 关键技术分析 15-25
2.1 人口数据分析 15-16
2.1.1 人口数据分析特点 15-16
2.1.2 人口数据分析内容 16
2.2 数据仓库技术 16-20
2.2.1 数据仓库概念 16-18
2.2.2 数据仓库设计 18-20
2.3 数据ETL技术 20-22
2.3.1 ETL概念 20
2.3.2 ETL设计 20-21
2.3.3 ETL实现 21-22
2.4 OLAP技术 22-23
2.4.1 OLAP概念 22
2.4.2 OLAP实现 22-23
2.5 小结 23-25
第三章 人口数据分析系统的设计与实现 25-65
3.1 系统概念设计 25-29
3.1.1 业务需求 25-26
3.1.2 数据描述 26-27
3.1.3 维度事实模型 27-29
3.2 系统逻辑设计 29-40
3.2.1 人口性别年龄民族分析主题 29-32
3.2.2 人口婚姻状况文化程度分析主题 32-35
3.2.3 人口姓氏分析主题 35-37
3.2.4 人口姓名分析主题 37-38
3.2.5 人口籍贯出生地分析主题 38-40
3.3 系统实现 40-63
3.3.1 物理设计 40-42
3.3.2 ETL准备及规则 42-46
3.3.3 ETL实现 46-57
3.3.4 多维数据模型构建 57-63
3.4 小结 63-65
第四章 实际应用及验证 65-87
4.1 应用背景 65
4.2 应用展示 65-84
4.2.1 OLAP操作 65-75
4.2.2 报表展现 75-84
4.3 效果分析 84-85
4.4 小结 85-87
第五章 结论与展望 87-91
5.1 论文工作总结 87-88
5.2 论文工作展望 88-91
参考文献 91-93
致谢 93-95
个人简历、在学期间发表的论文与研究成果 95
摘要 6-7
Abstract 7-8
第一章 绪论 11-19
1.1 课题来源 11
1.2 研究的背景和意义 11-13
1.3 国内外研究现状 13-16
1.3.1 土壤压实对作物影响 13
1.3.2 数字图像处理 13-14
1.3.3 虚拟植物 14-16
1.4 本研究的内容,技术路线 16-18
1.4.1 研究内容 16-17
1.4.2 技术路线 17-18
1.5 本章小结 18-19
第二章 试验方案设计 19-29
2.1 土钵容重标定 19-25
2.1.1 压实装置设计 19-20
2.1.2 容重标定 20-25
2.2 栽培与管理方法 25-26
2.3 数据采集方案 26-28
2.3.1 原位观测数据获取 26-27
2.3.2 破坏性采样测量数据获取 27-28
2.4 本章小结 28-29
第三章 基于图像分析的陆稻形态特征获取方法研究 29-42
3.1 植物图像获取 30-31
3.2 图像增强 31-32
3.2.1 图像平滑 31-32
3.2.2 图像锐化 32
3.3 图像分割 32-37
3.3.1 阈值分割法 33-34
3.3.2 数学形态学运算 34-37
3.3.3 连通域检测算法 37
3.4 植物特征提取的研究 37-41
3.4.1 图像标识 38-39
3.4.2 基于像素统计的面积计算 39-40
3.4.3 基于最小外界矩形理论的叶片长宽测量算法 40-41
3.5 本章小结 41-42
第四章 试验结果分析 42-47
4.1 土壤压实对陆稻地上部分的.影响 42-43
4.2 土壤压实对陆稻地下部分生长的影响 43-45
4.3 陆稻地上部分与地下部分相关性分析 45-46
4.4 结论 46-47
第五章 陆稻植株的三维建模 47-53
5.1 陆稻的生长机模型 48-51
5.1.1 陆稻根系的生长机模型 48-51
5.1.2. 陆稻茎秆、叶片的生长机模型 51
5.2 陆稻可视化模型 51-52
5.2.1. 陆稻根系可视化模型 51-52
5.2.2 陆稻茎秆、叶片的可视化模型 52
5.3 本章小结 52-53
第六章 陆稻模拟系统的实现与程序设计 53-67
6.1 系统开发关键技术简介 53-54
6.2 开发环境搭建 54-57
6.3 系统实观 57-64
6.3.1 系统需求分析及总体设计 57-58
6.3.2 生长机的模块 58-60
6.3.3 可视化模块 60-61
6.3.4 形态学参数统计模块 61-62
6.3.5 坐标变换模块 62-63
6.3.6 系统模拟界面 63-64
6.4 仿真结果及分析 64-66
6.5 本章小结 66-67
第七章 结论与展望 67-69
致谢 69-70
参考文献 70-74
附录A:本人在攻读硕士学位期间的科研情况及工作情况 74-75
附录B:试验附图 75-76
附录C:部分源代码 76-86
我毕业论文就写的测试方面的分给我我传给你
南京师范大学 毕业设计(论文)开题报告 学生姓名: 学号: 院(系): 专 业 题 目: 指导教师: 年 月 日 开题报告填写要求 1.开题报告作为毕业设计(论文)答辩委员会对学生答辩资格审查的依据材料之一。此报告应在指导教师指导下,由学生在毕业设计(论文)工作前期内完成,经指导教师签署意见及院、系审查后生效; 2.开题报告内容必须用黑墨水笔工整书写或按教务处统一设计的电子文档标准格式(可从教务处网址上下载)打印,禁止打印在其它纸上后剪贴,完成后应及时交给指导教师签署意见; 3.有关年月日等日期的填写,应当按照国标GB/T 7408—94《数据元和交换格式、信息交换、日期和时间表示法》规定的要求,一律用阿拉伯数字书写。如“2003年4月26日”或“2003-04-26”。 毕业设计(论文)开题报告 1.本课题的目的及研究意义2.本课题的国内外的研究现状毕业设计(论文)开题报告 3.本课题的研究内容4.本课题的实行方案、进度及预期效果毕业设计(论文)开题报告 5、已查阅参考文献:指导教师意见指导教师: 年 月 日 院(系)审查意见&nb, sp; 院(系)领导(公章): 年 月 日
本人刚刚写完本科生毕业论文,关于开题报告如何写这个问题,我总结的基本步凑如下:开题报告的步骤具体包括:选题;收集资料、分析资料,对课题进行初步研究;确定题目;开题报告的书面写作;向导师、评议小组汇报;进行论文写作或重复上述步骤。 1、关于选题。 (1)选题应是本人熟悉的内容,应能够发挥自己的特长,内容应是与本专业相关的,部分本科生在毕业论文的选题时不自觉地写其他专业的题目,这应是极力避免的。 (2)选题的题目要小,即讨论问题的范围要小,如“农村社会保障制度研究”较之“社会保障制度研究”在选题范围上要小,而写农村社会保障制度中资金的筹集、运用或养老保险、合作医疗等其中的一个方面则更有针对性。 (3)选题要有时效性,而实效性是相对的,如现在“三农问题”是热点,分析唐宋时期的土地制度可能对我国未来的土地改革有借鉴意义,但分析1955~1978年之间我国的土地制度可能就过时了。 (4)题目的名称要规范、简洁、无歧义。 2、关于资料的收集。 (1)在资料的收集上,前期面亦广,后期亦窄,故应尽快确定题目; (2)论文写作需要参考与课题相关的各种文章书籍资料,一般而言,学士、硕士、博士论文可能分别需要10、30、100篇左右。从已经出版成书的博士论文看,参考文献有30篇的,也有300多篇的。 (3)重要的资料可采取复印的方式保存,看到与论文相关的资料时,可记录下该资料的名称、观点、页码等,以在以后的写作中参考。同时,收集资料时要记录下对参考文献要求的各个项目。 开题报告的格式:我们学校是这样要求的~~1、文献综述2、主要研究的目的和内容3、研究方法及研究手段4、预期目标5、课题研究进度计划6、参考文献 具体一点,开题报告一般包括以下几方面的内容: 1、选题意义。选题意义包括理论意义和现实意义,前者指能够提出一种新的理论、观点或用具体的数据验证某种尚待证明的已有理论,后者则涉及研究问题的现实背景、能够对有关的经济主体和政策当局提供建议或做出评价。 2、文献综述。文献综述部分包括理论的渊源、国内外在该课题上已有的研究,本人对有关理论演进过程的评价等,在此基础上指出已有研究的欠缺之处,并提出自己要研究的问题。 3、研究方法。即论文写作涉及的研究方法,具体的名称很多、含义不等。在开题报告中可以简略陈述自己的“研究方法”,因为这涉及到方法论的问题,而方法论又与哲学相联系,往往难以表达清楚而容易导致歧义。 4、可能取得的创新之处与可能遇到的困难。应清楚地写出预期的成果或创新之处,这是开题报告的重点,有创新、有成果才能让别人觉得你的工作有价值。同时对已经具备的研究条件和可能存在的困难、问题进行客观的陈述,以获得评议小组老师的帮助和指导。 5、论文提纲。对于论文提纲有两种看法:一是粗略的提纲即可,一般具体到章;二是详细的提纲,细化到章下面的每一节。详细的提纲可能更好,因为这表明报告人已经做了很多工作,开题报告更容易通过。 6、参考文献。列出的参考文献应包括:①已经看过的;②已经搜集到但没有看过的;③尚未搜集到但与本课题密切相关的、需要别人提供的。论文定稿后,参考文献则只涉及引用或借鉴过的。参考文献的引用要规范。
OK,我、可、以、发、给、你。
提纲可以讲明写作背景及思路,参考下(软件工程与应用)吧
软件开发的毕业论文主要写的是你开发软件的整个过程。可行性分析,需求分析,总体设计,详细设计,编码,文档,测试等都要写的。主要写的还是前五项是很重要的。文档也很重要,文档也是验证是不是一个全面的完整的,好的软件开发的标准之一,不可忽略。1、验收人员:由各专业答辩委员会聘请校内或学院内熟悉计算机软件技术的人员组成若干个软件验收组,负责本学院的软件验收。每个验收组由3名具有中级及以上职称的教师组成,设组长1人,组员中一般应包含1名所验收软件学生的指导教师。2、验收方式:由学生向验收组提交论文中所涉及的计算机软件部分,包括源程序、执行程序和使用说明,将源程序编译成执行程序后并运行,在程序真实、运行结果正确和程序文本资料完整的情况下,当场将源程序和执行程序拷贝到存储介质(如软盘、光盘等)上,连同程序文本资料一起交验收组,即可通过验收。软件验收未通过者,不能参加毕业设计(论文)答辩。验收组的工作应实事求是,认真负责。验收结束后,由验收组填写软件验收报告,并将验收报告与全部验收材料(包括存储介质、资料等)一并交学生所在学院。3、验收时间:验收工作应安排在毕业设计(论文)工作完成后,答辩之前。各专业答辩委员会在进行答辩资格审查时,应将是否已通过验收作为审查的一项重要内容。
软件测试被定义为是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量。下面我给大家分享软件技术论文2000字,大家快来跟我一起欣赏吧。
软件测试技术研究
摘 要:软件测试是软件工程范畴的一项重要工作,与软件质量密切相关。本文就软件测试的概念、分类和方法等几个方面进行了论述。
关键词:软件测试;黑盒测试;白盒测试
中图分类号:TP311.52
软件测试是软件生产过程中的一个重要环节,是伴随着软件的产生而发展的,它并不是不能正常运行的软件的专利,而是为了发现所有软件缺陷而执行程序的过程。软件测试贯穿于软件开发的到投入使用的各个过程中,不同阶段的测试手段各不相同,测试成为软件产品质量控制和管理的重要手段之一。大量资料表明,软件测试的工作量占软件开发总工作量的40%以上,测试成本也占总成本的30%―50%。
1 软件测试的目标和重要性
1.1 软件测试的定义
看待软件测试的角度不同,软件测试的定义也各不相同。总的说来,软件测试就是利用测试工具按照预先设定好的方案和流程对产品进行功能和性能测试,甚至根据需要重新编写测试代码,对测试过程中可能出现的问题进行分析和评估。它是帮助识别开发完成的计算机软件的正确度、完全度和质量的软件过程,是保证软件质量的重要内容。
1.2 软件测试的目标
软件测试的正确定义是“为了发现程序中的错误而执行程序的过程”。而测试的目的决定了如何去组织测试。测试的目标是什么?G.Myers曾给出了关于测试的一些规则,这些规则可以看作是软件测试的目标:
(1)软件测试并不是为了验证软件的正确性,而是为了发现错误而执行程序的过程。(2)好的测试方案是尽可能发现目前尚未发现的错误的测试方案。(3)成功有效的测试是发现了至今尚未发现的错误的测试。从以上规则可以看出,测试是以查找错误为中心,和人们通常想象的“测试是为了验证程序的正确功能”,“成功的测试是没有发现错误的测试”等是完全相反的。所以,近年来,正确软件测试目标如下:(1)软件测试并不仅仅是为了查找出软件的错误,而是要通过进一步分析错误产生的原因和错误的发展趋势,发现一些可以通过测试避免的开发风险;(2)通过测试能够帮助测试人员设计出适合该软件更加有效的测试方法,进一步提高测试效率,缩短测试实践,降低测试费用;(3)结果完全正确的测试也是有价值的,是软件质量的一种评价,但并不是测试正确就说明该软件没有错误,随着使用的深入,功能的扩充等会逐步暴露出更多的问题,实践证明,完全没有错误的软件世间难求。
1.3 软件测试主要包括
(1)正确性和精确性测试:如果软件的运行结果不正确和不精确,那么会给用户带来很大的麻烦,甚至造成不可估量的损失,因此是保证软件质量的最重要因素。(2)容错性测试:容错性测试是在认可错误的情况下进行的测试,是检查软件在异常条件运行,是否具有防护性和能否自我恢复。容错性测试能确保系统不发生无法意料的事故,从而提高软件的安全性和可靠性。(3)性能与效率测试:用户都希望软件的运行速度更高一些,并且占用的资源更少些,性能与效率测试主要是优化软件的算法,数据结构和代码组织来提高软件的性能和效率。(4)易用性测试:易用性测试是测试软件的易用程度,就像一个常用扳手工具,拿到就能明白怎么去使用,因此易用性测试没有一个量化的指标,主观性较强。在平时使用中,当用户不能正确使用软件中的某个功能时,大多数人首先会通过各种方式学习、请教,或者向产品支持部门打电话,还有一部分用户会查阅用户手册。通常认为,用户不通过翻阅用户手册就能使用的软件易用性较好。(5)文档测试:文档测试主要检查文档的正确性、完备性和可理解性。
1.4 软件测试的基本原则
(1)尽早并不断地进行软件测试;(2)程序员或程序设计机构避免测试自己的软件;(3)测试前应当设置合理的测试用例,测试用例的设计不仅要有合法的测试数据,也要有非法的测试数据;(4)对程序修改之后要进行回归测试;(5)妥善保留测试计划、严格按照计划测试,排除测试的随意性,全部测试用例、出错统计和最终分析报告,并对每一个测试结果做全面检查。
1.5 软件测试的地位
软件的开发过程包括需求分析、设计、实现和测试四个阶段。软件测试在软件生命周期中占重要地位,是软件交付用户使用前保证软件质量的重要手段。在系统发布之前,从客户的需求出发,尽早发现问题,修改的成本越低,破坏性也越小。一旦系统投产后发现问题,其危害性被成倍放大,甚至会给双方造成不可估量的损失。
2 软件测试方法
按照不同的分类方法,软件测试可以分为多种类型。
2.1 从是否需要执行被测试软件的角度分类
静态测试:是指不需要实际运行软件,主要对软件的编程格式、程序逻辑结构等方面进行测试。静态测试是通过对源程序进行语法检查,静态结构分析、代码质量等方面找出缺陷和可疑之处,例如变量定义和生命周期检查、模块接口的正确性、是否允许递归、程序逻辑和结构审查等。
动态测试:通常的上机运行软件而进行的测试,这种方法是使程序有控制地运行,并从多种角度观察程序的行为,以发现其中的错误。在软件维护阶段,当修改软件后,除了对修改部分的软件进行常规的测试外,还应对软件的其他部分进行回归测试,所谓回归测试是指全部或部分地重复已做过的测试,它主要检查软件的修改是否在软件的未修改部分引入了新的错误。
2.2 从是否针对软件结构与算法的角度分为
白盒测试,主要是对软件的逻辑结构进行的测试。白盒测试要求测试人员对程序内部逻辑结构及有关信息来设计和选择测试用例,对程序的逻辑路径进行测试,不需测试软件产品的功能。测试过程是基于覆盖全部代码、分支、路径和条件。白盒测试是指在知道产品内部工作过程,通过设置测试用例来检测产品内部动作是否按照规格说明书的规定正确进行,检验程序是否都能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑覆盖、基本路径测试等。
黑盒测试:指测试来检测每个功能是否可以正常使用。执行严格的测试,通过对整个软件或某些软件功能,但不检查程序的源代码还是非常清楚的了解该软件的源代码程序具体如何设计。通过输入测试数据,并通过分析的结果输出到测试人员了解软件是如何工作的。在测试中,主要的功能是用来检查是否正确的程序或缺少的功能,用户界面是正确的,错误的数据结构或外部数据库访问错误,性能是正确与否,程序是否有初始化和终止错误的存在。
2.3 从测试的不同阶段分类
单元测试:指的是对每一个工作单元进行测试,了解其运行结果是否符合我们的预期。它对测试人员的要求比较高,要求测试人员对程序代码比较熟悉;一般由程序员自己编完某个单元后,先自我检查通过后,再将测试代码交给测试人员进行审核,如果发现缺陷,原开发者应当及时修正程序,这样可以尽快的发现程序中存在的错误,及时修正以提高程序开发的效率。
集成测试:是在单元测试的基础上,测试再将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动。也就是说,在集成测试之前,单元测试已经完成,集成测试中所使用的对象,已经是经过单元测试的软件单元。
系统测试:是将已经确认的计算机软件和硬件设备、网络和外围设备等元素组合在一起,对已经集成好的系统进行测试,找出所开发的系统与用户需求不符或矛盾的地方,从而提出更加完善的方案.它的任务是尽可能彻底地检查出程序中的错误,提高软件系统的可靠性。
验收测试:也称为交付测试,完成了功能和系统测试后、产品发布之前所进行的测试活动,它是技术测试的最后一个阶段。
总之,随着软件开发和测试技术的不断发展,测试方法也越来越多样化,针对性更强;选择合适的软件测试方法可以让我们事半功倍。
参考文献:
[1]张永梅.软件测试技术研究[J].测试技术学报,2002,6.
[2]刘继华.软件测试技术的研究进展[J].微计算机信息,2012,10.
[3]瞿莉丽.浅析软件测试技术[J].硅谷,2010,4.
点击下页还有更多>>>软件技术论文2000字
软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。
浅谈软件项目估算技术
摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。
关键词:规模估算;成本估算;实例应用
中图分类号: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.
作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。
点击下页还有更多>>>软件技术论文范文
visio 真的非常强大,但是售价较高,免费的可考虑openoffice draw组件,免费软件能到这个程度,夫复何求?
Microsoft Office Visio。流程图类最好的软件了,跟Word之类的无缝兼容(可以直接粘贴进去而且可编辑),文件大小也不大
要找那种比较不被大家关注的,但能应用到实际中的,会有好的反响不要总看市面上热门的,过几年可能就没什么意思了。16 基于统计覆盖测试技术的软件测试充分性研究 40 面向对象软件测试中的测试用例生成技术的研究 都很不错的 资料到baidu google一找一大筐
去领测国际问问吧 他们挺专业的
我也要开题了,可是不知论文开题写什么
本科论文还是硕士论文? 我估计是本科论文可能性比较大,硕士论文作这个就太那个了。测试的目标说白了,不过是确认产品功能是否正确,进一步还可以确认性能等。1、论文首先得讲你做了什么,开宗明义2、背景,这里就是你测试的产品,大体介绍一下,就是copy,注明出处3、这里需要根据产品的需求文档,逐一列出需要测试的各个功能,注明出处4、对各个功能一一设计测试用例,这个需要自己来写,对应的代码工作是编写测试的子程序(如果需要)5、确认对各个功能测试的结果,做了哪些测试,测试正确性如何,产品质量如何6、总结7、致谢8、原创性说明就这些了,一般的院校都会有自己的格式要求,但大多数不会差得太多,照着套就行了,呵呵