- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Software Architecture Perspective on an Emerging Discipline 王备战 wangbz@xmu.edu.cn M) 0592-2580589(O) 海韵园行政楼A座506 目前,软件工程的实践与传统的工程实践相距较远。 在某个领域明确地提出结构问题,特别是高层结构问题,表明该领域的发展正走向成熟。 软件体系结构的提出,表明软件工程走向了新的发展阶段,将促使软件工程化设计在高层次上的发展和成熟。 Chapter Two 软件体系结构的研究与发展 Chapter Two 软件体系结构的研究与发展 Contents: §2.1 软件工程设计和软件体系结构 §2.2 什么是软件体系结构 §2.3 软件体系结构的意义和目标 §2.4 软件体系结构的研究范畴 Chapter Two 软件体系结构的研究与发展 §2.1 软件工程设计和软件体系结构 软件设计的目标 便于维护和升级,因而应该是模块化的 设计应该是便于移植的(移植比重新设计花费要小的多) 设计应该具有适用性 设计过程应该收到理性的控制 Intellectual Control 设计应该表现出概念的完整性 Conceptual Integrity 内在结构 外在表现 Chapter Two 软件体系结构的研究与发展 §2.1 软件工程设计和软件体系结构 软件设计中出现的问题 设计对于需求的变化缺乏配合 过程控制对于维持设计的正确性缺乏保障 软件产品通常缺乏概念完整性 Chapter Two 软件体系结构的研究与发展 §2.1 软件工程设计和软件体系结构 针对问题提出的软件设计思想 强调信息隐藏的单元概念 把系统的行为看作是具有关联关系的部件间的行为作用 应用基于操作和数据封装构成的单元设计技术实现系统可组装性 应用专门的机制可靠地处理并发控制和分布系统问题 降低这类系统设计实施的复杂度 提出基于模型的系统结构和设计方法 模式、框架、体系结构风格等 明确提出软件体系结构的设计思想 关乎复杂系统设计成败和代价的关键设计步骤 Chapter Two 软件体系结构的研究与发展 §2.2 什么是软件体系结构 Vasa战舰的故事 瑞典和波兰 70M 、300人、双层64炮、150人 系统需求来自于企业、架构来自于系统需求,系统来自于架构 ABC(构架商业周期,Architecture Business Cycle) 软件架构是技术、商业和社会诸多因素作用的结构,而软件架构的存在反过来又会影响技术、商业和社会环境。 需求-目标;架构-需求;系统-架构 Chapter Two 软件体系结构的研究与发展 §2.2 什么是软件体系结构 软件体系结构的定义 SEI分类整理 现代定义 Bass,Clements,Kagman(2003) 一个程序或计算系统的软件体系结构是一种结构,或者一种系统结构,它由软件元素,这些元素的外在可见性质以及元素之间的关系组成。 ANSI/IEEE标准1471-2000对大规模软件系统体系结构描述的建议 软件体系结构被定义为系统的基本组织结构,包括构件、构件之间的关系、环境以及管理系统设计和演化的原则。 Chapter Two 软件体系结构的研究与发展 §2.2 什么是软件体系结构 软件体系结构的定义 SEI分类整理 传统的定义 Mary Shaw和David Garlan(1993) 软件体系结构是设计过程的一个层次,它处理那些超越算法和数据结构的设计,研究整体结构设计和描述方法。 ...beyond the algorithms and data structures of the computation; designing and specifying the overall system structure emerges as a new kind of problem. Structural issues include gross organization and global control structure; protocols for communication, synchronization, and data access; assignment of functionality to design elements;physical distribution;composition of design elements; scaling and performance an
原创力文档


文档评论(0)