【软件构造】软件构造基础——一、软件构造的多维视图和质量目标

软件构造基础

一、软件构造的多维视图和质量目标

课程目标

  • 从三个维度理解软件系统的构成(对象是什么)
  • 了解使用什么模型描述软件系统的形态和状态(如何刻画)
  • 将软件构造看作不同视图之间的转换(如何构造)
  • 了解软件构造过程中应考虑的质量因素
  • 了解如果达不到质量目标的结果
  • 了解本课程将研究哪些面向质量指标的软件构造技术
    清楚要构造的结果是什么,如何才算好

1、多维软件视图

 -按阶段:构造阶段(build-time)/运行阶段(run-time)视图
 -按动态性:时刻(moment)/时期(period)视图
 -按对象的层次:代码(code-level)/构件(component-level)视图

Build-time (构造阶段)

idea ➡ requirement ➡ design ➡ code ➡ installable / executable package
  Code-level view:代码的逻辑组织(函数、类、方法、接口)
  Component-level view:代码的物理组织(文件、目录、包、程序库)
  Moment view:特定时刻的软件形态
  Period view:软件形态随时间的变化

  1. Build-time, moment, and code-level view
     源代码在逻辑上是如何组织的,包括三个层面:
     词汇层面:面向词法的源代码
     语法层面:面向语法的程序结构,例如抽象语法树(AST)
     语义层面:面向语义的程序结构,如类图
  2. Build-time, period, and code-level view
     描述代码随时间的变化
  3. Build-time, moment, and component-level view
      源代码如何组织成文件,文件被封装到包(packages)中,逻辑上进入组件(components)和子系统(sub-systems),可重用模块以库(library)的形式出现。
      将库集成到可执行程序中的两种不同方法:Static linking (静态链接),Dynamic linking (动态链接)。
      静态链接发生在构造阶段,库被拷贝进入代码形成整体,执行的时候无需提供库文件。
  4. Build-time, period, and component-level view
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值