欢迎来到天天文库
浏览记录
ID:17722583
大小:23.58 KB
页数:14页
时间:2018-09-05
《持续集成解决方案》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、持续集成解决方案 篇一:互联网行业应用持续集成方案 互联网行业应用持续集成(CI)实践 吴峻申 修改记录 目录 1互联网行业软件开发特点和现状简介 当前中国互联网行业是一个竞争力非常强也压力非常大的行业。一个互联网公司如果不时刻拿出让广大用户喜闻乐见,易于使用的软件产品,其命运必然是被这个行业所淘汰。而在互联网软件产品开发中,如果没有良好的管理和高效率的工具来帮助开发和测试,那么整个项目团队就会处于无序混沌的状态。以这样的状态是无法产生之前所述的那种软件产品。本文所记述的持续集成就是为了避免这种开发测试情况在互联网软件行业中蔓延而引入的一种
2、项目管理方法实践和使用工具。其目的也是为了进行快速软件开发,制造高质量的软件产品。 互联网应用还有一个极其有趣的特点就是“永远都是beta版”。一万个人对这个特点有一万种见解和看法。其实这个特点告诉我们在互联网行业,客户是永远不会满足已有软件产品目前所具有的功能。他们总是希望能满足他们个人自己的需求。为了争取让用户体验程度更加好,也为了提高网站用户粘度,互联网行业公司必需拥有一套完整的解决方案和实践集合来实现这个目的,而持续集成也属于这样的方案。因为面对客户提出的各种新功能,新应用,开发人员需要即时相应这些复杂而又详细的需求,并更好更快的实现这些需求。
3、而实现需求后,如何保证是否很好满足客户需求,是否让客户感觉“酷”,是否这样实现需求方式是最快最好的?这就需要持续集成能来帮忙了。简单来说持续集成在这里就是提供了一种“保障体制”,防止了很多软件开发中的风险发生,也进一步推动了提高用户体验度和用户粘度的实践流程的发展。 2持续集成实践介绍 为什么我们要进行持续集成? 持续集成不是一项软件开发实践,而是多项软件开发实践的集合。团队在尝试引入这些开发实践时,不可避免要遇到一个问题:为什么要持续集成?如果不能很好地理解为什么,持续集成可能会进入误区,不能带来期望的效果。 早期的软件开发模式是由程序员负责编
4、写不同的模块,在软件项目完成之前,一次性的把各个模块集成在一起,再进行测试。我们称这种集成方式为“big-bang”的集成方式。使用该种集成方式的项目团队把软件集成安排在开发阶段的后期,一般是应用“瀑布式(Cascade)”开发模式。在项目后期才开始对软件进行集成,会为项目引入很多的未知因素和巨大风险--程序员往往发现越来越多的Bug等待他们去修复。这种集成方式很有可能会威胁到软件项目的成功。随着市场竞争的日益激烈,对软件产品的发布要求越来越高、越来越频繁,这种“big-bang”的集成方式已经不能满足开发团队的需求。取而代之的持续集成的开发方式“Con
5、tinuousintegration”。持续集成可以有效地解决软件开发过程中的许多问题,可以有效的确保软件质量,减小项目的风险,使得软件开发团队从容面对各种各样的变化。 在开发过程中如何提高项目可见性?项目的进度如何?哪些需求已实现?哪些代码已测试?代码的品质如何?持续集成及时呈现各种分析报告,让开发团队和管理层了解项目的真实状况,从而制定正确的决策。“不识庐山真面目,只缘身在此山中”的感觉一去不复返。一般来说,最成功的人拥有最好的信息。 因此为什么要持续集成?就是因为持续集成将改善软件的质量,降低风险,使软件开发 变得更有效率,让大家能够“愉快工
6、作,幸福生活”,而不是“加班工作,维持生活”.这不是唯一的标准答案,每个团队都可以思考讨论,得到属于自己的答案。 持续集成由那些实践组成? 前文已提及持续集成是多种软件开发实践的集合,那么本节对这些开发实践做进一步的说明,能够让我们更加清晰认识进行持续集成的目的。 ?数据集成 数据是所有IT系统的核心,所有的架构都建立在数据的基础之上,其目的都是为了更好地处理数据。由于数据如此重要,所以我们派专人来负责管理和维护,这就是DBA.不幸的是,DBA与程序员似乎来自于不同的文化,他们讲的不是同一种语言。结果常常导致程序员基于自己对数据库的假设来开发程序
7、,到了项目的后期才与真实数据库进行集成。这种假设会带来很大的集成和部署风险,影响代码的品质,可能引起大量的返工。 对于针对已有数据集的开发,持续集成强调尽可能早地与实际数据集成,例如可以通过数据库复制,在一个几乎与生产环境一样的开发环境中进行开发。此外,DBA可以与开发团队密切配合,双方分享观点与经验,使数据库的组织方式也能够根据新的业务需求与时俱进。 如果项目要开发一个全新的应用,还没有数据集存在,怎么办?办法很简单:一、尽早得到真实的数据集。二、随着开发团队对问题域的理解不断加深,应用功能的不断实现,让数据的组织方式也不断优化。 ?静态代码检查
8、 不同的人写的代码,其品质差异比较大。相同的人在不同时间写的代码,其品质也可以
此文档下载收益归作者所有