网站大量收购闲置独家精品文档,联系QQ:2885784924

4+1模型案例4451_原创精品文档.pdfVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

长风破浪会有时,直挂云帆济沧海。——李白

4+1模型案例

长风破浪会有时,直挂云帆济沧海。——李白

案例教学1:4+1视图方法进行软件体系结构设计

要开发出用户满意的软件并不是件容易的事,软件体系结构师必须全面把握各种各样的需

求、权衡需求之间有可能的矛盾之处,分门别类地将不同需求一一满足。本文从理解需求种类

的复杂性谈起,通过具体案例的分析,展示了如何通过RUP的4+1视图方法,针对不同需求进

行体系结构设计,从而确保重要的需求一一被满足。

1、呼唤体系结构设计的多重视图方法

灵感一闪,就想出了把大象放进冰箱的办法,这自然好。但希望每个体系结构设计策

略都依靠灵感是不现实的--我们需要系统方法的指导。

需要体系结构设计的多重视图方法,从根本上来说是因为需求种类的复杂性所致。以

工程领域的例子开道吧。比如设计一座跨江大桥:我们我们会考虑会考虑连接南北连接南北的的公路交公路交通通这个这个

功功能需求能需求,从而初步设计出理想化的桥墩支撑的公路桥方案;然后还要考虑造桥要面临

的的约束条约束条件件,这个,这个约束条约束条件可能是件可能是不能不能影响万吨轮影响万吨轮从从桥下桥下通过通过,于是细化设计方案,

规定桥墩规定桥墩的的高度和桥墩高度和桥墩之间的间之间的间距;另外还距;另外还要要顾及顾及大大桥桥的的使使用用期质量属期质量属性性,,比比如如为为了了

能能在湍急在湍急的的江流中江流中保保持稳固持稳固,可以把大桥桥墩深深地建在岩石层之上,和大地浑然一体;

其其实,实,建造期建造期间的间的质量属质量属性性也很值得考虑,比比如如在在大大桥桥的设计过的设计过程中考虑程中考虑施工施工方方便便性性

的一些措施。

长风破浪会有时,直挂云帆济沧海。——李白

长风破浪会有时,直挂云帆济沧海。——李白

长风破浪会有时,直挂云帆济沧海。——李白

从上面的例子中我们还惊讶地发现,非功能需求--人们最经常忽视的一大类需求--包括的内

容非常宽、并且极其重要。非功能需求又可以分为如下三类:

*约束。要开发出用户满意的软件并不是件容易的事,而全面理解要设计的软件系统所面临

的约束可以使你向成功迈进一步。约束性需求既包括企业级的商业考虑(例如的约束可以使你向成功迈进一步。约束性需求既包括企业级的商业考虑(例如项目预算有限项目预算有限

),也包括最终用户级的实际情况(例如),也包括最终用户级的实际情况(例如用户的平均电脑操作水平偏低用户的平均电脑操作水平偏低);既可能包括具

体技术的明确要求(例如体技术的明确要求(例如要求能在Linux上运行上运行),又可能需要考虑开发团队的真实状况

(例如(例如开发人开发人员员分分散散在不在不同同地地点点)。这些约束性需求当然对体系结构设计影响很大,比如

受到受到项目预算有限项目预算有限的限制,体系结构师就不应选择昂贵的技术或中间件等,而考虑到开发

人人员员分分散散在不在不同同地地点点,就更应注重软件模块职责划分的合理性、松耦合性等等。

*运行期质量属性。这类需求主要指软件系统在运行期间表现出的质量水平。运行期质量属

性非常关键,因为它们直接影响着客户对软件系统的满意度,大多数客户也不会接受运行期

质量属性拙劣的软件系统。常见的运行期质量属性包括软件系统的易用性、性能、可伸缩性、

持续可用性、鲁棒性、安全性等。在我们的超市系统的案例中,用户对高性能提出了具体要

求(真正的性能需求应该量化,我们的表1没体现),他们不能容忍金额合计超过2秒的延

时。

*开发期质量属性。这类非功能需求中的某些项人们倒是念念不忘,可惜很多人并没有意识

到到开发开发期质量属期质量属性性和和运行运行期质量属期质量属性性对体系结构设计的影响到底有何不同。开发期质量

长风破浪会有时,直挂云帆济沧海。——李白

属性是开发人员最为关心的,要达到怎样的目标应根据项目的具体情况而定,而过度设计

(overengineering)会花费额外的代价。

3、什么是软件体系结构视图

那么

文档评论(0)

131****4772 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档