如何评估软件开发的工作量?
这个资深项目经理也没法评估的吧~难题~But个人感觉,评估软件开发的工作量可以采用事后估量的策略。
即提交之后,经过测试或试运行,需要重新回炉修改的功能点来估计。
这些需要更改的部分的原因主要有两大类:因需求变更导致,本身的bug,为它俩加一个比例因子,就可以衡量该项目的工作量啦。
如果进一步精确些的话,则需要考虑进去时间维度了,即修改某一bug所花费的时间。
简而言之,前期工作量多(当然工作出色,考虑地多自然算作工作量多啦),那么后期就会暴漏出的本身bug就越少,而且比较容易修改,并且需求变更时,对源代码修改起来也会相对简单些。
软件开发工作量如何评估
1。
需求确定的情况很少,因为客户的需求总是在变,即使确定下来,验收的时候也会提出新的问题,这个要靠项目经理沟通,用户当前的问题在这个版本中解决还是下期合同来做。
因此来说,需求大体确定以后,拆分子系统组成---子系统的组成模块--细分模块组成,这个是相对粗粒度的,然后就要考虑你手头队伍对细分模块的开发实现能力,大体就知道工作量了,如果不赶工期,时间要放长,软件开发,没有一帆风顺的,肯定会有很多问题,简单来说就是常见的需求变更。
展开全部2。
评估成员工作量,首先要了解队伍组成,哪些人规划流程清晰,哪些人对技术攻关能力更好,哪些人适合测试,哪些人编码快速,哪些人对数据库精通,哪些人对界面布局更擅长,哪些人有技术的同时更善于沟通。
所以通常都是更善于沟通的做组长,及时把流程清晰的告诉组员,反馈每个组员的工作进度,协同组员进度并决定何时由何人做技术攻坚,何时组织测试。
3。
项目完成以后就好统计了,每个小组的代码行数,实现的功能模块数量,供其他小组调用的模块,用时多少天,涉及多少领域等,其实这个统计不能说a组完成项目的40%,b组60%这样,比较合理的应该是在某个方面,各个小组的组成比例的表格,然后有个小组工作的总结比较合适。
如代码统计,a组2w行,占40%,b组3w,占60%。
模块数量:a组6个,占60%,b组4个占40%,并附模块结构的说明。
当然,各个公司的管理不一样,统计方式不一样,反正一个原则就是尽量兄弟们多说点好话,因为一个软件做成,每个环节都不能差的,再好的汽车,如果没有一个很普通的小小铁板当刹车踏板,你敢开吗。
...
软件开发项目工作量如何评估,按人天、按代码行、按模块....???...
展开全部 总的来说,要考评估一种/多种操作系统的开发复杂度及是否跨平台,软件应用技术的复杂度,是否多个子系统构成及子系统相互通信技术,软件应用范围的广度,受众用户的数量,软件升级及更新的管理规划,培训安排等。
。
1。
需求确定的情况很少,因为客户的需求总是在变,即使确定下来,验收的时候也会提出新的问题,这个要靠项目经理沟通,用户当前的问题在这个版本中解决还是下期合同来做。
因此来说,需求大体确定以后,拆分子系统组成---子系统的组成模块--细分模块组成,这个是相对粗粒度的,然后就要考虑你手头队伍对细分模块的开发实现能力,大体就知道工作量了,如果不赶工期,时间要放长,软件开发,没有一帆风顺的,肯定会有很多问题,简单来说就是常见的需求变更。
2。
评估成员工作量,首先要了解队伍组成,哪些人规划流程清晰,哪些人对技术攻关能力更好,哪些人适合测试,哪些人编码快速,哪些人对数据库精通,哪些人对界面布局更擅长,哪些人有技术的同时更善于沟通。
所以通常都是更善于沟通的做组长,及时把流程清晰的告诉组员,反馈每个组员的工作进度,协同组员进度并决定何时由何人做技术攻坚,何时组织测试。
3。
项目完成以后就好统计了,每个小组的代码行数,实现的功能模块数量,供其他小组调用的模块,用时多少天,涉及多少领域等,其实这个统计不能说a组完成项目的40%,b组60%这样,比较合理的应该是在某个方面,各个小组的组成比例的表格,然后有个小组工作的总结比较合适。
如代码统计,a组2w行,占40%,b组3w,占60%。
模块数量:a组6个,占60%,b组4个占40%,并附模块结构的说明。
当然,各个公司的管理不一样,统计方式不一样,反正一个原则就是尽量兄弟们多说点好话,因为一个软件做成,每个环节都不能差的,再好的汽车,如果没有一个很普通的小小铁板当刹车踏板,你敢开吗。
其实还有很多的,让高人再补充吧,软件管理,在中国一直落后的,大家一起努力。
...
一个软件项目如何评估工作量和成本?
不一定,现在软件工程师也比较多了吧,关键还是看你技术学得怎么样咯,假如你 技术学得好,有创新能力就算再多的竞争对手你也是好发展的。
学习软件现在还有 一个好机会就是学习3G手机软件开发,现在智能机的兴起导致各种3G手机软件开发 人员供不应求,你可以考虑往这个方向发展,至于学校的话建议你可以选择湖南生 物机电的校企班,因为现在基本上还没有高等院校开设这个专业,只有一些培训学 校有开设,而3G手机软件开发作为一个新产品还没被理解透彻,单纯的教学并不能 让学生真正意义上的掌握技术,而校企合作则通过理论+实践的一个过程来学习, 通过实实在在的开发参与,由企业高科技人才来培养,才能学习到3G软件技术的精 髓,而也只有这样才能接触到日新月异的先进技术,掌握技术发展动态。
软件开发中测试和排错所占工作量
展开全部 1.首先热爱这个专业。
只有这样,才会从抽象的理论中找到实实在在的快乐。
如果 不热爱她,或者只因为这是个热门专业,那么极力要求放弃这个专业,因为计算机是 一把双刃剑,学好了会飞黄腾达,学不好毕业后会极其痛苦,高不成低不就,没有发 展潜力,如同学英语专业的人到了美国一样。
2.不要用功利眼光对待这个学科,这绝对不是点点鼠标就能挣钱的专业。
不要去想做网站 挣钱,不要想靠点击率增加广告,这个在4年前已经过时,如果现在仍然这么想,千万别 说出来,因为会觉得很土。
计算级专业的成就感总是伴随着身体上的痛苦而来,肩周 炎,颈椎病,眼睛干涩,掉头发,腰椎间盘突出,关节炎 3.搞明白计算机“科学”与“技术”的含义。
做网页,做图片,做flash,玩游戏,上网, 听歌,录mp3,搞电影字幕,装windows,改注册表,为软件皮肤……这通通不叫计算机科学 与技术,如果是计算机的学生,会做以上事情,那是应该的,不会做,也没什么丢人 的,需要的不是让别人称作“高手”。
4.明确最终的专业方向是软件还是硬件。
方向是网络?网络不是专业方向。
网络是最优 秀的软件工程师、最优秀的硬件工程师与最优秀的通信工程师的智慧结晶。
如果是软件 方向,请在学精一揽子数学、数据结构、算法设计、数值分析、汇编语言、操作系统、 编译原理、数据库原理、软件工程之类课程后,仔细的听一听硬件课程,软 件工程绝对不是背背就能过的课,计算机理论可能是一个人就能研究出来,软件工程是成 千万网软件工程师几十年来失败的教训凝结成的结晶,请认真听课。
不要问应该学什么 语言,计算机专业的人必须具备任何语言1小时上手的能力,最起码要在10分钟把"hello world"做出来。
如果说有必须学的两种语言,那他们是c++与java,学他们不是在学语言, 而是在学thinking in c++,thinking in java,一个是软件的基础理论,一个是面向对象。
软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。
软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。
软件一般是用某种程序设计语言来实现的。
通常采用软件开发工具可以进行开发。
软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。
软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。
1计划 对所要解决的问题进行总体定义,包括了解用户的要求及现实环境,从技术、经济和社会因素等3个方面研究并论证本软件项目的可行性,编写可行性研究报告,探讨解决问题的方案,并对可供使用的资源(如计算机硬件、系统软件、人力等)成本,可取得的效益和开发进度作出估计,制订完成开发任务的实施计划。
2分析 软件需求分析就是对开发什么样的软件的一个系统的分析与设想。
它是一个对用户的需求进行去粗取精、去伪存真、正确理解,然后把它用软件工程开发语言(形式功能规约,即需求规格说明书)表达出来的过程。
本阶段的基本任务是和用户一起确定要解决的问题,建立软件的逻辑模型,编写需求规格说明书文档并最终得到用户的认可。
需求分析的主要方法有结构化分析方法、数据流程图和数据字典等方法。
本阶段的工作是根据需求说明书的要求,设计建立相应的软件系统的体系结构,并将整个系统分解成若干个子系统或模块,定义子系统或模块间的接口关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数据结构设计说明书,组装测试计划。
在任何软件或系统开发的初始阶段必须先完全掌握用户需求,以期能将紧随的系统开发过程中哪些功能应该落实、采取何种规格以及设定哪些限制优先加以定位。
系统工程师最终将据此完成设计方案,在此基础上对随后的程序开发、系统功能和性能的描述及限制作出定义。
3设计 软件设计可以分为概要设计和详细设计两个阶段。
实际上软件设计的主要任务就是将软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。
可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元。
模块,然后进行模块设计。
概要设计就是结构设计,其主要目标就是给出软件的模块结构,用软件结构图表示。
详细设计的首要任务就是设计模块的程序流程、算法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。
4编码 软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言表示的“源程序清单”。
充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。
当前软件开发中除在专用场合,已经很少使用二十世纪80年代的高级语言了,取而代之的是面向对象的开发语言。
而且面向对象的开发语言和开发环境大都合为一体,大大提高了开发的速度。
5测试 软件测试的目的是以较小的代价发现尽可能多的错误。
要实现这...
软件开发成本
展开全部 一、系统软件的成本构成 系统软件的成本作为一个经济学范畴,应反映软件产品在其生产过程中所耗费的各项费用,为原材料、燃料、动力、折旧、人工费、管理费用、财务费用待项开支的总和。
从财务角度来看,列入系统软件的成本有如下的项目: (1)硬件购置费如计算机及相关设备的购置,不 间断电源、空调器等的购置费。
(2)软件购置费,如操作系统软件、数据库系统软件和其它应用软件的购 置费。
(3)人工费,主要是开发人员、操作人员、管理人员、的工资福利费等。
(4)培训费。
(5)通讯费,如 购置计算机网络设备、通讯线路器材、租用公用通讯线路等的费用。
(6)基本建设费,如新建、扩建机房、购置计算机机台、机柜等的费用。
(7)财务费用。
(8)管理费用,如办公费、差旅费、会议费、交通费。
(9)材料费,如打印纸、包带、磁盘等的购置费。
(10)水、电、汽、气费。
(11)专有技术购置费。
(12)其它费用,如资料费、固定资产折旧费及咨询费。
从系统软件生命周期构成的两阶段即开发阶段和维护阶段看,系统软件的成本由开发成本和维护成本构成。
其中开发成本由软件开发成本、硬件成本和其他成本组成,包括了系统软件的分析/设计费用(含系统调研、需求分析、系统分析)、实施费用(含编程/测试、硬件购买与安装、系统软件购置、数据收集、人员培训)及系统切换等方面的费用;维护成本由运行费用(含人工费、材料费、固定资产折旧费、专有技术及技术资料购置费)、管理费(含审计费、系统服务费、行政管理费)及维护费(含纠错性维护费用及适应性维护费用)。
二、系统软件成测算 综上所述,系统软件的成本由软件的开发和维护成本所构成,即: C=C1+C2 (1) 式中:C为系统软件的开发成本;C1为系统软件的开发成本所构成;C2为系统软件的维护成本。
1、系统软件的开发成本C1的测算。
我们认为系统软件的开发成本按其工作量及单位工作量成本来测算是可行的,具体测算方法为按系统软 件的软件规模(一般为软件源程序的指令行数,不包括注释行)、社会平均规模指数以及工作量修正因素来 进行。
尤其是CAD系统软件的实际测算,结合国内外研究成果的综合分析和专家咨询,软件社会平均生产率 参数和软件社会平均规模指数可分别确定为3.5和1.3左右;软件工作量订由八个因子、五个等级组成。
2、系统软件维护成本C2的测算。
系统软件的维护为修正现有可运行软件并维护欺其主要功能不变的过程。
系统软件在其交付使用后,其维护阶段在软件生命周期或生存期中占较大比重,有的可达软件生存周期的50-70%。
因此,系统软件的维护成本是软件成本测算中不可忽略的一部分。
系统软件的维护包括三类:A、改正、纠正性维护;B、适应性维护;C、完美性维护。
其中C类是为扩充 功能、提高性能而进行的维护,在软件资产价值评估中一般不计入该系统软件成本,而A、B两类,则与软 件的开发过程有着紧密的联系,应计入软件成本。
在系统软件维护阶段,对软件工作量的影响因素与开发阶段的影响因素基本相同,是开发阶段影响因素 的后的影响。
因此,系统维护的可靠性越大,规模越复杂,隐错越难发现,纠错越难。
系统软件越复杂, 要使其适应软、硬环境变化,进行适应性维护也越困难。
当然,可靠性大、复杂度高的系统软件,其可维 护性要求也越高,软件在运行中出错的可能性也会少些。
基于上述分析,系统软件维护成本的测算,可按 系统软件开发成本乘以一个该系统软件的维护参数来求取。
这一维护参数,可按系统软件的复杂度从简单 到一般、到复杂的顺序,分别取0.15、0.20、0.25及0.30、0.35、0.40等。
计算机系统软件作为计算机系统的组成部分,是信息社会的重要商品,也是知识经济社会中的重要资产。
系统软件同其他计算机软件一样,具有如下的特点: 1、系统软件是由许多人共同完成的高强度智力劳动的结晶,是建立在知识、经验和智慧基础上的具有独 创性的产物。
系统软件的开发可以工程化,软件生产可以工厂化,因此,系统软件具有价值和使用价值。
同时,系统软件具有独创性(即原始性),所以软件著作权人对系统软件产品依法享有发表权、开发者身份权、使用权、许可权、获取报酬权及转让权。
2、系统软件产品是无形的,存在于磁盘等介质的有形载体中,通过载体进行交易。
因此,带有系统 软件的磁盘交换价值,是磁盘自声价值与系统软件之和,而且主要是系统软件的价值。
3、系统软件产品的复制(批量生产)相应简单,其复制成本同其开发成本比较,几乎可以忽略不 计。
因此,系统软件产品易被复制乃至剽窃。
为保护系统软件产品的著作权,必须依法登记。
4、系统软件产品一般没有有形损耗,仅有无形损耗。
系统软件产品的维护,一是由于系统软件自身 的复杂性,特别是为了对运行中新发现的隐错进行改正性维护;二是由于系统软件对其硬、软件环境有依赖性。
硬、软环境改变时,系统软件要进行适应性维护;三是由于需求的变化,要求增强系统软件功能和提高系统软件性能,系统软件要进行完美性维护。
因此,系统软件的维护...
夏至27287619