2019春软件构造知识点总结 第1,2章

▪ 软件构造的多维度视图
在这里插入图片描述

▪ 软件构造的阶段划分、各阶段的构造活动
▪∅→代码

  • 编程/编码(第3章ADT / OOP)
  • 审查,静态分析/检查(第4章可理解性)
    ▪代码→组件
  • 设计(第3章ADT / OOP;第5章可重用性;第6章可维护性)
  • 构建:编译,静态链接,包,安装,清理(第2章构建过程)
    ▪构建时间→运行时间
  • 安装/部署(第3年的课程)
  • 调试,单元/集成测试(第7章健壮性)
    ▪时刻→长期
  • 重构(第9章重构)
  • 版本控制(第2章SCM)
  • 加载,动态链接,解释,执行(转储,分析,记录)(第8章性能)

▪ 内部/外部的质量指标
外部质量是用户能够感受到的,影响用户的使用。
Correctness(正确性)
Robustness(健壮性)
Extendibility(可扩展性)
Reusability(可重用性)
Compatibility(兼容性)
Efficiency(效率)
Portability (可移植性)
Ease of use(易于使用)
Functionality(功能性)
Timeliness(适时性)
Verifiability (可验证性)
Integrity (完整性)

内部质量影响使用代码的相关人员,影响软件本身和开发者。
Lines of Code(代码行数)
Cyclomatic Complexity (圈复杂度)
coupling(耦合度), cohesion(内聚度)
Readability, understandability and clearness(可读性,可理解性和清晰度)
Complexity(复杂度)
Size(大小)

内部质量因素通常用作外部质量因素的部分度量。
正确性放在首要地位

软件构建的五个关键质量目标

  • 易于理解:优雅和美观的代码/可理解性
  • 为变革做好准备:可维护性和适应性
  • 开发便宜:设计/重用:可重用性
  • 防止错误:稳健性
  • 高效运行:性能在这里插入图片描述
    ▪ 软件配置管理SCM与版本控制系统VCS
    SCM的任务是追踪与控制软件中的变化。

SCM实际任务是版本控制和建立基线。

配置项的生命周期(CI)
软件的任何组成部分(源代码,数据,文档,硬件,各种环境)可能会随着软件生命周期中的时间一起更新。

软件配置项是软件配置管理的基本单位,不需要再细分。任何需要管理的要素都时软件配置项(源代码、数据、文档、软硬件、环境等)

基线是在某时间点上,通过评审和认可后的版本,作为后续变化的基点。

CMDB(Configuration Management Database) 配置管理数据库

▪ Git/GitHub
Git存储库
▪Git存储库有三个部分:

  • .git目录(存储所有版本控制数据的存储库)
  • 工作目录(本地文件系统)
  • 临时区域(内存中)
    ▪每个文件属于以下三种状态之一:
  • 已修改(工作目录中的文件与git存储库中的文件不同,但不在暂存区域中)
  • 已暂存(文件已修改并已添加到临时区域)
  • 已提交(文件在工作目录和git目录中保持相同)

git不重复保存各版本中没有发生变化的文件
每个文件的每个版本只保存一次,多个提交可共享副本、
每个提交还包含日志数据 - 谁,何时,短日志消息等。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值