Work hard.认真对待每一天

发布新日志

  • 软件缺陷管理

    2008-10-26 19:29:39

     

     

     

    关键词

    能力成熟度模型 (Capability Maturity Modela, CMMa),

    统计过程控制 (Statistical Process Control, SPC),

    软件开发 (Software Development)

    持续性改进 (Continuous Improvement)

    1. 背景介绍

    软件中的缺陷(Defect或Bug)是软件开发过程中的"副产品"。通常,缺陷会导致软件产品在某种程度上不能满足用户的需要。

    每一个软件组织都知道必须妥善处理软件中的缺陷。这是关系到软件组织生存、发展的质量根本。可遗憾的是,并非所有的软件组织都知道如何有效地管理自己软件中的缺陷。

    本文从CMM的视角阐述了不同成熟度的软件组织如何管理自己软件中的缺陷。希望软件组织可以结合自己的实践,找到适合自己的缺陷管理过程。

    2. 个体行为

    处于CMM第一级(或称为初始级)的软件组织,对软件缺陷的管理无章可循。工程师们只是在发现缺陷后,修改相应的软件。通常,没有人会去记录自己发现的缺陷。也没有人知道在新的软件版本里,究竟纠正了哪些缺陷,还有哪些缺陷未被纠正。而且,只有在下一轮测试中才有可能知道那些所谓已被纠正了的缺陷是否真的被纠正了,更重要的是纠正过程是否引入了新的缺陷。

    所以这样的软件组织的项目交货期(Release Date)表现出强烈的不可预测性。并且, 为了获得一个高质量的软件产品(如果能够的话),通常要在测试上花费大量的人力。

    3. 项目行为

    在CMM第二级(或称为可重复级)的软件组织中,软件项目会从自身的需要出发,制定本项目的缺陷管理过程。一个完备软件缺陷管理过程通常会包括如下几个方面:

     (1)提交缺陷
     (2)分析和定位缺陷
     (3)提请修改相应的软件
     (4)修改相应的软件
     (5)验证修改

    项目组会完整地记录开发过程中的缺陷,监控缺陷的修改过程,并验证修改缺陷的结果。

    4. 组织行为

    CMM第三级(或称为已定义级)的软件组织会汇集组织内部以前项目的经验教训,制定组织级的缺陷管理过程。并且,要求项目根据组织级的缺陷管理过程定制本项目的缺陷管理过程。

    从而,整个软件组织中的项目都遵循类似的过程来管理缺陷。好的缺陷管理实践成为所有项目的实践,而教训也为所有项目所了解。更重要的是,随着组织的不断发展完善,组织的过程会得到持续性的改进,所有项目的过程也都会相应的改进。

    5. 量化管理

    CMM第四级(或称为已管理级)的软件组织会根据已收集的缺陷数据,采用SPC的方法建立软件过程能力基线(Process Capability Baseline)。对于缺陷管理,可以缺陷密度为例,过程能力基线通常包括期望(Mean),能力上限(Upper Control Limit,UCL),能力下限(Low Control Limit,LCL)。其中,"期望"描述了未来项目的缺陷密度的预期值,而UCL和LCL描述了未来项目的缺陷密度的合理变化范围。

    这样的过程能力基线可以用来:(1)帮助未来的项目设立量化的项目质量目标;(2)理解和控制未来项目的实际结果。

    以上图为例,在项目开始时,项目可以根据过程能力基线并结合本项目的实际情况来设立缺陷密度目标;而在项目的生命周期里,可以使用这样的过程行为图(Process Behaviour Chart)来理解和控制项目的实际的缺陷密度。当项目的实际缺陷密度在UCL和LCL之间波动时,可以理解为项目的开发过程处于受控状态。换言之,当项目的实际缺陷密度超越了UCL或LCL时,可认为某异常的原因(Special Cause)导致了这一现象,必须进行分析并实施某种行动来防止该异常的原因再次发生,从而确保开发过程始终处于受控状态。

    6. 持续优化

    与CMM第四级相比,CMM第五级(或称为持续优化级)更强调对组织的过程进行持续性改进,从而使过程能力得到不断的提升。

    就缺陷管理而言,软件组织应当在量化理解其过程能力的基础上,持续地改进组织级的开发过程、缺陷发现过程,引入新方法、新工具,加强经验交流,从而实现缺陷预防(Defect Prevention)。

    缺陷预防的着眼点在于缺陷的共性原因(Common Cause)。通过找寻、分析和处理缺陷的共性原因,实现缺陷预防。

    当实施了缺陷预防,缺陷密度的过程行为图将可表现为下图的形式。

    7. 小结

    软件的缺陷是软件开发过程中的重要属性,它提供了许多信息。不同成熟度的软件组织采用不同的方式管理缺陷。低成熟度的软件组织会记录缺陷,并跟踪缺陷纠正过程。高成熟度的软件组织,还会充分利用缺陷提供的信息,建立组织过程能力基线,实现量化过程管理,并可以此为基础,通过缺陷预防实现过程的持续性优化。

    参考资料

    [1] Capability Maturity Model for Software, Version 1.1, Mark C. Paulk, Bill Curtis, Mary B. Chrissis, Feb 1993.

    [2] Understanding Variation--The Key to Managing Chaos,Second Edition,Ronald J. Wheeler, SPC Press

  • 主流软硬件系统平台Bug和相应解决方法

    2008-10-26 19:23:52


    http://www.sina.com.cn 2003/06/09 10:06 赛迪网-中国计算机报

      现在主流Intel PC平台已经发展到了865和875系列,提供了AGP 8X、双通道DDR400和S-ATA支持,与之对应的AMD平台也毫不示弱,也提供了相当的规格和性能,在这里龙哥就针对这两个平台中较主流的芯片组(845、865系列和KT400、nForce2)给大家详细介绍一下它们的Bug和相应的解决办法。

      现在主流Intel PC平台已经发展到了865和875系列,提供了AGP 8X、双通道DDR400和

    S-ATA支持,与之对应的AMD平台也毫不示弱,也提供了相当的规格和性能,在这里龙哥就针对这两个平台中较主流的芯片组(845、865系列和KT400、nForce2)给大家详细介绍一下它们的Bug和相应的解决办法。

      USB 2.0的驱动安装与使用

      由于现在主流的几大平台都内建了对USB 2.0技术的支持,但是微软Windows XP系统并没有内建对USB 2.0的支持,直到推出了SP1扩展包之后才增加了对USB 2.0的支持,所以不少朋友在使用USB 2.0设备时遇到了不少问题。

      市面上的主流芯片组都是通过南桥内建了对USB 2.0的支持(Intel的支持方式是ICH4南桥,VIA是VT8235南桥,而nForce2则是MCP系列南桥),所以它们在安装驱动和使用外围设备的时候遇到的问题都几乎差不多。

      1.在Windows XP下驱动安装的问题

      问题现象:最近组装了一台新电脑,主板是845E芯片组的。电脑安装了双系统,为Windows 98和Windos XP,在Windows 98下把驱动都安装完全后,什么问题都没有,设备管理器里也没有任何未知设备和感叹号,但是在Windows XP我手动安装驱动也不行,总是出现黄色的感叹号。我试着更新SP1扩展包,但是系统提示我的语言不对,不能升级,现在在Windows XP我的USB设备都不能使用。

      问题分析和解决办法:的确,不少USB 2.0设备在Windows 98和Windows 2000下都能工作得很好,但是在Windows XP却不能正常工作。出现这样的问题主要还是您的USB设备的Windows XP系列驱动需要SP1的支持,所以如果不升级到SP1的话,驱动是不能正常安装的。由于您已经自行升级过,系统提示您的语言包不对,这很可能您安装了多国语言扩展包的缘故。您可以重新安装正版的Windows XP然后升级到SP1再激活,这样您的USB 2.0设备就会自动被系统识别,并且可以正常使用了。龙哥提示:这种驱动的安装方法仅限于Windows XP操作系统和支持USB 2.0的全系列芯片组。

      2.USB 2.0外接硬盘在nForce2平台下的问题

      问题现象:我最近购买了一块EPoX 8RDA+主板(支持USB 2.0规格),一个USB 2.0的移动硬盘。如果我使用USB 1.1的传输模式拷贝软件的话,不管文件多大,都没有问题。但是当我使用USB 2.0模式拷贝文件时,如果拷贝较大的文件,例如:500M左右的大文件。当拷贝了4%的时候,系统就会报错(不管是Windows 98、Windows 2000还是Windows XP系统),然后移动硬盘盒上的指示灯就会变成红色(正常模式是绿色),系统就会找不到硬盘了。然后我把硬盘拔下重新再插一次就可以找到硬盘了,但是再次拷贝文件依旧还是同样的问题。我的硬盘盒是USB+PS2口供电的,而我的硬盘盒在Intel 845E系列主板上就可以正常使用。

      问题分析和解决办法:龙哥自己也遇到过同样的情况,初步判断这是nForce2芯片组的一个Bug,如果您想要得到完善的解决需要等待下一个版本的芯片组出现才行。不过龙哥还可以在这里教您几招。

      由于您的移动硬盘盒是USB+PS/2口供电的,而主板的USB接口最多只能提供500mA的电流,即使加上PS/2口(同时不排除nForce2芯片组设计上的Bug,即对USB接口供电设计没有达到标准),也肯定不能够满足硬盘的需要,所以使用这种硬盘盒来做移动硬盘是绝对不能够正常使用的。所以您会遇到拷贝大文件出现供电不足,而导致系统报错,出现找不到硬盘的现象。对于这种现象您完全可以更换一个硬盘盒试试,尽量使用带有外接电源的硬盘盒。如果您不想再购买一个硬盘盒,您也可以改造您自己的硬盘盒,具体的操作方法大家请参考bbs.gzeasy.com里的“主板论坛”上的讨论。

      内存不兼容问题

      按照常理来说,高质高价的盒装内存产品的兼容性要比一般的内存强得多的,但实际上由于不少芯片组的设计和主板的设计上的Bug,也导致了不少问题。在这里龙哥提醒大家,如果您发现自己的电脑运行不稳定,不妨考虑一下是否是内存和主板不兼容而造成的。

      1.Kingmax部分批号内存与Intel 845E系列芯片组主板产生不兼容的问题

      问题现象:前不久新装了一台兼容机,我选择了超频性能都很出色的升技BH6主板,又买了一条DDR333内存,但是回家后发现此种内存在标准状态下工作并不是太稳定。

      问题分析和解决办法:这种兼容性问题不是很好下结论,不过从价格的角度来看,还是更换内存较为方便。

      2.多种颗粒内存与nForce2 IGP芯片组不兼容问题

      问题现象:前两天去升级,由于资金不够,我选择了nForce2 IGP芯片组的承启7NIF2主板。在安装系统的时候,开始用HY的DDR266 256M条子换了两次,总是出现一玩3D游戏就蓝屏的兼容性的问题(玩2D还好)。本来以为是内存的质量问题,后来由于时间问题,直接加钱换了两根Kingston颗粒的Kingston DDR333 256M盒装内存回家。回家后开机一试,发现3D游戏可以正常运行了,也不蓝屏了。但是2D游戏却出现分屏的现象,难道nForce2 IGP的兼容性就那么差?

      问题分析和解决办法:据龙哥的了解,IGP北桥的nForce2主板确实与盒装Kingston的KVR333X64C25/256编号内存存在比较严重的兼容性问题,尤其不兼容Kingston颗粒,这也是nForce2主板的设计问题。出现不兼容的现象就是在玩游戏时花屏或者死机,同时还伴有一些奇怪的问题。如果您购买的刚好是此种颗粒的内存产品,而且无法更换主板,解决办法只有与经销商协商更换成另外一种颗粒的产品试试。龙哥提示:在购买内存之前,您可以先到这个网页查看一下通过nVIDIA认证的内存产品,地址为http?//www.nvidia.com/content/nForce MemoryCompatability/lstnForceMemory Compatibility.asp#nForce%20Compatible %20Modules。如果您没有上网的条件,龙哥建议您把内存更换为Infenon(西门子)颗粒的DDR 333内存试试,nForce2主板与这种内存至今还没发现兼容性问题。

      3.VIA KT400内存兼容性问题

      KT400芯片组推出已经有一段时间了,KT400芯片组顾名思义,应该是支持DDR400内存,但是从威盛官方说明和产品技术参数上都找不到支持DDR400内存的说法,其实KT400芯片组只支持到DDR333内存。

      问题现象:龙哥的一位朋友最近购买了一块物美价廉的EPoX 8K9AI主板,但是当他在这片主板上同时插上两条以上的DDR400内存,系统将会不能开机,或者在运行时出现各种奇怪的问题,而只要拔下一根,只插上一根DDR400的内存条时就不会出现任何的问题。

      问题分析和解决:据龙哥的了解,威盛KT400芯片组的确可以支持DDR400内存,但是实际上只支持2 banks的DDR400内存,也就是说目前KT400主机板不能插超过2条的DDR400内存。同时龙哥也了解到威盛目前的KT400芯片组甚至只能在安插1条DDR400内存的时候正常运行!所以这个问题可以说是威盛VT8368北桥芯片当中的Bug所导致的。到目前为止,VIA并没有推出后续的新版芯片组来改善这个问题,看来大家想要得到改善,只有等待VIA KT600芯片组。还好,VIA KT600芯片组已经开始出现工程样板了,距离上市并不是太远了。

      Intel最新865PE主板Bug

      现在市面上Intel平台的最新产品要算865系列主板了,此款芯片组上市时间不长,并且市面上的能够买得到的型号并不是太多,龙哥在这里只有拿抢先上市的微星MSI 865PE neo2来给大家简单介绍一下。

      问题现象:一位朋友购买了微星公司出品的最新款MSI 865PE neo2主板,使用后发现有许多问题:当进行超频尝试之后,一旦超频失败后,在某些情况下,即使给CMOS放电也不能立即启动;CPU的监控报告温度偏高;主板自带的Corecenter对工作频率的计算有问题,在系统大负荷下,显示核心频率在2.9G~3.2G波动,峰值甚至达到过4G!并且如果安装Windows 98操作系统之后,无法启动APIC SCI IRQ device;BIOS中的内出CAS延迟设置只有2和2.5两档可供选择。

      问题分析和解决方法:由于此款主板是一款最新推出的产品,虽然MSI研发实力雄厚,但对于芯片组的Bug也是无能为力的。我们唯一能够做的就是按兵不动,静静等到所有厂家都推出此款芯片组的主板之后,确定设计已经成熟,我们再购入。

      据海外媒体的消息,Intel 865PE主板当前版本的驱动程序还存在几个Bug,所以在当使用测试软件时,在DVD解码测试就会出现问题。比如说,865PE主板就不一定能通过3DMark2001和3DMark03的测试,即使测试通过,得分都会比较低。其实不仅是测试软件,当图形和视频运用时同样也会出现故障。而当前Intel还未对865芯片组系列作出驱动升级。

  • 我要学会的知识

    2008-10-26 19:16:57

    1、主流BUG+项目管理

    2、CVS——VSS

    3、自动化——LR(压力测试)WIN(功能测试)

    4、业务知识

    5、测试环境:硬件、软件

    6、测试计划编写

    7、测试案例——逻辑

    8、需求文档编写

    9、数据设计——ERWIN

    10、数据库表之间关系

我的存档

数据统计

  • 访问量: 27901
  • 日志数: 65
  • 书签数: 1
  • 建立时间: 2008-10-07
  • 更新时间: 2008-10-28

RSS订阅

Open Toolbar