软件过程与管理-课程总结
课程设计总结500字(通用范文7篇)

课程设计总结500字(通用范文7篇)关于课程设计总结500字,精选5篇通用范文,字数为500字。
作为一名优秀的学生,我有幸参与了CAD课程的学习和设计。
在这一学期的学习中,我通过课堂讲解、实践操作以及项目设计,掌握了许多有关CAD的知识和技能。
在这篇文章中,我将总结我在CAD课程中的学习成果,回顾我的进步和收获。
课程设计总结(通用范文):1作为一名优秀的学生,我有幸参与了CAD课程的学习和设计。
在这一学期的学习中,我通过课堂讲解、实践操作以及项目设计,掌握了许多有关CAD的知识和技能。
在这篇文章中,我将总结我在CAD课程中的学习成果,回顾我的进步和收获。
首先,在CAD课程的学习过程中,我掌握了CAD软件的基本操作和功能。
通过课堂上的教学和实际操作,我学会了如何创建和编辑2D和3D图形,包括线条、曲线、曲面等。
我了解了各种CAD命令的使用方法,如绘制、修剪、缩放、镜像等。
掌握这些基本操作和命令,我能够根据需求绘制出精确的图形,并进行必要的修改和编辑。
其次,在CAD课程的实践操作中,我深入了解了CAD 设计的实际应用。
通过设计不同类型的建筑结构、机械零件和电路板等,我学会了如何将理论知识应用到实际项目中。
我能够根据设计要求和标准,绘制出符合要求的CAD图纸。
同时,我也学会了分析和解决CAD设计中的问题和挑战,如尺寸不准确、图形变形等。
通过不断的实践,我逐渐增强了自己的设计能力和解决问题的能力。
最后,在CAD课程的项目设计中,我锻炼了自己的团队合作和沟通能力。
在团队项目中,我与同学们共同合作,分工协作,共同完成了一些复杂的CAD设计任务。
通过与他人的交流和合作,我学会了倾听和尊重他人的意见,也学会了与他人有效地沟通和协调。
这不仅提高了我在团队合作中的能力,也为我今后的职业发展奠定了基础。
总的来说,CAD课程的学习让我受益匪浅。
我不仅掌握了CAD软件的基本操作和功能,还学会了将理论知识应用到实际项目中。
linux实训个人总结8篇

linux实训个人总结8篇篇1一、实训背景与目标本次Linux实训旨在通过实践操作加深我对Linux操作系统的理解与应用能力,提升我在Linux环境下的软件开发和系统管理能力。
在为期XX周的实训过程中,我针对Linux系统的基本配置、软件开发、系统管理等方面进行了系统学习与实践。
二、实训内容1. Linux系统基础操作在实训初期,我重点学习了Linux系统的基本操作,包括文件与目录管理、常用命令的使用、软件包的安装与管理等。
通过实践操作,我掌握了Linux系统下的基本命令和操作技巧,能够熟练进行文件的增删改查以及软件的安装与配置。
2. 软件开发环境的搭建与实践本次实训中,我学习了如何在Linux环境下搭建软件开发环境,包括编译器的安装与配置、代码编辑器的使用、版本控制系统的实践等。
通过搭建开发环境,我能够自主进行软件的开发与调试,提升了我的软件开发能力。
3. 系统管理与维护实践在实训过程中,我还学习了Linux系统的管理与维护知识,包括系统监控、用户管理、进程管理、磁盘管理等。
通过实践操作,我掌握了系统管理的基本技巧,能够独立完成系统的日常管理与维护工作。
三、实训收获与体会1. 深入了解Linux系统架构与运行机制通过本次实训,我深入了解了Linux系统的架构和运行机制,对Linux系统的内核、文件系统、进程管理等方面有了更加清晰的认识。
2. 提升动手实践能力与问题解决能力在实训过程中,我通过大量的实践操作,提升了动手实践能力。
同时,在遇到问题时,我学会了独立思考和解决问题的方法,增强了问题解决能力。
3. 学会团队协作与沟通在实训过程中,我与团队成员紧密合作,共同完成任务。
通过团队协作,我学会了与队友沟通的技巧,提升了团队协作能力。
四、问题与解决方案在实训过程中,我也遇到了一些问题,如软件包安装失败、系统配置出错等。
针对这些问题,我通过查阅相关资料、请教老师同学等方式,找到了解决问题的方法。
同时,我也总结了问题的原因和解决方案,避免类似问题再次发生。
自学软件总结报告范文(3篇)

第1篇一、前言随着信息技术的飞速发展,软件应用已经成为我们日常生活和工作中不可或缺的一部分。
为了适应这一趋势,提高自身竞争力,本人近年来投入大量时间进行自学软件,以期在专业技能和综合素质上有所提升。
现将自学软件的过程和成果进行总结,以期为今后学习和工作提供借鉴。
二、自学软件的目的和意义1. 提升个人技能:在当今社会,掌握一定的软件技能是提高个人竞争力的重要途径。
通过自学软件,可以拓宽知识面,提升专业技能。
2. 适应工作需求:许多工作领域对软件应用有较高要求,自学软件有助于适应岗位需求,提高工作效率。
3. 丰富业余生活:软件学习可以作为一种兴趣爱好,丰富业余生活,提高生活质量。
三、自学软件的过程1. 确定学习目标:根据自身兴趣和职业规划,确定学习目标。
例如,本人主要关注办公软件、图形设计软件、编程语言等。
2. 选择学习资源:通过互联网、书籍、培训班等多种途径获取学习资源。
以下为本人自学过程中使用的一些资源:- 在线教程:如慕课网、网易云课堂、极客学院等平台提供了丰富的软件教程。
- 专业书籍:购买或借阅相关领域的专业书籍,系统学习理论知识。
- 视频教程:在B站、优酷等视频网站搜索相关教程,进行实战演练。
3. 制定学习计划:根据学习目标和时间安排,制定详细的学习计划,确保学习进度。
4. 实践操作:理论知识的学习是基础,但更重要的是实践操作。
通过实际操作,巩固所学知识,提高技能水平。
5. 交流分享:加入学习群组,与其他学习者交流心得,分享经验,共同进步。
四、自学软件的成果1. 办公软件应用:熟练掌握Word、Excel、PowerPoint等办公软件,能够高效完成日常工作。
2. 图形设计软件:学习Photoshop、Illustrator等图形设计软件,具备基本的图形设计能力。
3. 编程语言:掌握Python、Java等编程语言,具备一定的编程能力。
4. 个人作品:完成多个个人项目,如设计海报、制作PPT、编写小程序等,积累了丰富的实践经验。
软件过程管理

软件过程管理总结报告要求:①字数不少于1200字;②内容包括:涵盖课程的重要性、通过本门课程的开设都学到了哪些知识、有哪些感悟等方面。
正文:软件过程管理为快速地开发高质量软件、有效地维护软件运行等软件工程实施提供了指导性框架、实施方法和最佳实践方案。
软件过程管理体现在过程模型、规范、问题处理方法和具体实践等一系列内容之上,但首先体现在组织文化中,即建立过程管理的先进理念。
——(1)以客户为导向、以过程为中心。
(2)好的过程就能产生好的产品。
(3)尊重流程。
自上而下,依赖流程。
(4)只关注质量过程而不是质量结果。
软件过程管理一旦在组织中建立起来,其他问题就迎刃而解。
而且,软件过程管理的关键是建立正确的过程管理文化。
随着时代的发展,新的技术不断更新,新软件商业模式和开发模式不断变化。
所以,软件过程管理模式也应该是在不断发展的,就每个具体的软件组织和企业,应该选择适合自己的模式,而是选择多种模式,以一种模式为主,对其它模式兼收并蓄,形成更有效的软件过程自定义模式。
软件项目管理过程是对软件项目过程经行计划、监控/管理、总结的辅助过程,包括需求、配置、成本、进度、质量和风险等的管理。
软件开发过程是软件过程中的基本过程,负责开发和定义用户需求,设计、构建和测试满足这些需求的软件并最终将其交付给客户的过程。
目前常用的软件过程模型主要有:迭代模型、V模型、原型模型和螺旋模型等。
根据公司的业务模式、项目特点和团队能力等实际因素,决定选择基于迭代模型的RUP过程模型,进行合理的剪裁和修改,使其成为公司自定义的软件开发过程。
而且,在开发过程中,阶段的划分并不是把各项工作各路开来,而是工作焦点的转移,正如RUP所描述的,需求分析、测试等工作贯穿整个软件生命周期,例如在项目立项之前有许多需求沟通的工作,在架构设计、测试阶段和维护阶段,需求可能发生变化,需要继续开发需求和定义需求。
通过《软件过程管理》的学习,我们知道软件过程就是人们用来开发和维护软件和相关文档以及相关产品的活动、方法、实践和变革的集合。
软件工程实验报告个人总结

软件工程实验报告个人总结软件工程实验报告个人总结本次实验课程让我们深刻地了解了软件工程的重要性,也受益匪浅,以下是本次实验课程涉及的知识以及我在实验过程中的收获与感悟。
一、实验目的本次实验的主要目的是让我们从设计和开发角度去学习软件工程。
这次实验让我们研究了软件工程中的核心概念,包括软件过程模型、软件质量保证、软件建模和软件测试。
二、实验总结1.软件过程模型:通过本次实验,我们深入了解了软件过程模型,包括瀑布模型、架构模型、螺旋模型、V模型和软件集成等几种模型,并能够实际操作这几种模型的设计及开发,从而加深对软件过程模型的理解。
2.软件质量保证:本次实验让我们清楚地认识到软件质量保证的重要性,以及软件质量保证中的四大流程:计划管理、资源管理、技术管理和品质管理。
实验中给我们演示了如何分人分工,合理利用资源,执行质量管理,保证软件开发的质量。
3.软件建模:本次实验中,我们学习了用UML来模型化软件,以便于让软件开发者和用户更容易的理解软件的设计思想。
我们还深刻理解了UML模型的各种元素,以及UML建模时的一些常用技巧。
4.软件测试:我们在实验中系统地学习了软件测试的基本概念,如功能测试、安全测试等,以及实际操作这些测试的方法。
这些实验能够让我们更加准确地做测试,从而保证软件开发的质量和稳定性。
三、个人感悟软件工程是一门复杂的学科,它需要各种技术结合在一起,以解决复杂的问题。
它不仅需要仔细的设计,还需要合理的质量保证,以及准确的测试。
通过本次实验,我深刻地认识到:软件工程是一个系统的工程,只有全面地把握每一个环节,才能提高软件的完整性,减少软件出现的问题。
个体软件过程psp总结

第一章1.度下完成任务。
2.过程改进的步骤1)2)3)了解过程4)5)6)测量结果7)第四章划1.也不会做好。
第五章1.方面:1)的特性。
2)3)第六章的一致,第七章对时间进行跟踪。
第八章1.什么是承诺的一致。
1)2)3)4)5)他考虑6)考虑2.认真制订承诺1)2)3)4)3.少到最小程度。
一份当前承诺的清单,(2)包括要做什么和什么时候完成(3)估计每个承诺的工作量有多少。
第九章进度管理我们把Gantt图中用于测量进度的点称为检查点或里程碑,他是项目计划和管理的重要部分,应该满足清晰明确和没有歧义两个特点。
总结:对项目进度管理除了使用Gantt图,还常用积分的方法准确跟踪项目的进展状态,可用于与原计划不同顺序的工作。
这种方法主要通过计算各任务所用时间占计划项目总时间的百分比。
第十一章软件开发过程1.什么是psp,psp的两个目标是什么个体软件工程psp就是为使工程师更好地工作而设计的一个框架。
他指出如何估计和计划工作,跟踪自己的性能以及提高程序质量。
Psp的两个目标:帮助软件工程师开发程序,并提供如何利用过程来改善工作方式。
第十二章缺陷1.什么是缺陷缺陷是指程序中存在的错误,例如语法错误,拼写错误,标点符号错误或者是一个不正确的程序语句。
2.缺陷与bug缺陷是指程序中的错误,缺陷是很重要的问题而不是琐碎的小事,并不像无足轻重的BUG,更像是定时炸弹,看起来很小的缺陷可能会产生破坏性的后果。
3.为什么要使用缺陷记录日志1)提高程序设计水平2)减少程序中缺陷的数量3)节省时间4)节约开支5)负责任地完成工作第十三章缺陷查找技术1.发现缺陷的步骤1)标识缺陷征兆2)从征兆判断出缺陷的位置3)确定程序中的错误4)决定如何修复缺陷5)修复缺陷2.发现和修复缺陷的方法1)编译器2)测试3)发行仍然含有缺陷的产品,然后等待用户发现和反馈缺陷信息4)个人复查源程序清单(最快最有效)总结:在PSP中主要的缺陷排除方法是个人代码复查。
软件项目管理学习心得体会

软件项目管理学习心得体会软件应用软件产品项目管理学习心得体会1软件项目管理这门课程是我们软件工程测试技术专业学生的一门重要的课程,这门课程的开设必有其重要性。
软件项目管理的提出是在20世纪70年代中期的美国。
联合开发由于开发项目投资不能按时提交、超出预算、质量达不到消费者的要求等原因,70%的项目出现问题。
于是,软件开发者开始逐渐重视软件开发中的各项管理。
到了20世纪90年代中期,软件项目管理虽然不严的问题仍然存在。
软件项目管理和其他项目管理相比有相当的特殊性。
首先,软件是纯知识产品,其开发进度和纯度很难估计和度量,生产效率也难以预测和可以保证。
其次,软件系统的开发计划局限性也导致了开发过程中各种风险的难以预见和控制。
因此,项目管理对软件生产具有决定性的意义。
项目管理的定义是指一定的主体,为了实现其目标,灵活运用各种有效的手段,对执行的项目周期的各个阶段工作进行计划、组织、协调、指挥、控制,以取得良好经济效益的各项活动的总和。
软件目的是为了使软件项目能够按照预定的成本、进度、质量顺利完成而进行分析和的活动。
另外,进行软件项目管理有利于将个人开发能力转化成企业的开发能力。
企业的软件开发能力越高,表明这个企业的软件生产越是趋向成熟,企业越能够更稳定发展。
对于软件投资项目的学习,我首先放正了消极态度来学习,认真分清软件项目管理与关系计算机网络的关系和项目管理知识体系。
软件项目管理从头到尾包括9个知识领域、5个标准化关键步骤组和44个模块。
其中本学期我们学习的主要知识点有以下几个用例部分,如:项目的初始中项目立项、合同项目、内部项目、项目授权、初始项目范围、生存期模型等知识点;项目计划中其范围计划、时间计划、成本计划、质量计划、人力资源计划、沟通计划、风险计划、合同计划、配置管理计划、集成计划等用例;项目牵制执行控制中软硬件变更管理、范围管理、进度成本管理、挣值分析法、偏差管理、质量管理控制、团队管理和建设、项目沟通管理和风险管理等;房地产项目结束中合同结束、项目结束、项目总结、项目管理的建议等。
工程软件实训心得体会8篇

工程软件实训心得体会8篇没有合理的观点加持,是无法将心得体会写出色的,心得体会的书写是可以让自己的逻辑能力的有提升的,网作者今天就为您带来了工程软件实训心得体会8篇,相信一定会对你有所帮助。
工程软件实训心得体会篇1在这次软件工程课程中,我学到了很多东西,第一次深刻的体会到了什么叫做用工程化的思想来编写软件,以前自己也写过一些小型软件,没有做过大型的工程,直到这次课堂我担任组长并组织组员共同完成“个人图书管理系统“这个工程,第一次和别人合作,才发现运用工程化的思想来做是如此的有必要。
从这里,我才真正的意识到实施一个软件工程并不是说简单的会编码就能够解决问题的,我们更多的精力不是放在编码上,编码只是一个很小的模块,只占到那么小的一个局部。
这个事实在很大程度上颠覆了我以前的思想,在我以前的认识中,似乎整个软件就是编码,除此无它,还好有老师的指导,不然真的会出现老师所说的,撞得头破血流之后才想起来用软件工程的思想来完成这个工作。
刚真正开始工作之前,我们费了很多的时间来完成一些前端工作,如需求分析和可行性分析,这块工作在别人看来可能是相对无关紧要,甚至是多于的`,其实,换做在以前,我也会这么认为。
可是,我现在算是深深地明白了磨刀不误砍柴工的道理,这些工作的完成太有必要了,太重要了,要想你的软件有用有市场,能被别人接受和认可,在进行过程中不会出现崩溃性的问题,这些工作缺一不可。
还有就是接下来的一些设计模块,此模块与软件编码涉及比拟紧密,主要是解决一些参数传递和接口通讯的问题,此模块对我的触动远没有上两个模块对我的影响大,因此再次也不做过多的介绍。
在整个活动的完成过程中,作为组长,我收获很多,我发现,要是组里有个人不怎么想做事情时,他对于整个组织的影响是消灭性的,正所谓“一颗老鼠屎,能坏一仓谷“,以后我的组织里要是出现这样的人,我绝不会给他继续留下来的时机,我会在第一时间将他去除出去。
还有就是,作为组长,你要做的最重要的事情,不是发挥自己的聪明才智,而是创造出一个平台,让别人去发挥,你所要做得,出了保证这个平台的完整性和公平性外,还有就是协调好各组员之间的关系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件过程与管理结课报告学生姓名:X X学号:XXXXXXXXXX班号:116122指导教师:***中国地质大学(武汉)信息工程学院在学习完这门课后,我对于软件过程与管理有了一定的理解,下面介绍一下我的心得。
软件过程软件过程是指一套关于项目的阶段、状态、方法、技术和开发、维护软件的人员以及相关Artifacts(计划、文档、模型、编码、测试、手册等)组成。
软件过程是指软件生存周期所涉及的一系列相关过程。
过程是活动的集合;活动是任务的集合;任务要起着把输入进行加工然后输出的作用。
活动的执行可以是顺序的、重复的、并行的、嵌套的或者是有条件地引发的。
软件过程可概括为三类:基本过程类、支持过程类和组织过程类。
基本过程类包括获取过程、供应过程、开发过程、运作过程,维护过程和管理过程。
支持过程类包括文档过程、配置管理过程、质量保证过程、验证过程、确认过程、联合评审过程、审计过程以及问题解决过程。
组织过程类包括基础设施过程、改进过程以及培训过程。
软件过程主要针对软件生产和管理进行研究。
为了获得满足工程目标的软件,不仅涉及工程开发,而且还涉及工程支持和工程管理。
对于一个特定的项目,可以通过剪裁过程定义所需的活动和任务,并可使活动并发执行。
与软件有关的单位,根据需要和目标,可采用不同的过程、活动和任务。
软件过程是指软件整个生命周期,从需求获取,需求分析,设计,实现,测试,发布和维护一个过程模型。
一个软件过程定义了软件开发中采用的方法,但软件过程还包含该过程中应用的技术——技术方法和自动化工具。
过程定义一个框架,为有效交付软件工程技术,这个框架必须创建。
软件过程构成了软件项目管理控制的基础,并且创建了一个环境以便于技术方法的采用、工作产品(模型、文档、报告、表格等)的产生、里程碑的创建、质量的保证、正常变更的正确管理。
软件过程的成熟等级有五级,分别为初始级,可重复级,定义级,定量管理级,优化级。
(1)在初始级,企业一般不具备稳定的软件开发与维护的环境。
常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试。
处于这一等级的企业,成功与否在很大程度上决定于有杰出的项目经理与经验丰富的开发团队。
因此,能否雇请到及保有能干的员工成了关键问题。
项目成功与否非常不确定。
虽然产品一般来说是可用的,但是往往有超经费与不能按期完成的问题。
(2)在可重复级,建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施。
基于过往的项目的经验来计划与管理新的项目。
企业实行了基本的管理控制。
符合实际的项目承诺是基于以往项目以及新项目的具体要求而作出的。
项目经理不断监视成本、进度和产品功能,及时发现及解决问题以便实现所作的各项承诺。
通过具体地实施这一级的各个关键过程领域的要求,企业实现了过程的规范化、稳定化。
因而,曾经取得过的成功成为可重复达到的目标。
(3)在定义级,有关软件工程与管理工程的一个特定的、面对整个企业的软件开发与维护的过程的文件将被制订出来。
同时,这些过程是集成到一个协调的整体。
这就称为企业的标准软件过程。
这些标准的过程是用于帮助管理人员与一般成员工作得更有效率。
如果有适当的需要,也可以加以修改。
在这个把过程标准化的努力当中,企业开发出有效的软件工程的各种实践活动。
同时,一个在整个企业内施行的培训方案将确保工作人员与管理人员都具备他们所需要的知识与技能。
非常重要的一点是,项目小组要根据该项目的特点去改编企业的标准软件过程来制订出为本项目而定义的过程。
一个定义得很清楚的过程应当包括:准备妥当的判据,输入,完成工作的标准和步骤,审核的方法,输出和完成的判据。
因为过程被定义得很清楚,因此管理层就能对所有项目的技术过程有透彻的了解。
(4)在定量管理级,企业对产品与过程建立起定量的质量目标,同时在过程中加入规定得很清楚的连续的度量。
作为企业的度量方案,要对所有项目的重要的过程活动进行生产率和质量>一个企业范围的数据库被用于收集与分析来自各项目的过程的数据。
这些度量建立起了一个评价项目的过程与产品的定量的依据。
项目小组可以通过缩小他们的效能表现的偏差使之处于可接受的定量界限之内,从而达到对过程与产品进行控制的目的。
因为过程是稳定的和经过度量,所以在有意外情况发生时,企业能够很快辨别出特殊的原因并加以处理(5)在优化级,整个企业将会把重点放在对过程进行不断的优化。
企业会采取主动去找出过程的弱点与长处,以达到预防缺陷的目标。
同时,分析有关过程的有效性的资料,作出对新技术的成本与收益的分析,以及提出对过程进行修改的建议。
整个企业都致力于探索最佳软件工程实践的创新。
项目小组分析引起缺陷的原因,对过程进行评鉴与改进,以便预防已发生的缺陷再度发生。
同时,也把从中学到的经验教训传授给其他项目。
降低浪费与消耗也是这个等级的一个重点。
处于这一等级的企业的软件过程能力可被归纳为不断的改进与优化。
它们以两种形式进行。
一种是逐渐地提升现存过程,另一种是对技术与方法的创新。
虽然在其他的能力成熟度等级之中,这些活动也可能发生,但是在优化级,技术与过程的改进是作为常规的工作一样,有计划地在管理之下实行的。
软件管理同样,在项目开发过程中,还有一个非常重要的方面,就是软件管理同其他任何工程项目一样,软件项目同样存在一个非常重要的问题,这就是软件管理的问题,而这一问题通常容易被一般的软件开发人员所忽视。
在一般的软件工程资料中所讨论的重点也只是软件开发方法,对软件管理问题大多一笔带过。
在一个小的软件开发项目中也许还无所谓,但一个大型的软件开发项目如果没有优秀的软件管理人员来领导和协调整个项目,其失败的可能性就很大了。
因此有必要引起大家对此问题的重视,这也是本文的目的所在。
作为软件管理人员,应该站在高处来俯瞰整个项目,如果有不识庐山真面目的感觉就不太好了。
有了俯瞰全局的意识这一前提,采用适当的管理技术,项目开展就会容易。
软件项目的管理工作可以分位四个方面:软件项目的计划、软件项目的组织、软件项目的领导和软件项目的控制,下面对这四个方面进行详细的介绍。
软件开发项目的计划包括定义项目的目标,以及达到目标的方法。
他涉及到项目实施的各个环节,带有全局的性质,是战略性的。
计划应力求完备,要考虑到一些未知因素和不确定因素,考虑到可能的修改。
计划应力求准确,尽可能提高所依据的数据的可靠程度。
主要工作集中在软件项目的估算、软件开发成本的估算和软件项目进度安排。
软件项目计划的目标是提供一个能使项目管理人员对资源、成本和进度做出合理估算的框架。
这些估算应在软件项目开始时的一段有限时间内作出,并随着项目的进展进行更新。
软件项目管理过程开始于项目的计划,在做项目计划时,第一项活动是估算。
已经使用的使用技术是时间和工作量的估算。
因为估算是其他项目计划活动的基石,而且项目计划又未软件工程过程提供了工作方向,所以我们不能没有计划就着手开发,否则就会陷入盲目性。
估算本身带有风险,估算资源、成本和项目进度时需要经验、有用的历史信息、足够的定量数据和作定量度量的勇气。
估算的精确程度受到多方面的影响。
首先,项目的复杂性对于增加软件计划的不确定性影响很大,复杂性越高,估算的风险就越高。
复杂性是相对度量的,他与项目参加人员的经验有关,比如如果让搞MIS的项目组去搞操作系统设计显然增加了复杂性。
其次,项目的规模对于估算的精确性和功效的影响也比较大,因为随着软件规模的扩大,软件相同元素之间的相互依赖、相互影响也迅速增加,因而估算时进行问题分解也会变得更加困难。
还有项目的结构化程度也影响项目估算的风险,这里的结构性是指功能分解的简便性和处理信息的层次性,结构化程度提高,进行精确估算的能力就提高,相应风险将减少。
此外,历史信息的有效性也影响估算的风险,在对过去的项目进行这综合的软件度量之后,就可以借用来比较准确地进行估算。
影响估算的因素远不止这些,比如用户需求的频繁变更给估算带来非常大的影响。
估算的依据是软件的范围,包括功能,性能、限制、接口和可靠性。
在估算开始之前,应对软件的功能进行评价,并对其进行适当的细化以便提供更详细的细节。
由于成本和进度的估算都与功能有关,因此常常采用功能分解的办法。
性能的考虑主要包括处理和响应时间的需求。
约束条件则标识外部硬件、可用存储和其他现有系统对软件的限制。
另外软件项目计划还要完成资源估算,包括人力资源、硬件资源和软件资源。
在考虑各种软件开发资源时最重要的是人,必须考虑人员的技术水平、专业、人数以及在开发过程各阶段对各种人员的需要。
硬件资源作为一种工具投入。
软件资源包括各种帮助开发的软件工具,比如数据库等。
工作两估算是最普遍使用的技术。
经过功能分解之后,可以估计出每一个项目任务的分解都需要花费若干人年,总计之后就知道软件项目总体工作量。
下面就是一个示意性工作量估算表。
软件开发成本主要是指软件开发过程所花费的工作量及其相应的代价。
它不同于其他物理产品的成本,它主要包括人的劳动的消耗,人的劳动的消耗所需的代价就是软件产品的开发成本。
开发成本的估算方法有很多种,象简单的代码行技术,任务分解技术,自动估计成本技术,专家判定技术,还有参数方程法,标准值法,以及COCOMO模型法。
其中COCOMO (Constructive Cost Model)模型法是一种精确、易于使用的成本估算方法,该模型按其详细程度分为三级:基本COCOMO模型、中间COCOMO模型和详细COCOMO模型。
软件项目的进度安排主要是考虑软件交付用户使用的这一段开发时间的安排。
进度安排的准确程度可能比成本估计的准确程度更重要。
软件产品可以靠重新定价或者靠大量的销售来弥补成本的增加,但进度安排的落空会导致市场机会的丧失或者用户不满意,而且也会导致成本的增加。
因此在考虑进度安排时要把人员的工作量与花费的时间联系起来,合理分配工作量,利用进度安排的有效分析方法严密监视软件开发的进展情况,以使得软件开发的进度不致被拖延。
在进行进度安排时要考虑的一个主要问题是任务的并行性问题。
当参加项目的人数不止一人是软件开发工作就会出现并行情况。
因为并行任务是同时发生的所以进度计划表必须决定任务之间的从属关系,确定各个任务的先后次序和衔接,确定各个任务完成的持续时间。
另外还应注意关键路径的任务,这样可以确定在进度安排中应保证的重点。
常用的进度安排方法有两种,即甘特图法和工程网络法。
一个软件项目的组织方式主要有两种。
软件项目可以是一个单独的开发项目,也可以与产品项目组成一个完整的软件产品项目。
如果是订单开发,则成立软件项目组即可;如果是产品开发,需成立软件项目组和产品项目(负责市场调研和销售),组成软件产品项目组。
公司实行项目管理时,首先要成立项目管理委员会,项目管理委员会下设项目管理小组、项目评审小组和软件产品项目组。