实战每晚构建-上.docVIP

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实战每晚构建-上

实战每晚构建(上) 龚永生 (gongys@) 北京市海淀区上地信息产业基地开拓路7号联想大厦 1、前言 本文有两个目的:实现每晚构建平台和探讨一个软件从需求文档到设计文档的书写规范。 每晚构建是软件研发管理中极具价值的手段,对于加快发现和改正缺陷,降低集成风险,提高产品质量,加强成员沟通与协作,缩短产品上市时间,增加项目开发透明度,提高项目组成员信心和斗志有着非常重要的作用和意义。本文从软件工程过程:需求定义,分析,设计出发描述了实战每晚构建平台的大部分过程。 软件工程中文档有着极其重要的地位,良好的文档风格和习惯是一个团队成熟的重要标志。目前有些软件研发人员特别是刚刚走上岗位的研发人员对文档书写没有一个统一的概念,他们不知道需要写那些文档,他们不知道每个文档需要写到什么地步,一提到写文档就抓耳扰腮。本文试图在这个方面提供一个文档样例,我不认为我的文档写的很好,只希望能起到抛砖引玉之功效。 为了实现这两个目的,本文首先解释了每晚构建,让读者对这个术语有个比较清楚的认识;然后借助于《编写有效用例》中的用例编写技术编写了每晚构建平台的用例并附加了其他相关需求形成了一个相对使用的需求定义文档;接着用面向对象的系统分析方法对需求定义进行了问题空间分析,构造出分析模型;为了读者更好更快地理解设计,后面是一整节的相关开源或第三方技术介绍,有类似于Hello world的入门介绍,也有精髓内容解析,还有注意点提醒;接着是平台两大系统的设计。 整个每晚构建平台包括两大子系统:构建系统和构建信息显示系统。构建系统用ANT构建脚本实现;构建信息显示系统是个典型的web应用。两者都采用了面向对象的分析和设计技术。 需求定义的阅读应该以用户为主,文档撰写者为辅,需求定义完成的标志是两者达成了一致;分析章节的阅读应是文档撰写者帮助用户阅读,使用户理解并相信分析模型是能解决用户的问题的;设计章节的阅读主要是系统实现者,除了要求可实现性外,设计模型还要和分析模型有很强的继承性和一致性。 整个文档分为上中下三篇,上篇主要讲述需求定义和分析模型。 2、每晚构建的定义和作用 构建是从代码库中取出一个开发中的软件项目的所有最新代码,放在一个干净的环境下面,编译源代码文件,连接,安装和测试,并记录整个过程中所有日志的动作系列。 构建平台是一个构建和构建信息展示的系统。 每晚构建主要是指在开发活动不太激烈的情况下,尽量不要干扰开发者的正常开发工作,保证每天执行构建一次。 在《cvs和nightlybuild技术》一书中提到了每晚构建的作用: 每个模块有一部分成果集成一部分成果可以大大地降低集成风险,加强模块间协作性错误的诊断,降低整个系统的不确定性,可以更好地定位错误从而加快开发速度,促使模块间的接口规范而增强团队合作,每天都有新系统新成绩是对每位项目组成员的一个重要激励。 除了这些作用之外,我们还可以从每晚构建中为项目管理提供额外的信息: 每晚构建的产品,每晚构建过程的记录,每晚构造过程中的测试记录,分析测试质量的测试覆盖率分析,构建对象中项目组成员的贡献和项目组成情况分析(本文称为项目度量)。 3、需求定义 关于需求定义的文档我们一般称之为《需求规格说明书》,这个文档的任务在于比较明确地确定项目的目的和范围,提出功能需求和非功能需求,功能需求也叫行为需求,一般可以用用例来描述,如果所有需求的全集我们称为问题域,则功能需求我们可以称之为问题域的本质。软件研发公司一般都有《需求规格说明书》的框架,规定了书写需求定义文档的纲,下面就普遍格式对需求进行描述。 目的和范围 每晚构建平台是提供一个自动化的信息系统,用来辅助构建者构建系统,尽量做到自动化,最大化地减轻构建者的工作负担;记录构建过程的详细记录,给项目经理、组织层次的软件开发过程改进人员评估和管理软件开发项目提供相关数据,为项目成员和组织领导增加软件项目开发的透明度。 术语 构建信息关心者是关心构建过程的记录信息的人员,包括项目经理、过程改进人员、项目成员和组织领导。 用例 根据我们前面的构建平台的定义,实现这样的系统主要有两个用例和两种角色。如下图: 用例一:构建 名称:构建 级别:user goal 范围:每晚构建平台 主要角色:构建者 前提:主要角色已登录 成功场景: 构建者要求系统从代码库中取出某个项目的所有源代码 构建者编译连接所有源代码,系统产生项目软件 构建者要求安装构建出的项目软件,系统安装软件 构建者测试软件,系统测试并记录测试信息 扩展: * 系统出错: *.1系统保存出错信息 用例二:浏览构建信息 名称:浏览构建信息 级别:user goal 范围:每晚构建平台 主要角色:构建信息关心者 前提:已执行构建 成功场景: 构建信息关心者进入构建

文档评论(0)

wnqwwy20 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档