在现代软件开发中,软件项目在构建初期被切分红多个子项目,各个子项目的成果都通过测试,具有可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程当中软件一直处于可以使用状态。敏捷式开发管理概念应运而生。html
2001年,一群大师汇集在美国犹他州,吃吃喝喝头脑风暴,搞出了一个敏捷宣言,阐述了5条价值观,以下图所示。前端
描述类属性文档、接口说明文档(利用swagger自动生成)。而一些有价值的文档,如设计方案文档、架构体系文档等仍然是必须的。git
敏捷的初心是建议咱们经过一系列方法来让咱们的研发工做更加高效、灵活和有序,因此它强调团队成员的能动性和相互之间的协做,也更重视应对变化。web
敏捷式开发,细分需求,侧重每一个需求的生命周期管理。随时提需求,随时撤销,随时变动,每一个需求都有,分析,设计编码,测试,缺陷管理。产品经理,能够在线评审(结合DevOps:CI/DI),随时开启新需求,结束需求。瀑布式开发只能等功能彻底开发结束进行评审,例如迭代次数较少。后端
只要是符合敏捷价值观和原则的方法论,均可以称之为敏捷方法。api
我司采用DevOps方法,先后端的开发人员经过不断的迭代代码,经过gitlab的CI/DI持续集成部署,测试人员持续测试反馈,经过teambiton对需求与缺陷的全周期管理实现了快速完成需求变动与开发以及缺陷的修复等。架构
综上,经过DevOps CI/DI来持续集成,来提升敏捷开发的效率。能够说DevOps CI/DI是法家里说的术,而敏捷思想是法家的法(规则,思想的抽象或者说是道家的道)。ide
Scrum不是敏捷的所有,它只是敏捷的一个落地方法之一。工具
Scrum就是3355。gitlab
什么是3355?
第一个3表明3个角色,即Product Owner(产品负责人)、Scrum Master 和 团队;
第二个3表明3个工件,即Product Backlog(产品待办事项列表)、Sprint Backlog(迭代待办事项列表)和 Product Increment(产品增量);
第三个5表明5个事件,这也是你们感觉最深入的,即Sprint Planning(迭代计划会议)、Daily Scrum(每日站立会议)、Sprint Review(迭代评审会议)、Sprint Retrospective(迭代回顾会议)、Backlog Refinement(产品Backlog梳理会议);
第四个5表明5个价值,即承诺、专一、开放、尊重和勇气;
我司并不按照此方法执行。
每次迭代都必须依次完成如下五个步骤。
需求分析(requirements analysis)
设计(design)
编码(coding)
测试(testing)
部署和评估(deployment / evaluation)
PO(Product Owner): 产品负责人,核心是产品,提需求者能够是产品经理,项目经理,测试人员(适用我司),最终用户,集成商,代理商;
现代化需求:需求变动快,早上提了,下午就改,敏捷是为了更方便地变动需求,我司很是适用敏捷式开发。
需求管理:关键是要写下来,写到统一的品台teambition里去。写的过程,考虑问题会全面,能溯源。需求文档和开发的代码同样,都要有完整的历史记录,可以追溯到什么时候什么人作了什么修改,这样能够追责到每一次需求变动。
何为全周期?即需求所有状态的流转以及中止流转。
状态的定义添加
缺陷即bug, 由测试人员通过测试案例以后,创建,指派给以前完成任务的对应开发人员,开发人员手头工做繁忙,向组长反馈实际状况,再由软件组长指派给其余开发人员。
我司采用TeamBition平台
由测试人员设置完成。而且全部通知信息可由teambition手机App通知。
– 产品负责人(Product Owner)
主要负责肯定产品的功能和达到要求的标准,同时有权力接受或拒绝开发团队的工做成果。
– 流程管理员(Scrum Master)
使得每一时刻的需求都能明确,管理每一次需求变更,变更缘由,将变更落实到实处。
–开发团队(Scrum Team)
根据任务优先级编排任务
–测试人员
需求明确完以后,便可针对需求编写验收文档。测试过程,编写测试案例。
敏捷开发以用户的需求进化为核心,采用迭代、按部就班的方法进行软件开发。
管理好需求,提升开发效率
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处连接和本声明。 本文连接:https://www.cnblogs.com/JerryMouseLi/p/14203881.html