返回目录:范文示例
今天小编给各位分享软件项目进度管理的知识,文中也会对其通过全程软件测试(五十三):软件测试项目的进度管理—读书笔记和格鲁夫给经理人的第一课---第一章读书笔记等多篇文章进行知识讲解,如果文章内容对您有帮助,别忘了关注本站,现在进入正文!
内容导航:
一、全程软件测试(五十三):软件测试项目的进度管理—读书笔记
项目的进度管理是一门艺术,是一个动态的过程,需要不断调度、协调,保证项目的均衡发展,实现项目整体的动态平衡。在项目进度的管理过程中,项目的实施与项目的计划是互动的。
项目开始前的计划对软件的测试需求有一个大体的认识,但深度不够,进度表可能只是一个时间上的框架,一定程度上是靠计划制订者的经验来把握的。随着时间的推移、测试的不断深入,相关人员对软件会有进一步的认识,对很多问题都不再停留在比较粗的估算上,项目进度表会变得越来越详细,越来越准确。
项目的进度管理主要通过里程碑、关键路径的控制并借助工具来实现,同时需要把握好进度与质量、成本的关系,以及充分了解进度的数量和质量双重特性。
软件测试项目的里程碑和关键路径软件测试项目的计划书中都会有一个与软件测试项目明确相关的日程进度表。关于如何对项目进行阶段划分、如何控制进度、如何控制风险等,目前存在一系列方法,其中最成熟的技术是里程碑管理和关键路径的控制。
1.里程碑的定义和控制
一般来说,里程碑是项目中完成阶段性工作的标志,即对一个过程性的任务用一个结论性的标志来描述明确的任务起止点,一系列的起止点就构成引导整个项目进展的里程碑。一个里程碑标志着上一阶段的结束以及下一阶段的开始,即定义当前阶段完成的标准和下个新阶段启动的条件或前提。里程碑的特征表述如下。
(1)里程碑有一定层次,即可在父里程碑下定义子里程碑。
(2)不同类型的项目,里程碑可能不同。
(3)在不同规模的项目中,里程碑的数量是不一致的。里程碑可以合并或分解。
在软件测试周期中,建议定义六个父里程碑、十多个子里程碑,具体如下所示。
M1:需求分析和设计的审查
M11:市场/产品需求审查
M12:产品规格说明书审查
M13:产品和技术知识传递
M14:系统/程序设计审查
M2:测试计划和设计
M21:测试计划的制订
M22:测试计划的审查
M23:测试用例的设计
M24:测试用例的审查
M25:测试工具的设计和选择
M26:测试脚本的开发
M3:代码(包括单元测试)完成
M4:测试执行
M41:集成测试完成
M42:功能测试完成
M43:系统测试完成
M44:验收测试完成
M45:安装测试完成
M5:代码冻结
M6:测试结束
M61:为产品发布进行最后一轮测试
M62:编写测试和质量报告
你也可以调整子里程碑,并在子里程碑下定义更小的里程碑,即孙里程碑,如表1所示。
在一个里程碑到来之前,需要进行检查,了解测试状态以确定是否能在预期时间内达到里程碑阶段标准,若存在较大差距,则需要采取相应措施,争取在预期时间内达到里程碑的标准,即使不能,也需要尽量减小差距。每到一个里程碑,对实际完成情况必须严格检查,查看是否符合已定义的标准,并且应及时对前一阶段的测试工作进行总结;若有需要,则可对后续测试工作计划进行调整,例如,增加资源,延长时间,以实现下一个里程碑的目标。
在项目管理进度跟踪的过程中,给予里程碑事件足够的重视,往往可以起到事半功倍的作用。保证里程碑事件的按时完成,整个项目的进度就有了初步保障。根据里程碑可较为容易地确定软件测试进度表。
2.项目的关键路径
每个项目可根据各项任务的工作量估计、资源条件限制和日程安排,事先确定一条关键路径。关键路径是一系列能确定计算出完成日期的任务构成的日程安排线索。当关键路径上的最后一个任务完成时,整个项目也随之完成;关键路径上的任何一项任务延迟,整个项目就会延期。为了确保项目如期完成,应密切关注关键路径上的任务和为其分配的资源,上述要素将决定项目能否准时完成。
关键路径法(Critical Path Method,CPM)是国际公认的项目进度管理办法,其计算方法简单,许多项目管理工具(如Microsoft Project)可自动计算关键路径。随着项目的实施,关键路径可能由于当前关键路径上的某些任务发生变化(延迟)而变化,从而产生新的关键路径,因此,关键路径也是动态可变的,但这种动态性需要控制在最小范围内。关键路径的这种变化可能导致原来不在关键路径上的任务成为关键路径的必经节点,因此,测试组长或项目经理需要随时关注项目进展,跟踪项目的最新计划,确保关键路径上的任务及时完成。
软件测试项目进度的特性及外在关系任何一项工作,在最开始的时候较为容易看到工作推进的进度,例如,建造房子,从无到有变化非常明显,但随着时间的推移,房子框架搭建起来之后,所能观察到的进度就越来越不明显。软件测试也是如此,在测试之初,缺陷较为容易发现,但测试的进展并不是按照缺陷数量来计算的,测试越进行到后期,缺陷就越难发现。因此,若要提高测试质量,需要将严重的、关键的问题尽可能地在第一时间发现,如此才不至于在最后阶段使开发人员对代码进行大规模的修改。若大规模修改代码,则无法保证测试的时间,最终会影响软件的质量。上述内容就是测试项目进度的数量和质量双重特性,在关注进度的同时需要把握好这两个特性,在注重速度的同时,还需要观察前期的质量。如图1所示。
图1表示一个为期10天的测试项目,在项目中测试工程师实际发现了60个缺陷,其缺陷数量的日期(横坐标)分布呈渐渐回落之势,即一开始发现的缺陷最多,随着时间的推移,发现的缺陷越来越少,最后2~3天不再报告新的缺陷,而只是验证已被修正的缺陷。在理想情况下,问题的难度也应呈降序排列,前期发现最不易解决的问题,因为在解决这些问题时,往往会产生新的缺陷,及早报告,有利于更好地解决问题。当然,在做具体项目时,不容易保证完全做到理想状态,这与测试工程师本身的技能和经验有很大关系。
1.进度与质量的关系
测试项目管理的基本原则是保证在不超预算并满足软件质量的前提下,按进度完成项目。因此,进度与质量存在一定程度上的矛盾关系:有时要想保证质量,进度就必须放慢,使测试时间充足;有时要想保证进度,质量就受到一定影响或存在比较大的风险。质量与进度的关系应该是保证质量为前提,然后考虑资源的调度和进度的调整。
首先,尽量利用历史数据,参考以前完成过的项目来进行类比分析,以确定质量和进度之间的制约关系,进而控制进度和管理质量。
其次,可采用对进度管理计划添加质量参数的方法,即通过调整参数来调整进度和质量的关系(此方法需要有一定量的历史数据)。例如,从历史数据中得知,若完成子项目的时间是5天,测试后遗留15个问题;若完成同样子项目的时间是7天,测试后遗留12个问题;若完成该子项目的时间是8天,测试后遗留5个问题;……。
随着数据的不断增多,采用二维坐标图,即可得到一些离散的点(不考虑资源的差异),并形成一条曲线,如图2所示。管理者可考虑项目允许的质量范围,对照图中的数据,找出相应的参数;根据得到的参数,确定一个合适的进度计划。
2.进度与成本的关系
在项目管理水平不够高的情况下,经常出现进度拖延,成本(人力资源×时间)居高不下的情况,此时需要提高测试项目中进度与成本关系的控制水平。软件测试项目受规格说明书修改、设计修改、代码修改等影响比较大,一旦在某些地方进行简单修改,可能开发只要花很少的时间人力资源,但测试由于得不到足够信息或过多采用黑盒测试方法,成本会大幅上升。
另外需要注意的一点是要对学习曲线有深刻的认识。在软件开发过程中,学习曲线可以起到很大的作用,通常情况下,在开发与上一个相似或同类型的新软件时,会比上一次节省15%~20%的时间。
软件测试项目进度的管理方法和工具软件测试管理中最重要、最基本的是测试进度跟踪。众所周知,在进度压力之下,通常被压缩的是测试时间,这导致随着时间的推移,实际的进度与最初制订的计划相差越来越远。而若有了正式的度量方法,上述情况就不容易出现,因为在其出现之前相关人员就有可能采取行动解决问题。下面介绍两种测试项目进度的管理方法,分别是测试进度S曲线法和缺陷跟踪曲线法。缺陷跟踪又可分为新发现缺陷跟踪法和累计缺陷跟踪法,其中累计缺陷跟踪法更好。常用的缺陷跟踪曲线法是NOB(Number of Open Bug,打开的缺陷数)曲线法。
1.测试进度S曲线法
测试进度S曲线法通过将计划中的进度、尝试的进度与实际的进度三者进行对比来实现,其采用的基本数据主要是测试用例或测试点的数量,这些数据需要按周统计,每周统计一次,并将统计数据反映在图表中。“S”代表随着时间的推移,积累的数据形成的曲线越来越像S形。一般的测试过程包含三个阶段,初始阶段、紧张阶段和成熟阶段,第一和第三个阶段所执行的测试数量(强度)远小于中间的第二个阶段,由此导致曲线的形状像一个扁扁的S。
x轴代表时间,y轴代表当前累计的测试用例或测试点数量,如图3所示。
图3包含了如下信息。
(1)趋势曲线(上方实线)代表计划中的测试用例数量,该曲线是在形成测试计划后,在实际测试执行之前绘制的。
(2)测试开始时,图上只有计划曲线。此后,每周添加两条柱状数据,浅色柱状数据代表当前周累计尝试执行的测试用例数,深色柱状数据为当前周累计实际执行的测试用例数。
(3)在测试快速增长期(紧张阶段),尝试执行的测试用例数略低于计划用例数,实际执行的用例数略高于尝试执行的用例数,此情况是经常出现的。
由于测试用例的重要程度不同,因此,在实际测试中经常会给测试用例加上权重。加权归一化使S曲线更加准确地反映测试进度(如此y轴数据就是测试用例的加权数量),加权后的测试用例通常被称为测试点。
一旦有一个严格的计划曲线放在项目组面前,它将成为奋斗的动力,整个小组都将关注计划、尝试与实际之间的偏差。因此,严格的评估是S曲线成功的基本保证,例如,人力是否足够,测试用例之间是否存在相关性。一般而言,计划或者尝试数与实际执行数之间存在15%~20%的偏差就需要启动应急行动进行弥补。
一旦计划曲线被设定,任何对计划的变更都必须经过审查。一般而言,最初的计划应作为基准,即使计划有变更,基准也留作参考。该曲线与后来的计划曲线对比显现的不同之处需要有详尽的理由作为说明,同时这也是今后制订计划的经验来源之一。
2.测试进度NOB曲线法
测试所发现的软件缺陷数量,会在一定程度上代表软件的质量,通过对它的跟踪来控制进度也是一种比较现实的方法,受到测试过程管理人员的高度重视。NOB曲线法主要收集当前所有打开的(激活的)缺陷数,也可将严重级别高的缺陷分离出来进行控制,从而形成 NOB 曲线。NOB曲线在一定程度上反映了软件的质量和测试的进度。
在 NOB 曲线法中,最重要的是确定基线数据或典型数据,即为测试进度设计一套计划曲线或理想曲线。至少在跟踪开始时,需将项目进度关键点(里程碑)预期的NOB 限制等级设置好,以及确定 NOB达到高峰的时间、NOB在测试产品发布前能否降到足够低。较为理想的模式是,相对于先前发布的版本或基线,NOB曲线的高峰出现得更早,且在发布前降到足够低并稳定下来。需要提醒的是,在这种度量方法中仅注意数量是不够的,为了尽早达到系统的稳定,缺陷的类型和优先级都是必须关注的。
尽管 NOB应该一直都被控制在合理的范围内,但当功能测试的进展是最主要的开发事件时,应关注测试的有效性和测试的执行,并在最大程度上鼓励缺陷的发现。过早地关注NOB减少,将导致目标冲突,导致潜在的缺陷遗漏或缺陷发现的延迟。因此,在测试紧张阶段,主要应关注阻碍测试进展的那些关键缺陷的修复。当然,在测试接近完成时,就应强烈关注 NOB的减少,因为 NOB曲线的后半部分尤为重要,与质量问题密切相关。如图4所示。
Myers 有一个著名的关于软件测试的反直觉原则:在测试中发现缺陷多的地方,还将发现更多的缺陷。此现象产生的原因是,若测试效率没有被显著改善,则在修复缺陷时,将引入更多的缺陷。对这种度量方法的诠释如下。
(1)若缺陷发生率与先前发布的版本(或模板)相同或更低,应考虑当前版本的测试是否低效或根本未起到任何作用。若不是,则质量的前景还是较为乐观的;若是,则需要进行额外的测试。除了需要对当前的项目采取措施,还需要对开发和测试的过程进行改善。
(2)若缺陷发生率比先前发布的版本(或模板)更高,则应考虑是否为提高测试效率做了计划,并实际已做到显著提高测试效率。若没有,则质量将得不到保证;若有,质量将得到保证或可以说质量的前景是很乐观的。
上述度量法经常用于特定测试中缺陷的度量,如功能测试、产品级测试、系统集成测试。
3.测试进度管理工具
“工欲善其事,必先利其器”。要做好项目管理,首先需要一个可规划、跟踪、控制和改进项目管理的工具。微软公司推出的 Microsoft Project 就是一个常用的、专业的项目管理工具,提供了项目管理所需的基本功能,可细致地反映项目进行的整个过程,便于跟踪项目的进展、项目的分工等。它把一个任务划分为比较基准计划(原始计划)、当前计划、实际计划和待执行计划(剩余计划或未完成计划)4个阶段进行管理。
(1)比较基准计划(原始计划):此处的计划数据记录了最初制订项目计划时项目的状态。由于项目一旦开始运作执行,项目计划总是处于动态变化中,因此为了评价计划的实施情况或计划本身设计的问题,需要随时可获得原始计划数据。Microsoft Project把最初编制的计划作为“比较基准”存储起来,在项目调整过程中始终保持不变。
(2)当前计划(正在进行):项目启动后,由于主观或客观的原因,计划总是处在变化中,因此,需要反映项目实际执行情况的计划。由于当前计划是根据实际已经发生的计划和任务间的制约关系计算的,因此对于项目计划的管理和预测都具有现实指导意义。
(3)实际计划(已完成的):指那些未完成但已开始实施,或已全部完成的任务计划。已实际执行的计划在项目管理中的重要性有两点:一,它是计算项目产值的依据;二,它也是规划和预测当前和未来计划的基本信息。
(4)待执行计划(未完成的):项目组不仅需要考虑已完成的任务量,还必须知道剩余的需要完成的工作量,即待执行计划。若一个任务已经开始但还未做完,系统将根据任务完成情况自动计算剩余工作量,并重新测算工期和成本。
对于时刻处在变化之中的项目计划来说,人工统计资源在整个项目中的分布是一件非常烦琐的事情,Microsoft Project提供的“资源使用状态”视图,逐个列出资源承担的任务和在每个任务上工作的日期、人数、工作量、费用,以及累计工作量和累计费用等,从多角度以丰富的图表来描述测试进度。
(1)网络图:以描述任务关系为重点,可选择任意5种任务信息进行显示。通过选择不同类别的信息,可建立基本信息网络图、基线网络图、跟踪网络图、费用网络图等。
(2)横道图:以表述任务时间关系为重点,显示出工序的关系线,即每个任务的开始、结束时间,而且能够显示任务的紧前和紧后工序。横道图可将每个任务的基线计划、当前计划、实际计划、完成百分比、时差同时显示出来,便于进行综合分析。
(3)资源图:以反映资源使用状况为重点,为资源分析和跟踪提供了8种图形,即资源需求曲线图、资源工作量图、资源累计工作量图、超分配工作量图、资源已经分配的百分数图、资源当前可用工作量图、成本图、累计费用图等。
(4)Microsoft Project内置了多种筛选器,帮助建立各种文字报告,内容覆盖面广,可直接使用。
(5)项目摘要报告:项目汇总报告。
(6)任务报告:未开始的、正在进行的、已经完成的、推迟开始的、马上开始的、进度拖后的等各种任务报告,还包括关键任务的、使用某种资源的、超出预算的、本周/月/季的等各种任务报告及任务基本信息报告。
(7)资源报告:预算报告;超强度分配、超出预算等资源报告;资源工作安排报告;工作量报告;周/月/季/年现金流报告;资源基本信息报告。
一、格鲁夫给经理人的第一课---第一章读书笔记
带着这个三个思考,我们去学点东西,试着改变一下。
你必须按预定的时间,可接受的品质以及可能的最低成本,依据顾客的需求制造及运送产品。
书中指出的生产步骤正好和我们的一样。
制造:可以和我们的开发联系在一起,我们在实际开发中,无论是一个项目的整体开发,还是把项目拆分,作为模块开发,或者是更小的拆分,都可以作为制造的部分。
组装:制造完成以后,需要组装来完成更大的个体,项目。例如模块化开发的情况下,很多的模块组合成一个完整的项目。
测试:对模块,项目,整体做测试以保证我们最后生产的品质。
三个生产步骤,以保证生产出的产品符合我们的需求,保证其质量。顾我们可以在实际开发中,在小的层面也去应用这些。比如我们拆分更小的需求,以此为需求,做一次生产三步走。
我们的程序开发,小到一个接口的运行,一个函数的运行,如果都通过单元测试,那么程序的每一步生产,都是合格的,在组装,组合成为完整的程序时,更有利于后面的测试,保证我们程序的品质。
复杂化的推导是基于产能的要求,在最简单需求的时候,我们用最简单的最实际最低成本的方式来实现。而当我们的产能要求更高,之前的方案无法满足,我们需要更多的人力,设备,机器,等资源来满足新的产能要求。
找出最佳策略的本质是 成本控制 。
凡是能以最低成本达到理想的运送速度以及品质的,便是最佳方案。
例如实际项目开发中,假设我们要提高我们的开发速度,两个方案可以实现,一个是招更多的人,另一个人提高个人产能。而实际情况是人力的成本很高。我们当然更加倾向于提高个人产能。这又涉及到背后培训,个人的自我驱动,公司文化,等等。
这就好比,我们有一块地,现在里面已经种了很多菜,有豆角,尖椒,青椒,彩椒,现在我们想吃麻椒了,最简单的办法就是从别人的地里挖一颗进来。
这两种方案实际上我们都有,我们既招人,也在自己培养,培训就是施肥,个人的驱动就是自己长大,而公司的文化就是阳光,水,空气,我们都在这个环境里,所有的一切都息息相关。
为了最后我们的生产产品的品质,我们要对我们生产出来的产品做测试。
而如果我们只在产品生产完成交付之前做一次验货操作,那个时候已经太迟了,如果这个产品发生问题,如果这一系列产品发生问题。
所以为了防止这种现象我们要在生产的每一个步骤中都加上测试的步骤。
例如开发模块的测试,后端接口的单元测试,数据的质控测试,每一个步骤产品的问题都应该及时找到解决,这样在组合完成最终的产品时,才能有品质保证。
所有的生产流程都有一个共通的特性,就是原料在流程中会变的越来越有价值。
如果不能及早的发现问题,那么它造成的损失就会越来越大,如果一个bug没有在开发阶段解决,而是在测试阶段,那么它耽误的就是整体流程,而如果它在线上暴雷,那么造成的损失就远远的超出了这个bug所在的模块,甚至是毁灭性的。
所以为了避免这种问题,我们要及早的发现问题所在,这种问题它不仅仅是做测试,也有在我们实际开发做单元测试,都是为了更早的发现问题,同时也是跟加全面的对我们的产品做品质保证。
毕竟在产品验收阶段,它的测试就只能是大体的,而无法保证所有的情况。
从后往前推。
甚至很多问题都不在是bug的问题,而是软件设计的问题,组件设计的问题,接口设计的问题,表结构设计的问题,而他们都基于背后产品逻辑的理解,甚至更往前推,背后产品逻辑,背后需求的理解,需求的真正产生,需求是否真的有价值,产品是否符合用户预期,全都息息相关。
NGVFBB
我们不仅要辛勤工作,还得懂得如何工作
假设我们现在人力充足,设备OK,兵强马壮,那么我们目标应该是什么呢?
当然是为了钱,那么怎么才能赚到钱?
当然这是以早餐店为出发点。
为了达成上面的目标,我们应该关注哪些目标呢?也就是你要关注今天的店运营的怎么样?
第一个:你想知道今天的销售怎么样,卖的如何?直接涉及的利润。
第二个:你会想知道原料存货,是不是够用,不够就要买,够了就先取消今天的订单。
第三个:你想知道设备的情况,是不是发生了故障。
第四个:人力资源,如果有两个人请假了,应该怎么办?
第五个:人力资源品质指标,服务生如果在送餐的时候把顾客得罪了,那不是得不偿失。
我们依据于上面的指标,来判断店的运营情况,来及时做调整,但是有一些指标的调整又可能影响实际的运营,例如,你发现一个员工品质不好,经常得罪顾客而屡教不改,但是店里只有他一个员工的时候,开出它就会影响另外一个指标,人力资源。
结合我们开发的例子:
我们开发一个程序,需要关注的指标:
在实际中我们需要同时关注这三个指标,而不能因为一个指标另外的指标全然不顾,为了单元测试了推迟交付时间,肯定得不偿失。通过权衡,找到最佳方案。
而为了交付时间,完全部估计产品品质,更加不对。
我们要设定好这三个指标,才能达成我们最终的追求。
有品质的产品,顾客满意,以及产品的利润等。
任何管理都需要评估。有效的评估策略应该是评估产出,而不是产出之前的生产活动。
所有的生产流程都可以用这个理论来概括。
你投入了什么到黑箱子,然后产出了什么?
你有一个早餐店,你投入了人力,原料,店铺,产出的早餐。
你要开发一个程序,你投入了人力,精力,时间,产出了程序。
现在我们已经有了这个神器,我们就知道我们追求的是什么?
我通过黑箱子产出了一个产品,那么理所当然我想让我们的产品品质好,卖相好,利润高,受顾客满意。
为了让我们的黑箱子更好的生产我们的产品,我么需要给他设定一些目标来来更好的运行。
因为你知道这个有可能坏事,或者你经历过之前的坑,这次就可以提出以避免这些事儿。例如:
等等这些。我们都可以在程序开发之前,提前规避掉这些问题。
例如我们要在6月份实现项目上线,那么我们就需要在10号15号20号开洞,来洞察进度如何,如果发现在15号的时候,进度还没有一半,甚至还在起步阶段,那么就知道这个月目标完成不了了。
项目的进度是线性开发,它不可能一蹴而就,一步到位的完成。
这个道理同样可以应用生活中,如果我这个月设定看一本书,而我知道10号还没有看完三分之一一,甚至还没有看,那么大概率,这本书就看不完了。
不太可能出现你最后两天来完成一个月目标的事儿。
和上面的指标相辅相成,你设定的一个月的目标如果能在10号的时候完成三分之一,说明进度正常,如果能完成一半,说明大概率可以完成,如果只完成了四分之一,那么进度紧张,大概率完成不了。
把每一个计划,预测的时间和实际完成的时间做一个表格,来检测哪里出了问题,造成的这种延期。
控制产出应该叫把控产出。
工厂的生产模式有两种,一种是订单生产,来一个订单我们做一单,如果一单需要做4个月,那么客户就需要等四个月,另一种是计划生产,我们自己预期未来的订单,提前生产,同时也在找顾客,生产完成以后立刻把产生销售给顾客。
项目开发也是这样,如果是做第三方项目,那么就是订单生产,因为之前我们并不知道要做成什么样?需要客户提需求。
而如果是做自己的项目或者是自己的项目卖给第三方,那么就是计划生产了。我们需要自己去拟定需求,需求池,拟定要做的事儿,计划未来要做的项目,完成哪些。制定排期。
一个项目的开发,模块的开发,项目的上线时间的拟定,如果一旦定下,就要全力完成,这是最基本的。
不过实际开发中,并不能完全按照理想的状态来计算,总会有其他的突出状况,我们并不能对业务或流程精确的预测,因为我们需要在这个系统中假如一些 弹性空间 。来保证一定的冗余。
我们可以用重复印证表来检验我们的计划生产,通过它我们可以找到计划生产也就是排期和实际开发中 的时间差异,找出问题的原因。
对未来做预测,我们可以调整管理工作,是一个提高产能的重要方法。我们知道了一件事儿的大体标准,我们就知道了如果我们要在这个时间点完成是否需要添加人力。或者减少人力的投入。
这个有一个公式:
产能 = 黑箱中不同部门的产出/此项产出所需的人力
两个办法来提高产能:
关于第二点:其实就是提高员工的个人能力。
一个活动有比较高的杠杆率,即表示同样的投入之下,这项活动比杠杆率低着有更高的产出。
一个人如果比另一个人在同一时间内做更多的事儿,那么他就杠杆率高,如果一个人能做别人做不了的事儿,那么他的杠杆率高。
而管理的工作就是提高杠杆率,这个概念在下一章会详细讲解。
二、软件测试工程师应该学些什么方面的知识?
软件测试工程师应该学习知识:(1)软件开发技术
很多人认为,干吗要学习软件开发啊,那还不如直接去学什么JAVA、C++、C#了。要知道,在以后的软件测试工作中,你就会发现软件开发与软件测试之间是什么样的关系了。没有软件开发,就没有软件测试,有了软件测试,软件开发出的软件产品才能够达到用户满意的地步,他们之间是相互依赖关系。有了更多的软件开发知识,就会更好地能理解软件产品,就知道在哪个环节开发人员容易犯错误,知道在哪个逻辑结构、哪个接口或函数,甚至是从内存的管理机制上都可以找出问题。
软件开发所用的程序设计语言有很多种,所以要精通其中一门,其他能看懂代码,会对你的测试工作有更好的帮助,另外也会帮助开发人员进行快速缺陷定位。
而且在软件测试工作中,要编写一些辅助测试的小工具,都需要有软件开发基础。象测试过程管理工具、测试用例管理工具、缺陷跟踪工具、性能检测工具等等。
不要老是认为软件开发难,什么事都是从不会到会,从不精通到精通,都需要一个过程。没有人一生下来就什么都会的,都需要自己的不断努力才能成功。
(2)网络技术
软件是从字符界面产品发展到图形界面产品,从单机版到网络版(C/S结构和B/S结构),经历了一个漫长的过程。计算机网络的出现,改变了现实社会中人们的相互沟通方式,把一个小小的地球变成了一个地球村。所以,目前所有的软件产品都从传统的单机模式向网络模式转变,网络技术就更加关键。
目前网络的发展,使得网络速度进一步提高。目前,家庭网速达到1M~2Mbps,企业达到4Mbps,据说要到2012年家庭的网络速度要达到20Mbps。那么网络硬件从传统的电缆到目前的光纤技术、无线通信技术。从目前的发展速度,三网(电信网、电视网、计算机网络)合并是迟早的事情。
网络硬件协议的测试,也是网络设备生产商要做的工作。
(3)数据库技术
现在的数据信息是海量的。在目前的软件产品中,底层架构中就需要有数据库进行数据存储,那么对数据的增删改查的操作是软件测试人员必须要必备的技能。数据库测试也是测试技术的一种。
(4)测试与质量保证技术
精通软件测试理论,熟悉软件测试流程,理解软件测试的哲学思想,掌握软件测试每个阶段的文档编写技巧,掌握软件测试的策略与各种测试方法,掌握测试用例的设计方法。掌握单元测试、集成测试、确认测试、系统测试、验收测试等每个阶段的测试技术。软件质量保证知识、测试项目管理、测试团队建设知识也是必须要具备的。
掌握软件测试自动化工具,理解软件测试自动化测试框架,能够学会如何进行测试项目管理、回归测试以及性能测试,能够把性能缺陷进行定位。
软件测试还是一个崭新的学科,还没有形成一个独有的知识体系,还需要我们不断的研究与实践。
(5)行业知识
目前软件测试涉及的行业是多种多样的,从金融产品到电信、游戏、汽车、杀毒、网站、企业管理、学校教育、本地化产品等等,各行各业的软件产品都需要大量的测试,所以相关行业知识的储备也是必须的。
(6)职场规范
职场礼仪是必须的,你是否适合某个企业,能否融入这个企业,基本的职场规范是要学习的。必要、有效的沟通也是软件测试人员所必须掌握的技巧。
三、急求两篇读书笔记,要求有主要内容,我的收获,我想说的话。主要内容长一点。
1 读物名称:《放弃天堂的导盲犬》 主要内容:故事中的主人也非常爱护自己的狗,因为在天堂只剩下一个名额时,主人选择了让导盲犬上天堂。因为主人对导盲犬像对自己的亲人一样爱护。读书收获:好词: 鄙夷 恍然大悟 胸有成竹 鄙视 稳操胜券轻轻松松 忠心耿耿 留恋 狂奔 懊悔 好句: 1、说完这些话,主人向狗发出了前进的命令。就在狗到达终点的一刹那,主人像一片羽毛似的落向了地狱的方向。他的狗见了,急忙掉转头,追着主人狂奔。2、天使久久地站在那里,喃喃地的说道:“我一开始就错了,这两个灵魂是一体的,他们不能分开。想说的话:故事中的导盲犬和主人都值得敬佩,同时也告诉我们,无论在什么情况下,都要有一颗善良的心,这样别人才会更喜欢你。 2 读物名称:《心田上的百合花开》 作者:林清玄主要内容:在偏僻的山谷里,高达数千尺的断崖边,一株小小的野百合在深深扎根、努力孕育着花蕾。但它的努力却只得到了身边野草的嘲笑:荒郊野外,即使你真的开花,又有谁会欣赏呢?野百合不为所动,依然年年春天努力地开花结籽,种子随风落入山谷。几十年后,这个偏僻的山谷,成了远近闻名的百合谷地,吸引着人们千里迢迢来赏花。读书收获:(1)百合努力地吸收水分和阳光,深深地扎根,直直地挺着胸膛。(2)不管有没有人欣赏,不管你们怎么看我,我都要开花!(3)惟一能证明我是百合的方法就是开出美丽的花。 想说的话:社会走得快了,有些人却反应迟钝了。这些人变得不会善待自己,自认为是金子被埋在了淤泥里不能闪光。因此日子只能算是一天天地挨过。其实,何必呢!瞧瞧人家断崖上的那株百合。“惟一能证明我是百合的方法就是开出美丽的花”,要知道,是金子总会发光的。 3 读物名称:《地震中的父与子》 主要内容:这位父亲为了救儿子,挖了36个小时,身上到处是血迹。因为他曾经对儿子说过:“不论发生什么,我总会跟你在一起!”这位父亲就是为了兑现他的诺言,必须去救自己的儿子。读书收获:好词: 混乱 欢声笑语 顿时 一片漆黑 坚定 疾步 埋头 难以控制 摇头叹息 精神失常 阻止 满脸灰尘 布满 破烂不堪 好句:1、这位父亲双眼直直地看着这些好心人,问道:“谁愿意帮助我?”2、他满脸灰尘,双眼布满血丝,浑身上下破烂不堪。3、父亲的声音颤抖着说:“出来吧,阿曼达!”想说的话:这个故事告诉我们:自己说过的话,一定要做到。在面对灾难时,不能慌张,要冷静,这样才能把危险减到最小。 4 读物名称:《 魔盒 》主要内容:有一个山民,妻子病了,在给妻子采药时从山上摔了下去。由于半山腰的树枝勾住了衣服,山民得救了,醒来之后发现身边有个小盒子,于是带回家中。山民怎么也打不开盒子,在无意中说出“我想要”的时候,盒子奇迹般打开了,出来一人小人。此傲人给了山民一沓钱,他享尽荣华富贵,唯独没给妻子买药。不久,山民得了一种可怕的病,小人让他去采一株小草治他的病。山民爬上山,伸手采小草时,发现了一颗钻石,不料失足跌下山崖,粉身碎骨,小人又出现了,它的名字就叫——诱惑读书收获:
好词:游手好闲 一掷千金 吃喝玩乐 荒淫无度 生不如死 硕大无比 粉身碎骨 摇身一变 皎洁
好句:山民又得到一笔钱,更加荒淫无度,终于,恶有恶报,他受到了上帝的惩罚。
好段:山民拖着病体,费了好大的力气才爬到了山顶,找到了那颗小草,当他伸手正要采时,忽然发现,在山崖边上有一颗闪闪发光硕大无比的钻石。山民心动了,要是得到了这颗钻石,不就什么都有了吗。于是,他又爬到了山崖边,就在他抓到钻石的瞬间,失足跌下悬崖,摔得粉身碎骨。
想说的话:天下没有免费的午餐,只有劳动才有收获,做人不能太贪心,得脚踏实地地做每一件事 。 5 读物名称:【小海蒂】主要内容:
小孤女海蒂被送去与隐世而居的祖父同住,当时祖父正因儿子离开他而感内心痛苦,可爱的海蒂很快就溶解了老人家冷酷的外表。不料邪恶的阿姨偷偷把海蒂带走,卖去给有钱人家当仆人。主人有个生病的女儿,她在海蒂的安慰和鼓舞下重新振作起来,爷爷也在千辛万苦之下终于跟孙女团圆。2:读书收获好词:津津有味 兴高采烈 抽泣 断断续续 提心吊胆 金灿灿 和颜悦色
佳句:
1.可是小海蒂一点也不难过,她是个无论什么时候都能找到快乐的孩子,当然,和这个放羊的男孩还有那群山羊一道上山,到鲜花盛开,有老鹰飞翔的牧场去,和那里各种各样的小动物们在一起,发现什么奇妙有趣的事情,这是小海蒂最喜欢不过的。可是看爷爷拉锯或是用锤子敲敲打打地干木匠活也很有意思。
2.可是比什么都更吸引小海蒂的,是大风天时,小屋后三棵枞树摇晃的哗哗声。它们一响起来,小海蒂不管正在干什么,都忍不住要放下手里的活跑到树下。她觉得再没有比这从高高的树枝上传下来的低沉而奇妙的响声更动听的了。海蒂站在树下竖起耳朵,不厌其烦地聆听风吹过树枝时发出的巨大响声,看着它们剧烈地摇晃。3:想说的话:一个天真活泼、纯朴善良、热爱自然、热爱生活、乐于助人的小女孩——海蒂。她无论遇到什么情况总是乐观面对,她总是待人真诚,她相信她遇到的每一个人,在她的身上我突然发现只有你真诚待人,别人才会信赖你,不是么?
关于软件项目进度管理的问题,通过《软件测试工程师应该学些什么方面的知识?》、《急求两篇读书笔记,要求有主要内容,我的收获,我想说的话。主要内容长一点。》等文章的解答希望已经帮助到您了!如您想了解更多关于软件项目进度管理的相关信息,请到本站进行查找!