软件架构设计

软件架构设计

ID:40285177

大小:3.24 MB

页数:89页

时间:2019-07-30

软件架构设计_第1页
软件架构设计_第2页
软件架构设计_第3页
软件架构设计_第4页
软件架构设计_第5页
资源描述:

《软件架构设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、软件架构设计第五章内容概要教学目标掌握架构设计原则掌握架构、框架和设计模式的关系掌握架构设计要解决的问题掌握架构模式掌握J2EE应用架构设计掌握如何对分析类进行技术选型掌握如何通过架构原型验证非功能需求教学重点架构、框架和设计模式的关系架构设计要解决的问题架构模式J2EE应用架构设计如何对分析类进行技术选型教学难点架构模式J2EE应用架构设计对分析类进行技术选型设计模式是支撑架构的一种重要组件,这与建筑有很相象的地方,一个建筑物建立设计需要建筑架构设计,在具体施工中,有很多建筑方面的规则和模式。架构设计是骨架,设计模式就是肉6.1案例场

2、景执行系统分层设计创建包图创建构件创建部署图针对课程注册管理系统,执行如下任务:6.2架构设计原则课程注册管理系统的简化架构6.2架构设计原则一般情况下,架构设计需要遵循如下原则:尽量采用流行的架构设计模式;借鉴已有的、成功的架构设计;架构设计需要考虑功能性需求和非功能需求,寻求良好的折中;应用主流的框架技术。6.3架构、框架和设计模式的关系课程注册管理系统的简化架构6.3架构、框架和设计模式的关系(1)架构根据IEEE1471的定义,架构是在组件,彼此间和与环境间的关系,引导设计发展原则中体现的系统的基本结构。6.3架构、框架和设计模

3、式的关系(2)框架框架(Framework)是整个或者部分系统的可重用设计,表现为一组抽象构件及构建实例之间的交互方法;另一种定义认为,框架可被开发人员定制的应用骨架。前者从应用方面,而后者从目的方面给出定义。一个框架是一个可复用的设计构件,它规定了应用的体系结构,阐明了整个设计、协作构件之间的依赖关系、责任分配和控制流程,表现为一组抽象类以及其实例之间协作的方法,它为构件复用提供了上下文(Context)关系。因此构件库的大规模重用也需要框架。6.3架构、框架和设计模式的关系(2)框架采用框架技术进行软件开发的主要特点包括:领域内的软

4、件结构一致性好;建立更加开放的系统;重用代码大大增加,软件生产效率和质量也得到了提高;…6.3架构、框架和设计模式的关系(3)模式模式,即pattern。其实就是解决某一类问题的方法论。把解决某类问题的方法总结归纳到理论高度,那就是模式。Alexander给出的经典定义是:每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。通过这种方式,可以无数次地使用那些已有的解决方案,无需在重复相同的工作。6.3架构、框架和设计模式的关系(4)三者之间的关系软件架构通常可以采用框架创建,框架体现了一种成熟的软件架构。

5、而在框架中,可以使用架构模式,为软件搭建一个良好的架构。6.4架构设计要解决的问题架构设计的目标是建立软件系统的架构,有时也称“顶层架构”。这种架构既要明确定义软件各子系统、关键构件、关键类的职责划分及协作关系,同时也要描绘它们在物理运行环境下的部署模型;此外,顶层架构还必须针对软件系统全局性、基础性的技术问题给出技术解决方案,这种方案往往构成目标软件系统的架构的技术基础设施。6.5架构模式(1)分层(2)MVC(3)SOA6.5.1分层层次之间的连接有两种形态:1、高层构件向低层构件发出服务请求,低层构件在计算完成后向请求者发送服务应

6、答。在此过程中,低层构件可能向更低层构件发送抽象级别更低、粒度更细的服务请求。2、低层构件在主动探测或被动获知计算环境的变化事件后通知高层构件,这种通知链可能一直延伸到最高层以便软件系统向用户报告,也可能中止于某个中间层次。6.5.1分层分层体系结构模式可具有以下正面效应:1、松耦合2、可替换性3、可复用性4、标准化6.5.1分层6.5.2MVC6.5.2MVC采用MVC模式的软件系统的典型运作流程如下:1、创建视图,视图对象从模型中获取数据并呈现在用户界面上。2、视图接受用户的界面动作,并将其转换为内部事件传递给控制器。3、控制器将来

7、自用户界面的事件转换为对模型的业务逻辑处理功能的调用。4、模型进行业务逻辑处理,将处理结果回送给控制器,必要时还需将业务数据已经发生变化的事件通知给所有现行视图。5、控制器根据模型的处理结果创建新的视图、选择其他视图或维持原有视图;所有视图在接获来自模型的业务数据变化通知后向模型查询新的数据,并据此更新视图。6.5.3SOASOA是一个应用框架,它可易化构成各种业务的离散业务流程与服务的重用与组合。它是一个服务运行蓝图或指南。当SOA构建在开放标准如Web服务之上时,就可以比以前任何时候都更快速、更轻松地连接业务服务组件--流程和应用程

8、序,而不用考虑平台或编程语言。Web服务是一组基于行业标准的技术,它们可插入企业基础设施并与其共舞,在面对不断变化的市场环境的同时提高业务敏捷性。6.5.3SOA编码灵活性明确开发人员角色支持多种客户类型更

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

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

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