【软件构造】评价和管理软件的方法(第1、3讲)

第一章 软件视图与质量指标

1.1 软件的三个维度

  • 时段 Phases: M/P - Moment/Period
  • 状态 Dynamics: B/R - Build/Run Time
  • 层次 Levels: D/C - Code/Component Level

1.2 软件的八个视图

MP
DCDC
BMBDMBCPBDPBC
RMRDMRCPRDPRC
  • MBD - 代码的逻辑组织:源代码(AST抽象语法树)、类视图(Interface-Class-Attribute Method)
  • MRD - 内存、数据、执行时的代码快照图(单双圆圈箭头)
  • MBC - 代码的物理组织:包、文件、静态链接、库、测试用例、Makefile、组件视图(UML)
  • PBD - 代码变化行(Code Churn)
  • PRD - 内存栈轨迹、线程
  • PBC - 版本、配置项(文件、SCI)
  • MRC - 运行时的类组件产生依赖图
  • PRC - 系统事件日志

1.3 软件质量指标

  • 外部指标
    正确性:不容折中的,最重要的。
    健壮性:正确性的补充。
    可扩展性可复用性、兼容性、设计的同构性、效率、可移植性、易用性、功能性、及时性、可验证性、完整性、可修复性、经济性
  • 内部指标
    代码行数(LoC)、复杂度、易读性、易懂性、清晰性、大小

第三章 软件配置与版本管理

3.1 软件配置管理

追踪和控制软件的变化。
SCI 软件配置项:变化的基本单元——文件。
BL 基线:变化的稳定时刻——如某一个版本。
CMDB:配置管理数据库——Git仓库。
VCS:版本控制系统——Git。
VCS的分类:本地、中心化、分布式。

3.2 Git

Git是一种分布式的软件配置/版本管理系统,分为本地工作区、本地暂存区、本地仓库和远程仓库。

仓库管理

Git的常用操作

git remote add <remoteName\> <link\>
git push <remoteName\> <branchName\>
分支管理
git checkout (-b \<branchName\> 从当前HEAD创建分支,并切换)(\<branchName\> 切换到分支)
git branch (-d \<branchName\> 删除分支)(<branchName\> 从当前HEAD创建分支)(-v 查看所有分支信息)
git merge (<name\> 将该分支合并到HEAD中)

更多Git命令可以查阅:
https://blog.youkuaiyun.com/weixin_67585820/article/details/123554416
https://blog.youkuaiyun.com/dengsilinming/article/details/8000622
存储原理

Git存储发生变化的文件,若某个文件没有变化,那新的commit可能还是指向上一个文件。
commit的结构

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值