欢迎来到天天文库
浏览记录
ID:45360314
大小:2.93 MB
页数:154页
时间:2019-11-12
《SE08第8讲进行体系结构设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、进行体系结构设计需要回答以下几个问题为什么要进行体系结构设计?体系结构是什么?它有哪些研究领域?如何进行体系结构设计?©CopyrightFujianNormalUniversity1进行体系结构设计教材只给出了部分回答需要对教材内容作适度补充推荐阅读《软件体系结构(世界著名计算机教材精选)》,刘振东等译,清华大学出版社,2007.03《设计模式—可复用面向对象软件的基础》,李英军等译,机械工业出版社,2005.06《企业应用架构模式》,王怀民等译,机械工业出版社,2004.07《Microsoft.NET企业级应用架构设计》,陈黎夫译,人民邮电出版社,2010.06《ExpertOne
2、-on-OneJ2EEDevelopmentwithoutEJB中文版》,JavaEye,电子工业出版社,2005.09©CopyrightFujianNormalUniversity2进行体系结构设计体系结构综述体系结构风格特定领域体系结构体系结构框架体系结构设计映射数据流到软件体系结构小结©CopyrightFujianNormalUniversity31体系结构综述体系结构背景体系结构定义体系结构研究领域©CopyrightFujianNormalUniversity41.1体系结构背景随着软件系统规模越来越大、越来越复杂,整个系统的结构和规格说明显得越来越重要。最早指出体系结构重
3、要性的是大师EdsgerDijkstra(1930-2002)“..thelargertheproject,themoreessentialthestructuring!”(1968)©CopyrightFujianNormalUniversity51.1体系结构背景对于大规模的复杂软件系统来说,对总体的系统结构设计和规格说明要比算法和数据结构的选择重要得多。体系结构是早期设计决策的体现体系结构明确了对系统实现的约束条件体系结构制约着系统的质量属性通过研究体系结构可以预测软件的质量体系结构可以提高软件生产率…….©CopyrightFujianNormalUniversity61.1体
4、系结构背景体系结构虽脱胎于软件工程,但其形成同时借鉴了计算机体系结构和网络体系结构中很多宝贵的思想和方法。近年来,体系结构研究独立于软件工程的研究,成为计算机科学的一个新的研究方向和独立学科分支。对体系结构的系统、深入的研究将会成为提高软件生产率和解决软件维护问题,提供新的、最有希望的途径。©CopyrightFujianNormalUniversity71.2体系结构定义目前学术界和工业界对于体系结构的定义尚未形成统一意见,以下介绍几种具有代表性的定义。Booch&Rumbaugh&Jacobson定义Bass定义Garlan&Shaw定义Soni&Nord&HofmeisterIEE
5、E的定义…….10多种©CopyrightFujianNormalUniversity81.2体系结构定义Booch&Rumbaugh&Jacobson定义体系结构={组织,元素,子系统,风格}体系结构是一系列重要决策的集合,这些决策与以下内容相关:软件元素:构成系统的结构元素及其接口。软件的组织:软件元素的选择,以及它们在协作中明确表现出的行为。子系统:软件元素在结构和行为上组合成更大规模的软件元素。体系结构风格:用于引导软件元素的组合。©CopyrightFujianNormalUniversity91.2体系结构定义Bass定义(教材采用的定义)Bass等人在《SoftwareAr
6、chitectureinPractice》一书中提到,程序或计算系统的体系结构是系统的一个或多个结构,其包括软件构件构件的外部可视属性构件之间的关系©CopyrightFujianNormalUniversity101.2体系结构定义Garlan&Shaw定义体系结构={构件,连接件,约束}构件:一组代码,如程序的模块、独立的程序或数据库服务器等。连接件:过程调用、管道、远程过程调用等,用于表示构件之间的相互作用。约束:指明构件连接的势态和条件。例如,上层构件可要求下层构件的服务,反之则不允许。©CopyrightFujianNormalUniversity111.2体系结构定义Soni
7、&Nord&Hofmeister定义西门子研究院的Soni等人认为体系结构有4个不同的具体形态,每种形态都从不同的角度来描述系统。概念体系结构:用于描述设计元素和及其相互关系。模块互连体系结构:包含功能分解和分层两个正交的结构。执行体系结构:用于描述系统的动态结构。代码体系结构:用于描述源程序、二进制代码和函数库的组织方式。©CopyrightFujianNormalUniversity121.2体系结构定义IEEE的定义体系结构=
此文档下载收益归作者所有