2017年系统架构师案例分析试题二

目录

案例

【题目】

【问题 1】(9 分)

【问题 2】(6 分)

【问题 3】(10 分)

答案

【问题 1】答案

【问题 2】答案

【问题 3】解析

相关推荐


案例

        阅读以下关于软件系统设计的叙述,在答题纸上回答问题 1 至问题 3。

【题目】

        某软件企业受该省教育部门委托建设高校数字化教育教学资源共享平台,实现以众筹众创的方式组织省内普通高校联合开展教育教学资源内容建设,实现全省优质教学资源整合和共享。该资源共享平台的主要功能模块包括:

        (1) 统一身份认证模块,提供统一的认证入口,为平台其他核心业务模块提供用户管理、身份认证、权限分级和单点登录等功能;
        (2) 共享资源管理模块:提供教学资源申报流程服务,包括了资源申报、分类定制、资料上传、资源审核和资源发布等功能;
        (3) 共享资源展示模块:提供教育教学共享资源的展示服务,包括资源导航、视频点播、资源检索、分类展示、资源评价和推荐等功能;
        (4) 资源元模型管理模块:依据资源类型提供共享资源的描述属性、内容属性和展示属性,包括共享资源统一标准和规范、资源加工和在线编辑工具、数字水印和模板定制等功能;
        (5) 系统综合管理模块:提供系统管理和维护服务,包括系统配置、数据备份恢复、资源导入导出和统计分析等功能。

        项目组经过分析和讨论,决定采用基于 JavaEE 的 MVC 模式设计资源共享平台的软件架构,如图 2-1 所示:

【问题 1】(9 分)

        MVC 架构中包含哪三种元素,它们的作用分别是什么?请根据图 2-1 所示架构将 JavaEE 中JSP、Servlet、Service、JavaBean、DAO 五种构件分别填入空(1)~(5)所示位置。

【问题 2】(6 分)

        项目组架构师王工提出在图 2-1 所示架构设计中加入 EJB 构件,采用企业级 JavaEE 架构开发资源共享平台。请说明 EJB 构件中的 Bean(构件)分为哪三种类型,每种类型 Bean 的职责是什么?

【问题 3】(10 分)

        如果采用王工提出的企业级 JavaEE 架构,请说明下列(a)-(e)所给出的业务功能构件中,有状态和无状态构件分别包括哪些。

        (a) Identification Bean(身份认证构件)
        (b) ResPublish Bean(资源发布构件)
        (c) ResRetrieval Bean(资源检索构件)
        (d) OnlineEdit Bean(在线编辑构件)
        (e) Statistics Bean(统计分析构件)

答案

        该题目针对高校数字化教育教学资源共享平台的系统需求,主要考查考生对于 MVC 设计模型和 Java EE 架构的掌握情况。

【问题 1】答案

        都是概念性的东西没啥好分析的。        

        MVC 架构包含的三种元素是:模型、视图、控制器。
        模型负责提供操作数据对象;
        视图负责提供用户操作界面;
        控制器负责按照输入指令和业务逻辑操作数据对象,并产生输出。

        (1)JSP;(2)Servlet;(3)JavaBean;
        (4)Service;(5)DAO。

【问题 2】答案

        都是概念性的东西没啥好分析的。

        EJB 中的 Bean 分三种类型:Session Bean(会话 Bean)、Entity Bean(实体 Bean) 和Message-Driven Bean(消息驱动 Bean)。
        Session Bean 的职责是:维护一个短暂的会话。
        Entity Bean 的职责是:维护一行持久稳固的数据。
        Message-Driven Bean 的职责是:异步接受消息。

【问题 3】解析

        本问题考查考生对 Java EE 架构中会话构件(Session Bean)的掌握情况。
        会话构件负责维护客户端与服务端的交互状态,按照是否跨方法调用保存客户端与服务端的交互状态可以分为有状态(Stateful)会话构件和无状态(Stateless)会话构件。
        有状态会话构件在交互过程中需要保存客户端与服务端交互的中间状态数据,一般在实现类中有自身的属性用于存储中间状态数据。
        无状态会话构件则不需要保存客户端与服务端的交互状态数据,客户端每次发起的请求相互独立,不会对服务端状态产生影响,因此服务端类不需要保存中间状态数据。
        身份认证构件完成初次身份认证后需要在服务端记录客户端的身份信息,在线编辑构件需要在操作过程中记录前一次编辑的操作结果,所以两者需要设计为有状态会话构件。资源发布、资源检索和统计分析构件对客户端多次请求均保持一致处理过程和结果,所以应设计为无状态会话构件。

        答案:

        有状态:(a)、(b)、(d)
        无状态:(c)、(e)

博主这个案例理解的还不错,没怎么扣分。

相关推荐

【系统架构设计师】十一、系统架构设计(中间件|典型应用架构)-CSDN博客文章浏览阅读400次,点赞10次,收藏3次。中间件:在一个分布式系统环境中处于操作系统和应用程序之间的软件,可以在不同的技术之间共享资源,将不同的操作系统、数据库、异构的网络环境以及若干应用结合成一个有机的协同工作整体。JSP发一个数据到Servlet,Servlet收到后做下解析再根据数据调用相应的Service去服务,Service如果有要调用数据库就通过DAO跟数据库交互,使用JavaBean完成封装,返回结果给Servlet,Servlet再返回给JSP。_j2ee应用系统支持五种不同类型的构件模型,包括https://shuaici.blog.csdn.net/article/details/140464924

【系统架构设计师】十一、系统架构设计(层次架构风格|MVC|面向服务的架构风格|ESB)_系统架构设计师 架构设计风格-CSDN博客文章浏览阅读1.3k次,点赞25次,收藏25次。三层C/S架构:将处理功能独立出来,表示层和数据层都变得简单。表示层在客户机上,功能层在应用服务器上,数据层在数据库服务器上。既然将两层C/S架构中的数据从服务器中独立出来了。SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通信,不涉及底层编程接口和通信模型。企业服务总线ESB:简单来说是一根管道,用来连接各个服务节点。ESB的存在是为了集成基于不同协议的不同服务,ESB 做了消息的转化、解释以及路由的工作,以此来让不同的服务互联互通。_系统架构设计师 架构设计风格https://shuaici.blog.csdn.net/article/details/140383777根据 Web 服务器端的架构相关知识,将PHP改JAVA重构企业网站系统-CSDN博客文章浏览阅读1.5k次,点赞61次,收藏43次。应用服务器是指通过各种协议把商业逻辑暴露给客户端的程序。应用服务器通过分布式体系来保障系统在大负荷和长时间运行下的稳定性以及可扩展性:当系统处理能力不够时,通过简单增加硬件来解决,提供水平可扩展性;动态调整不同主机间的负载可以最大限度地利用资源,提供单机稳定性;动态调整主机工作职能,当系统中某台机器出现故障时,它的工作可由其他机器承担,不会影响系统整体的运行,没有单点故障。https://shuaici.blog.csdn.net/article/details/141397152

评论 41
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

帅次

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值