《软件架构基础》软件开发模型
兼顾了快速原型的迭代的特征以及瀑布模型的系统化与严格监控
引入风险分析
喷泉模型
- 一种以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程
- 认为软件开发过程自下而上周期的各阶段是*相互迭代和无间隙**的特性
- 喷泉模型不像瀑布模型那样,需要分析活动结束后才开始设计活动,设计活动结束后才开始编码活动。该模型的各个阶段没有明显的界限,开发人员可以同步进行开发。其优点是可以提高软件项目开发效率,节省开发时间,适应于面向对象的软件开发过程
敏捷模型
- 个体和交互大于流程和工具
- 可工作的软件大于详细的文档
- 客户的互动大于合同谈判
- 响应变化 高于 遵循计划
- 尽管右项有其价值, 我们更重视左项的价值。
Scrum
- Scrum Master是教练,团队带头人,确保团队合理运作
- PO 确定产品的方向和愿景,定义产品发布的内容、优先级及交付时间,为产品投资报酬率负责;
- Team 一个跨职能的小团队,人数5-9人,团队拥有交付可用软件需要的各种技能。
Scrum流程
(1)PO首先将需求按照优先级进行排列,产生一个Product Backlog。作用类似于传统开发中项目经理先确定需求文档,确定项目要做什么,把所有需求列到Product Backlog上面供Team人员查看。
(2)有了ProductBacklog列表,Team需要通过Sprint Planning Meeting(Sprint计划会议) 来从中挑选出作为本次迭代完成的目标,这个目标的时间周期是2~3个星期,然后把这个目标进行细化,形成一个Sprint Backlog;
(3) Sprint Backlog是开发人员的任务,每个成员根据SprintBacklog再细化成更小的任务,每个任务尽可能的在两天之内完成;
(4)在开发人员完成计划会议上选出的Sprint Backlog过程中,每隔24个小时,需要进行 Daily Scrum Meeting(每日站立会议),每次会议控制在15分钟左右,每个人都必须发言,并且要向所有成员当面汇报你昨天完成了什么,并且向所有成员承诺你今天要完成什么,同时遇到不能解决的问题也可以提出,每个人回答完成后,要走到看板前更新自己的 Sprint burn down(Sprint燃尽图);
(5)当一个sprint完成时,也就是一次迭代完成,我们要进行 Srpint Review Meeting(演示会议),也称为评审会议,PO和客户都要参加,每一个Scrum Team的成员都要向他们演示自己完成的软件产品。
(6)完成工作后,有一个Sprint Retrospective ,聊聊有什么地方做的不错,有什么地方做的不好,在后面的迭代过程中需要注意哪些地方,对帮助过你的人进行感谢,在下一个迭代中,要承诺哪些內容。
持续集成----Scrum的基石
- 统一的代码库
- 自动构建
- 自动测试
- 每个人每天都要向代码库主干提交代码
- 每次代码递交后都会在持续集成服务器上触发一次构建
- 保证快速构建
- 模拟生产环境的自动测试
- 每个人都可以很容易的获取最新可执行的应用程序
- 每个人都清楚正在发生的状况
- 自动化的部署
以上是 《软件架构基础》软件开发模型 的全部内容, 来源链接: utcz.com/z/513090.html