软件构造课程笔记(1)——第一章总结

目录

 

第一章

1.1软件构造中的多维视图

参考资料

从三个维度看软件系统的构成

 

将“软件构造”看作“不同视图之间的转换”

1.2软件构造的质量目标

外部质量因素

内部质量因素

质量因素间的Tradeoff(折中)

软件构造中5个重要的质量目标


第一章

1.1软件构造中的多维视图

参考资料

MIT 6.031: Getting started,readings 02

CMU 17-214:Aug 29

代码大全:第1-4章

从三个维度看软件系统的构成

由软件的不同质量目标,我们分了三个维度来理解软件系统的构成

  

 

将“软件构造”看作“不同视图之间的转换”

虽然分了这三个维度来看软件,但由于最终看的还是同一个软件,因此这三个维度之间一定存在着相关性。

1.2软件构造的质量目标

软件构造后续课程均通过这些质量因素展开

外部质量因素

E1:Correctness(正确性)

首要质量

标准:符合软件规格说明书里的要求

假定一个软件系统是分层开发的,每层都要确保自己是正确的,同时假定其调用的低层也是正确的

保证正确性:测试

OOP:封装、分权制

E2:Robustness(鲁棒性/健壮性)

即软件系统对异常情况(规格说明书范围以外的而非客观的正确标准)作出适当反应的能力

OOP:封装、异常处理

E3:Extendibility(易扩展性)

即软件调整以适应变化的能力

原则1:体系结构简单

原则2:模块自治性强,即离散化

OOP:封装、信息隐藏

E4:Resuability(复用性)

OOP:模块性、组件、模型、模式

E5:Compatibility(兼容性)

难点:不同的软件有不同的设定/规定

方法:文件格式标准化;数据结构标准化;用户界面标准化;存储协议标准化

关键:设计的一致性,即标准化

OOP:标准化的模块和界面

E6:Efficiency(效率)

即软件系统对硬件资源尽可能少的需求的能力

OOP:可复用的组件

E7:Portability(可移植性)

OOP:信息隐藏、抽象

E8:Ease of use(易用性)

用户可以轻松掌握软件的使用,也包括安装、运行和监控的容易度

关键:结构简洁

理解用户

OOP:GUI组件、框架

E9:Functionality(功能性)

功能多不代表软件竞争性更强,功能更多可能会破坏一致性

在质量提升技术的帮助下,可以在整个项目中保持质量水平不变,而不仅仅是功能性

OOP:可扩展性

E10:Timeliness(时效性)

在用户需要时或之前,软件系统能被发布的能力

OOP:建模、复用

E10++:Other qualities

Verifiability(可验证性):是否易于验证

Integrity(完整性):软件系统保护其各种组件(程序和数据)免受未经授权的访问和修改的能力

Repairability(可修复性)

Economy(经济性):同时效性相伴,是系统能够按照其分配的预算或低于预算完成的能力;OOP:复用

内部质量因素

内部质量因素通常作为外部质量因素的部分度量

与源码相关:

代码行数(LOC)

圈复杂度:用来衡量一个模块判定结构的复杂程度

与结构相关:(设计中追求高内聚和低耦合)

耦合度:模块和模块之间的交互

内聚度:模块本身具有的独立性

可读性、可理解性和清楚的程度

复杂度

大小

质量因素间的Tradeoff(折中)

正确性一定是首要的

所有上述讨论的质量都是重要的

四个突出的质量因素:

正确性和健壮性:可靠

1、更系统化的软件构造

2、更正式的规格

3、贯穿于软件构造过程的内建检查机制(不仅仅是事后测试和除错)

4、更好的语言机制,如静态类型、断言、自动内存管理和科学的异常处理

5、统一的检查工具

易扩展性和复用性:模块性

软件构造中5个重要的质量目标

1、代码的容易理解

2、设计复用,便宜开发

3、低复杂性,易于扩展

4、健壮性和正确性,保证尽量少的bug

5、效率

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
城市应急指挥系统是智慧城市建设的重要组成部分,旨在提高城市对突发事件的预防和处置能力。系统背景源于自然灾害和事故灾难频发,如汶川地震和日本大地震等,这些事件造成了巨大的人员伤亡和财产损失。随着城市化进程的加快,应急信息化建设面临信息资源分散、管理标准不统一等问题,需要通过统筹管理和技术创新来解决。 系统的设计思路是通过先进的技术手段,如物联网、射频识别、卫星定位等,构建一个具有强大信息感知和通信能力的网络和平台。这将促进不同部门和层次之间的信息共享、交流和整合,提高城市资源的利用效率,满足城市对各种信息的获取和使用需求。在“十二五”期间,应急信息化工作将依托这些技术,实现动态监控、风险管理、预警以及统一指挥调度。 应急指挥系统的建设目标是实现快速有效的应对各种突发事件,保障人民生命财产安全,减少社会危害和经济损失。系统将包括预测预警、模拟演练、辅助决策、态势分析等功能,以及应急值守、预案管理、GIS应用等基本应用。此外,还包括支撑平台的建设,如接警中心、视频会议、统一通信等基础设施。 系统的实施将涉及到应急网络建设、应急指挥、视频监控、卫星通信等多个方面。通过高度集成的系统,建立统一的信息接收和处理平台,实现多渠道接入和融合指挥调度。此外,还包括应急指挥中心基础平台建设、固定和移动应急指挥通信系统建设,以及应急队伍建设,确保能够迅速响应并有效处置各类突发事件。 项目的意义在于,它不仅是提升灾害监测预报水平和预警能力的重要科技支撑,也是实现预防和减轻重大灾害和事故损失的关键。通过实施城市应急指挥系统,可以加强社会管理和公共服务,构建和谐社会,为打造平安城市提供坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值