【软件构造】软件构造知识点总结—第一、二章

第一章

一、软件的多维视图:
按阶段分:build和run-time,构造和运行视图。
按动态性分:moment和period,时刻和阶段视图。
按构造对象的层次划分:code和component,代码和构建视图。

软件的质量:
1.外部因素:正确性最重要,健壮性与正确性互补。
2.内部因素:圈复杂度,高内聚,低耦合->可读性,复用性,便于维护。

二、测试

Test  Case测试用例

测试用例:输入+执行条件+期望结果

Coverage  of  Testing覆盖度

Integration  * 集成测试 (TDD)

Test-First  Programming测试优先的编程

Process:

1.先写spec

2.再写符合spec的测试用例

3.写代码、执行测试、有问题再改、再执行测试用例,直到通过它

Testing Driven  Development 测试驱动开发

Automated  Testing  and /Regression  Testing回归测试

Unit  Testing单元测试

对软件的最小单元模型开展测试,隔离各个模块,容易定位错误和调试。

Junit:
setUp()或@Before:准备测试,完成初始化;
tearDown()或@After:清理测试环境

Black-box  Testing黑盒测试

用于检查代码的功能,不关心内部实现细节

确保程序正确性/健壮性的最普遍的手段:测试

1 设计测试用例边界值分析

2 用JUnit写测试程序

3 自动化测试过程

等价类划分

基于等价类划分的测试:将被测函数的输入域划分为等价类,从等价类中导出测试用例。

针对每个输入数据需要满足的约束条件,划分等价类。

边界值分析方法:在等价类划分时,将边界作为等价类之一加入考虑

两种覆盖策略:

笛卡尔积:全覆盖。测试完备,但用例数量多,测试代价高。

覆盖每个取值:最少1次即可。测试用例少,代价低,但测试覆盖度未必高。

第二章:
一、软件生命周期与配置管理

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

基本单元:SCI(软件配置项),如源代码,文档等。SCI会随时间一起更新。

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

2.VCS(版本控制系统):

a.本地VCS。

b.集中式VCS(CVS,SVN等):仓库存储于独立的服务器,支持多开发者之间的协作。

c.分布式VCS(Git):仓库存储于独立的服务器+每个开发者的本地机器。

3.Git:

a.不发生变化的文件不反复存储,存储发生变化的文件(而非代码行)。

b.关于git指令:

git push,git pull向远程仓库提交或从远程仓库接收

git checkout -b m 创建并切换到分支m

git commit 向这个分支提交一个文件

git checkout master 切换回master

git merge m 将m分支和master合并

git branch -d m 删除m分支

4.软件构造的过程、系统和工具
IDE(集成开发环境):如eclipse
BULID工具Make, Ant, Maven, Gradle, Eclipse等

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值