案例分析题 试题一(共25分)
阅读以下关于软件架构设计的叙述,在答题纸上[可答问题I至问题3 0 【说明】
某软件公司为某品牌手机厂商开发-套手机应用程序集成开发环境,以提高开发手机 应用程序的质量和效率。在项目之初,公司的系统分析师对该集成开发环境的需求进行了 调研和分析,具体描述如R
a. 需要同时支持该厂商自行定义的应用编程语言的编辑、界面可视化设计、编译、调 试等模块,这些模块产生的模型或数据格式差异较大,集成环境应提供数据集成能力。集 成升发环境还要支持以适配方式集成公司现有的应用模拟搭工具。
b. 经过调研,手机应用开发人员更倾向丁•使用Windows系统,因此集成开发环境的界 面需要与Windows平台上的主流开发工具的界面风格保持一致口
c. 支持相关开发数据在云端存储,需要保证在云端存储数据的机密性和完整性。
d. 支持用户通过配置界面依据自己的喜好修改界面风格,包括颜色、布局、代码高亮 方式等,配置完成后无需重启环境。
e. 支持不同模型的自动转换。在初始需求中定义的机器性能条件下,对于一个包含50 个对象的设计模型,将其转换为相应代码框架时所消耗时间不超过5秒。
f. 能够连续运行的时间不小丁• 240水时,意外退出后能够在1 0秒之内自动重启。 g. 集成开发环境具有模块化结构,支持以模块为单位进行调试、测试与发布II
h. 支持应用开发过程中的代码调试功能:开发人员可以设置断点,启动调试,编辑器 町以自动卷屏并命中断点,能通过变量监视器查看当前变量取值。
在对需求进行分析后,公司的架构师小张查阅了相关的资料,认为该集成开发环境应 该采用管道一过滤器(Pipe-Filter)的架构风格,公司的资深架构师王工在仔细分析后,认 为应该采用数据仓储(Data Repository)的架构风格。公司经过评审,最终采用了王工的 方案° 【问题11 (10分)
识别软件架构质量属性是进行架构设计的重要步骤。清分析题干中的需求描述,填写 表1-1中(1)-(5)处的空白。
表1・1质量属性识别表
质量属性名称 可用性 (2) 可修改性 可测试性 安全性
需求描述编号 (1) e (3) (4) C 易用性 (5) 【问题2】(7分)
请在阅读题干需求描述的基础上,从交互方式、数据结构、控制结构和扩展方法4个 方面对两种架构风格进行比较,填写表1-2中(1)-(4)处的空白。
表1-2两种架构的比较 比较因素 交互方式 曾道一过淀器风格 10序始构成有限的循环姑构 (2) 败据仓辱风格 (1) 文件或模型 业务功能逝动 (4) 控制结构
(3) 接曰适配 第晨方法 【问题3】(8分)
在确定采用数据仓库架构风格后,王工给出了集成开发环境的架构图。请填写图1-1 中(1)-(4)处的空白,完成该集成开发环境的架构图。
* T
图1-1集或开发环境架构图
从下列的4道试题(试题二至试题五)中任选2道解答。造在答题纸上的指定位置处 将所选择试题的题号框涂黑。若多涂、少涂或者未涂题号框,则对题号最小的两道试题进 行评分。
试题二(共25分)
阅读以下关「软件系统建模的叙述,在答题纸上回答问题1至问题3。 【说明】
某软件公司计划开发•套教学管理系统,用于为公校提供教学管理服务。该教学管理 系统基本的需求包括:
(1) 系统用户必须成功登录到系统后才能使用系统的各项功能服务;
(2) 管理员(Registrar)使用该系统管理学校(University系(DepartmentK 教 师
(Lecturer)、学生(Student)和课程(Course)等教学基础信息;
(3) 学生使用系统选择并注册课程,必须通过所选课程的考试才能获得学分;如果考试 不及
格,必须参加补考,通过后才能获得课程学分;
(4) 教师使用该系统选择所要教的课程,并从系统获得选择该课程的学生名单: (5) 管理员使用系统生成课程课表,维护系统所需的有关课程、学生和教师的信息; (6) 每个月到了月底系统会通过打印机打印学生的考勤信息。
项目组经过分析和讨论,决定采用面向对象开发技术对系统各项需求建模。 【问题1] (7分)
用例建模用来描述待开发系统的功能需求,主要元素是用例和参与者°请根据题目所 述需求,说明教学服务系统中有哪些参与者。 【问题2】(7分)
用例是对系统行为的动态描述,用例获取是需求分析阶段的主要任务之一。请指出在 面向对象系统建模中,用例之间的关系有哪儿种类型?对题目所述教学服务系统的需求建 模时,“登录系统”用例与“注册课程”用例之间、“参加考试”用例与“参加补考”用 例之间的关系分别属于哪种类型? 【问题3】(11分)
类图主要用来描述系统的静态结构,是组件图和配置图的基础。靖指出在面向对象系 统建模中,类之间的关系有哪儿种类型?对题目所述教学服务系统的需求建模时,类 Uni versi ty 与类Sindent 之间、类Uni versi ty和类Department 之间、类 Student 和类Course 之间的关系分别属于哪种类型?
试题三(共25分)
阅读以下关于嵌入式实时系统设计的描述,回答问题1至问题3。 【说明】
嵌入式系统是当前航空、航天、船舶及工业、医疗等领域的核心技术,威入式系统可 包括实时系统与非实时系统两种。某宇航公司K期从事航空航天飞行器电子设备的研制工 作,随着业务的扩大,需要大量大学毕业生补充到科研生产部门。按照公司规定,大学毕 业生必须进行相关基础知识培训,为此,公司经理安排王工对他们进行了长达一个月的培 训。 【问题11(7分)
王工在培训中指出:嵌入式系统主要负责对设备的各种传感器进行管理与控制。而航 空航天飞行器的电子设备由于对时间具有很强的敏感性,通常由嵌入式实时系统进行管控, 请用300字以内文字说明什么是实时系统,实时系统有哪些主要特性。 【问题2】(8分)
实时系统根据应用场景、时间特征以及工作方式的不同,存在多种实时特性,大致有 三种分类方法,即时间类别、时间需求和工作方式结构。根据自己所掌握的“实时性”知 识,将图3-1给出的实时特性按三种分类方式,填写图3-1中⑴〜(8)处空白。
备选答案:时限的危害程度;时间角包;弱;时间响应;固定;时限/反应时间;时 间明确;输入膈出激励:时间触发;强;周期/零星/非周期;事件触发。
时 间 类 别
时 _间
* I
求 工 作 方 —式
构 图3-1实时特性分类树
【问题3】(10分)
可靠性是实时系统的关键特性之一,区分软件的错误(Error).缺陷(Defect)、故障 (Fault)和失效(Failure)概念是软件可靠性设计工作的基础。请简要说明错误、缺陷、故 障和失效的定义;并在图3 2中标出错误、缺陷和失效出现阶段,说明缺陷、故障和失效 的表现形式,填写图3-2中(1)-(6)处的空白。
图>2使谡、缺陷、故障和夫效关系
试题四(共25分)
阅读以下关于应用服务器的叙述,,在答题纸上回答问题1至问题3。 【说明】
某电子产品制造公司,凡年前升发建设了企业网站系统,实现了企业宣传、产品介绍、 客服以及售后服务等基本功能。该网站技术上采用了 Web服务器、动态脚本语H PIlPo随着 市场销售渠道变化以及企业业务的急剧拓展,该公司急需建立完善的电子商务平台。
公司张工建议对原有网站系统进行扩展,增加新的功能(包括订单系统、支付系统、 库存管理等),这样有利于降低成本、快速上线;而王工则认为原有网站系统在技术上存在 先天不足,不能满足企业业务的快速发展,尤其是企业业务将服务全球,需要提供24小时 不间断服务,系统在大负荷和长时间运行下的稳定性至关重要。建议采用应用服务器的Web 开发方法,例如J2EE,为该企业重新开发新的电子商务平台。 【问题11 (7分)
王工认为原有网站在技术上存在先天不足,不能满足企业业务的快速发展,根据你的 理解,造用300字以内的文字说明原系统存在哪凡个方面的不足。 【问题2】(8分)
请简要说明应用服务器的概念,并重点说明应用服务器如何来保障系统在大负荷和长 时间运
行下的稳定性以及可扩展性。 【问题3】(10分)
J2EE平合采用了多层分布式应用程序模型,实现不同逻辑功能的应用程序被封装到不 同的构件中,处于不同层次的构件可被分别部署到不同的机器中。请填写图4-1中(1)-(5) 处的空白,完成J2EE的N层体系结构。
图4-1 J2EE的N层体萩结构军意粉
试题五(共25分)
阅读以下关于Scrum敏捷升发过程的叙述,在答题纸上忡】答问题1至问题3。 【说明】
Scrum是一个增量的、迭代的敏捷软件开发过程。某软件公司计划开发一个基于Web 的Scrum项目管理系统,用于支持项目团队采用Scrum敏捷开发方法进行软件开发,辅助 主管智能决策。此项目管理系统提供的主要服务包括项目团队的管理、敏捷开发过程管理 和工件的管理。
Scrum敏捷开发中,项目团队由Scrum主管、产品负责人和开发团队人员三种不同的角 色组成,其开发过程由若干个Sprint (短的迭代周期,通常为2到4周)活动组成。
Product Backlog是在Scrum过程初期产生的一个按照商业价值排序的需求列表,该列 表条目的体现形式通常为用户故事。在每一个Sprint活动中,项目团队从Product Backlog 中挑选最高优先级的用户故事进行开发。被挑选的用户故事在Sprint计划会议上经过细化 分解为任务,同时初步估算每一个任务的预计完成时间,编写Sprint Backlogo
在Sprint活动期间,项目团队每天早晨需举行每日站立会议,重新估算剩余任务的预 计完成时间,更新Sprint Backlog、Sprint.燃尽图和Release燃尽图。在每个Sprint活 动结束时,项目团队召开评审会议和【可顾会议,交付产品增量,总结Sprint期间的工作情 况和问题。此时,如果Product Backlog 4*还有未完成的用户故事,则项目团队将开始筹 备下一个Sprint活动迭代。
为完成Scrum项目管理系统,考虑到系统的智能决策需求,公司决定使用MVC架构模式开 发该项目管理系统。具体来说,系统采用轻量级J2EE架构和SSH框架进行开发,使用MySQL 数据库作为底层存储。 【问题1] (1 0分)
Scrum项目管理软件需真实模拟Scrum敏捷升发流程,请根据你的理解完成图5-1给出 的Scrum敏捷开发状态图,・填写其中(1)〜(5)的内容。
Sprint迭代周
从Product Backlog
朋尚未结束
图5・1 Scnim敏捷开发状态
【问题2】(6分)
根据题干描述,本系统采用MVC架构模式,请从各选答案a~n中分别选出属于即C架 构模
型中的模型(Model) >视图(View)和控制器(Controler)的相关内容描述填入表5T 的空(1)-(3)处。
表5.1架构模式中包含的内容 架构模式 模型(Model) 视图(View) 控制塞(Controler)
包含内容 (1) (2) (3) 备选答案:
a b c d e f
Sprint燃尽图 Project Product Backlog 用户故事 估算任务预计完成时间 Release燃尽图 Sprint回顾会议 h • J k 1 m n 用户 1・ 交付产品增星 新建项目 Task Sprint 产品负贵人 Spnnt Backlog g 【问题3】(9分)
根据项目组给出的系统设计方案,将备选答案广1的内容填写在图5-2中的空⑴〜(9), 完成系统架构图。
MVC架构的 ⑶,控制(4) 用户界面. --- > 业务心 可采用(1) 框 -- > 与表财的 架.(2) 枢架 效据访何 对象 (5MM 通过突体关 系技射OR Mapping 由 教据库借来 的g 存放数据 _________ (9) (6) \\ (7) Serviced 图5-2系统架构图 DAO ((8)
备选答案:
a b c d c
Struts 2 Flibemate持久层 数据库服务(MySQL) Sitemesb 业务逻轴盼 JQuery g h 1 模型层 控制层 EJB . J Web层 k 1 PostgrcSQL f 从下列的4道试题(试题一至试题四)中任选1道解答。靖在答题纸上的指定位置处 将所选择试
题的题号框涂黑。若多涂或者未涂题号框,则对题号最小的…道试题进行评分。
如需了解更多系统架构设计师真题资讯,请看希赛软考学院!
因篇幅问题不能全部显示,请点此查看更多更全内容