系统开发基础(1)——开发模型
文章目录
系统开发基础主要考点提要
- 上午考试,分值11分左右
- 开发模型
- 软件开发方法
- 需求分析
- 软件设计
- 软件测试与维护
- 软件质量保证
- 软件过程改进
- 项目管理基础
开发模型
模型分类
- 瀑布模型
- V模型
- 喷泉模型
- 原型化模型
- 演化模型
- 螺旋模型
- 统一过程模型
- 敏捷方法
瀑布模型
- 解决的问题:需求从一开始就很明确的软件开发
- 弊端:在软件开发中,70%以上的问题出现在软件设计阶段,所以应该将软件测试尽可能的提前。
V模型
- 特点:十分重视测试
- 弊端:同瀑布模型
喷泉模型
- 特点:面向对象;每个阶段没有明确的界限,便于迭代,由此带来管理困难。
原型化模型包括了演化模型
螺旋模型
- 适合开发高风险的项目,因此其成本很高。
统一过程(UP)模型
四大阶段
- 初始阶段——生命周期目标:
- 确定项目范围和边界
- 识别系统的关键用力
- 展示系统的候选架构
- 估计项目费用和时间
- 评估项目风险
- 细化——生命周期架构:
- 分析系统问题领域
- 建立软件架构基础
- 淘汰最高风险元素
- 构建——初始运作功能:
- 开发剩余的构件
- 构件组装与测试
- 交付——产品发布:
- 进行β测试
- 制作发布版本
- 用户文档定稿
- 确认新系统
- 培训、调整产品
典型产品代表
- 典型代表产品:RUP(Rational Unified Process)
敏捷方法
总体目标
通过"尽可能早地、持续地对有价值的软件的交付"使客户满意
典型方法
- 极限编程(XP)(在一些对费用控制严格的公司中使用,十分有效)
- 水晶法(用最少的纪律约束仍能成功的方法)
- 自适应软件开发
- 并列征求法(SCRUM,明确定义了的可重复的方法过程)
- 特性驱动开发
极限编程(XP)
由价值观、原则、实践和行为4个部分构成
4大价值观
- 沟通
- 简单
- 反馈
- 勇气
5大原则
- 快速反馈
- 简单性假设
- 逐步修改
- 提倡更改
- 优质工作
12大最佳实践
- 计划游戏
- 小型发布
- 隐喻
- 简单设计
- 测试先行
- 重构
- 结对编程
- 集体代码所有制
- 持续集成
- 每周工作40小时
- 现场客户
- 编码标准