首页 > 其他 > 详细

软件构造 第二章 第一节 软件生命周期和版本控制

时间:2018-06-22 17:13:03      阅读:284      评论:0      收藏:0      [点我收藏+]

软件构造第二章 第一节 软件生命周期和版本控制

 

基本内容

Software Development Lifecycle (SDLC)

Traditional software process models (waterfall, incremental, V-

model, prototyping, spiral)

Agile development and eXtreme Programming (XP)

Collaborative software development

Software Configuration Management (SCM)

Git as a SCM tool

 

1.软件生命周期SDLC:

From 0 to 1 从无到有

From 1 to n 从有到好

 

2.传统软件过程模型:

线性和迭代(迭代大体上就是线性上增加反馈)

 

Waterfall (Linear, non-iterative) 瀑布过程

技术分享图片

Incremental (non-iterative) 增量过程

  • 运用分治的思想,将需求分段,成为一系列增量产品,每个增量内部仍使用瀑布模型;
  • 增量模型是瀑布模型的变形,拥有后者的全部优点,此外可以很快的迭代出第一版本;

技术分享图片

V-Model (for verification and validation) V字模型

  • 强调测试与继承,对代码、分析文档进行质量保证

 

技术分享图片

Prototyping (iterative) 原型过程

技术分享图片

Spiral (iterative) 螺旋模型

技术分享图片

 

 

配置管理和版本控制

Software Configuration Management (SCM) 软件配置管理

Version Control System (VCS)

 

Software Configuration Item (SCI): the fundamental structural

unit of SCM. 软件配置项:软件中发生变化的基本单元(例如:文件)

 

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

 

CMDB:配置管理数据库

 

Local VCS

本地版本控制系统:

仓库存储于开发者本地机器,无法共享和协作

Centralized VCS

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

Distributed VCS

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

 

 

以github为例,git仓库包含三部分:

.git directory (a repository storing all version control data) 本地的CMDB

Working directory (local file system) 工作目录:本地文件系统

Staging area (in memory) 暂存区:隔离工作目录和Git仓库

技术分享图片

 

Object Graph :版本之间的演化关系图,一条边A->B 表征了"在版本A的基础上作出变化,形成了版本的基础上作出变化,形成了版本B,如下图

技术分享图片

 

分支代码

-git(创建) branch(切换) -b(branch) iss53

-git merge hitfix(合并)

-是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;

-git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。

本地库和远程库

-clone:将整个库完整的复制

-fetch:将某一分支复制下来

-push:将分支推送到服务器上

-pull:将某一分支复制下来并合并在当前分支上

软件构造 第二章 第一节 软件生命周期和版本控制

原文:https://www.cnblogs.com/masteryellow/p/9214192.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!