目的
▪ 了解软件开发的一般过程
▪ 了解传统软件过程模型的原理,包括线性和迭代模型(瀑布、增量、原型、螺旋和V模型)
▪ 认识和实践敏捷开发
▪ 了解软件配置管理(SCM)
▪ 学习如何将Git用于日常的SCM任务(用于个人开发的基本命令,用于协作开发的高级命令)
大纲
▪ 软件开发生命周期(SDLC)
▪ 传统的软件过程模型(瀑布、增量、Vmodel、原型、螺旋)
▪ 敏捷开发和极限编程(XP)
▪ 软件配置管理
▪ Git作为SCM工具
▪ 摘要
2.传统的软件过程模型
两种基本类型:线性&迭代
▪ 现有模型:
–瀑布(线性,非迭代)
–增量(非迭代)
–V模型(用于验证和确认)
–原型(迭代)
–螺旋(迭代)
▪ 关键质量考虑因素:
–用户参与(适应变化)
–开发效率、管理复杂性
–软件质量
瀑布式(顺序,非迭代)
▪ 进度被视为在概念、启动、分析、设计、构建、测试、实现和维护的各个阶段稳步向下流动(像瀑布一样)。
▪ 易于使用,但事后的改变代价高昂。
▪ 1970年由温斯顿·W·罗伊斯定义。
增量(非迭代)
V型(用于验证和确认)
▪ V-model表示一个开发过程,它可以被视为瀑布模型