软件架构-案例分析

合集下载

软件构架实践教学设计(3篇)

软件构架实践教学设计(3篇)

第1篇一、引言随着信息技术的飞速发展,软件工程已经成为计算机科学领域的一个重要分支。

软件构架作为软件工程的核心内容,对于提高软件质量和开发效率具有重要意义。

为了培养学生的软件工程意识和实践能力,本文提出一种基于软件构架的实践教学设计,旨在通过理论教学与实践操作相结合的方式,使学生掌握软件构架的基本原理和方法,提高其软件设计和开发能力。

二、实践教学目标1. 使学生掌握软件构架的基本概念、原则和方法;2. 培养学生分析问题、解决问题的能力;3. 提高学生团队合作与沟通能力;4. 使学生具备一定的软件设计和开发能力。

三、实践教学内容1. 软件构架概述(1)软件构架的定义和重要性(2)软件构架的类型和层次(3)软件构架设计原则2. 软件构架设计方法(1)层次化设计方法(2)模块化设计方法(3)组件化设计方法(4)服务导向架构(SOA)设计方法3. 软件构架设计工具(1)UML(统一建模语言)(2)设计模式(3)框架技术4. 软件构架实践案例(1)Web应用架构(2)移动应用架构(3)嵌入式系统架构四、实践教学步骤1. 理论教学(1)讲解软件构架的基本概念、原则和方法;(2)介绍软件构架设计工具和设计模式;(3)分析实践案例,使学生了解不同类型软件的构架设计。

2. 实践操作(1)学生分组,每组负责一个实践项目;(2)根据项目需求,确定软件构架类型和设计方法;(3)使用设计工具和框架技术,进行软件构架设计;(4)编写代码,实现软件功能;(5)测试、调试和优化软件,确保其稳定性、可靠性和性能。

3. 评价与反馈(1)教师对学生的实践项目进行评价,包括软件构架设计、代码质量、项目完成度等方面;(2)学生根据教师反馈,进行改进和优化;(3)鼓励学生相互评价,提高团队合作与沟通能力。

五、实践教学评价标准1. 软件构架设计合理性:符合软件构架设计原则,具有可扩展性、可维护性和可复用性;2. 代码质量:遵循编程规范,具有良好的可读性和可维护性;3. 项目完成度:按照项目计划,按时完成软件设计和开发任务;4. 团队合作与沟通能力:在项目中,能够与团队成员有效沟通,共同解决问题。

系统架构设计师历年(2009-2018)案例分析真题、论文真题

系统架构设计师历年(2009-2018)案例分析真题、论文真题
软件架构风格 软件架构风格定义 方案选择依据 架构风格的特点与编译器应用需求 的对应关系
软件系统数据架构建模
反规范化技术的优点和问题 反规范化技术的种类
嵌入式开发
应用反规范化技术所满足的用户需

分布式系统设计 ODP视点与核心内容 分布工基础设施为构建分布式系统 嵌入式开发 提供的基本支持 分布式对象调用的过程解释
类与类之间的关系
应用服务器 系统问题识别 应用服务器可扩展性和稳定性 J2EE体系填图
敏捷开发 开发流程填图 MVC架构填图 系统分层填表
软件架构评估 质量属性的识别与分类 架构风险、敏感点、权衡点定义
软件系统设计
MVC的元素、JAVAEE元素与MVC对应 EJB构件种类
嵌入式开发
EBJ有状态与无状态构件分类
嵌入式开发
软件架构评估 质量属性 架构风险点、敏感点、权衡点定 义
WEB应用架构设计 DNS负载均衡和反向代理机制的对比 数据库分区与主从复制 缓存机制
2015 2016 2017
软件架评估
系统设计建模
质量属性
UML状态图与活动图定义与区别
架构风险点、敏感点、权衡点定义 填图
嵌入式开发 (实际考的是可 靠性、恢复块、 N版本设计)
软件数据架构 数据库在线访问与ORM的区别 数据访问层的特点与优点 工厂模式的定义与应用场景
WEB应用架构设计 响应式WEB设计 架构元素填图 主从复制机制的优点
2018
需求分类 操作性需求、性能需求、安全性需 求、文化需求 C/S架构对于需求的题中需求的响应
软件系统建模 数据流图填图 ERD填图 实体与类的区别 用例的分类与区别
软件数据架构 关系数据库与文件系统对比填表 内存数据库与关系数据库对比填 表 SQL优化策略

软件架构实验UML建模

软件架构实验UML建模
针对本案例使用Rational Rose工具完成以下UML建模。
通过分析参与者的活动,可以初步确定这样一些用例:
(1)查询信息,(2)学生管理,பைடு நூலகம்3)宿舍分配,(4)住宿管理,(5)基础数据管理,(6)财务管理,(7)时钟支持。
根据前面的需求分析,针对本实验分别建立系统的用例视图(Use-Case View)、逻辑视图(Logical View)。
分析用例,从用例中寻找对象和类。例如,通过分析宿舍分配管理子系统,可以发现以下实体类:学生、宿舍管理员、班级、楼栋、床位等。建立类图。
2.1、静态分析阶段,通过分析该系统的子系统,寻找出实体类,并建立类图。(由于子系统较多,所以就以上述所举的例子宿舍分配管理子系统为例建立类图)
2.2、系统的动态分析——用顺序图表示用例的实现,画出高校学生宿舍管理系统的登录顺序图。(以宿舍管理员登录管理系统进行住宿管理为例画出登录顺序图)
四、实验要求
1、根据上述描述中确定的用例,自己确定每个用例的参与者,并画出关于高校学生宿舍管理系统的用例视图(Use-Case View)。
2、逻辑视图(LogicalView)关注系统是如何实现用例中所描述的功能的,主要是对系统功能性需求提供支持,即在为用户提供服务方面,系统所应该提供的功能。在逻辑视图中,用户将系统更加仔细地分解为一系列的关键抽象,将这些大多数来自于问题域的事物通过采用抽象、封装和继承的原理,使之表现为对象或对象类的形式,借助于类图和类模板等手段,提供系统的详细设计模型图。类图用来显示一个类的集合和它们的逻辑关系有关联、使用、组合、继承关系等。
2.3、利用UML的活动图工具进行工作流程建模,画出学生入住业务流程(活动图)。(提示:
学生的入住业务流程,一般来说是,学生先到宿舍管理中心申请入住,然后学生到财务管理中心尽心缴费,宿舍管理中心回到学生管理中心进行学生信息的核对,如果学生缴费成功并且学生管理中心的学生身份认证正确,那么宿舍管理中心就给学生分配宿舍,否则,任何一个环节出现错误就会取消入住。)

用友金蝶-软件功能和案例分析

用友金蝶-软件功能和案例分析

用友金蝶软件功能和案例分析企业应用平台UAP:大型企业与组织计算平台是面向大型企业与公共组织的计算平台,它是用友公司从多年应用软件研制过程中提炼出来的模型、模板、开发工具、应用框架、中间件、基础技术类库及研发模式等成果,采用可视化开发模式集成在一起,提供覆盖软件全生命周期的开发、集成、运行、管理等功能于一体的计算平台。

用友UAP平台是一体化平台,其中包括了开发平台、集成平台、动态建模平台、商业分析平台(用友BQ)、数据处理平台(用友AE)、云管理平台和运行平台等7个领域产品,这些平台产品涵盖了软件应用的全生命周期和IT服务管理过程,用于全面支撑平台化企业,可以为大型企业与公共组织构建信息化平台,提供核心工具与服务。

宅急送公司恪守“安全、准确、亲切、视服务为生命”的经营训诫,自1994年成立以来,公司以跨越式发展速度,在全国建立了庞大的“快运网络”,以优质服务赢得了国内上千家著名企业以及广大民众的信赖;解决方案:为宅急送构建集成HR、CRM、财务、业务统一的信息化平台,帮助企业规范业务操作流程,实现决策、管理、操作一体化运作。

构建高效的业务管理模式,实现任务驱动化、路由标准化、操作傻瓜化、信息前置化、设置个性化、下分单自动化、管理简单化、工作日常化、责任明确化、纠错实时化。

项目成效:1、依托于先进的用友UAP平台和NMC智能集群解决方案,实现了对3000多家单位(分公司、基地、营业所、营业厅、操作点)的实时垂直管理,为宅急送业务发展和抢占市场奠定了信息化基石。

2、基于UAP开发平台,同时支持七千人同时在线,支持每天六十万工作单业务量(业务峰值时期在百万左右),大大提高了系统运行性能。

3、实现了任务驱动化、路由标准化、操作傻瓜化、信息前置化、设置个性化、下分单自动化、管理简单化、工作日常化、责任明确化、纠错实时化。

4、规范了流程。

5、实现主数据标准化。

XXXX下半年系统架构设计师考试案例分析真题及答案

XXXX下半年系统架构设计师考试案例分析真题及答案

XXXX下半年系统架构设计师考试案例分析真题及答案系统架构师XXXX下半年,系统架构师在下午提出了问题。

案例分析问题1:请详细阅读关于网络应用程序架构设计的说明,并回答答题纸上的问题1至3。

[注释]一家的软件公司开发并运行了一个社交网络网站系统。

该系统建立在开源软件平台LAMP(Linux+Apache+MySQL+PHP)之上。

运行一段时间后,随着用户数量和访问量的增加,系统在网络服务器负载、磁盘输入输出等方面存在明显的瓶颈。

并且不能满足大量客户端并发访问的需求。

因此,公司成立了专门的项目团队来调整系统架构,以提高系统的并发处理能力目前,系统采用传统的三层结构,系统架构如下图所示[问题1] (10分)针对当前网络服务器负载过大的问题,项目组决定在客户端和中间层网络服务器之间引入负载平衡器,通过中间层网络服务器集群提高网络请求的并发处理能力在讨论所提出的负载平衡机制时,王工提出采用基于DNS的负载平衡机制,而巩俐认为应该采用基于反向代理的负载平衡机制。

经过讨论,项目组最终决定采用巩俐提出的方案。

请用少于200字的篇幅分别简要说明这两种机制的基本原理。

这两种机制在系统执行效率、安全性和简单性方面进行了比较,比较结果如下表所示[问题2] (7分)针对并发数据库访问导致的磁盘I/O瓶颈,项目团队决定在数据层引入数据库扩展机制经过调查,已知系统数据库中存储的主要数据是通过用户标识索引的社交网络数据,并且在系统操作期间发生的大多数数据库操作是查询操作。

经过讨论,项目团队决定引入两种扩展机制:数据库分区和MySQL主从复制数据库分区可分为水平分区和垂直分区。

请用350系统架构师的字内的文字说明该系统应采用哪种方法及其原因,并分析引入主从复制机制给系统带来的好处。

[问题3)(8分)为了进一步提高数据库访问效率,项目团队决定在中间层和数据层之间引入缓存机制。

召公开始提出一种可以直接使用MySQL的查询缓存机制。

软件开发中优秀的设计与实现案例分析

软件开发中优秀的设计与实现案例分析

软件开发中优秀的设计与实现案例分析软件开发是一项复杂而又困难的工作,软件的设计与实现关系着软件产品的最终质量。

一个优秀的软件设计与实现方案,除了能够满足用户需求之外,还可以提高软件的可维护性、可扩展性和可重用性。

在这篇文章中,我将从实际案例中分析几个优秀的软件设计与实现方案。

(一)图像处理软件设计与实现图像处理是计算机视觉领域的一个重要组成部分,给许多行业带来了极大的便利和效益,如医疗、军事、生产等行业。

在图像处理软件的开发过程中,一个优秀的设计与实现方案能够使软件的处理速度更快、效果更好、操作更方便。

我们以Adobe公司的图像处理软件Photoshop为例。

对于图像处理软件而言,图像的加载和处理是一个重要的部分。

在Photoshop的设计中,使用了延迟加载技术。

延迟加载可以在软件启动时只加载必要的资源,其他资源则在需要时才加载,减少了软件的启动时间和内存占用。

在程序运行时,Photoshop运用了多线程技术,将图像的读取、处理、显示分配给不同的线程,加快了处理速度。

此外,Photoshop的界面设计也是其成功的关键。

Photoshop的界面设计非常简洁、易于使用、可定制。

其使用了分层次结构的设计方法,用户可以方便地访问到所需的功能和工具,而且可以根据个人需求对界面进行定制。

这种用户导向的设计方案为Photoshop带来了大量的用户和市场份额。

(二)嵌入式软件设计与实现随着物联网技术的发展,嵌入式软件已成为众多智能设备的重要组成部分。

嵌入式软件的设计与实现需要充分考虑资源受限、实时性要求高等特点。

以INTEL公司的嵌入式软件产品Intel Galileo为例。

在设计与实现方面,Intel Galileo采取了面向对象的编程模式,使用了C++语言,通过面向对象的设计,实现了可重用性和可扩展性。

同时,由于嵌入式设备的资源受限,Galileo的设计遵循了轻量级原则,尽可能地减少了代码量和内存占用。

在实现方面,Galileo使用了中断机制来实现实时性需求。

软件开发案例分析 ppt课件


PPT课件
14
第二部分 软件工程方法学概述
PPT课件
15
软件工程方法学-关键问题
需求阶段:
什么是客户的上下文? 要达到什么目的?
分析阶段:
要处理什么实体? 如何确保有正确的实体?
系统设计阶段:
如何解决问题? 在完成的系统中需要什么硬件和软件
子系统设计阶段:
如何实现解决方案? 源代码和支持文件有哪些?
软件 规格 说明 书编 写规

软件 原型 制作 规范
软件 需求 用例 规约 编写 规范
高级 经理
客户
开 发 经 理
分析 设计 负责

测 试 负 责 人
项目 经理
需求 分析 负责

开始
需求调研人员
用户界面 设计员
评审干系人清单
确定干系人 确定干系人需求 确定非功能性需求

编写需求规格说明书
设计界 面原型


评审需求规格说明书




确定用例
作 产 品 进
签字确认 需求规格
说明书
优先级



评审词汇表、用例模型、用例规约
需求分析员
输出
确定系统主角 确定系统用例
界面 原型 需求规格 说明书
用例模型
详细描述用例 整理词汇表
用例规约 词汇表
P结P束T课件
54
需求过程
• 工具
– MS Office – Rational Rose

词汇 表
精化迭代
评审用例分析
详 细 设 计
设计 数据

用例 分析 文档

软件资格考试系统架构设计师(综合知识、案例分析、论文)合卷(高级)试题及答案指导(2025年)

2025年软件资格考试系统架构设计师(综合知识、案例分析、论文)合卷(高级)复习试题及答案指导一、综合知识(客观选择题,75题,每题1分,共75分)1、在软件架构设计中,下列哪一项不是常见的架构风格?A. 分层架构B. 微服务架构C. 单体架构D. 瀑布架构答案: D) 瀑布架构解析: 瀑布架构并不是一个架构风格,而是一种项目管理和开发流程的方法论。

它描述的是从需求分析到维护的线性顺序过程。

相比之下,分层架构、微服务架构和单体架构都是用来指导软件内部结构和组件之间交互的方式,因此它们是架构风格。

2、关于系统架构中的高可用性(High Availability),以下说法错误的是:A. 高可用性指的是系统能够长时间持续提供服务的能力。

B. 实现高可用性的常见策略包括负载均衡和冗余配置。

C. 高可用性系统通常需要考虑故障检测机制。

D. 高可用性仅指硬件层面的可靠性,不涉及软件设计。

答案: D) 高可用性仅指硬件层面的可靠性,不涉及软件设计。

解析: 高可用性不仅关注硬件层面的可靠性,同样也重视软件的设计与实现。

为了确保系统的高可用性,必须同时考虑硬件和软件两方面的因素。

例如,软件应该设计成能够在发生故障时快速恢复,并且可以通过冗余配置来分散风险。

此外,软件还需要支持在线升级等功能以减少停机时间,这些都是高可用性的重要组成部分。

3、在软件架构设计中,以下哪项不属于常见的架构设计原则?A. 单一职责原则B. 开放封闭原则C. 李氏替换原则D. 设计模式答案:D解析:在软件架构设计中,单一职责原则、开放封闭原则和李氏替换原则都是常见的架构设计原则。

而设计模式是软件设计中的具体实现方法或解决方案,不属于架构设计原则的范畴。

因此,正确答案是D。

4、以下关于服务导向架构(SOA)的说法,错误的是:A. SOA强调服务之间的松耦合B. SOA以业务服务为中心C. SOA可以提高系统的可重用性和可扩展性D. SOA只适用于大型企业答案:D解析:服务导向架构(SOA)是一种架构设计理念,它强调服务之间的松耦合、以业务服务为中心,以及提高系统的可重用性和可扩展性。

2016年下半年系统架构设计师真题(案例分析题)

2016年下半年系统架构设计师真题(案例分析题)案例分析题试题一(共25分)阅读以下关于软件架构设计的叙述,在答题纸上回答问题1至问题3 0 【说明】某软件公司为某品牌手机厂商开发一套手机应用程序集成开发环境,以提高开发手机应用程序的质量和效率。

在项目之初,公司的系统分析师对该集成开发环境的需求进行了调研和分析,具体描述如下:a.需要同时支持该厂商自行定义的应用编程语言的编辑、界面可视化设计、编译、调试等模块,这些模块产生的模型或数据格式差异较大,集成环境应提供数据集成能力。

集成开发环境还要支持以适配方式集成公司现有的应用模拟器工具。

b.经过调研,手机应用开发人员更倾向于使用Windows系统,因此集成开发环境的界面需要与Windows平台上的主流开发工具的界面风格保持一致口c.支持相关开发数据在云端存储,需要保证在云端存储数据的性和完整性。

d.支持用户通过配置界面依据自己的喜好修改界面风格,包括颜色、布局、代码高亮方式等,配置完成后无需重启环境。

e.支持不同模型的自动转换。

在初始需求中定义的机器性能条件下,对于一个包含50个对象的设计模型,将其转换为相应代码框架时所消耗时间不超过5秒。

f.能够连续运行的时间不小于240水时,意外退出后能够在1 0秒之自动重启。

g.集成开发环境具有模块化结构,支持以模块为单位进行调试、测试与发布口h.支持应用开发过程中的代码调试功能:开发人员可以设置断点,启动调试,编辑器可以自动卷屏并命中断点,能通过变量监视器查看当前变量取值。

在对需求进行分析后,公司的架构师小查阅了相关的资料,认为该集成开发环境应该采用管道一过滤器(Pipe-Filter)的架构风格,公司的资深架构师王工在仔细分析后,认为应该采用数据仓储(Data Repository)的架构风格。

公司经过评审,最终采用了王工的方案。

【问题1】(10分)识别软件架构质量属性是进行架构设计的重要步骤。

请分析题干中的需求描述,填写表1-1中(1)~(5)处的空白。

2014年系统架构师考试科目二:案例分析

2014 年系统架构师考试科目二:案例分析1.请详细阅读以下关于网络设备管理系统架构设计的说明,回答问题 1 和问题 2。

【题目】某软件公司欲开发一个网络设备管理系统,对管理区域内的网络设备(如路由器和交换机等)进行远程监视和控制。

公司的系统分析师首先对系统进行了需求分析,识别出如下3 项核心需求:(a)目前需要管理的网络设备确定为10 类20 种,未来还将有新类别的网络设备纳入到该设备管理系统中;(b)不同类别的网络设备,监视和控制的内容差异较大;同一类网络设备,监视和控制的内容相似,但不同厂商的实现方式(包括控制接口格式、编程语言等)差异较大;(c)网络管理员能够在一个统一的终端之上实现对这些网络设备的可视化呈现和管理操作。

针对上述需求,公司研发部门的架构师对网络设备管理系统的架构进行了分析与设计,架构师王工认为该系统可以采用MVC 架构风格实现,即对每种网络设备设计一个监控组件,组件通过调用网络设备厂商内置的编程接口对监控指令进行接收和处理;系统管理员通过管理模块向监控组件发送监控指令,对网络设备进行远程管理;网络状态、监控结果等信息会在控制终端上进行展示。

针对不同网络设备的差异,王工认为可以对当前的 20 种网络设备接口进行调研与梳理,然后通过定义统一操作接口屏蔽设备差异。

李工同意王工提出的MVC 架构风格和定义统一操作接口的思路,但考虑到未来还会有新类别的网络设备接入,认为还需要采用扩展接口的方式支持系统开发人员扩展或修改现有操作接口。

公司组织专家进行架构评审,最终同意了王工的方案和李工的改进意见。

【问题 1】(10 分)请用 300 字以内的文字解释什么是 MVC 架构风格以及其中的组件交互关系,并根据题干描述,指出该系统中的 M、V、C 分别对应什么。

【问题 1 解析】MVC 架构风格:用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

.
Word文档
票务系统架构案例分析
•10.1 ATAM方法表述
.

Word文档
•10.2 商业动机的表述

•10.3 构架的表述
•10.4 质量属性效用树
•10.5 质量场景的构架分析
•10.6 对系统构架的再分析
•10.7 评审结论
10.1 ATAM方法表述
(1) 概述
ATAM(Architecture Tradeoff Analysis Method):
SEI提出的一种软件构架评估方法。ATAM评估方法的主
要目的:
.

Word文档
1) 提炼出软件质量属性需求的精确描述;

2) 提炼出构架设计决策的精确描述;
3) 评估这些构架设计决策,并判定其是否令人满意的实
现了这些质量需求。
ATAM评估方法:
并非把每个可以量化的质量属性都进行详尽的分析,而
是使众多的风险承担者(包括经理、开发人员、测试人员、
用户、客户等等)都参与进来,由此而达到上述目标的。
ATAM是一种挖掘潜在风险,降低或者缓和现有风险的
软件构架评估方法。因此,以下三点是评估中要特别注重的
:风险、敏感点和权衡点。
(2) 构架涉众
.

Word文档
·普通用户

·用户管理员
·票务管理员
·开发人员
·测试人员
(3) 评估步骤

ATAM主要分以下几个步骤:
1) ATAM描述;
2) 商业动机表述;
3) 软件构架表述; 4) 确定构架方
式;
5) 生成效用树;
6) 分析构架方式;
.

Word文档
7) 确定场景及其优先级;

8) 进一步分析构架方式;
9) 得出结论。
10.2 商业动机的描述

项目经理从开发组织和客户角度,来表述票务系统的商
业目标,综合如下:
• 从开发组织角度:开发一个模块性强、实时高效、界面良
好、与外部其他系统兼容良好的系统,这使得开发组织能
够把整个产品或某个模块卖给其他客户,同时由于良好的
界面和业务处理效率而受市场欢迎。
.

Word文档
• 从客户角度:系统容易操作,可维护性好、系统稳定、可

以及时准确的处理用户的在线订票或查询业务。根据上述
目标,质量属性可以划分为两类:高优先级质量属性:
1) 性能
2) 安全性
3) 易用性
4) 可用性
重要但优先级较低的属性:
1) 模块性
2) 可维护性
3) 可修改性
4) 可测试性
.

Word文档
10.3 架构表述

(1) 与构架商业周期的关系
.

Word文档
(2) 系统的整体结构
.

Word文档
(3)质量属性及采用的战术
.

Word文档
.

Word文档
.

Word文档
10.4 质量属性效用树
.

Word文档
.

Word文档
.

Word文档
.

Word文档
10.5 质量场景的构架分析

在质量属性效用树中,我们对场景的优先级进行了划
分,而同时由于分析时间宝贵,所以我们应该把宝贵的分析
时间最先用于最重要且最难实现的场景上,即标注为 (H,H)的
场景。在质量属性效用树的表格中,仅在性能和可用性这2
个质量属性下发现标注有(H,H)的场景,下面根据系统的体系
结构和实现质量属性所采用的战术分别给出这些重要场景的
构架方法分析表格。
• 性能
.

Word文档
.

Word文档
• 可用性
.

Word文档
10.6 对系统构架的再分析

(1) 风险决策和敏感点
.

Word文档
(2)问题分析

在前面对系统结构的描述中,系统采用基于B/S的分层结
构,系统部署在一台应用服务器上,这种结构有它独特的优
点。但经过构架方法的分析,特别是对系统的关键质量属性和
优先级最高的质量属性场景的分析,发现系统在上述场景下会
出现如下的问题:
(1) 性能方面:在非常多的用户并发操作的情况下,单服
务器系统将不能对用户的请求做出及时的响应,严重情况下服
务器还会崩溃。
(2) 可用性方面:在仅有的一台应用服务器出现故障或者
崩溃的情况下,用户将不能访问系统,故障恢复需要花费较长
时间。
.

Word文档
(3)改进系统的构架

考虑到使用票务系统的用户数目非常庞大,这样造成用户
对系统的访问请求数目和对系统进行业务操作的请求数目也非
常庞大,改进后的系统采用多层分布式结构,使用Web服务器
集群和应用服务器集群来实现,这种集群机制支持动态负载平
衡(Load Balance)和容错机制,可以将用户的请求以及对用户
请求的处理分发到负载低的服务器中,非常适合具有并发用户
数多,服务地点分散等这些特点,有较高的稳定性,能有效避
.
Word文档
免访问流量过多导致服务器瘫痪以及整个系统因为某台服务器

崩溃而彻底瘫痪。为了使系统达到集群分布式的目的,在第一
套方案的基础上,我们采用Spring介入EJB容器的方式,使用
EJB 的无状态会话Bean来封装业务逻辑,即调用POJO中的业
务逻辑操作(POJO中包含了业务逻辑处理,在原来的SSH 框架
中它是指业务层的JavaBean,通过持久层与数据库交互,这些
POJO通过IOC容器来管理)。这相当于在
Struts和业务逻辑层之间增加了EJB,重用原SSH框架的
业务逻辑,即系统框架变Struts+EJB+Hibernate+Spring
,这种组合可以将视图和业务逻辑以及对数据库的操作很好
的分离。
(4)新的框架如下:
.

Word文档
10.7 评审结论
总体而言,通过对质量属性场景的分析,我们发现了最先
提出的构架方案的不足,由此得出改进后的构架方案。采用改
.

Word文档
进后的构架方案可以获得了良好的性能、易用性、安全性、可

用性等等,达到了设计目的符合质量属性需求分析的要求!

相关文档
最新文档