软件设计与体系结构期中考试试卷

合集下载

最新软件工程期中考试以及答案

最新软件工程期中考试以及答案

1、瀑布模型下,采用结构化的方法,在它的生命周期各个阶段中,那个阶段出错对软件的影响最大()A、概要设计阶段B、维护阶段C、测试排错阶段D、需求分析阶段2、UML是软件开发过程中的重要工具之一,它主要用于那种开发方法()A、基于数据流的结构化开发方法B、基于需求动态定义的原型方法C、基于对象的面向对象的方法D、基于实体的信息建模方法3、面向对象方法的主要特征除了封装,继承外还有()A、完整性B、多态性C、可移植性D、可维护性4、结构化设计方法在软件开发中用于()A、概要设计B、详细设计C、可行性分析D、测试5、软件质量保证应该在()阶段开始。

A、编码B、需求分析C、测试D、设计6、数据字典是对数据定义的集合,它所定义的数据包含在()A、数据流图B、流程图C、软件结构图D、顺序图7、结构化程序的三种基本控制结构是()A、过程、函数、模块B、调用、返回、转移C、顺序、选择、循环D、命令、语句、函数8、软件详细设计的任务是确定每个模块的()A、软件体系结构B、功能C、外部接口D、算法和数据结构9、在结构化设计中能够衔接概要设计和详细设计的工具是()A、类图B、流程图C、DFD图D、SC图10、顺序图反映对象之间发送信息的时间顺序,它与()是同构的。

A、类图B、状态图C、协助图D、活动图11、下面说法错误的是()A、该图是对象图B、borrowbook()是方法C、name是属D、该图是类图12、下图中描述“聚合关系”的是() A 、 B 、 C 、 D 、 13、下面的顺序图问号所代表的是() 级专业:题 )……封………………………………………线……………………………………A、激活区B、角色C、消息D、生命线14、()可对需求进行建模A、SC图B、用例图C、活动图D、部署图15、需求分析的任务不包括()A、系统设计B、问题分析C、需求描述D、需求评审16、当模块中包含复杂的条件组合时,应采用()来描述A、SC图B、判断表C、流程图D、E-R图17、软件可行性分析研究不包括()A、法律可行性B、技术可行性C、政治可行性D、技术可行性18、下面最松散的耦合是()A、非直接耦合B、功能耦合C、数据耦合D、控制耦合19、静态数据结构的概念模式是()A、E-R图B、DFD图C、判断树D、SC图20、结构化程序设计理论认为,实现良好的程序结构应采用的分析方法()A、基于组件B、面向对象C、自顶向下D、基于服务21、DFD图中每个加工最少包括()A、一个输入流B、一个输出流C、一个输入流或者一个输出流D、一个输入流和一个输出流22、()技术是将一个活动图中的活动状态进行分组,每组表示特定的类负责相应的活动。

《软件体系结构课程》试卷A及答案

《软件体系结构课程》试卷A及答案

软件体系结构课程试卷A专业:考试日期:时间:总分:分闭卷一大题:判断题(共10小题,每小题2分,共20分)1. 构架就是系统的总体结构。

()2. 架构设计中对不同风险承担者提出的要求都要一视同仁,全部予以解决。

()3. 软件架构的风格、软件体系的框架和软件的设计模式,其实就是同一个概念。

()4. 在C2风格的系统中每个构件和连接件都有一个顶部一个底部。

构件的顶部与某连接件的底部连接,构件的底部与某连接件的顶部连接,构件与构件之间也可以直接连接。

()5. 可修改性战术的主要目的是减少由某个变更直接或者间接影响的模块的数量。

()6. 软件构架可以由几名设计师共同完成。

()7.构架可以依靠某一特定产品或工具。

()8. 构架评审的目的是给出关于能否获得某种质量属性的明确保证。

()9. ATAM方法可以看做是一个框架,该框架依赖于质量属性,并使用不同的分析技术。

()10. 构架的文档应该完备,并使所有风险承担者都能看懂。

()二大题:论述与应用题(共7小题,第1—2小题,每题7分,第3—6小题,每题9分,第7小题30分,共80分)1. 架构的设计受到哪些因素的影响?2.结合自己的生活实践谈谈为什么设计师沟通能力也会影响架构设计?3.架构风格与设计模式、框架之间的区别在哪里?4.与C/S风格相比较,B/S风格的体系结构有哪些的优缺点?5.票务系统采用的是三层结构,从软件设计的角度,简单地谈谈你对三层(多层次)结构的理解。

6.在大量用户访问时,为了提高系统的性能,系统可以采用哪些技术来解决?7.请根据所学的知识对你的暑期实训作业进行架构设计(应至少包括:➀项目背景、➁需求分析、➂系统架构设计、➃构架的表述、➄质量属性效用树、➅对系统构架的再分析等几个部分)。

院系:专业班级:姓名:学号:装订线软件体系结构课程试卷A答案专业:考试日期:时间:总分:分闭卷一大题:判断题(共10小题,每小题2分,共20分)(1) 构架就是系统的总体结构。

软件体系结构考试参考试题

软件体系结构考试参考试题

壹 . 名词解释(参考斯佳分享的名词解释文档)1.ADL(Architecture Description Language) 体系结构描述语言2. SOA(Service-Oriented Architecture) 面向服务架构3. DSSA (Domain Specific Software Architecture) 特定领域软件体系结构4.CORBA(Common Object Request Broker Architecture) 公共对象请求代理体系结构5. UML(Unified Modeling Language) 统一建模语言6.XML(Extensible Markup Language ) 可扩展标记语言7.B/S(Browser/Server) 浏览器/服务器C/S(Client/Server) 客户端/服务器8.HMB(Hierarchical [ˌhaɪə'rɑ:kɪkl] message bus) 层次消息总线9.SA (Software Architecture) 软件体系结构10.OMG(Object Management Group) 对象管理组织11.SOAP(Simple Object Access Protocol) 简单对象访问协议12.WSDL(Web Services Description Language) web服务描述语言13.SOAD(Service Oriented Analysis And Design) 面向服务的分析与设计14.DCOM(Distributed Component Object Model) 分布式对象组件模型 (Module Interconnection Language) 模块内连接语言贰 . 判断题1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。

311082030软件设计与体系结构期中考试试卷及答案下午

311082030软件设计与体系结构期中考试试卷及答案下午

311082030-软件设计与体系结构期中考试试卷及答案-下午评阅教师得分四川大学期中考试试题(开卷)(2014~2015学年第2学期)课程号: 311082030 课程名称:软件设计与体系结构(B卷)任课教师:适用专业年级:软件工程 2013级学号:姓名:2. 请将答案全部填写在本试题纸上;3. 考试结束,请将试题纸、添卷纸和草稿纸一并交给监考老师。

❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸❸一、Choice question(10 items,3points each,total30points)提示:在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在下表中。

错选、多选或未选均无分。

1.Which of the following view belongs to allocation view? (C )(A) Decomposition (B) Shareddata(C) Deployment (D) Use2 The aspect that Availability concerns include ( B )(A) How to modify system (B)How to check system faults(C) Show the easiness of software bugs(D) Whether easy to use3.Which quality attribute does tactic that maintains semantic consistence support? ( B )(A) Availability (B)Modifiability(C) Testability (D)Accuracy 4.Which of the following structures belong to component-and-connector structure? (BCD )(A) Layered structure(B) Concurrency structure(C)Client-Server structure(D) publish-subscribe(E) Implementation structure5.Stakeholder of the system includes(ABCDE)(A)Project manager (B)Tester (C)Implementer (D)User(E)Architect6.Witch contexts influence on the architecture(ABCD )(A)Technical (B)Project (C)Business (D)Profession (E)Hobby7.What questions does the module structure answer (ADE )(A)What is the primary function responsibility of each module(B)What are the major executing components (C)What processor does each software element execute on(D)What other elements allowed to use(E)What software does it use and depend on 8.Why an architecture is important from a technical perspective(ABCDE )(A)It supports or inhibits the quality attributes (B)It reduces design and system complexity by restricting design alternatives(C)It can help project manager accurately estimate the cost and schedule(D)It’s documents enhances communication among stakeholders(E)It can be the foundation for training a new team member9.Tactics that resource management adopted include评阅教师 得分(ABE )(A) Increase available resource(B) Introduce concurrency(C) Reduce computational cost(D) Increase computational efficiency(E) Maintain multiple copies of either data or computations10.Modifiability concerns what problems (BCDE )(A) System ’s natural work time.(B) Which part of the system can be modified?(C) When to modify?(D) Who will do the modification?(E) The cost to modify二、terms to explain (5 items ,4 points each ,total 20points )1. Software architectureThe software architecture of a system is the set of structures needed to reason about the system, which comprise software elements , relations among them , and properties of both软件构架是一组解释系统的结构,这些结构包含了软件元素及元素之间的关系和特性评阅教师 得分2. Architecture Influence CycleThe architecture and the environment, such as business goal, technical, project and architect ’s profession influenced each other , the mechanism call Architecture Influence Cycle ( AIC )4. Quality attribute scenarioA quality attribute scenario is a quality-attribute-specific requirements, it consists six parts: Source of stimulus, Stimulus, Environment, Artifact, Response and Response Measure.4. TacticA tactic is a design decision that influences the achievement of a quality attribute response5. SecuritySecurity is a measure of the system’s ability to protect data and information from unauthorized access while still providing access to people and system that are authorized.三、Short Answer Questions (3 items ,10points each ,total 30points )1. Why do we need different architectural structures to reason about the system? Give your reason or example.Modern system are frequently too complex to grasp all at once, we restrict our attention at any one moment to one of the software system’s structure(3) There are three structures in the software architecture: module structure, component-and-connector(C&C) structure, allocation structure. (3)Module structures partition systems into implementation unit, modules are assigned specific computational responsibilities, and are the basis of work assignment. Module structures are static structure(1)C&C structures focus on the way the elements interact with each other at runtime to carry out the system’s functions(1)Allocation structures map software structures to the system’s environment(1)2. How various tactics to support qualities attributes of software do impact each other? Give two examples, one explains the positive impact, another explains negative impact.The positive impact, the increase cohesion is a tactic to support modifiability, but it support the availability and testability.(5)评阅教师 得分The negative impact, the intermediate tactic to support the modifiability, but it inhibit the performance (5)3. Drawing a concrete quality attribute scenario(six parts) according to below description.An operator inputs wrong data to the system, under normal operation, the system must notify the operator to input the correct data with no downtime.Source of stimulus: An operatorStimulus: wrong inputArtifact: processEnvironment: Normal operationsResponse: notify the operator to input the correct stringResponse measure: No downtime四、Analytical questions (1items ,20points each ,total 20points )1.Analyze the below structure, andanswer question.1) Explain the layered structure according to it ’s elements, relation among elements and affected quality attributes ? (8)注:试题字迹务必清晰,书写工整。

软件体系结构试题(试题+答案)

软件体系结构试题(试题+答案)

1、设计模式一般用来解决什么样的问题( a)A.同一问题的不同表相 B不同问题的同一表相C.不同问题的不同表相D.以上都不是2、下列属于面向对象基本原则的是( c )A.继承B.封装C.里氏代换 D都不是3、Open-Close原则的含义是一个软件实体( a )A.应当对扩展开放,对修改关闭.B.应当对修改开放,对扩展关闭C.应当对继承开放,对修改关闭D.以上都不对4、当我们想创建一个具体的对象而又不希望指定具体的类时,可以使用( a )模式。

A.创建型B.结构型 C行为型 D.以上都可以5、要依赖于抽象,不要依赖于具体。

即针对接口编程,不要针对实现编程,是( d ) 的表述A.开-闭原则B.接口隔离原则C.里氏代换原则D.依赖倒转原则6、依据设计模式思想,程序开发中应优先使用的是( a )关系实现复用。

A, 委派 B.继承 C创建 D.以上都不对复用方式:继承和组合聚合(组合委派)7、设计模式的两大主题是( d )A.系统的维护与开发 B 对象组合与类的继承C.系统架构与系统开发D.系统复用与系统扩展8、单子模式中,两个基本要点( a b )和单子类自己提供单例A .构造函数私有 B.唯一实例C.静态工厂方法D.以上都不对9、下列模式中,属于行为模式的是( b )A.工厂模式 B观察者 C适配器以上都是10、“不要和陌生人说话”是( d )原则的通俗表述A.接口隔离B.里氏代换C.依赖倒转D.迪米特:一个对象应对其他对象尽可能少的了解11、构造者的的退化模式是通过合并( c )角色完成退化的。

A.抽象产品 B产品 C创建者 D使用者12、单子(单例,单态)模式类图结构如下:下列论述中,关于”0..1”表述的不正确的是( d )A.1表示,一个单例类中,最多可以有一个实例.B.”0..1”表示单例类中有不多于一个的实例C.0表示单例类中可以没有任何实例D.0表示单例类可以提供其他非自身的实例13、对象适配器模式是( a )原则的典型应用。

软件体系结构试题库软件工程试题和答案

软件体系结构试题库软件工程试题和答案

一、判断题1、软件重用是指重复使用已有的软件产品用于开发新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的;答案:√2、可重用技术对构件库组织方法要求不仅要支持精确匹配,还要支持相似构件的查找;答案:√3、软件体系结构充当一个理解系统构件和它们之间关系的框架,特别是那些始终跨越时间和实现的属性;答案:√5、构件可以由其他复合构建和原子构件通过连接而成;答案:√6、体系的核心模型由5种元素组成:构建、连接体、配置、端口和角色答案:√7、软件体系结构的核心由5种元素组成:构件、连接件、配置端口和角色;其中,构件、连接件和配置是最基本的元素答案:√8、开发视图主要支持系统的功能需求,即系统提供给最终用户的服务答案:X9、构件、连接件以及配置是体系结构的核心模型最基本的元素答案:√10、HMB风格不支持系统系统自顶向下的层次化分解,因为它的构件比较简单;答案:×11、正交软件体系结构由组织层和线索的构件构成;答案:√13、线索是子系统的特例,它由完成不同层次功能的构建组成,每一条线索完成整个系统中相对独立的一部分功能;答案:√14、层次系统中支持抽象程度递增的系统设计是设计师可以把一个复杂系统按照递增的步骤进行分解,同时支持功能增强,但是不支持重用;答案:×16、在软件设计中占据着主导地位的软件体系结构描述方法是图形表达工具;答案:√18、体系结构设计是整个软件生命周期中关键的一环,一般在需求分析之后,软件设计之前进行;答案:√19、基于软构件的系统描述语言是较好的一种以构件为单位的软件系统描述语言;答案:√21、基于构件的动态系统结构模型分为三层,风别是应用层、中间层、和体系结构层;答案:√23、基于构件的动态系统结构模型分为应用层,中间层和体系结构层;答案:√29、一般的说,一个模式有一下4个基本成分,1.模式名称,2.问题,3.解决方案,4.效果,这句话是对的答案:√30、设计模式的概念最早是由美国的一位计算机专家提出的;答案:X31、利用设计模式可以方便地重用成功的设计和结构;答案:√33、在模式目录中,每个模式描述的多少与别的模式无关;答案:√36、在体系结构级进行风险评估是更有利于开发阶段的前期评估;答案:×39、评估方法质量属性中安全性不包括完整性;答案:×41、软件体系结构评估只针对一个体系结构,不可以针对一组体系结构;答案:×43、软件重用长期以来一直是软件工程界不断追求的目标;答案:√二、填空题1、软件元素包括程序代码、设计文档、设计过程、需求分析文档、测试用例甚至领域知识;答案:程序代码、测试用例、设计文档、设计过程、需求分析文档2、软件重用过程中需要重用的开发组织结构予以支持,它包括:_构建开发组_____、_构建应用组______、_协调组________3、三组成员组成;4、答案:构件开发组、构件应用组、协调组;5、采用层次式软件体系结构,将产品的系统构件模型定义为4个层次,分别为:系统构建层、通用类构建层、业务类构建层、表现层;答案:系统构件层、通用类构件层、业务构件层、表现层5、软件体系结构的模型分为5种:结构模型、框架模型、动态模型、过程模型和功能模型;答案:结构模型,动态模型;8、软件体系结构的生命周期模型主要分为需求分析阶段,建立软件体系结构阶段设计阶段和实现阶段;答:设计阶段9、软件体系结构应建立于传统的软件开发过程的_需求分析_______和_软件设计_______阶段之间;答案:需求分析、软件设计11、三层C/S结构风格是由__表示层_______、__功能层_______和_数据层_________构成的;答案:表示层、功能层、数据层12、消息总线对消息过滤提供了___转换_____和___阻塞________两种方式;答案:转换、阻塞13、正交软件体系结构由__组织层__和__线索的构建___构成;答案:组织层、线索的构件14、C/S体系结构服务器主要负责有效的管理系统的资源主要负责_数据库安全性的要求________、__数据库访问并发性的控制_______、_数据库前端的客户应用的全局数据完整性规则________和数据库的备份与恢复_________;答案:数据库安全性的要求、数据库访问并发性的控制、数据库前端的客户应用程序的全局数据完整性规则、数据库的备份与恢复16、软件体系结构的描述方法主要有图形表达工具、模块内连接语言、基于软构件的系统描述语言和软件体系结构描述语言;答案:图形表达工具、模块内连接语言、软件体系结构描述语言17、ADL是一种在底层语义模拟支持下的形式化语言;基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持;答案:表示、演化、细化18、可重用的体系结构描述框架可以从需求、设计、实现和测试四个视点出发描述体系结构;答案:需求视点、设计视点、实现视点、测试视点20、典型的ADL在充分继承和吸收传统程序设计语言的和特点的同时,还应该具有构造、抽象、重用、组合、异构和分析推理等多种能力和特性;能力指的是ADL使得其描述的每一个系统元素都有其自己的局部结构;答案:精确性、严格性,组合21、体系结构的动态性分为“_________”“_________”“_________”三类;答案:交互式动态性、结构化动态性、体系结构动态性22、基于构件的动态体统结构模型CBDSAM支持运行系统的动态更新;该模型分为三层,分别是应用层、_________和________________;答案:中间层、体系结构层23、体系结构的动态性主要分为几类:_________、_________、___________;答案:交互式动态性,结构化动态性、体系结构化动态性;24、对动态软件体系结构的形式化描述通常有______、_______、_________三种方法;答案:图形化方法、进程代数方法、逻辑描述方法25、一个完整的Web服务包括3种逻辑构件:______、______、_______;答案:服务提供、服务代理、服务请求29、MVC模式的中的M,V,C分别对应______、_______、_________三种单词;答案:Model,View,Controller32、设计模式的基本成分包括______________、___________、___________、__________;答案:模式名称、问题、解决方案、效果;39、体系结构评估中,一般采用刺激,环境,和_____三方面来对场景进行描述;答案:响应40、可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力;包括可维护性、可扩展性、、可移植性4个方面;答案:结构重组;42、软件重用是为了解决_____答案:软件危机43、________的开发是大型软件系统开发的关键环节;答案:软件体系结构44、领域工程阶段的主要任务有_____、______和______三个阶段;答案:领域分析、领域设计、领域实现45、软件体系结构设计的主要目的是满足对软件的_____;答案:质量需求三、选择题1、软件危机的原因不包括:A、用户需求不明确B、缺乏正确的理论指导C、软件规模越来越大D、软件复杂度越来越低答案:D2、下列选项中,哪个不是重用组织框构中的主要组成成员:A.协调组B.构件应用组C.构件需求组D.构件开发组答案:C3、常用的软件体系结构评估的方法不包括:A体系结构权衡分析法B.软件体系结构分析法C系统体系结构分析法D中间设计的积极评审答案:C4、下列选项中,不是软件危机的原因的是:CA、用户需求不明确B、缺乏正确的理论指导C、软件规模越来越小D、软件的复杂度越来越高P25、不属于软件体系结构的核心模型的最基本的元素是A构件B连接件 C配置D角色答案:D6、选项中不属于“4+1”试图模型的是:A逻辑视图B物理视图C连接视图D开发视图答案:C7、下列说法错误的一项的是A:逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务B:开发视图也称模块视图,主要侧重于软件模块的组织和管理C:进程视图侧重与系统的运行特性,主要关注一些功能性需求,例如系统的性能和可用性;D:物理视图主要考虑如何吧软件映射到硬件上,它不需要要考虑到系统性能、规模、可靠性等;答案:D8、Kruchten在1995提出了“4+1”模型,从5个不同的视角来描述软件体系结构,其中“4”不包括的视图是A逻辑视图B开发视图C物理视图D场景视图答案:D9、下列哪个选项是描述系统的静态结构A.逻辑视图和开发视图B.进程视图和物理视图C.开发视图和物理视图D.开发视图和进程视图答案:A11、正交软件体系结构的有点有A结构清晰,易于理解B易修改,可维护性强C可移植性强,重用程度大D以上都是答案:D12、C/S系统中,服务器的以下任务中哪一个是错的A数据库一致性要求B数据库访问并发性控制C数据库前端的客户应用程序的全局数据完整性规则D数据库的备份与恢复13、下列哪个不是黑板系统的组成部分A.知识源B.黑板数据结构C.控制D.内存答案:D14、与C/S体系结构相比,B/S体系结构也有许多不足之处一下说法正确的是AB/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理能力BB/S体系结构的系统扩展能力差,但是安全性比较容易控制C采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远的高于C/S体系结构DB/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,利于在线事务处理OnlineTransactionProcessing,OLTP应用;答案:A15、以下不是正交软件体系结构优点的是A.结构清晰,易于理解B.已修改,可维护性强C.可移植性强,重用粒度大D.很大很复杂答案:D16、以下关于软件体系结构描述方法说法错误的是A.图形表达工具在软件设计中占据主导地位;B.由于软件设计语言和模块内连接语言具有严格的语义基础,因此它们能支持较小的软件单元进行描述;C.基于软构件的系统描述语言将软件系统描述成一种是由许多以特定形式相互作用的特殊软件实体构造组成的组织或系统;D.软件体系结构描述语言是参照传统程序设计语言的设计语言的设计和开发经验,重新设计、开发和使用针对软件体系结构描述语言;答案:B20、下列选项中关于ADL与其他语言的比较说法中错误的是A.ADL与需求语言的区别在于后者描述的问题空哦关键,而前者则扎根于解空间中B.ADL与建模语言的区别在于后者对部分的关注要大于对整体的关注C.ADL与传统的程序设计语言的构成元素由许多相同和相似之处,有各自有着很大的不同D.ADL集中在构件的表示上;29、下面哪个不属于设计模式方法分类ACoad的面向对象模式B代码模式C框架应用模式D遗传算法答案:D30、一般来说,模式有以下四个基本成分:、问题、解决方案、效果;A.模式名称B.时间C.地点D.思想答案:A31、软件体系结构的文档要求与软件开发项目中的其他文档是相似的,下列哪项属于体系结构文档化过程的主要输出结果A体系结构需求规格说明B体系结构概要设计说明C体系结构详细设计说明D体系结构总体框架说明答案:A33、在设计模式目录下,以下哪种设计模式是关于类的A.答案:A36、在体系结构中,应用于当前环境中有多个构建同时运行的情况,主要用来提高系统性能的结构风格是A、顺序结构风格B、并行/管道—过滤器结构风格C、容错结构风格D、调用—返回结构风格答案:B39、评估方法质量属性中可修改性不包括;A.可维护性B;可扩展性C.完整性D.可移植性答案:C40、是场景中解释或描述风险承担者怎样金发与系统的交互部分;A.刺激B.环境C.响应D.互操作答案:A41、软件评估中关注大可修改性包含可维护性,可扩展性,和结构重组4个方面;A;可用性B;可移植性C;可变性D;互操作性答案:B43、一下哪个不是领域工程阶段的主要任务;A、领域设计B需求分析C、领域分析D、领域实现答案:B四、名词解释1、软件危机答案:是指计算机软件的开发和维护过程中所遇到的一系列严重问题2、软件重用答案:是指在两次或多次不同的软件开发过程中重复使用相同或相近软件元素的过程;3、构件组装4、答案:构件组装是指将库中的构件经适当修改后相互连接,或者将它们与当前开发项目中的软件元素相连接,最终构成新的目标软件;5、构件答案:是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体;7、场景scenarios:答:场景可以看做是那些重要系统活动的抽象,它使4个视图有机联系起来,从某种意义上说场景是最重要的需求抽象;9、软件体系结构答案:软件体系结构是一个设计,它包括所建立系统中的各元素构件和连接件的描述、元素之间的交互、指导装配的范例和对范例的约束;10、软件体系结构风格答案:软件体系结构风格是描述某一特定领域中系统组织方式的惯用模式;13、C2体系结构风格答案:C2体系结构风格可以概括为通过连接件绑定在一起的、按照一组规则运作的并行构件网络;14、COBRBA接口池答案:COBRBA接口池包括分布计算机环境中所有可用的服务器对象的接口表示它使动态搜索可用服务器的接口,动态构造请求及参数成为可能;17、连接件:答案:连接件是用来建立构件间的交互以及支配这些交互规则的体系结构构造模块;18、体系结构配置:答案:体系结构配置或拓扑是描述体系结构的构件与连接件的连接图;体系结构配置提供信息来确定构件是否正确连接、接口是否分配、连接件构成的通信是否正确,并说明实现要求行为的组合含义;19、构造能力:答案:构造能力指的是ADL能力使用较小的独立体系结构元素来建造大型软件系统;20、ADL:答案:ADL是这样一种形式化语言,他在底层语义模型的支持下,为软件系统的概念结构建模提供了具体语法和概念模型;21、软件体系结构的动态性答案:软件系统在运行时刻的体系结构变动;29、需求答案:用户对目标软件系统在功能、行为、性能、设计约束等方面的期望31、模式答案:模式是指从某个具体的形式中得到的一种抽象,在特殊的非任意性的环境中,该形式不断地重复出现;33、设计模式答案:一些设计面向对象的软件开发的经验总结,就是系统的命名、解释、和评价某一个重要的面向对象的可重现的面向对象的设计方案;38、可修改性答案:可修改性是指能够快速地以较高的性能价格比对系统进行变更的能力;通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性;可修改性包括:1可维护性2可扩展性3结构重组4可移植性40、基于场景的评估方法;答:场景是一系列有序地使用或修改系统的步骤;这种评估方式分析软件体系结构对场景也就是对系统的使用或修改活动的支持程度,从而判断该体系结构对这一场景所代表的质量需求的满足程度; 基于场景的评估方式涉及的基本活动包括确定应用领域的功能和软件体系结构之间的映射,设计用于体现待评估质量属性的场景以及分析软件体系结构对场景的支持程度;五、问答题1、纵观软件体系结构技术的发展过程,从最初的“无结构”设计到现行的基于体系结构的软件开发,可以认为经历了哪四个阶段答案:1“无体系结构”设计阶段;以汇编语言进行小规模应用程序开发为特征2萌芽阶段;出现了程序结构设计主题,以控制流图和数据流图构成软件结构为特征3初期阶段;出现了从不同侧面描述系统的结构模型,以UML为典型代表4高级阶段;以描述系统的高层抽象结构为中心,不关心集体的建模细节,划分了体系结构模型与软件结构的界限,该阶段以Kruchten,提出了“4+1”模型为标志,由于概念尚不统一,描述规范也不能达成一致认识,因此在软件开发实践中软件体系结构上布恩那个发挥重要作用;2、试述下可重用技术对构件库组织方法的几点要求:答案:1支持构件库的各种维护动作,如增加、删除以及修改构件,尽量不要影响构件库的结构;2不仅要支持精确匹配,还要支持相似构件的查找;3不仅能进行简单的语法匹配,而且还能够查找在功能或行为方面等价或相似的构件;4对应用领域具有较强的描述能力和较好的描述精度;5库管理员和用户容易使用3、简要概产生软件危机的原因4、答案:1.用户需求不明确2.缺乏正确的理论指导3.软件规模越来越大4.软件复杂度越来越高;5、软件体系结构的定义众多,你是如何理解软件体系结构的软件体系结构在软件系统中有何作用6、答案:1软件体系结构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素继承的模式以及这些模式的约束组成;软件体系结构不仅指定了系统的组织结构和拓扑结构,还显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理;2体系结构是风险承担者进行交流的手段;它明确了对系统实现的约束条件,决定了开发和维护组织的组织结构,制约着系统的质量属性,可以预测软件的质量,是推理和控制更改更简单,有助于循序渐进的原型设计;同时,软件体系结构是可传递和可重用的模型;6、体系结构的生命周期模型分为哪几个阶段答案:1、需求分析阶段2、建立软件体系结构阶段3、设计阶段4、实现阶段7、软件体系结构是必需,软件体系结构的生命周期分为哪几个阶段答:软件体系结构的生命周期可以分为需求分析阶段、建立软件体系结构阶段、设计阶段、实现阶段四个阶段;8、请简述软件体系结构的生命周期;答:以自然语言进行软件结构的非形式化描述,接着运用合适的形式化数学理论模型对上一阶段的非形式化描述进行规范定义,从而得到软件形式结构的形式化规范描述;对设计好的软件体系结构进行验证和求精,直到不需要进行求精验证时,转入软件体系结构的实施;在此阶段将软件结构实施于系统设计中,并将其结构的构件和连接件有机组织在一起;判断软件体系结构是否需要扩展,演化;需要从则重复以上步骤,否则对该体系结构进行评价、度量,转入终结阶段;11、试阐述与C/S体系结构相比,B/S体系结构的不足之处;答案:1、B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能;2、B/S体系结构的系统扩展能力差,安全性难以控制;3、采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远的地低于C/S体系结构;4、B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理应用;12、C/S系统中客户端应用程序有哪些主要任务答案:1、提供用户与数据库的交互界面2、向数据库服务器提交用户请求并接受来自数据库服务器的信息3、利用客户端应用程序对存在于客户端的数据执行应用逻辑要求;14、请简述三层C/S结构的优点答案:1、允许合理的划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为合理清晰,能提高系统和软件的可维护性和可扩展性;2、允许更灵活的选用相应的平台和硬件系统使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层,并且具有可升级性和开放性3、可并行开发,各层可选择各自最适合语言使之高效开发,从而达到较高的性价比4、允许利用功能层有效的隔离开表示层和数据层,未授权的用户难以通过如黑客手段访问数据层,同时也更加合理和有效的控制18、在C2中,连接件和构件是如何工作的答案:连接件负责构建之间消息的传递,而构件维持状态,执行操作并通过两个名字分别为top和buttom的端口和其他的构件交换信息;每个接口包含一种可发送的消息和一组可接受的消息,构件之间的消息要么是请求其他构件执行某个操作的请求消息,要么是通知其他构件自身执行某个操作或状态发生改变的通知消息;构件之间的消息交换不能之间进行,而只能通过连接件来完成;29、设计模式的基本成分有哪4条答案:1、模式名称2、问题3、解决方案4、效果31、软件工程的研究主要有哪三个方向答案:1、软件过程分析和建模;2、软件过程支持;3、软件过程评估和改进;32、简述一下演化开发阶段的八个步骤答案:需求变动归类;制订体系结构演化计划修改、增加或删除构件;更新构件的相互作用;产生演化后的体系结构迭代;对以上步骤进行确认,进行阶段性技术评审;对所做的标记进行处理;33、设计模式可以分为几类答案:创建型、结构型、行为型;1.什么是体系结构描述语言它与程序语言以及UML有哪些区别与联系ADL是在底层语义模型的支持下,为软件系统的概念体系结构建模提供了具体语法和概念框架;基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等提供支持;其三个基本元素是:构件、连接件、体系结构配置;跟其他语言的比较:◎构造能力:ADL能够使用较小的独立体系结构元素来建造大型软件系统;◎抽象能力:ADL使得软件体系结构中的构件和连接件描述可以只关注它们的抽象特性,而不管其具体的实现细节;◎重用能力:ADL使得组成软件系统的构件、连接件甚至是软件体系结构都成为软件系统开发和设计的可重用部件;◎组合能力:ADL使得其描述的每一系统元素都有其自己的局部结构,这种描述局部结构的特点使得ADL支持软件系统的动态变化组合;◎异构能力:ADL允许多个不同的体系结构描述关联存在;◎分析和推理能力:ADL允许对其描述的体系结构进行多种不同的性能和功能上的多种推理分析;2.管道过滤器风格结构特点1使得软构件具有良好的隐蔽性和高内聚、低耦合的特点;2允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成;3支持软件重用;4系统维护和增强系统性能简单;5允许对一些如吞吐量、死锁等属性的分析;6支持并行执行;但是,这样的系统也存在着若干不利因素;1通常导致进程成为批处理的结构;这是因为虽然过滤器可增量式地处理数据,但它们是独立的,所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换;2不适合处理交互的应用;当需要增量地显示改变时,这个问题尤为严重;3因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作,这样就导致了系统性能下降,并增加了编写过滤器的复杂性;4.什么是设计模式它与风格、框架有什么区别与联系设计模式是对通用设计问题的重复解决方案;软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式;软件框架是整个或部分系统的可重用设计模式比框架更加抽象框架是模式的特例化设计模式被实现成为框架后,可以极大的减轻从设计到实现的鸿沟利用了模式的框架比没有利用模式的框架更容易理解、更能被设计与实现重用通常成熟的框架包含了多种设计模式一个框架不仅可以具体实现一个模式,还可以具体的实现多个模式设计模式与风格两者为近义词,通常情况下可以互相通用风格主要是指大的,宏观的设计;模式既可宏观,又可微观;7.什么是软件危机,软件危机的具体表现有哪些软件危机:落后的软件生产方式无法满足迅速增长的计算机软件需求,从而导致软件开发与维护过程中出现一系列严重问题的现象;软件危机的表现:软件成本日益增长开发进度难以控制软件质量差。

软件体系结构试题与解答

软件体系结构试题与解答

模拟试题(一)第一题: 名词解释(每题5分, 共20分)1.软件体系构造(Software Architecture)2.软件体系构造风格(Software Architecture Style)3.软件质量属性4.质量属性驱动旳设计措施(ADD)第二题: 单项选择(每题4分, 共20分)1. 下面哪种方略可以用来满足可测试性(Testability)旳质量属性?A) 心跳(Heartbeat) B) 模块旳抽象化(Generalize the module)C) 记录/重放 D) 授权顾客2. “系统在提供服务给合法顾客旳同步抵制未授权使用旳能力”这是哪种质量属性关怀旳问题?A) 性能 B) 可测试性C) 可移植性 D) 安全性3. 下面哪种视图不属于软件体系构造中定义旳“4+1”视图?A) 物理视图 B) 设计视图C) 场景视图 D) 开发视图4. 下面旳图是什么图?A) 序列图 B) 组件图C) 对象图 D) 用例图5. 下面旳图形描述了何种体系构造风格?A) C/S B) 有序批处理 C) 主程序/子程序 D) 面向对象第三题:简答(每题5分, 共20分)1.请描述管道-过滤器体系构造风格旳特点并给出适合使用这种风格旳一种应用场景。

2.请简要阐明黑板风格旳定义。

3.请简要阐明体系构造权衡分析措施和该措施旳特点。

4. 什么是“4+1视图”, 分别给出每个视图旳名称和重要关注点。

软件体系构造分析: 效用树(20分)某企业要开发一种在线交易系统, 该系统重要关注性能、可更改性、可用性和安全这五个质量属性。

负责开发旳团体分析了各个质量属性, 设计了一种参照旳体系构造。

该团体欲采用效用树技术对体系构造进行评估, 下面是有关旳场景: ☎∙∙站点 断电后 可以在 秒内完毕流量到站点 旳迁移;●信用卡交易需要有99.999% 旳安全性;●顾客旳授权数据库需要在 99.999% 旳状况下保证可用;●视频必须实时传播;●可以在4人-周内完毕对Web顾客界面旳变化网络失效和恢复必须在1.5分钟内完毕;●减少对客户数据库访问旳时间至200毫秒以内;请根据以上描述, 构建对应旳效用树2. 软件体系构造构建(20分)Travelling 是一家新兴旳旅游服务提供商, 可以在线为顾客提供在线旳实时旅游信息服务, 包括路线信息, 景点简介, 公交线路查询等, 其系统旳基本旳功能如下所示:☎∙∙顾客可以在网站上注册帐号和密码 成为该站点旳客户;☎∙∙客户可以使用浏览器访问网上旳站点 搜索并返回感爱好旳景点信息;☎∙∙该企业需要集成来自旅游线路提供商旳数据库 提供旅游线路支持;需要集成来自景点旳信息提供商旳数据库提供景点信息;需要集成公交企业旳应用系统提供公交信息查询能力。

软件工程期中试卷

软件工程期中试卷

一、单项选择(每题2分,共30分)1、总体设计目的是确定整个系统的( D )。

A、规模B、测试方案C、费用D、功能及模块结构2、模块在同一段时间内完成各种初始化工作,这属于( C )。

A、偶然内聚B、逻辑内聚C、时间内聚D、过程内聚3、开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称( C )A. 软件工程B. 软件周期C. 软件危机D. 软件产生4、软件详细设计的主要任务是确定每个模块的(A)A、算法和使用的数据结构B、外部接口C、功能D、编程5、软件结构图的形态特征能反映程序重用率的是( C )A、深度B、宽度C、扇入D、扇出6、为了提高模块的独立性,模块内部最好是( C )A、逻辑内聚B、时间内聚C、功能内聚D、通信内聚7.程序的三种基本控制结构是 C 。

A 过程、子程序、和分程序B 顺序、选择和循环C 递归、堆栈和队列D 调用、返回和转移8.可行性研究要进行一次 C 需求分析。

A.详细的 B.全面的 C.简化的,压缩的 D.彻底的9.(C )产生软件危机的原因主要与两个方面的问题有关:A)软件在计算机中很难识别,存在磁盘中也看不到。

B)软件设计对人的智商要求很高,也要求很高的资金投入。

C)软件产品本身的特点与其它工业产品不一样,而且在软件的开发和维护过程中用的方法不正确。

D)软件很难理解,硬件也很复杂。

10.(B )软件开发瀑布模型中的软件定义时期各个阶段依次是:A)可行性研究,问题定义,需求分析。

B)问题定义,可行性研究,需求分析。

C)可行性研究,需求分析,问题定义。

D)以上顺序都不对。

11.(A )可行性研究主要从以下几个方面进行研究:A)技术可行性,经济可行性,操作可行性。

B)技术可行性,经济可行性,系统可行性。

C)经济可行性,系统可行性,操作可行性。

D)经济可行性,系统可行性,时间可行性。

12.( C ) 耦合是对软件不同模块之间互连程度的度量。

各种耦合按从强到弱排列如下:A)内容耦合,控制耦合,数据耦合,公共环境耦合。

软件架构与设计模式考核试卷

软件架构与设计模式考核试卷
13.在软件架构中,事件驱动架构的主要优点是什么?()
A.提高系统的响应速度
B.降低系统间的耦合度
C.提高系统的可维护性
D.简化系统设计
14.以下哪个模式不属于设计模式中的策略模式?()
A.简单策略模式
B.状态策略模式
C.算法策略模式
D.行为策略模式
15.在软件架构中,RESTful架构风格的特点是什么?()
4.单例模式是唯一的一种创建型设计模式。()
5.软件架构的关注点是如何将系统的不同部分组合在一起,而不是这些部分的具体实现。()
6.在MVC模式中,视图负责处理用户的输入并响应用户的请求。()
7.微服务架构相比于传统的单体架构,更容易进行维护和扩展。()
8.适配器模式主要用于解决接口不兼容的问题。()
A.对象中介者模式
B.类中介者模式
C.接口中介者模式
D.组件中介者模式
二、多选题(本题共20小题,每小题1.5分,共30分,在每小题给出的四个选项中,至少有一项是符合题目要求的)
1.软件架构设计时应该考虑以下哪些原则?()
A.模块化
B.封装
C.可维护性
D.灵活性
2.以下哪些是设计模式中的创建型模式?()
A.基于组件的开发
B.面向对象的设计
C.独立的服务组件
D.面向过程的开发
8.以下哪个模式不属于设计模式中的行为型模式?()
A.策略模式
B.模板方法模式
C.状态模式
D.职责链模式
9.在软件架构中,微服务架构的主要优势是?()
A.高内聚,低耦合
B.提高系统的可维护性
C.系统间的松耦合
D.独立部署和扩展
10.以下哪个模式不属于设计模式中的命令型模式?()

软件工程中的软件系统建模与设计考核试卷

软件工程中的软件系统建模与设计考核试卷
10.在软件部署阶段,部署图主要用于展示软件系统的_______配置和_______分配。
四、判断题(本题共10小题,每题1分,共10分,正确的请在答题括号中画√,错误的画×)
1.软件系统建模是在软件开发过程中最早进行的步骤。()
2. UML图中的类图主要用于描述系统中类的结构和类之间的关系。(√)
A.单一职责原则
B.开放封闭原则
C.里氏替换原则
D.以上都是
5.在软件设计中,以下哪些活动属于详细设计阶段?()
A.定义模块接口
B.确定数据结构
C.设计算法
D.制定测试计划
6.以下哪些关系可以用来说明类之间的关系?()
A.继承
B.关联
C.组合
D.聚合
7.关于软件系统建模,以下哪些说法是正确的?()
A.建模有助于理解和分析问题
B.状态模式
C.策略模式
D.模板方法模式
17.在软件系统设计时,以下哪些方法可以用来评估设计的复杂性?()
A.循环复杂度
B.类的扇入和扇出
C.耦合度
D.以上都是
18.以下哪些是软件设计模式中常见的行为型模式?()
A.策略模式
B.状态模式
C.命令模式
D.以上都是
19.在软件设计过程中,以下哪些因素会影响软件的架构选择?()
软件工程中的软件系统建模与设计考核试卷
考生姓名:__________答题日期:__________得分:__________判卷人:__________
一、单项选择题(本题共20小题,每小题1分,共20分,在每小题给出的四个选项中,只有一项是符合题目要求的)
1.软件系统建模的目的是()
A.分析和解决问题
D.用例图、类图、顺序图、组件图

软件设计与体系结构复习试题

软件设计与体系结构复习试题

名词说明1.设计模式一些设计面对对象的软件开发的阅历总结,就是系统的命名、说明、和评价某一个重要的面对对象的可重现的面对对象的设计方案。

2.软件体系结构(Software Architecture)软件体系结构以组件和组件交互的方式定义系统,说明需求和成品系统之间的对应关系,描述系统级别的可伸缩性、实力、吞吐量、一样性和兼容性等属性。

软件体系结构由组件、连接件和属性组成。

3.软件体系结构风格(Software Architecture Style)软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。

体系结构风格定义了一个系统家族,即一个体系结构定义一个词汇表和一组约束。

词汇表中包含一些构件和连接件类型约束指出系统中构件和连接件的组合方式,体系结构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。

4.软件产品线产品线是一个产品集合,这些产品共享一个公共的、可管理的特征集,这个特征集能满足选定的市场或任务领域的特定需求。

这些系统遵循一个预描述的方式,在公共的核心资源(core assets)基础上开发的。

5.体系结构描述语言体系结构描述语言(ADL)是在底层语义模型的支持下,为软件系统的概念体系结构建模供应了具体语法和概念框架。

基于底层语义的工具为体系结构的表示、分析、演化、细化、设计过程等供应支持。

其三个基本元素是:构件、连接件、体系结构配置。

6.软件重用指在两次或多次不同的软件开发过程中重复运用相同或相像软件元素的过程。

软件元素包括程序代码、测试用例、设计文档、设计过程、须要分析文档甚至领域学问。

通常,可重用的元素也称作软构件,可重用的软构件越大,重用的粒度越大。

7.构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。

8.构件组装构件组装是指将库中的构件经适当修改后相互连接,或者将它们和当前开发项目中的软件元素相连接,最终构成新的目标软件。

大学_软件体系结构试题及参考答案

大学_软件体系结构试题及参考答案

软件体系结构试题及参考答案软件体系结构试题及参考答案(一)1. 什么是软件工程?构成软件工程的要素是什么?软件工程是将系统化的、规范的、可度量的方法应用于软件的开发、运行和维护过程,即将工程化应用于软件开发和管理之中,对所选方法的研究。

软件工程的要素由方法、工具和过程组成。

方法支撑过程和工具,而过程和工具促进方法学的研究。

2. 什么是软件生存周期?软件开发过程模型与软件生存周期之间是何关系?软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程叫软件生存周期。

软件开发过程模型表示软件开发中各个活动的安排方式,出来软件开发各个活动之间关系,是软件开发过程的概括,是软件工程的重要内容,其为软件管理提供里程碑和进度表,为软件开发过程提供原则和方法,其包括有以软件需求完全确定为前提的瀑布模型,以渐进式开发模型的原型和螺旋模型,以形式化开发方法为基础的变换模型。

3. 叙述软件设计在软件工程中所处的位置和重要性位置:软件需求分析--------需求规格说明------软件设计------设计文档------------软件编码总要性:(1)、是对软件需求的直接体现。

(2)、为软件实现提供直接依据(3)、将综合考虑软件系统的各种约束条件并给出相应方案(4)、软件设计的质量将决定最终软件系统的质量。

(5)、及早发现软件设计中存在的错误将极大减少软件修复和维护所需的成本。

4. 软件设计应该包含哪些要素?软件设计应该包含:目标描述、设计约束、产品描述、设计原理、开发规划、使用描述。

5. 简述UML的特点和用途。

、答:为使用者提供了统一的、表达能力强大的可视化建模语言,以描述应用问题的.需求模型、设计模型和设计模型。

提供对核心概念的扩展机制,用户可加入核心概念中没有的概念和符号,可为特定应用领域提出具体的概念、符号表示和约束。

提供于实现语言和支持所有的方法学,覆盖了面向对象分析和设计的相关概念和方法学。

独立于任何开发过程,但支持软件开发全过程。

华中科技大学软件学院软件体系结构试卷A精选全文完整版

华中科技大学软件学院软件体系结构试卷A精选全文完整版

软件体系结构试卷一、填空题(每空1分,共30分)1.系统的质量属性有多种,请列举其中六种:可用性、可修改性、性能、安全、可测试性、易用性、可移植性、可重用、可集成(任选六个)2.构架战术是:那些影响质量属性的设计决策。

3.构架编档的基本原则是:从读者的角度出发来编写。

4.构架驱动的因素包括:功能、质量、商业属性。

5.构架评审的六个优点是:财务上的收益、强制为评审做的准备、捕获构架设计的基本思想、在早期检测中发现问题、验证需求、改进构架。

6.构架本身的质量属性包括:概念完整性、正确性与完整性、可构建性。

7.构架的商业属性包括:上市时间、成本和收益、所希望统生命周期的长短、目标市场、推行计划、与老系统的集成。

8.构架样式有多种,其中四种是:以数据为中心、数据流、虚拟机、调用返回、独立组件、异构(任选其中四个)二、名词解释(每小题5分,共10分)1.软件架构答:是系统的一个或多个结构,它们由软件组件(元素)、这些组件的外部可见属性以及组件之间的关系组成。

组件的外部可见属性是指其它组件对该组件所做的假设。

2.软件架构商业周期(用画图形式表示)三、对错题(每小题2分,共10分)1.软件构架可以由几名设计师共同完成。

(错)2.设计师对系统的质量属性应平等看待,在系统设计中全部予以解决。

(错)3.构架的文档应该完备,并使所有风险承担者都能看懂。

(对)4.构架的设计应该有助于增量式实现。

(对)5.应将产生数据的模块和使用数据的模块分离开。

(对)四、简答题(每小题5分,共10分)1.为什么要分析软件构架?答:(1)因为构架非常重要,它是风险承担者交流的平台、是早期设计决策的体现,是可传递的系统抽象(构架级重用)。

(2)系统的质量属性不可能在系统实现的最后阶段追加上去,必须在设计之初就考虑到。

2.请说明架构模式、参考模型和参考构架之间的联系与区别。

答:构架模式是对组件和关系类型以及一组对其使用方式的限制的描述。

参考模型是一种考虑数据流的功能划分。

软件体系结构(考试习题集含答案)

软件体系结构(考试习题集含答案)

1、面向对象得方法优势体现在( ABD )A.简化软件开发过程B.支持软件复用C.提高软件运行效率D.改善软件结构2.用户界面设计中得三条“黄金规则”就是( ABC )A.使系统处于用户控制之中B.减少用户得记忆负担C.保持界面得一致性D.保证用户得易学性3.用户界面得分析与设计过程就是迭代得,其中包括得活动就是( ABCD )A.用户、任务以及环境得分析与建模B.界面设计C.界面实现D.界面确认4.界面确认需要注意三个方面( ABC )A.界面正确完成了用户得任务,适应用户得任务变化B.易学性与易用程度C.用户得接受程度D.用户得习惯5.用户界面分析时通常采用得信息获取方式包括( ABCD )A.用户会谈B.销售人员信息采集C.市场分析D.用户支持人员信息收集6.( C )把完成一个特定功能得动作序列抽象为一个过程名与参数表A.数据抽象B.动作抽象C.过程抽象D.类型抽象7.( A)把一个数据对象得定义抽象为一个数据类型名A.数据抽象B.动作抽象C.过程抽象D.类型抽象8.软件体系结构设计需要考虑以下( ABCD )A.适用性B.结构稳定性C.可扩展性D.可复用性9.模块设计时应该考虑(AB )A.模块功能独立B.模块信息得隐藏C.模块接口得简单D.模块实现简单10.一个完整得软件设计得主要活动包括有( ABCD )A.体系结构设计B.界面设计C.模块/子系统设计、D.数据模型、过程/算法设计等11.模块化就是指把一个复杂得问题分割成若干个可管理得小问题后,更易于理解,模块化正就是以此为依据得,在划分模块得过程中应该考虑到( ABC )A.模块得可分解性、可组装型B.模块得可理解性、连续性、C.模块保护D.尽可能低分割模块,使得问题得难度降到最1.什么就是软件工程?构成软件工程得要素就是什么?软件工程就是将系统化得、规范得、可度量得方法应用于软件得开发、运行与维护过程,即将工程化应用于软件开发与管理之中,对所选方法得研究。

软件设计与体系结构题目与答案

软件设计与体系结构题目与答案

1.各种性能指标及如何到达各种性能指标的方法(1)防止变异模式:是如何设计对象,子系统和系统,使这些元素内部的变化或不稳定性不会对其他元素产生不良影响。

解决方案:识别预测的变化或不稳定之处,分配职责用以创建稳定借口。

(2)依赖反转原理:把你的类从局的现实中隔离开,使他们依赖于抽象类或接口。

它促进了代码面向接口而不是实现,这通过保证对实现的低耦合来增加系统的灵活性。

2.常用的中间件有那几种类型(1)常见的对象请求代理架构(2)面向消息的中间件(3)J2EE(4)消息代理(5)业务过程代理3.有那些常见架构风格(1)管道和过滤器架构风格(2)面向对象风格(3)隐式调用风格(4)客户-服务器风格(5)分层风格(6)仓库风格(7)解释程序风格(8)过程控制风格4.架构师需要的核心技能是什么(1)涉众之间的交流(2)技术知识(3)软件工程学(4)风险管理5.什么是软件架构软件架构是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。

软件架构是一个系统的草图。

软件架构描述的对象是直接构成系统的抽象组件。

各个组件之间的连接则明确和相对细致的描述组件之间的通讯。

在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。

在面向对象领域中,组件之间的连接通常用接口(计算机科学)实现。

6.什么是架构风格一组原则。

你可以把它看成是一组为系统家族提供抽象框架的粗粒度模式。

7.什么是架构视图一个架构视图是对于从某一视角或某一点上看到的系统所做的简化描述,描述中涵盖了系统的某一特定方面,从而省略了此方面无关的实体。

8.各种架构风格的组件和连接器是什么1.管道和过滤器架构风格:适用于需要定义一系列的执行规则数据的独立运算,组件在输入时读数据流,在输出时产生数据流组件:称为过滤器,应用于对局部的输入流的转换,经常增长的计算,因此,在输入结束前输出就开始了连接器:称为管道,给流提供管道,把一个过滤器的输出传输到另一个输入。

软件设计与体系结构练习题

软件设计与体系结构练习题

软件设计与体系结构复习一、填空题(一)Chapter 11.软件设计模式通常包含4个基本要素:模式名称、问题、解决方案以及效果。

2.软件设计模式可以分为三个层次:架构模式、设计模式、习惯用法。

3.软件设计模式是对软件设计经验的总结,是对软件设计中特定环境下反复出现的设计问题的、经过验证的、成功解决方案的描述。

(二)chapter 51.早在1968年,计算机领域的大师Dijstra指出:项目规模越大,其整体架构就越重要。

2. 软件体系结构的三个基本要素是:构件、连接件、约束3. 对软件质量的关注正是软件架构师与一般的软件设计师的不同之处,一般的软件设计师主要关注软件功能的设计,并要遵循架构师给出的设计准则。

4. IEEE 1471-2000标准定义软件体系结构是“系统的基本组织结构,包括系统构成要素、这些构成要素相互之间以及运行环境之间的关系,还包括系统设计及演化时应遵循的原则”。

(三)chapter 21.创建型软件设计模式是解决_对象创建机制_的设计模式。

2.创建型软件设计模式的两个主导思想:封装了系统使用的具体类的知识,隐藏这些具体类的实例被创建与结合的细节。

3.简单工厂方法模式的特点是仅仅有一个具体的创建者类,并且在此类中包含一个__静态工厂_____方法。

4.生成器模式是一步一步创建一个复杂的对象,允许用户通过制定复杂对象的类型和内容就可以构建它们,用户不知道内部的具体构建细节5. 单例模式是指确保一个仅有一个唯一的实例,并提供一个全局的访问点。

6. 在单例模式中,为了防止客户程序利用构造方法创建多个对象,要将构造方法声明为private(或私有)类型。

(四)chapter 31. 结构型软件设计模式的主要目的是将不同的类和对象组合在一起,形成更大或者更复杂的结构体。

2. 组合模式指将对象组合成树形结构,以表示“部分-整体”的层次结构。

该模式使得对单个对象和组合对象的使用具有一致性。

3.适配器模式可以分为两种:类适配器和对象适配器4. 类适配器模式通过继承的方式改变已经存在的接口而形成新的接口,使之适合客户类调用的需要;对象适配器模式使用调用或者聚合的方式选择调用多个类中的方法,形成新的接口。

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

安徽师范大学 2015-2016 学年 第一学期
数学计算机科学学院软件工程专业2013级《软件设计与体系结构》课程期中考试试卷
(180分钟 闭卷)
注意:请保持字迹工整 一、单选题(10小题,每小题2分,共20分)
1、下面哪种开发方法是非传统方法( ) A 、功能分解法 B 、结构化方法 C 、面向对象方法 D 、信息建模方法
2、下面那一项不属于用况图中的参与者( ) A 、人员 B 、内部系统 C 、外部系统 D 、设备
3、对象间的is-a 关系可以用以下哪一个来表示( ) A 、组合 B 、聚合 C 、关联 D 、继承
4、只与你的直接朋友通信描述的哪一个设计原则( ) A 、单一职责原则 B 、开闭原则
C 、接口隔离原则
D 、迪米特法则
5、一个软件实体应该对扩展开放,对修改关闭。

这描述的是哪个原则( ) A 、单一职责原则 B 、开闭原则
C 、依赖倒置原则
D 、里氏代换原则
6、常用的基本设计模式可分为( ) A 、创建型、结构型和行为型 B 、对象型、结构型和行为型 C 、过程型、结构型和行为型
D 、抽象型、接口型和实现型
7、对于类图,下列叙述正确的是( )
A 、创建类图是为了对系统的动态结构进行建模
B 、在系统分析和实施阶段可以创建和使用类图
C 、每个类图都应该具有泛化关系
D 、以上说法都不对
8、类与类之间存在相互关系,下面哪一种关系与其他三种不同( ) A 、双向关联 B 、聚合关系 C 、组合关系 D 、依赖关系
9、Open-Close
原则的含义是一个软件实体( ) A 、应当对扩展开放,对修改关闭. B 、应当对修改开放,对扩展关闭 C 、应当对继承开放,对修改关闭 D 、应当对继承关闭,对修改开放
10、当需要对系统功能以及与系统进行交互的外部事物进行建模时,我们一般采用( ) A 、用况图 B 、类图 C 、活动图 D 、顺序图 二、简答题(4小题,每小题5分,共50分)
1、OOA 中问题域和系统责任的含义分别是什么意思?
2、OOD 模型中总共包含几个部分,分别是哪几个部分,哪个部分是核心部分?
3、面向对象方法有哪些优点?
4、人机交互部分的设计准则有哪些?
5、在采用面向对象的方法进行分析设计时,如何识别对象和类?
6、请分别画出组合和聚合的符号,并说明两者的关系与区别。

7、请简述节点和构件的区别。

8、数据管理部分的责任是什么,有哪几类数据管理系统。

9、创建型模式的最大特点是什么?
10、请写出工厂方法模式的定义。

三、应用题(1小题,每小题10分,共10分)
1、某系统日志记录器要求支持多种日志记录方式,如文件日志记录(FileLog)、数据库日志记录(DatabaseLog)等,且用户可以根据要求动态选择日志记录方式,现使用某种模式设计该系统,类图如下:
以下是实现代码,仔细阅读后请回答问题。

//日志记录器接口
interface Log
{
________________①
}
//文件日志记录器
class FileLog implements Log
{
public void writeLog()
{
System.out.println("文件日志记录。

");
}
}
//数据库日志记录器
class DatabaseLog implements Log
{
public void writeLog()
{
System.out.println("数据库日志记录。

");
}
}
//日志记录器工厂接口
interface LogFactory
{
public Log createLog();
}
//文件日志记录器工厂类
class FileLogFactory implements LogFactory
{
public Log createLog()
{
________________②
}
}
//数据库日志记录器工厂类
class DatabaseLogFactory implements LogFactory
{
public Log createLog()
{
________________③
}
}
//客户端测试类
class Client
{
public static void main(String args[])
{
________________④
Log log;
factory = new FileLogFactory();
________________⑤
log.writeLog();
}
}
仔细阅读上述代码,判断该代码体现的哪种设计模式?在程序空白处填充代码,使得该程序完整并符合题意。

根据客户端代码,写出该通用代码执行后输出的内容。

五、综合设计题(2小题,每小题10分,共20分)
1、使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传
入参数W,则返回一个Woman对象,用代码模拟实现该场景并绘制出类图。

2、计算机包含内存(RAM)、CPU等硬件设备,使用抽象工厂模式实现计算机设备创建过程并绘制相应的类图。

(此文档部分内容来源于网络,如有侵权请告知删除,文档可自行编辑修改内容,供参考,感
谢您的配合和支持)。

相关文档
最新文档