软件构造过程与配置管理

目录

一、软件开发生命周期(SDLC)

二、传统的软件发展模型

三、敏捷开发

四、软件配置管理和版本控制系统

五、Git

六、软件构造的一般进程


一、软件开发生命周期(SDLC)

planning→analysis→design→implementation→testing&integration→maintenance→planning……

二、传统的软件发展模型

两种基本类型:线性过程、迭代过程

模型:瀑布过程、增量过程、V字模型、原型过程、螺旋模型

瀑布模型:线性推进,阶段划分清楚,整体推进,无迭代,管理简单,无法适应需求增加/变化

增量过程:线性推进,增量式(多个瀑布串行),无迭代,比较容易适应需求的增加

V字模型:作业观念→需求和架构→细节设计→实现→结合、测试、确认→系统确认和检验→使用和维护→第一步……

原型化:在原型上持续不断的迭代发现用户变化的需求;迭代:开发出来之后由用户试用/评审,发现问题反馈给开发者,开发者修改原有的实现,继续交给用户评审

螺旋型:多轮迭代基本遵循瀑布模型,每轮迭代有明确的目标,遵循原型过程,进行严格的风险分析,方可进入下一轮迭代

三、敏捷开发

敏捷开发:通过快速迭代和小规模的持续改进,以快速适应变化

敏捷=增量+迭代(每次迭代处理一个小规模增量)

极限的用户参与、极限的小步骤迭代。极限的确认/验证

四、软件配置管理和版本控制系统

软件配置管理:追踪和控制软件的变化

软件的任何组成部分都可能随着软件生命周期的时间而更新

软件配置项:软件中发生变化的基本单元

基线:软件持续变化过程中的稳定时刻(例:对外发布的版本

版本:为软件的任意特定时刻的形态指派一个唯一的编号,作为身份标识

版本控制术语:仓库、工作拷贝、版本、变化、HEAD

集中式版本控制系统:仓库存储于独立的服务器,支持多开发者之间的协作

分布式版本控制系统:仓库存储于独立的服务器+每个开发者的本地机器

五、Git

六、软件构造的一般进程

编码→构建→代码评审→性能分析→测试→调试→重构

1、编码:编程语言、编程工具(集成开发环境)、建模语言、配置语言、构建语言

2、代码评审:结对编程、走查、正式评审会议、自动化评审

3、性能分析:

动态分析:要执行程序并观察现象、收集数据、分析不足

对代码的运行时的状态和性能进行度量,发现代码中的潜在问题

4、测试&调试:

测试:发现程序是否有错误;调试:定位错误、发现错误根源

5、重构:在不改变功能的前提下优化代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值