软件设计与体系结构考试重点

上传人:xmg****18 文档编号:121242250 上传时间:2020-02-19 格式:DOC 页数:15 大小:907.16KB
返回 下载 相关 举报
软件设计与体系结构考试重点_第1页
第1页 / 共15页
软件设计与体系结构考试重点_第2页
第2页 / 共15页
软件设计与体系结构考试重点_第3页
第3页 / 共15页
软件设计与体系结构考试重点_第4页
第4页 / 共15页
软件设计与体系结构考试重点_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《软件设计与体系结构考试重点》由会员分享,可在线阅读,更多相关《软件设计与体系结构考试重点(15页珍藏版)》请在金锄头文库上搜索。

1、.专业整理.2.人月神话提出两条著名的法则:1.人月神话:向一个已经延后的项目中投入更多的人力资源,只会让他更延后。2.没有银弹:没有一种策略技术技巧可以极大地提高程序员的生产力。15软件设计的一般过程16.软件设计的主要活动1)软件设计计划2)体系结构设计3)界面设计4)模块/子系统设计5)过程/算法设计6)数据模型设计17.18.软件可信性质有以下几种。(1)可能性:在规定的环境下、规定的时间内软件无失效运行的能力。(2)可靠安全性: 软件运行不引起危险、灾难的能力。(3)保密安全性:软件系统对数据和信息提供保密性、完整性、可用性、真实性保障的能力。(4)生存性;软件在受到攻击或出现失效时

2、连续提供服务并在规定时间内恢复所有服务的能力。(5)容错性: 软件在故障(硬件环境异常)出现时保证提供服务的能力。(6)实时性;软件在指定的时间内完成反应或提交输出的能力19什么是软件体系结构风格软件体系结构风格是描述某一特定应用领城中系统组织方式的惯用模式。体系结构风格定义一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表中包含了一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。体系结构风格反映了领城中众多系统所共有的结构和谐义特征,并指导如何将各个模块和子系统有效地组织成一个完整的系统、按这种方式理解、软件体系结构风格定义了用于描述系统的术语表和一组指导

3、构建系统的规则。20黑板风格的体系结构的优点如下:(1)便于多客户共享大量数据。他们不用关心数据是何时出现的、谁提供的,以及怎样提供的。(2)既便于添加新的作为知识源代理的应用程序也便于扩展共享的黑板数据结构。(3)可重用的知识源。(4)支持容错性和健壮性。 黑板风格的体系结构的缺点如下:(1)不同的知识源代理对于共享数据结构要达成一致,而且,这造成了对黑板数据结构进行修改较为困难。(2)需要一定的同步锁机制保证数据结构的完整性和致性,增加了系统复杂度。(3)测试困难(4)不能保证有好的求解方案。(5) 低效。(6)开发成本高。21.C/S风格优缺点优点主要在系统的客户端应用程序和服务器构件分

4、别运行在不同的计算机上,系统中的每台服务器都可以适合各构件的要求,这对于硬件与软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。在C/S体系结构中,系统中的功能件充分隔离。客户端应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中数据的管理,不必在每一个新的应用程序中都对一个DBMS 进行编码。将大的应用处理任务分布到许多通过网络连接的低成本计算机上,可以节约大量费用。缺点:(1)开发成本较高。 (2) 客户端程序设计复杂。(3)信息内容和形式单一。(4)用户界面风格不一,使用繁杂,不利于推广使用。(5)软件移植困难。(6)软件维护与升级困难。 (7)新技术不能轻

5、易应用。22.三层C/S结构风格1表示层2功能层3数据层23.三层C/S结构的优点与传统的二层结构相比,三层C/S结构具有以下优点:(1)允许合理地划分三层结构的功能,使之在逻辑上保持相对独立性,从而使整个系统的逻辑结构更为清晰,能提高系统与软件的可维护性和可扩展性。(2)允许更灵活、有效地选用相应的平台与硬件系统,使之在处理负荷能力上与处理特性上分别适应于结构清晰的三层,并且这些平台与各个组成部分可以具有良好的可升级性与开放性。(3)在三层C/S结构中,应用的各层可以并行开发,各层也可以选择各自最适合的开发语言,使之能并行地而且高效率地进行开发,达到较高的性能价格比,对每一层的处理逻辑的开发

6、和维护也会更容易一些。(4)允许充分利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层而利用数据库工具或黑客手段非法地访问数据层,这就为严格的安全管理奠定了坚实的基础;整个系统的管理层次也更加合理和可控制。24.C/S/与B/S混合结构风格B/S与C/S混合软件体系结构是一种典型的异构体系结构。优点是外部用户不直接访向数据库服务器。从而能保证企业数据库的相对安全。另外,企业内部用户的交互性较强.数据查询和修改的响应速度较快。缺点是企业外部用户修改和维护数据时速度较慢,较烦琐,数据的动态交互性不强。25.正交软件体系结构的概念正交软件体系结构由组织层和线索的构件构成。其中,层是由一

7、组具有相同抽象级别的构件构成的,线索是子系统的特例,它由完成不同层次功能的构件组成(通过相互调用来关联),每一条线索完成整个系统中相对独立的一部分功能。每条线索的实现与其他线索的实现无关或关联很少,在同一层中构件之间是不存在相互调用的。26.正交软件体系结构具有以下优点:(1)结构清晰,易于理解。 (2)易修改,可维护性强。 (3)可移植性强,27.使用异构结构的原因(1)从根本上来说,不同的结构有不同的处理能力的强项和弱点,一个系统的体系结构应该根据实际需要进行选择,以解决实际问题。(2)关于软件包、框架通信以及其他一些体系结构上的问题,目前存在多种标准,即使在某段时间内某一种标准占统治地位

8、,但变动最终是绝对的。(3)在实际工作中开发人员总会遇到一些遗留下来的代码,它们仍然有用,但是与新系统有着某种程度上的不协调。而在许多场合将技术与经济综合进行考虑时,总是决定不再重写它们。(4) 即使在某一单位中规定了共享共同的软件包或相互关系的一些标准,仍会存在解释或表示习惯上的不同。在UNIX中就可以发现这类问题.即使规定用单一的标准(ASCII)来保证过滤器之间的通信,但因为不同人对关于在ASCII流中信息如何表示的假设不同,不同的过滤器之间仍可能不协调。28.异构体系结构的实例 1.“内外有别”模型 2.“查改有别”模型29.面向对象的系统开发过程概述面向对象的思想已经涉及软件开发的各

9、个阶段,如面向对象分析(OOA)、面向对象设计(OOD)面向对象编程(OOP)。面向对象的系统开发生命周期由分析阶段、设计阶段、实现阶段组成,每个阶段都可以相互反馈,整个过程是一种迭代、渐增的开发过程。1.首先要进行面向对象分析,其任务是了解问题域所涉及的对象、对象间的关系和作用(即操作),针对不同的问题性质选择不同的抽象层次,然后构造问题的对象模型,使该模型能精确地反映所要解决的“实质问题”。2.其次就是面向对象设计,即设计软件的对象模刑。根据所应用的面向对象软件开发环境的功能强弱不等,在对问题的对象模型的分析基础上,可能要对它进行一定的改造,但应以改变原问题域的对象模型最少为原则。然后在软

10、件系统内设计各个对象对象间的关系(如层次关系、继承关系等、对象回的通信方式(如消息模式)等,总之是设计各个对象的职责。3.最后是面向对象编程,即软件功能的编码实现,主要工作包括每个对象的内部功能的实现;确定对象的哪些处理能力在哪些类中进行描述;确定并实现系统的界面、输出的形式及其他控制机理等,需要实现OOD阶段规定的各个对象所应完成的任务。30.下面给出画数据流图的一般步骤:(1)首先,找出数据源点和汇点,它们是外部实体,由它们确定系统与外界的接口。(2)找出外部实体的输出数据流与输入数据流,画出顶层数据流图。(3)从顶层加工出发,逐步细化,画出所需的子图,分析系统的主要处理功能,把每一个处理

11、功能作为一个加工,并且确定它们之间的数据流入和流出关系,画出第一层数据流图。(4)对当前层流图中的每个加工进行细化,画出所需的子图,直到加工不需要再分解为止。31.数据流图33. 面向数据流的需求分析方法步骤 (1)理解当前的现实环境,获得当前人工系统的具体模型。 (2)从当前系统的具体模型抽象出当前系统的逻辑模型。事益村路8 (3)分析目标系统与当前系统逻辑上的差别,建立目标系统的逻辑模型。5 9 (4)为目标系统的逻辑模型做补充。36合理的以用户为中心的界面设计分为6个阶段。 第一阶段:产品概念的开发。 第二阶段:调查研究和需求分析第三阶段:设计思路和关键屏幕画面原型。第四阶段:反复的设计

12、和改进。 第五阶段:软件的实现。 第六阶段:大力推广39设计模式的核心思想是总结和积累前人成功的设计经验,通过对这此经验的学习,使得人们在面对新的设计问题时不用再重复所有的环节,而是尽量套用已有的模式,以提高编程的效率。模式是解决特定问题的经验,实质上是软件的复用。模式由特定的环境、问题以及解决方案3个要素组成,按照软件开发的层次可以分为体系结构模式、设计模式、程序模式。体系结构模式属于层次较高的模式,设计模式是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述。由于在以往的软件开发中,设计者经常在某种特定场合中遇到一些以前经常出现或感觉似曾相似的问题,直截了当的解决方案就是套用原

13、有的经过证明的解决方案,或参考别人成熟的思路来解决。长时间下来,通过不断地完善并文档化就形成了针对这种问题的处理模式,形成了特定问题的解决方案。43.什么是EJB?它有哪些特点?EJB规范是Sun公司于1997年12月发布的JavaBean 构件模型。一个EJB是特定的在服务器上运行的JavaBean,并且EJB能在可视化的工具下装配成新的应用。EJB应用程序只能用Java语言编写,且必须使用EJB API。编写良好的EJB应用程序无须修改任何源代码就可以在J2EE认证的应用服务器之间移植和互操作。EIB具有以下特点:(1) EJB以构件的形式组织服务器,EJB构件是直接用Java语言编写的服

14、务器构件。Java语言编写的跨平台特性使得EJB构件可以非常方便地移植到各种操作系统平台和EJB服务器上。(2) EJB构件的实现仅需考虑应用需求,其系统级服务(如事务管理、安全性、构件生命周期与线程等)都是通过EJB服务器自动进行管理的。(3) EJB体系结构具有面向对象、分布式跨平台、可扩充性、安全性以及便于开发等特点,同时它还以协议为中心,任何协议都可以被利用。44 EJB 由哪些角色组成?其结构的优缺点有哪些?1角色1.EJB组件开发者2.应用组合者3.部署者4.EJB服务提供者5.EJB容器提供者6系统管理者2EJB构件模型的优点如下:(1)EJB将成为用Java语言开发分布式的、面

15、向对象的企业级应用系统的标准构件体系构.EJB使得通过组合构件得到分布式应用系统成为可能(2)EJB使得应用系统开发变得容易,应用系统开发人员不需要理解底层的事务处理细节、状态管理、多线程、资源共享管理以及其他复杂的底层API细节。(3)EJB遵行Java的“一次编译,到处运行的思想,一旦一个EJB开发完成之后就可以部署在任何支持EJB的平台上,而不需要重新编译或对源代码进行修改。(4)EJB定义了一个协议,使用不同供应商提供的工具开发和部署的构件能在运行时互操作,(5)EJB体系结构与已有的服务器平台其他的Java APL、CORBA等兼容。(6)EJB支持EnterpriseBeans和其他的非Java应用系统的互操作性。采用EJB开发应用系统有很多优点:(1)标准的Java技术的便利应用系统可以在许多不同的服务器平台上运行。(2)修改应用系统变得容易,对单个构件进行增加、修改、删除等操作不会对应用系统的体系结构产生很大的影响。(3)应用系统经过划分之后,使得构件之间相互独立,又可以相互协作,提供给用户的是该用户所需要的构件。(4)应用系统的开发变得容易,基本上是即插即用的方式。(5)应用系统从本质上说是叮伸缩的,可以运行在多线程多处理机的环境中。(6)可以在新的应用系统中得到

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号