《软件构造》第1、2章复习摘要

总览:

《软件构造》第1、2章复习摘要_第1张图片

第一部分(讲义1-1)

    三个维度八个视图

        《软件构造》第1、2章复习摘要_第2张图片


第二部分(讲义1-2)

    外部质量指标:正确性、健壮性、可扩展性、可复用性、兼容性、性能、可移植性、易用性、功能、及时性、其它(可验证性、完整性、可修复性、经济性)。

    内部质量指标:Lines of Code(LOC)、耦合度、聚合度、可读性、可理解性、Clearness、Size。

    最重要的几个质量因素:正确性和健壮性:reliability;可扩展性和可复用性:modularity。

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

        Easy to understand(understandability)

        Cheap for develop(reusability)

        Ready for changes(extendibility/maintainability)

        Safe from bug(robustness/correctness)

        Efficient to run(efficiency/performance)

    具体见以下五图:

           《软件构造》第1、2章复习摘要_第3张图片

《软件构造》第1、2章复习摘要_第4张图片

《软件构造》第1、2章复习摘要_第5张图片

《软件构造》第1、2章复习摘要_第6张图片

《软件构造》第1、2章复习摘要_第7张图片


第三部分(讲义2-1)

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

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

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

    配置管理数据库(CMDB):仓库,存储软件的各配置项随时间发生变化的信息 + 基线

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

    版本控制系统(VCS):

    本地版本控制系统:仓库存储于开发者本地机器,无法共享和协作

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

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

    Git(SCM工具的一个例子):

    一个Git本地仓库由以下三部分组成:

        .git目录:本地的CMDB

        工作目录:本地文件系统

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

        《软件构造》第1、2章复习摘要_第8张图片

        《软件构造》第1、2章复习摘要_第9张图片

    《软件构造》第1、2章复习摘要_第10张图片

    Object Graph(如上图):版本之间的演化关系图,储存在.git目录中,一条边A->B表征了“在版本B的基础上作出变化,形成了版本A”。

    Managing changes in Git:

    《软件构造》第1、2章复习摘要_第11张图片

    Push:

    《软件构造》第1、2章复习摘要_第12张图片

    分支/合并(Branch/Merge):

    《软件构造》第1、2章复习摘要_第13张图片

    《软件构造》第1、2章复习摘要_第14张图片

    Git支持团队协作……

    GitHub:

    《软件构造》第1、2章复习摘要_第15张图片

你可能感兴趣的:(《软件构造》第1、2章复习摘要)