软件构造复习(1)

                                                       Chapter 1: Views and Quality Objectives of Software Construction

1.软件的多维视图

1.1Multi-dimensional software view

 

 

Build-time:关注软件的构造阶段。Code-level:这一维度关注代码的逻辑组织,也就是源代码是如何被方法、函数、类和接口等底层模块组织起来的,以及其中代码之间的依关系。

Component-level:这一维度关注代码的物理组织,即代码块之间的关系,如文件、包等等。

Moment view:关注特定时刻的软件状态。

Period view:关注软件形态随时间的变化。
举几个例子:

(1)Build-time, period, and code-level view

  例:Code Churn  :关注代码在构建期间的变化,比如代码行的添加,对文件的调整或删除。

(2)uild-time, period, and component-level view

例:Configuration Item,Version

关注软件版本的更新。

这里还介绍了一个版本记录工具:Version Control System(VCS)

Run-time:关注代码的运行阶段。

Code-level view(代码层面):逻辑实体在内存中如何呈现?

Component-level view(构件层面):物理实体在物理硬件环境中如何呈现?

(3)Run-time, moment, and component-level view

例:Package,Library,Dynamic linking,Configuration,Database,Middleware,Network

 

1.2 Quality Objectives of Software Construction

1.软件系统的质量

外部质量因素影响用户,内部质量因素影响软件本身和它的开发者,外部质量取决于内部质量。

外部质量因素

(1)External1:Correctness(正确性)(最重要)

(2)External 2: Robustness(健壮性)

(3)External 3: Extendibility(可扩展性)

(4)External 4: Reusability(可复用性)

(5)External 5: Compatibility(兼容性)

(6)External 6: Efficiency(效率)

(7)External 7: Portability (可移植性)

(8)External 8: Ease of use(易用性)

(9)External 9: Functionality(功能性)

(10)External 10++: Other qualitiesVerifiability (可验证性)、Repairability (可修复性)等

内部质量因素

Readability             Understandability                      Clearness                Size

多因素的折中

注意:正确性不能折中处理

 

五个重要的质量指标
(1)Elegant and beautiful code:即容易理解的程序。

(2)Design for/with reuse:提高可复用性,开发成本低。

(3)Low complexity:易于修改扩展。

(4)Robustness and correctness:保证程序健壮性和正确性。

(5)Performance and efficiency:执行效率高。

 

 

 

 

posted @   kep1er-mashiro  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示