1、软件开发生命周期
- 需求分析:由公司内部或者客户提出
- 设计:输出系统脚架构设计和项目计划
- 实现:代码开发,开发人员开发代码
- 测试:测试阶段,开发人员做一些代码测试功能测试等,测试人员做一些系统测试性能测试等
- 维护:bug修复或者局部功能完善
2、软件开发瀑布模型
* 优势:
当前一阶段完成后,只需要关注后续阶段即可
为项目提供了按阶段划分的检查节点
劣势:
各个阶段的划分完全固定,阶段之间产生大量的文档,极大地增加了工作量
由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险
瀑布模型的突出缺点是不适应用户需求的变化
3、软件的敏捷开发
-
含义:
敏捷开发的核心是迭代开发和增量开发 -
迭代开发
将项目的周期分为若干个迭代周期,每个迭代周期一般为两到三周,每个周期都设计需求分析、代码开发,测试等阶段 -
增量开啊
将项目的需求拆解为若干个小需求,每个迭代去完成交付一部分需求,如此,每个迭代结束都有一部分工鞥完成交付,整体看功能在增量交付 -
敏捷开啊带来的好处:
早期交付
降低风险
4、持续集成
-
含义:
Continuous Integration,简称CI,指频繁的将代码集成到主干 -
目的:让产品可以快速迭代,同时还能保持高质量
-
流程:
- 提交
- 测试(第一轮,自动化)
- 构建(编译)
- 测试(第二轮)
- 部署
- 回滚
-
组成要素
-
持续集成的好处:
- 降低风险,由于持续集成不断去构建、编译和测试,可以很早的发现问题,可以修复的代价很低
- 对系统健康持续检查,减少发布风险带来的问题
- 减少重复性工作
- 持续部署,提供可部署单元包
- 持续交付可供使用的版本
- 增强团队信心
5、Jenkins简介
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。