阅读以下关于软件架构设计的叙述,在答题纸上回答问题1至问题3。 [说明] 某软件公司为某品牌手机厂商开发一套手机应用程序集成开发环境,以提高开发手机应用程序的质量和效率。在项目之初,公司的系统分析师对该集成开发环境的需求进行了调研和分析,具体描述如下: 1

admin2017-11-28  52

问题 阅读以下关于软件架构设计的叙述,在答题纸上回答问题1至问题3。
[说明]
某软件公司为某品牌手机厂商开发一套手机应用程序集成开发环境,以提高开发手机应用程序的质量和效率。在项目之初,公司的系统分析师对该集成开发环境的需求进行了调研和分析,具体描述如下:
1.需要同时支持该厂商自行定义的应用编程语言的编辑、界面可视化设计、编译、调试等模块,这些模块产生的模型或数据格式差异较大,集成环境应提供数据集成能力。集成开发环境还要支持以适配方式集成公司现有的应用模拟器工具。
2.经过调研,手机应用开发人员更倾向于使用Windows系统,因此集成开发环境的界面需要与Windows平台上的主流开发工具的界面风格保持一致。
3.支持相关开发数据在云端存储,需要保证在云端存储数据的机密性和完整性。
4.支持用户通过配置界面依据自己的喜好修改界面风格,包括颜色、布局、代码高亮方式等,配置完成后无须重启环境。
5.支持不同模型的自动转换。在初始需求中定义的机器性能条件下,对于一个包含50个对象的设计模型,将其转换为相应代码框架时所消耗时间不超过5秒。
6.能够连续运行的时间不小于240小时,意外退出后能够在10秒之内自动重启。
7.集成开发环境具有模块化结构,支持以模块为单位进行调试、测试与发布。
8.支持应用开发过程中的代码调试功能:开发人员可以设置断点,启动调试,编辑器可以自动卷屏并命中断点,能通过变量监视器查看当前变量取值。
在对需求进行分析后,公司的架构师小张查阅了相关的资料,认为该集成开发环境应该采用管道一过滤器(Pipe-Filter)的架构风格,公司的资深架构师王工在仔细分析后,认为应该采用数据仓储(Data Repository)的架构风格。公司经过评审,最终采用了王工的方案。
[问题3]
在确定采用数据仓库架构风格后,王工给出了集成开发环境的架构图。请填写图1—1中(1)~(4)处的空白,完成该集成开发环境的架构图。

选项

答案(1)模型/数据库 (2)代码编辑工具 (3)数据格式转换器 (4)模拟器

解析 本题主要考查考生对于软件质量属性的理解、掌握和应用。在解答该问题时,需认真阅读题干中给出的场景与需求描述,分析该需求描述了何种质量属性,根据质量属性描述对其归类,并需要理解架构风险、敏感点和权衡点这些概念。
[问题1]
识别软件架构质量属性是进行架构设计的重要步骤。根据对相关质量属性的定义和含义,其中“支持不同模型的自动转换。在初始需求中定义的机器性能条件下,对于一个包含50个对象的设计模型,将其转换为相应代码框架时所消耗时间不超过5秒”,这描述的是系统的性能属性;“能够连续运行的时间不小于240小时,意外退出后能够在10秒之内自动重启”描述的则是系统的可用性;“支持用户通过配置界面依据自己的喜好修改界面风格,包括颜色、布局、代码高亮方式等,配置完成后无须重启环境”描述的是系统的可修改性;“集成开发环境具有模块化结构,支持以模块为单位进行调试、测试与发布”描述的是系统的可测试性;。“经过调研,手机应用开发人员更倾向于使用Windows系统,因此集成开发环境的界面需要与Windows平台上的主流开发工具的界面风格保持一致”描述的是系统的易用性。
[问题2]
对不同的架构设计决策是架构师必须具有的基本能力,根据题干要求:
(1)从交互方式方面看,管道一过滤器风格具有顺序结构或有限的循环结构;采用数据仓储风格时,工具之间无直接交互,通过数据仓储间接交互。
(2)从数据结构方面看,管道一过滤器风格具有数据驱动的特征,数据到来后就进行计算;数据仓储风格以文件或模型为主要数据结构。
(3)从控制结构方面看,管道一过滤器风格具有顺序结构或有限的循环结构;数据仓储风格则以业务功能驱动。
(4)从扩展方法方面看,管道一过滤器风格主要采用适配器方式实现扩展性;数据仓储风格中,每个工具需要与数据仓储进行数据适配。
[问题3]
本题目主要考查数据仓储风格的实际设计与应用。结合风格定义,从图中可以看出,位于核心位置的组件(1)应该是数据库/模型。根据题干描述,可以直接接入数据库的组件(2)应该是代码编辑工具。(3)和(4)对应题干描述“……集成环境应提供数据集成能力。集成开发环境还要支持以适配方式集成公司现有的应用模拟器工具”,因此应该分别填入数据格式转换器和模拟器。
转载请注明原文地址:https://jikaoti.com/ti/It67FFFM
0

最新回复(0)