软件体系结构体系选择矩阵法Matrix©liqianmu@126.com22020/1/29目前软件设计方法的主要缺点©liqianmu@126.com32020/1/29“经验决定一切”带来的问题经验很重要,没有不行;经验的随意性很大,很难科学地评价各种经验的正确性;没经过高度概括和总结的经验需要后来者花费很长的时间和精力才能继承,甚至可能失传;经验经常限制开拓。©liqianmu@126.com42020/1/29“体系选择矩阵法”的目标让选择体系结构的过程变得简单!让选择体系结构的方法变得易学!让每一个程序员都能轻松驾驭体系结构!©liqianmu@126.com52020/1/29“体系选择矩阵法”的基本思想预先评估各种体系结构风格对质量需求的表现,并为它们评分。分数最高的体系结构风格获得录用。©liqianmu@126.com62020/1/29软件体系结构影响质量的两种方式结构因为组件之间的关联,影响的质量比如:重用、适应性实现采用不同的实现方法影响的质量比如:安全、兼容性©liqianmu@126.com72020/1/29受体系结构影响的质量需求性能容错适应性重用集成性计算性能节省空间组件更换组件移位组件无关组件互通接口变换©liqianmu@126.com82020/1/29各种体系风格对质量需求的影响534151555对等153153555客户—服务器254143555仓库112454153层次544125555事件驱动154151555面向对象155153532子程序114245555管道容错节省空间计算性能接口变换组件互通组件无关组件移位组件更换组件重用©liqianmu@126.com92020/1/29编译器对体系结构质量的期望值期望值的取值范围是0-4,表示对某项体系需求的关心程度。组件重用:4组件更换:4组件移位:0组件无关:0组件互通:2接口变换:4计算性能:1节省空间:0容错:0©liqianmu@126.com102020/1/29用期望值看体系结构风格的表现组件重用组件更换组件移位组件无关组件互通接口变换计算性能节省空间容错期望值440024100管道555542411结构化231151551面向对象553141441事件驱动555521555层次351124331仓库555341552客户—服务器555321351对等555151535×=20=20=0=0=8=8=4=0=0=+60©liqianmu@126.com112020/1/29用期望值看体系结构风格的表现组件重用组件更换组件移位组件无关组件互通接口变换计算性能节省空间容错期望值440024100管道555542411结构化235351551面向对象555151451事件驱动555521445层次351454211仓库555341452客户—服务器555351351对等555151435ABC=A×BT©liqianmu@126.com122020/1/29体系选择矩阵法组件重用组件更换组件移位组件无关组件互通接口变换计算性能节省空间容错期望值440024100管道555542411结构化235351551面向对象555151451事件驱动555521445层次351454211仓库555341452客户—服务器555351351对等555151435ABC=A×BT©liqianmu@126.com132020/1/29对编译器采用体系选择矩阵法4555542411604235351551390555151451580555521445522351454211604555341452561555351351570555151435580对等风格客户—服务器仓库风格层次风格事件驱动风格面向对象风格结构化风格管道风格©liqianmu@126.com142020/1/29对编译器采用体系选择矩阵法组件重用组件更换组件移位组件无关组件互通接口变换计算性能节省空间容错期望值440024100管道555542411结构化235351551面向对象555151451事件驱动555521445层次351454211仓库555341452客户—服务器555351351对等555151435©liqianmu@126.com152020/1/29对编译器采用体系选择矩阵法最后决定的体系结构的体系分为选择分:63在接口变换方面多加小心组件重用组件更换组件移位组件无关组件互通接口变换计算性能节省空间容错期望值440024100管道555542411层次351454211最后选择551434111©liqianmu@126.com162020/1/29完美分44005555555557524100完美地支持各种质量需求的最理想的体系结构完美分当前需求©liqianmu@126.com172020/1/29结果评价等级=选择分/完美分*100编译器等级=63/75*100=84©liqianmu@126.com182020/1/29“体系选择矩阵法”的优点支持体系结构风格的混合;使选择体系结构的过程变得科学;便于学习,易于掌握;评价各种体系结构风格,提示开发中将遇到的问题;对寻找新的体系结构有引导作用;适合用CASE工具实现。©liqianmu@126.com192020/1/29“体系选择矩阵法”的缺点一定程度上限制了创新;很多问题还有待进一步细化;没有理论证明;缺少大量的实践考验。