软件体系结构与架构技术课件.ppt

软件体系结构与架构技术课件.ppt

ID:57050650

大小:694.00 KB

页数:18页

时间:2020-07-28

软件体系结构与架构技术课件.ppt_第1页
软件体系结构与架构技术课件.ppt_第2页
软件体系结构与架构技术课件.ppt_第3页
软件体系结构与架构技术课件.ppt_第4页
软件体系结构与架构技术课件.ppt_第5页
资源描述:

《软件体系结构与架构技术课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2.2架构是系统关键质量属性的描述2.2.1为什么要确定架构的关键质量目标人之所以痛苦,很多时候是因为追求错误东西。架构设计之初,要是制定了错误的质量属性目标(包括遗漏重要的质量属性),将面临的痛苦可能是客户不满、项目返工、同事抱怨……2.2.1为什么要确定架构的关键质量目标确定关键质量着重完成如下两项任务:根据系统所在领域的特点及系统的规模等因素,确定架构设计重点支持那些质量属性(例如重点支持高性能、可扩展性)。分析上述质量之间的约束关系,第一时间指定权衡折中的具体策略(例如明确高性能是第一位的,可扩展性与高性能相矛盾时应

2、照顾高性能要求)2.2.2软件系统的关键质量属性需求功能需求是描述一个产品或项目该做什么,该提供什么功能除此之外……2.2.2软件系统的关键质量属性需求用质量属性的选择帮助确定项目的需求范围利用质量标准的互相对立和制约因素来决定开发工作的侧重点和优先权对客户重要的质量标志对开发者重要的质量标志可靠性效率性灵活性完整性兼容性可维护性多用转换性稳定性重复使用性健全性可测性可用性可靠性(Availability)++效率性(Efficiency)--------灵活性(Flexibility)--++++完整性(Integrity

3、)-----兼容性(Interoperability)-+-+可维护性(Maintainability)+-+++多用转换性(Portability)-++-++-稳定性(Reliability)+-+++++重复使用性(Reusability)-+-+++-+健全性(Robustness)+-++可测性(Testability)+-++++可用性(Usability)-+-影响构架的关键需求影响构架的关键需求软件构架师所考虑的设计需求与系统设计本身直接有关的设计需求:概念完整性理解正确性设计完备性可构建性高质量软件系统设计

4、的质量需求:用户需求目标的适应性可维护性、可移植性、可测试性、可追踪性、正确性、健壮性(鲁棒性)、软件构架的质量要素运行期质量要素:功能性能安全性易用性持续可用性可伸缩性互操作性可靠性健壮性开发期质量要素:易理解性可扩展性可重用性可修改性可移植性可集成性可测试性最终系统设计方案用户功能需求用户性能需求用户质量需求系统模式应用要求构件框架复用要求产品体系结构要求决定软件构架的关键需求1985年,国际标准化组织(ISO)建议,软件质量度量模型由三层组成。高层称软件质量需求评价准则(SQRC),中层称软件质量设计评价准则(SQDC

5、),低层称软件质量度量评价准则(SQMC)。分别对应McCall等人的要素、评价准则和度量。ISO认为应对高层和中层建立国际标准,以便在国际范围内推广应用软件质量管理,而低层可由各使用单位自行制定。ISO高层由8个要素组成、中层由23个评价准则组成。高层的8个要素为左表的行,中层的23个准则为下表的列。它们之间的关系如左表所示。软件质量设计评价准则(SQDC)软件质量需求评价准则(SQRC)系统设计非功能质量需求的例子银行信用卡客户服务系统:可扩展性当前系统支持的信用卡信息发送方式:打印并邮寄、传真Email可预见未来应支持

6、的信用卡信息发送方式:手机短信PDA消息当前系统支持的信用卡信息发送内容:信用卡对帐单信用卡透支催收单可预见未来应支持的信用卡信息发送内容:新业务宣传信息促销活动信息功能性:系统完成所期望工作的能力实现功能的方法没有内部模块/部件的职责划分,没有配合与协作,也可以实现系统功能,但是……具有良好系统构架设计的系统必须……如果既要实现功能,又具有良好的构架设计,满足关键需求,则系统设计将:仔细地划分模块的功能设计良好的模块间连接与关联关系2.2.3关键质量属性需求与系统功能的正交性易用性:架构设计无关:界面表示直观、操作简便架构

7、设计有关:是否允许取消、撤销操作是否可重用以前输入的数据是否有多层次的输入支持和帮助系统性能:架构设计无关:算法的好坏架构设计有关:组件之间通信的瓶颈制约分配给组件的功能的合理性组件完成功能所需要的共享资源的情况2.2.3关键质量属性需求与系统功能的正交性可修改性架构设计无关:可读性好的注释和编码规范架构设计有关:逻辑独立接口简单变更涉及面小且清晰回归测试的范围容易控制2.2.3关键质量属性需求与系统功能的正交性好的软件构架的特征灵活、具有可伸缩性考虑全面并可扩展思路简单明了、直接可以理解结构划分和关系定义清楚模块职责明确和

8、分布合理效益和技术综合平衡为什么许多大型软件应用系统推出不久,就面临需要重新设计(美其名曰:架构重组)?往往不是系统不能用(不是功能性问题)而是系统性能问题:系统业务处理逻辑缺乏灵活性维护困难功能无法扩展运行速度太慢稳定性差、甚至经常宕机以上都表现为非功能性需求差劲的软件构架的特征2.2.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。