欢迎来到天天文库
浏览记录
ID:9373672
大小:2.78 MB
页数:41页
时间:2018-04-29
《建设持续交付组织》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、建设持续交付组织关于我金明(@金明i)•ThoughtWorks持续交付与DevOpsLead•多年企业应用和互联网应用开发经验,专注于敏捷和精益。目前主要关注敏捷实施、组织转型、持续交付、云计算、DevOps以及架构设计持续交付BuzzWord?支付宝余额宝微博淘宝同学地图淘宝点点O2O一淘大数据微淘互联网日新月异微创新淘宝移动互联网打车助手盒子云微信虚拟信用云存储云主机P2P小额IT如何支撑、引领业务创新?天下武功,唯快不破!"Agile"teamAnalysis+DesignCentralizedQAITOperationsDevelopmentIntegration+QARel
2、easeandoperationCustomerTesting+ShowcaseIteration01234The"lastmile"CustomerDeliveryteamConstantflowofnewfeaturesintoproduction"Agile"teamAnalysis+DesignCentralizedQAITOperationsDevelopmentIntegration+QAReleaseandoperationCustomerTesting+ShowcaseIteration01234The"lastmile"提高交付质量缩短交付周期CustomerDeliv
3、eryteamConstantflowofnewfeaturesintoproduction不想做全面质量管理的QA不是好QA什么是持续交付?自动化部署持续集自动化成测试?持续交付持续交付源自精益思想精益原则•拉式生产•特性团队•小批量•自働化小批量自働化•自动停止的自动化–一旦出现质量问题,流水线自动停止–流水线自动定位质量缺陷•人化的自动化–人员纪律是基础–持续优化是目标Visibility'quality'Deliver'faster,'Safer'collaboration'automation'实践发布流水线自动化测试•结合系统架构进行分层•通过BDD/TDD演化自动化测试套件
4、•尽量选择简单开源的工具•开发人员应该负责绝大部分的自动化测试•拒绝“象牙塔”设计测试分层Mobile'CP'API'AD'ESB'Feeder'DS'XML'DB'XML'FAST'Widget'1.跟随数据流2.寻找数据状态明确的输入输出3.技术上易于自动化测试另一个例子测试金字塔端到端测试组件测试单元测试开发人员自动化测试Eat'Your'Own'Dog'Food!!'业务、QA设计测试用例全面质量管理我们还缺少——环境配置用户交互、体验环境配置即代码本地环境测试环境预生产环境生产环境Chef+packages'Chef+packages'Nagios'Vagrant'FogPA
5、WS/FogPvSphere'OpenStack'AWS'EC2/VirtualBox'VMware'VMware'OpenStack'例子用户体验自动化测试没有衡量就无所谓改进衡量指标•周期时间•WIP(WorkinProgress)数目–集成构建成功率–环境创建周期–发布候选包手工修改次数可视化WIPisincreasingtododoingtodocycletimedonedoingWIPcycletimeWIPdoneCumulativeFlowDiagram可视化Continuous(delivery(is(about(putting(the(release(schedule
6、(in(the(hands(of(the(business,(not(in(the(hands(of(IT.(((Implementing(continuous(delivery(means(making(sure(your(software(is((always(production(ready(throughout(its(entire(lifecycle(–(that(any(build(could(potentially(be(released(to(users(at(the(touch(of(a(button(using(a(fully(automated(process(i
7、n(a(matter(of(seconds(or(minutes.((('P'Jez'Humble'(http://continuousdelivery.com/)''如何组织内建设持续交付?•实践能否证明有效?•哪些实践应该做哪些裁减?•如何让人员接受新的实践和流程?•改革的风险和难点在哪里?有何解决方法?•⋯⋯广度优先(1)深度优先,在局部项目获得改进的成功(2)宽度优先,将局部改进成功扩展到全局(1)顶层驱动变更,与底层沟通并提供支持(2
此文档下载收益归作者所有