软件开发过程管理浅谈

合集下载

浅谈软件开发中如何推行质量管理

浅谈软件开发中如何推行质量管理

生命 周期 的起点 就开始 关 注质量 的问题 。
之 所 以 提 倡 用 “ 过 程 质 量 管 理 ”的方 式 取 代 全
因此进 行 全 员 质 量 管 理 对 软件 的质 量 是 至 关 重要
的 。在 软 件 开 发 过 程 中 , 充 分 发 挥 人 的 主 导作 用 , 要
软 件 开 发 的 大 量 测 试 , 方 面 是 因为 不 可 能 通 过 测 一
性 分 析 、 求 分 析 、 统 设 计 、 码 实 现 、 档 管 理 需 系 代 文
培 训 ,以此 提 高员 工 的 技 术 能 力 和 管 理 能 力 ,增 强

MAY.1 2 06 NO. 0. 0 5
维普资讯
囵 0 50术期 2年 1 第 0 用 日 6月 5 应 技
程 , 一 般 制 造 业 的 生 产 过 程 只 是 一 个再 复 制 的 过 而 程 或 者 组 合 的 过 程 。 从 生 产 成 果 来 看 , 件 系 统 是 软

种 看 似 有 形 却 又 无 形 的 产 品 , 与 一 般 的 有 形 产 它
品 不 一 样 ,其 很 多 质 量 问 题 不 能 通 过 表 面 得 出 ,特 别是 对那些 已经成形 的软 件产 品 , 要通 过多 种分 需 析 手 段 甚 至 需 要 对 源 代 码 进 行 分 析 , 有 可 能 确 定 才
参 与 意 识 , 固 树 立 “ 量 第 一 ” 思 想 。 培 训 可 以 牢 质 的
形 成 有 效 的 沟 通 吸 引 员 工 积 极 参 与 ,可 以将 技 能 、 知 识 、 验 迅速 地传 递给 全体 人员 , 发创 造力 , 经 激 促 质量 的符 种检 查表 。

RUP统一软件开发过程浅谈

RUP统一软件开发过程浅谈

RUP统一软件开发过程简介一、六大经验二、统一软件开发过程RUP的二维开发模型三、统一软件开发过程RUP核心概念四、统一软件开发过程RUP裁剪五、开发过程中的各个阶段和里程碑六、统一软件开发过程RUP的核心工作流七、RUP的迭代开发模式简介一、六大经验二、统一软件开发过程RUP的二维开发模型三、统一软件开发过程RUP核心概念四、统一软件开发过程RUP裁剪五、开发过程中的各个阶段和里程碑六、统一软件开发过程RUP的核心工作流七、RUP的迭代开发模式∙八、统一软件开发过程RUP的十大要素∙九、总结简介RUP(Rational Unified Process,统一软件开发过程,统一软件过程)是一个面向对象且基于网络的程序开发方法论。

根据Rational(Rational Rose和统一建模语言的开发者)的说法,好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。

RUP和类似的产品--例如面向对象的软件过程(OOSP),以及OPEN Process都是理解性的软件工程工具--把开发中面向过程的方面(例如定义的阶段,技术和实践)和其他开发的组件(例如文档,模型,手册以及代码等等)整合在一个统一的框架内。

一、六大经验1、迭代式开发在软件开发的早期阶段就想完全、准确的捕获用户的需求几乎是不可能的。

实际上,我们经常遇到的问题是需求在整个软件开发工程中经常会改变。

迭代式开发允许在每次迭代过程中需求可能有变化,通过不断细化来加深对问题的理解。

迭代式开发不仅可以降低项目的风险,而且每个迭代过程都可以执行版本结束,可以鼓舞开发人员。

2、管理需求确定系统的需求是一个连续的过程,开发人员在开发系统之前不可能完全详细的说明一个系统的真正需求。

RUP描述了如何提取、组织系统的功能和约束条件并将其文档化,用例和脚本的使用以被证明是捕获功能性需求的有效方法。

3、基于组件的体系结构组件使重用成为可能,系统可以由组件组成。

浅谈软件项目的管理方法

浅谈软件项目的管理方法

浅谈软件项目的管理方法软件项目的管理方法是指在软件项目开发过程中,对项目的组织、计划、控制和执行进行管理的方法和技术。

合理的软件项目管理方法可以提高项目的效率和质量,减少项目的风险和成本,对于软件项目的成功具有重要意义。

软件项目的管理方法包括项目管理流程、项目管理工具和技术、项目团队组织和管理、风险管理和质量管理等方面。

1. 项目管理流程软件项目管理流程是指对软件项目进行阶段划分、任务分解、任务依赖关系确定、资源分配、进度控制、问题解决、评审和验收等过程的管理方法。

常用的软件项目管理模型有瀑布模型、敏捷开发模型、自适应软件开发模型等。

根据具体项目的特点和需求,灵活选择适合的管理模型。

2. 项目管理工具和技术项目管理工具和技术包括项目计划工具、项目进度跟踪工具、项目问题和风险的管理工具等。

常用的项目管理工具包括甘特图、PERT图、敏捷项目管理工具等。

这些工具和技术能够帮助项目经理进行任务分配、进度跟踪、问题解决和决策支持,提高项目管理的精确性和效率。

3. 项目团队组织和管理项目团队的组织和管理是软件项目管理的关键之一。

软件项目通常由多个不同角色的成员组成,如项目经理、开发人员、测试人员等。

良好的团队组织能够提高团队的协作效率和沟通效果,减少项目的冲突和延误。

项目经理需要具备良好的领导能力和沟通能力,合理分配资源,激励团队成员,确保项目顺利进行。

4. 风险管理软件项目的风险管理是项目管理的重要环节之一。

项目经理需要对项目的各种风险进行识别、评估和应对措施制定。

风险管理的核心是风险的识别和评估,根据项目的特点和风险的严重程度,制定相应的风险应对措施,确保项目的顺利进行。

5. 质量管理软件项目的质量管理是保证项目交付的软件产品质量的关键。

质量管理的核心是制定项目质量标准、质量目标和质量计划,进行质量控制和质量保证。

质量管理的工具包括质量审核、评审、测试和验收等,能够确保软件产品的质量符合用户的需求和期望。

浅谈软件配置管理的流程设计与实施

浅谈软件配置管理的流程设计与实施

浅谈软件配置管理的流程设计与实施作者:彭文斌来源:《电脑知识与技术》2009年第24期摘要:软件配置管理是一套规范、高效的软件开发管理方法,它能提供工作空间管理、并行开发支持、过程管理、权限控制、变更管理等一系列的管理能力,是提高软件质量的重要手段。

软件配置管理可以帮助开发团队对软件开发过程进行有效的变更控制,它有机地把其它支持活动结合起来,形成一个整体,相互促进,相互影响,有力地保证了质量体系的实施。

本文主要对软件配置管理的流程设计与实施进行探讨,并结合具体案例,分析了进行软件配置管理的实施策略。

关键词:软件配置管理;流程设计;实施策略中图分类号:TP311文献标识码:A文章编号:1009-3044(2009)24-6732-02Discusses the Software Disposition Management the Flow Design and the ImplementationPENG Wen-bin(Computer Teaches Education Ministry, Guangzhou Business Vocational School, Guangzhou 510163, China)Abstract: The software disposition management is set of standards, the highly effective software development management, it can provide the working space management, the parallel development support, the process management, the jurisdiction control, the change management and so on a series of managed capacity, is improves the software quality the important means. The software disposition management may help the development team to carry on the effective change control to the software development process, it organically unifies other support, forms a whole, promotes mutually, the mutual influence, has guaranteed quality system's implementation powerfully. This article mainly carries on the discussion to the software disposition management's flow design and the implementation, and unifies the concrete case, analyzed has carried on the software disposition management the implementation strategy.Key words: software disposition management; flow design; implementation strategy1 软件配置管理概述现代软件项目规模越来越大,涉及的人员越来越多,软件开发过程中经常面临一些难以解决的问题,例如,团队开发过程中如何保证产品版本的正确性;怎样在早先发布产品版本的基础上进行重构;如何解决开发策略的统一与特殊版本需求之间的矛盾等,有效的软件配置管理能够充分解决上述问题,提高软件的开发效率。

浅谈软件开发的计划和控制管理

浅谈软件开发的计划和控制管理
t E c H N o Lo G
浅谈软件开发 的计划和控 制管理
李振华 浙江商业 职Fra bibliotek技 术 学院 杭 州 3 0 5 103
摘 要 :随 着信 息技 术 的 飞速 发展 , 件 产 品 的 规模 越 来越 庞 大 , 软 件 项 目管理 引入 到 开发 活 动 中 , 软 将 怎样 对 软 件 开
导 或项 目经 理提 供 一 个 合理 的项 目计 划 , 积极 地 与 他 们 一起 并
【】 万 江 , 立新 . 件 项 目管理 案 例 教 程【 】北 京 : 械 工业 1韩 姜 软 M. 机
键。
能够完全按照项 目计划进行 , 了保证项 目能够在约定的约束 为
条件下成功 , 必须对项 目的实施情况进行控制 , 建立项 目基线。 项 目计划一旦批准 , 初步的基线也就建立起来 。基线 就是项 目 中实施的计划的正式版本 。 用于支持评估项 目当前和未来 的活 动。 初步基线是初步实施工作进展的参考点。 如果实际进展与
发 项 目进行 有效 的管 理 就 成 为一 个 需要 研 究 的课 题 。 本 文对 软 件 开 发 项 目管理 的 计 划 和控 制 管 理进 行 浅析 。
关 键词 :项 目管理 软 件 开发 计 划 与控 制
随着信息技术 的飞速发展 ,软件产品的规模越来越庞大 ,
将软件项 目管理引入到开发活动中 , 怎样对软件开发项 目进行 有效的管理就成为一个需要研究 的课题。 软件项 目管理 和其他项 目管理相 比有其特殊性 。软件是 知识产 品, 进度和质量都难以度量 , 生产效率也难以保证 。其 次, 软件 系统 的复杂程度也是超乎人想象 的。软件开发不 同于 其他产品的制造 , 软件 的整 个过程都是设计过 程f 制造过 没有 程) 。软件开发不需要使用大量的物质资源 ,而主要是人力资 源, 并且软件开发 的产 品只是程序代码和技术文件 , 没有其他 物质结果。正因为软件如此复杂和难以度量和独特的特点 , 软 件研发项 目管理 的发展还很不成熟 。 在软件开发项 目运作 过程 中,计划编制是最复杂的阶段 ,

浅谈软件开发中的需求开发及其管理

浅谈软件开发中的需求开发及其管理


( )需 求 的定 义 一
本 概

的 工作 量 ,加 强 开 发 人 员之 间 的交 流 ,减 少 大 量 的返 工 , 因为 重 新 编 写代 码 的 代 价 肯 定 远 远 超 过 重 新 写 一 份 需 求 规 格 说 明书
的 代价 :测 试 人 员可 以从 中 了解 系统 ,提 高 测 试 效 率 ;维 护 人 员可 加 深 对 系 统 的 了解 ,降 低 维 护 费 用 。
审核 上投 入 1个 小 时 ,就 可 节 省 1 0个 小 时 以 上 的 错 误 更 正 时
间 , 成功 的需 求开 发 和 管 理 能 节 省 大 量 的 资 源 ,因 此 需 求分 析 是 软 件 开 发 的 关键 。
件 系 统 的 接 口 。 好 的 需 求规 格 说 明书 带 来 的 好 处 是 多 方 面 的 ,


档 ,该 文 档 详 细 地 说 明了 产 品 “ 须 或 应 当” 做 什 么。 “ 求 ” 必 需 通 常 包 括 业 务 需 求 、用 户 需 求和 功能 需 求 以及 非 功能 需 求。
为 了更好 地 完成 软件 开 发第 一 阶段 的需 求分析 任 务 ,提Байду номын сангаас高 质 量 ,需 求管 理 是必 不可 少 的 。我们 把 所 有 与需 求 直接 相 关 的活 动 统 称 为需 求工 程。 需 求工 程 中 的活 动可 分 为 两大 类 ,一 类 属于 需 求开发 ,另一 类属 于需 求管理 。 下 图是 需求 工程 的 结构 图。

图 1 软件需求各 组成部分关 系
这个 规 格 说 明 书 能清 晰 准确 地 说 明 系统 将 要 开 发什 么 ,能 够 规

浅谈现代项目管理在软件开发中的应用

浅谈现代项目管理在软件开发中的应用

浅谈现代项目管理在软件开发中的应用现代项目管理的内涵与发展概况项目管理是指运用各种知识、技能、方法和工具,为满足或者超越项目有关各方面对项目的要求与期望所展开的各种管理活动。

项目管理方法已经进入到信息系统工程、网络工程、软件工程、大型建设工程以及高科技项目开发等崭新领域,甚至社会生产和生活的方方面面,在企业的战略发展和日常经营中的作用也越来越重要。

在我国,进入90年代甚至21世纪以来,项目管理的作用才真正开始被社会认同,许多项目管理的培训班开始建立,项目管理的方法也就开始慢慢由工程项目管理向软件开发等方面普及。

现代项目管理的实施过程1.项目期望项目期望即项目需求,属于项目管理中的范围管理。

知道了用户具体的需求才可以展开其他工作,这是实施项目管理的第一步。

2.项目计划过程项目的启动是编制出项目计划后,有步骤有条理地进行的;而项目的计划过程是个复杂的过程,这一阶段的工作不但多,而且要求高,因为所有本阶段制定出的计划将是后续阶段的依据。

时间计划的制定既要满足用户的工期要求,又要考虑到以后保证产品的质量;成本的制定更是一门学问,既不能超过用户的预算,让用户能够接受,又要考虑公司尽可能的盈利。

这一阶段矛盾的对立统一显得尤为突出。

明确项目的范围和制定工期计划是这个阶段要做好的两个工作。

1. 项目的成本管理项目的成本管理主要根据项目的范围和工期,来计算项目的成本。

2. 项目人力资源管理人力资源管理是一门比较抽象的学问,因为人力资源管理受到企业内部各方面因素的影响,而且在管理过程中每一种做法都无所谓绝对的对或绝对的错,而且不同的管理方法还要因人而异,只要最后能够达到好的结果就是好的管理方法。

3. 项目风险管理项目的风险可能是多方面的,例如用户需求的不明确。

这就要求在现代项目管理过程中必须及时地评估各种风险并制定相应的措施。

4. 项目执行过程和质量管理在项目的执行过程中,一切都按照计划进行,如何保证项目的实施质量也显得非常重要。

软件开发项目影响进度因素及控制浅谈

软件开发项目影响进度因素及控制浅谈

软件开发项目影响进度因素及控制浅谈一、影响软件开发项目进度的因素要有效地进行进度控制,必须对影响进度的因素进行分析,事先或及时采取必要的措施,尽量缩小计划进度与实际进度的偏差,实现对项目的主动控制。

软件开发项目中影响进度的因素很多,如人为因素、技术因素、资金因素、环境因素等等。

在软件开项目的实施中,人的因素是最重要的因素,技术的因素归根到底也是人的因素。

软件开发项目进度控制常见问题主要是体现在对一些因素的考虑上。

常见的问题有以下几种情况:1、80-20原则与过于乐观的进度控制80-20原则在软件开发项目进度控制方面体现在:80%的项目工作可以在20%的时间内完成,而剩余的20%的项目工作需要80%的时间。

这个80%的项目工作不一定是在项目的前期,而可能是分布在项目的各个阶段,但是剩余的20%左右的项目工作大部分是在后期。

所以软件开发在进入编码阶段后会给人一种“进展快速”的感觉,使得项目经理、项目团队成员、用户以及高层领导产生了过于乐观的估计。

有些领导看到软件交付给用户了,就一块石头落地“总算交差了”,同时又可能撤出一些被认为不必要的人力资源。

但很多情况下这是为了对付用户不合理的交付期限要求而采用的不得已的措施。

这样的结果是拖延了后期的工作,同时如果软件还不成熟的话,会给用户造成不好的影响。

2、范围、质量因素对进度的影响软件开发项目比其他任何建设项目都会有更经常的变更,大概是因为软件程序是一种“看不见”又“很容易修改”的东东吧,用户是想改就改,造成需求的蔓延,项目经理有时还不知如何拒绝,加上要说“我能”的心理因素,一般都会答应修改。

这样集少成多,逐渐影响了项目进度。

如果某项工作在进度上表面上达到目标了,但经检验其质量没有达到要求,则必然要通过返工等手段,增加人力资源的投入,增加时间的投入,实际上是拖延了进度。

不管是从横向或纵向来看,部分任务的质量会影响总体项目的进度,前面的一些任务质量中会影响到后面的一些任务质量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浅谈软件开发管理体会杨利梅从毕业至今,大小的项目做了一些,有不少成功的喜悦,也有很多失败的教训。

今年由于工作需要,我以软件项目负责人的身份参加了接入网统一网管系统开发的整个过程。

从中学到了不少知识,有许多体会,想将自己的感受写出来,与大家共勉。

软件项目管理是一个庞大而复杂的系统工程,当前业界对于软件开发流程有不少规范和定义,如CMM和ISO9000。

在该管理体系的管理下是可以开发出高质量的软件产品。

但是由于该体系较适合于大型而且复杂项目的团队开发,真正实施尚需要时间和过程。

而我们当前执行的项目,一般只有10个人左右,要实施软件工程难度更大。

我认为:虽然项目大小不一,但管理方法是相通的,要做好软件开发工作,就必须加强有效管理。

大家知道,“软件危机”起源于一些大型项目的不断延迟甚至失败。

与大项目相比,小项目具有以下特点:∙项目功能相对较少;∙开发人员较少;∙开发周期较短。

小项目看起来比较简单,比较容易成功,人们往往容易忽视小项目的管理,其实这是一种误解。

据我了解,小项目开发中容易出现以下问题::1、开发之前没有认真地进行项目可行性和工作量的估计。

往往由于项目较小,便很草率地制定一个开发日程表,没有认真地估计项目难度,结果实际完成时间与估计完成时间往往有较大差距。

2、没有真正的设计过程。

开发人员少,不同人员的程序之间交互、接口相对少一些。

开发周期短往往是几个人从头到尾负责一个项目,几个人碰一下头,讨论一下最基本的数据结构、函数接口便分头去做自己的工作了,没有一份较正式的文档来规范各自职责和项目细节。

这种做法潜在的危险之一是有人可能会对所讨论的接口、结构理解有偏差,可能会造成以后的返工。

另一个潜在的危险是由于讨论时忽略了某些情况,等大家都按时完成分工任务后,才发现各个模块组合起来却无法形成一个完整的系统。

其根源在于没有一个负责协调的人员不断监控整个开发过程。

第三个潜在的危险是一旦有人中途退出开发队伍,其他人加入时,难以理解以前别人做好的代码,又要从头做起。

另外,没有文档的程序,日后维护和版本升级都比较困难。

3、不经过单元测试而直接进入系统测试。

造成这一现象的原因是每个模块相对比较简单,但是为了测试一个模块需要建立一些测试环境。

例如,为了测试一个函数是否正确,应该用一些测试数据去调用该函数,需要编写一些测试数据。

但很多开发人员嫌麻烦,觉得反正其他模块也很快出来了,直接用真正的数据来运行几次就行了。

针对以上问题,我认为在开发过程中必须处理好四个关键问题,严格把关,可以大大提高软件的质量。

这四个关键问题为:人员、规范、测试、时间控制。

一、合理配置人员首先软件开发是一项长期艰苦的工作,所以一个团结、协作的团体才能在规定的时间内完成一个质量上乘的软件项目。

团队中的每个人必须积极融入到整个集体中,不能互相推诿,更不能互相埋怨和指责,正确的态度是大家在充分信任的基础上团结协作,互相帮助,主动承担任务, 利用集体的智慧获得成功。

整个团队就是一部机器,只有每一个齿轮都能正常运作,才能生产出优质的产品。

合理配备人员是成功完成软件开发项目的切实保证。

所谓合理配备人员应包括按不同阶段适时运用人员,恰当掌握用人标准。

一般来说,软件项目不同阶段、不同层次技术人员的参与情况是不一样的。

图一是典型的软件开发人员参与情况与实际人员需求差异曲线图。

如人员配置不当,很容易造成人力资源的浪费,并延误工期。

特别是采用恒定人员配备方案时,在项目的开始和最后都会出现人力过剩,而在中期又会出现人力不足的情况。

为开发人员创造出一个人尽其才的环境也是项目成功的重要环节,让他们能得心应手的施展自己的才华,特别在工作安排上要煞费苦心,针对每个人不同的特长,根据项目的具体环境和条件来合理安排人员在恰当的岗位上。

项目负责人是一个团队的核心,其综合素质直接影响项目的成败。

合格的项目负责人具有高超的领导才能和强烈的科技意识和较强的业务处理能力;具有敏锐的洞察力,能瞄准目标,实事求是,精心组织,坚决果断,灵活应变,享有信誉;善于制定计划,解决问题,沟通信息;具有良好的市场意识和交际能力。

当然同时满足这些条件比较困难,但是他应该具有实现这些素质的条件,并注重经验的积累、素质的提高、能力的培养。

并能从以下几方面严格要求和培养自己:以身作则:只有身先士卒,各方面以身作则,才能得到广大开发人员的认可和信任,才能树立较高的威信。

果断抉择:负责人的重要任务是决策,特别是有多种选择的情况下,一个正确的选择往往事半功倍。

善于交际:他必须积极对外联络,充分利用外部资源,例如其他部门做过类似项目者,可以向他们取经甚至直接获得源码。

这对一个项目争取时间,避免重复工作很重要。

善于协调:协调几个人的工作比自己完成一段编码更重要。

由于协调不力,将影响开发。

所以项目负责人除完成自己的编程任务外,必须随时监控各开发人员的工作,包括内容是否与要求发生偏差,进度是否滞后等等。

善于制定计划:在开发前,可将明确的开发任务通过文档传递给每个开发人员,让大家都熟悉设计模型,都清楚自己所做的工作在整个系统中处于什么地位,这样有时侯可能会发现设计模型中的漏洞,避免了各人的代码编写完毕之后又要修改的后果。

沟通问题:团队沟通不是技术问题,但却是一个最能影响工作效率的问题。

沟通及时、集思广益、步调一致,才能取得胜利。

二、严格执行软件开发规范软件开发需要严格按照软件规范实施。

用手工作坊式的方式来开发软件,其结果必然失败。

从项目的用户需求分析、系统分析、编码、调试、测试、发布都需要一步一步完成,不能轻视或忽略任何一步骤。

前部分没有完成好,不要贸然进行下一步。

越是项目起步阶段,越是要注意按照规范进行。

如前所述,因为开发软件项目规模较小,很容易忽视规范化,而随心所欲,没有计划,想到哪做到哪,其最终的结果是失去控制。

其实项目小正是实现软件规范化管理的好时机,规模小,涉及的管理方面有限,管理实施起来比较容易。

CMM等规范标准不是轻而易举就能实现的,但是可以借鉴它的思想和方法,先在小项目上实现规范化管理,培养人员的规范和意识,为以后实现大项目的CMM等规范打下良好的基础。

特别需要重视软件开发中文档管理。

那种认为只要产品做出来可以运行,何必花费许多精力去做文档的观点是错误的。

经过实践,我深刻体会到,没有文档会带来很多问题。

用文档去引导开发过程,抛弃随心所欲的开发模式。

就象工厂工人师傅按照图纸生产零件一样,否则很可能会得到次品甚至是废品,给后来开发者留下一堆没有意义的“垃圾”产品。

我认为文档应该是开发中阶段(mileStone)结束的标志,每个阶段后,都需要提交相应的文档,而且要确保文档的质量。

确保文档质量的最有效方法就是评审,提交文档后,项目负责人组织相关人员对该文档进行审核,在充分讨论的基础上进行文档的重新修改和审核直到满足项目要求。

文档应该是贯穿整个过程的主线,在不同的阶段,需要不停地对文档进行完善,使之真正成为全体项目人员的智慧结晶。

三、重视测试测试是软件开发中容易忽视的问题,许多人认为开发的主要工作是编码,其实不然,在没有严格执行开发流程的开发活动中,测试可能是唯一能确保软件质量的方法和手段。

而越是松散的项目越轻视测试活动,它既没有固定的测试组织,又没有程序员间的交叉测试,更没有考虑过有效的测试流程和方法,他们的软件质量完全建立在对程序员能力信任的基础上,这是很不安全的。

测试是对软件产品质量的检验和评价。

它一方面检查软件中存在的质量问题,同时对产品质量进行客观的评价。

我们一般把发现的错误bug(我们也称为缺陷defect)按严重性分为四类:死机(系统崩溃或挂起)、致命(使系统不稳定、或破坏数据、或产生错误结果,而且是常规操作中经常发生或非常规操作中不可避免的)、严重(系统性能或响应时间变慢、产生错误的中间结果但不影响最终结果,如:显示不正确但输出正确)、一般(界面拼写错误或用户使用不方便)。

我们也把发现的错误按优先级分为三种:高、中、低。

一般是某错误对用户接受或使用影响越大其优先级越高。

要完成严格的测试,就必须建立规范的系统测试流程,有专人负责执行,而且开发人员要积极配合,不要认为测试人员是在给自己找麻烦,测试人员查找的错误可能是程序员无法发现的错误。

一般的测试流程应该是:1、项目组提交系统测试申请给测试中心指定帐号。

由专人检查文档格式和完备性。

2、检查合格后交给该产品对应方向的研究人员,评价其内容的有效性和真实性。

3、检查合格后由测试中心主任审查并通过,成立测试组,指定测试组长(可暂时没有组员)。

4、测试组长根据该产品的申请报告、测试设计和以往测试数据,制定测试方案。

5、测试中心主任审核通过测试方案后,根据测试方案指定测试组成员,并由支持组完成其他支持任务(如:设备的配备、测试数据库的建立、网络权限的修改……)。

6、测试期间测试组根据测试方案进行实际测试,记录并跟踪测试缺陷报告,填写测试记录。

测试组长与项目组(测试经理)经常沟通,并获取产品的更新版本。

同时,测试组长审查、修改并提交所有缺陷报告,保证随时掌握产品的质量情况,并监督测试进度。

7、产品进行到一定阶段后(标志是测试缺陷报告库中所有的报告处于归档状态),由项目组和测试组长共同决定产品进入稳定期测试。

稳定期测试版本之前的版本必须在显著位置标明为测试版字样。

8、稳定期测试期间所发现的缺陷报告也需要记录在测试缺陷报告库中,并在稳定期结束后由双方(有时可能也有市场方面的意见)共同决定对这些缺陷的处理方式。

如果需要改动产品,则重新开始稳定期,否则通过稳定期测试。

9、测试组长对于通过稳定期测试的产品填写综合测试报告,测试中心依此发布产品发行通知。

10、测试组对整个测试过程和产品质量进行总结和评价,形成文档并备案。

同时,将测试过程中对测试设计的改动纳入基线(是已经通过正式复审核批准的某规约或产品,是软件开发中的里程碑)。

最后,组长整理并在指定地点保存相关测试数据和测试样张。

11、测试中心解散测试小组。

另外,在系统测试阶段,我们要求测试小组要进行一些常规内容测试(如:Y2K测试,病毒检查、裸机测试、加密检查、说明书检查……),并要求写入测试方案中。

测试应该在现实的环境中进行。

所谓现实环境就是与用户实际使用的环境相同或相近,因为开发环境和用户使用环境有很大区别的,而开发的产品最终是要交给用户使用的。

如果没有办法模拟用户环境,则程序员可能必须自己开发一些模拟程序来模拟现实环境。

特别是与硬件配合的项目,因为在程序调试时硬件可能没有完全完成,这时就必须开发模拟硬件的程序,否则开发的进度可能无法保证。

四、时间控制开发人员最担心“领导不断催促,可系统提交日期一拖再拖”,项目负责人对此一筹莫展,束手无策。

开发活动如同一个黑箱子,资金扔进去了,人员扔进去了,设备资源扔进去了,但不知道什么时候会出来结果,更没有把握出来的东西是否是用户所要的东西。

相关文档
最新文档