您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 求职简历 > 2016年系统架构设计师考试-考点-重点-难点汇总
第1页共15页软件产品线体系机构什么是软件产品线?软件产品线在软件开发过程中有什么作用?定义:软件产品线是一个产品的集合,这些产品共享一个公共的、可管理的特征集,这些特征集能够满足选定市场或任务领域的特定需求。这些系统遵循一个预描述的方式,是在公共的核心资源上开发的。作用:软件产品线是一个是非适合专业软件开发组织的软件开发方法,能有效提高软件生产率和质量、缩短软件开发时间、降低总开发成本;主要组成部分:核心资源和产品集合。核心资源:包括产品线中所有产品共享的产品线体系结构,新设计开发的或通过现有系统再工程得到的、需要在整个产品线中系统化重用的软件构件。产品线开发的4个技术特点:过程驱动、特定领域、技术支持及体系结构为中心。软件产品线包括哪些过程?如何实现软件产品线创建与演化?软件产品线演化是指什么?如何实现演化?过程模型:双生命周期模型(领域工程+应用工程);SEI模型(核心资源开发+产品开发+管理)和三生命周期(企业工程+领域工程+应用工程)模型;4种建立方式:用演化方式还是革命方式+基于现有产品还是开发全新产品线(1)将现有产品演化为产品线(2)用软件产品线替代现有产品集(3)全新软件产品线演化(4)全新软件产品线开发演化:指的是由于各种原因引起产品线所进行的改动而变成新的产品线;产品线的演化包括:核心资源的演化、产品的演化和产品的版本升级;框架的定义及特征定义:框架是由开发人员定制的应用系统的骨架,是整个系统或子系统的可重用设计,由一组抽象构件和构建实例间的交互方式组成;特征:反向控制;可重用性;扩展性;模块化或构件化;软件产品线体系结构定义、特点及个性实现机制定义:软件产品线体系结构是只一个软件开发组织为一组相关应用或产品建立的公共体系结构。特点:同领域模型一样,软件产品线体系结构中也可分为共性部分和个性部分;共性部分是产品线中所有产品在体系结构上的共享部分,是不可改变的。个性部分是指产品线体系结构可以变化的部分;产品线体系结构设计的目的尽量扩展产品线中所有产品共享的部分,同时提供一个尽量灵活的体系结构变化机制;个性实现机制:继承;扩展和扩展点;参数化;配置和模块互连语言;自动生成;编译时不同实现的选择;第2页共15页例题:希赛公司各种网络安全防火墙系统,引入产品线开发方法,问题如下:1.公司是否适合使用软件产品线方法,并说明理由适合软件产品线开发方法;公司的产品特点为:各种防火墙系统属于一种产品集合,具有很多共性,同时,每种不同的防火墙又具有自己本身的个性特点;2.在原有产品的基础上建立软件产品线的方式,并简要评价(1)将现有产品演化为产品线:在基于现有产品体系结构设计产品线体系结构的基础上,将特定产品的构件逐步地、越来越多地转化为产品线的公用构件,从基于产品的方法“慢慢地”转化为基于产品线的软件开发。主要优点是通过对投资回收期的分解,对现有系统演化的维持使产品线方法的实施风险降到了最低,单完成产品线核心资源的总周期和总投资都比使用革命方式要大;(2)用软件产品线替代现有产品集:基本停止现有产品的开发,所有努力直接针对软件产品线核心资源开发。需求变化会导致初始投资报废的风险加大3.成功实施软件产品线的主要因素(1)对该领域的产品开发已具备长期积累的经验;(2)一个用于构建产品的好的核心资源库;(3)好的产品线体系结构;(4)好的管理(软件资源、人员组织、过程)支持基于体系结构软件开发MVC模式:对于界面可变性设计的要求,MVC把交互式系统的组成分解成模型、视图和控制器三种构件。模型构件:独立于外在显示内容和形式,是软件所处理问题逻辑的内在抽象,它封装了问题的核心数据、逻辑和功能计算关系,独立于具体的界面表达和输入/输出操作;视图构件:把模型数据及逻辑关系和状态信息以特定的形式展示给用户,它从模型获得显示信息,对于相同的信息可以有多个不同的显示视图;控制器构件:处理用户与软件的交互操作,决定软件的控制流程,确保用户界面和模型间的对应联系,它接收用户的输入,将输入反馈给模型,进而实现对模型的计算控制,它是模型和视图协调工作的部件。设计模式的分类5种创建型模式:工厂方法,抽象工厂,建造者,原型及单件;7种结构型模式:适配器,桥,组合,外观,装饰,代理,享元模式;11种行为型模式:职责链,中介者,对象状态,策略,命令,备忘录,访问者,迭代器,解释器,观察者,模板方法;MVC与MVP的比较MVC模式是创建软件很好的途径,它所提倡的一些原则,如,内容和显示分离、隔离模型、视图和控制器的构件等,会使应用程序的体系结构更健壮,更具有扩展性,也会是软件在代码重用和体系结构方面上一第3页共15页个新的台阶;MPV:Presenter(呈现器)负责逻辑的处理,模型提供数据,视图负责显示;MVP与MVC的一个重大区别就是:MVP不直接使用模型,他们之间的通行时通过呈现器来进行的,所有的交互都发生在呈现器内部,而在MVC中视图会直接读取模型数据而不是通过控制器。中间件技术中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于操作系统之上,管理计算机资源和网络通信,实现应用之间的互操作。主要有下面6个基本功能:(1)负责客服机和服务器之间的连接和通信(2)提供应用层不同服务之间的互操作机制(3)提供一个多层体系结构的应用开发和运行平台(4)屏蔽硬件、操作系统、网络和数据库的差异(5)提供应用的负载均衡、高可用、安全机制和管理功能,保证交易的一致性(6)提供一组通用的服务去执行不同的功能中间件的类别远程过程调用(RPC):客服进程和服务进程通过网络进行通信,相应的存根(Stub)过程和运行支持提供数据转换和通行服务,从而屏蔽不同的操作系统和网络协议;存根过程用来解码请求消息中的参数,调用相应的服务过程和编码应答消息的返回值。对象请求代理(ORB):ORB是CORBA模型的核心组件,它的作用在于提供一个通信框架,透明地在异构的分布式计算环境中传递对象请求;CORBA对象之间不直接进行通信,对象通过远程存根对运行在本地计算机上的ORB发出请求,本地ORB使用IIOP将该请求传递给其他计算机上的ORB。RMI:Java的远程方法调用。面向消息的中间件:MOM利用高效可靠的消息传递机制进行平台无关数据交换,并基于数据通信来进行分布式系统的集成,具有3个特点:(1)通信程序可以在不同的时间运行(2)对应用程序的结构没有约束(3)程序与网络复杂性相隔离事务处理监控器:交易中间件什么是基于体系机构的设计方法?简要说明基于体系结构的设计方法的生命周期模型及设计步骤?ABSD方法为产生软件系统的概念体系结构提供基础,概念体系结构代表了在开发过程中做出的第一个选择,相应地,它是达到系统质量和业务目标的关键,为达到预定功能提供了一个基础。由业务、质量和功能需求的组合驱动ABSD,ABSD设计活动在体系结构驱动已决定就可开始,这意味着需求获取和分析活动还没有完成,就开始了软件设计,分析与设计活动并行;第4页共15页ABSD的三个基础:功能的分解;通过体系结构风格来实现质量和业务需求;软件模板的使用;在ABSD方法中,必须记录所有做出的决策以及这些决策的原理,这有利于决策的跟踪和决策评审;ABSD方法与生命周期:体系结构设计过程:(1)标识构件;(生成类图、对类进行分组、把类打包成构件)(2)提出软件体系结构模型(3)把构件映射到体系结构中(4)分析构件之间的相互作用(5)产生软件体系结构(6)软件体系结构正交化体系结构演化过程:(1)需求变动归类(2)体系结构演化计划(3)修改、增加或删除构件(4)更新构件的相互作用(5)构件组装与测试(6)技术评审(7)演化后的体系结构基于体系结构的软件开发模型:体系结构需求体系结构设计体系结构文档化体系结构复审体系结构实现体系结构演化例题:B/S结构选用.Net平台还是Java企业版平台,最终选用Java企业版平台。问题如下:1.给出两个平台各自具备的优势及两个平台的共有特点(从下面选项中选择)(1)良好跨平台可移植性支持(2)易于部署与配置(3)多程序设计语言支持(4)良好的Web多层应用开发支持(5)丰富的多厂商外部支持(6)良好的O/R(对象/关系)映射支持(7)针对特定平台的优化支持(8)良好的源代码以外的可定制性支持(9)良好的Web服务支持需求分析ABSD方法实际构件设计业务用例架构师的经验遗留系统功能需求抽象、用例质量需求抽象、质量因素、体系结构选项抽象构件软件模板约束需求第5页共15页.Net平台特点:(2)(3)(7)Java企业版平台特点:(1)(5)(8)共有特点:(4)(6)(9)2.分别针对基于EJB的重量级框架和基于Struts等轻量级框架,说明MVC模式中的各组件应采用何种构件实现在基于EJB的重量级框架中,实现的构件分别为:模型(Model):由EJB构件实现视图(View):由JSP构件实现控制器(Controller):由Servlet实现在基于Struts等的轻量级框架中,实现的构件分别为:模型(Model):由JavaBean构件实现视图(View):由JSP构件实现控制器(Controller):由Servlet构件实现3.从组件耦合度、组件分工及开发工程化支持等3个方面说明MVP与MVC模式的主要区别(1)在组件耦合度方面:在MVP模式中,视图并不直接使用模型,它们之间的通信通过Presenter进行,从而实现了视图与模型的分离,而在MVC模式中,视图直接与模型交互。(2)在组件分工方面:在MVP模式中,视图需要处理鼠标及键盘等触发的界面事件,而在MVC模式中这通常是由控制器完成的工作;在MVP模式中,系统核心业务逻辑组织集中在Presenter中,而在MVC模式中,相应的控制器通常只完成事件的分发。(3)在开发工程化支持方面:MVP模式可更好地支持单元测试,而在MVC模式中,由于模型与视图绑定,因此难以实施相应的单元测试;在MVP模式中,Presenter基于约定接口与视图和模型交互,可更好地支持组件的重用。4.说明事务的基本特征,并简单描述EJB规范中提供的两种事务控制的方法;事务的基本特征包括:原子性:一个事务中的所有操作,要么全部完成,要么全部不完成,不会结束在中间某个环节。事务在执行过程中发生错误,会被回滚到事务开始前的状态,就像这个事务从来没有执行过一样。一致性:在事务开始之前和事务结束以后,数据的完整性限制没有被破坏。隔离性:两个事务的执行是互不干扰的,两个事务时间不会互相影响。持久性:在事务完成以后,该事务对数据所作的更改便持久地保存在数据库之中,并且是完全的。EJB规范支持的两种事务控制方法为:容器维护的事务(ContainerManagedTransaction,CMT):由EJB容器根据部署描述符或EJB构件注释中指定的事务属性自动控制事务的边界,容器维护的事务是方法级的,即默认将一个方法当作一个事务执行,当方法执行的过程中发生系统级异常,容器会自动将事务回滚,从而将方法前面执行的结果恢复。第6页共15页Bean维护的事务(BeanManagedTransaction,BMT):由程序员在EJB的源代码中控制事务执行的边界,事务的边界通过Java事务接口(JavaTransactionAPI,JTA)进行控制,Bean维护的事务可以跨越方法的边界。软件体系结构评估:各种软件质量属性性能:指系统的响应能力,即要经过多长时间才能对某个事件作出响应或在某段时间系统所处理的事件个数;可靠性:软件系统在应用或错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力。常用的设计方法是:容错、检错、降低系统复杂度;可用性:系统能够正常运行的时间比例;常用两次故障之间的时间间隔或系统恢复正常的速度来表示;安全性:系统向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力;安全性又可分为:机密性、完整性、不可否认性及可控性等;可修改性:能够快速地以较高的性能价格比对系统进行变更的能力;功能
本文标题:2016年系统架构设计师考试-考点-重点-难点汇总
链接地址:https://www.777doc.com/doc-5801108 .html