软件工程复习(含面向对象,学生用)_第1页
软件工程复习(含面向对象,学生用)_第2页
软件工程复习(含面向对象,学生用)_第3页
软件工程复习(含面向对象,学生用)_第4页
软件工程复习(含面向对象,学生用)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第一部分软件工程一、选择题1、软件是一种(2)性工业产品。(1)理论(2)知识(或逻辑)(3)消耗(4)体力2、需求分析是在(2)进行的。(1)用户(2)用户和分析人员之间(3)开发人员内部(4)使用和维护人员之间3、在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于(2)的研究。(1)经济可行性(2)技术可行性(3)操作可行性(4)法律可行性4、在软件工程项目中,不随参与人员的增加而使软件的生产率增加的主要问题是(4)。(1)工作阶段的等待时间(2)生产原型的复杂性(3)参与人员所需的工作站数(4)参与人员之间的沟通困难5、需求分析阶段的研究对象是(1)。(1)用户需求(2)分析员要求(3)系统需求(4)软硬件需求6、对某公司进行调查分析,确定是否值得开发一个新系统的工作是进行(4)。(1)系统设计(2)系统分析(3)系统详细调查(4)系统初步调查7、系统分析员应当(4)。(1)善于使用户接受自已的观点(2)善于使自已获得成就(3)是用户与计算机技术人员的有效协调与组织者(4)满足上述所有条件8、数据流图的绘制过程,是对新系统的需求进行综合分析和形成新系统(1)的过程。(1)逻辑模型(2)物理模型(3)总体方案(4)可行性报告9、系统测试的目的是(4)。(1)找出编码错误(2)找出数据错误(3)要证明程序无错(4)发现软件错误10、一个模块内部各程序段都在同一张表上操作,这个操作的内聚性称为(3)。(1)时间内聚(2)功能内聚(3)通信内聚(4)顺序内聚11、对象是面向对象开发的基本成分,每个对象可用它的一组(3)和它可以执行的一组操作来定义。(1)服务(2)参数(3)属性(4)调用12、最高程度也是最差的耦合是(2)。(1)公共耦合(2)内容耦合(3)控制耦合(4)数据耦合13、概要设计阶段产生的文档不包括(4)。(1)概要设计说明书(2)数据库设计说明书(3)用户手册(4)开发进度报告14、汽车有一个发动机,汽车和发动机之间的关系是(2)。(1)一般具体关系(2)整体部分关系(3)分类关系(4)isa关系15、覆盖准则最强的是(4)。(1)语句覆盖(2)判定覆盖(3)条件覆盖(4)路径覆盖16、下面对数据流图描述不正确的是(4)。(1)是组织中信息运动的抽象(2)是系统模型的主要形式(3)它与对系统的物理描述无关(4)所描述的内容是面向管理员的17、在基本的数据加工中,决策树适合于表达(2)。(1)决策或判断步骤较多的加工问题(2)决策或判断条件较多,各条件又相互组合的问题(3)非结构化决策问题(4)半结构化决策问题18、调试应该由(2)完成。(1)与源程序无关的程序员(2)编制该源程序的程序员(3)不了解软件设计的机构(4)设计该软件的机构19、导出模块结构图的基础是(2)(1)系统结构图(2)数据流图(3)数据结构图(4)控制结构图20、程序员进行程序设计的主要文档依据是(2)(1)模块说明书(2)系统流程图(3)控制流程图(4)数据流图21、面向对象程序设计语言不同于其它语言的最主要特点是(3)。(1)模块性(2)抽象性(3)继承性(4)共享性22、软件部件的内部实现与外部可访问性分离,这是指软件的(3)。(1)继承性(2)共享性(3)封装性(4)抽象性23、在确定类时,候选的类是所有的(1)。(1)名词(2)形容词(3)动词(4)代词24、在面向对象方法中,信息隐蔽的实现是通过对象的(3)。(1)分类性(2)继承性(3)封装性(4)共享性25、每个对象可用它自已的一组属性和它可以执行的一组(3)来表示。(1)行为(2)功能(3)操作(4)数据26、面向对象的主要特征除对象唯一性、封装、继承外,还有(1)。(1)多态性(2)完整性(3)可移植性(4)兼容性27.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做(c)A.软件工程 B.软件周期C.软件危机 D.软件产生28.研究开发所需要的成本和资源是属于可行性研究中的(B)研究的一方面。A.技术可行性 B.经济可行性C.社会可行性 D.法律可行性29.黑盒测试在设计测试用例时,主要需要研究(A)A.需求规格说明与概要设计说明 B.详细设计说明C.项目开发计划 D.概要设计说明与详细设计说明30.若有一个计算类型的程序,它的输入量只有一个X,其范围是[-1.0,1.0],现从输入的角度考虑一组测试用例:-1.001,-1.0,1.0,1.001。设计这组测试用例的方法是(C)A.条件覆盖法 B.等价分类法C.边界值分析法 D.错误推测法31.下列属于维护阶段的文档是(C)A.软件规格说明 B.用户操作手册C.软件问题报告 D.软件测试分析报告32.快速原型模型的主要特点之一是(D)A.开发完毕才见到产品 B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件 D.及早提供工作软件33.因计算机硬件和软件环境的变化而作出的修改软件的过程称为(B)A.改正性维护 B.适应性维护C.完善性维护 D.预防性维护34.软件按照设计的要求,在规定时间和条件下达到不出故障,持续运行的要求的质量特性称为(B)A.可用性 B.可靠性C.正确性 D.完整性35.下列文档与维护人员有关的有(C)A.软件需求说明书 B.项目开发计划C.概要设计说明书 D.操作手册36.在结构化方法中全面指导模块划分的最重要的原则是(D)A.程序模块化 B.模块高内聚C.模块低耦合 D.模块独立性二、填空题1、可行性研究的目的不是去开发一个软件项目,而是研究这个项目是否值得去开发,其中的问题能否解决。2、软件结构的设计是以模块为基础的。3、软件设计阶段,是把软件“做什么”的逻辑模型变换为“怎么做”的物理模型。4、需求分析的关键是必须准确理解用户的要求,同时要满足用户的要求。最终解决目标系统“做什么”的问题。5、数据流图一般可分为变换型和事务性两类。6、HIPO图中H图用于描述软件总的模块层次结构,IPO图用于说明模块间的信息传递及模块内部的处理。7、详细设计也称过程设计,它是软件设计的第二阶段,主要确定每个模块的具体执行过程。8、处理过程设计中最典型的方法是结构化程序设计(SP)方法,其基本要点是采用的程序设计方法是自顶向下、逐步求精。9、测试用例由输入数据和预期的输出数据两部分组成。10、白盒法必须考虑程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能对的逻辑路径进行测试。11、软件测试过程中需要3类信息:软件配置、测试配置和测试工具。12、在详细设计阶段,需要对处理过程的模块和数据库的物理结构做评审。13、对象具有状态,对象用数据值来描述它的状态。14、数据流图描述系统的分解,即描述系统由哪几部分组成,各部分之间有什么联系等。15、任何程序都可由顺序、选择和重复3种基本控制结构构造。这3种基本结构的共同点是单入口、单出口。16、测试的目的就是发现程序中的错误,而不是调试程序没有错误。17、面向数据流的设计又称结构化程序设计(SP),它是以需求分析阶段产生的为基础,按一定的步骤映射成软件结构。18、可行性分析包括技术可行性、经济上的可行性和社会可行性分析。19.纯收入是指在整个生存周期之内的_累积经济效益_与投资之差。20.软件概要设计的主要任务就是_软件结构的设计__。21.在单元测试中,需要为被测模块设计驱动模块和存根模块。驱动模块用来模拟被测模块的上级调用模块,存根模块用来代替被测模块所调用的模块。三、简述题1、软件设计的基本原理包括哪些内容? 软件设计的基本原理:(1)模块化(四个属性:接口、功能、逻辑、状态)(2)抽象(3)信息隐蔽(4)模块独立性(两个定性的度量标准:耦合性与内聚性)2、需求分析应遵循的原则是什么? 所有这些分析方法都遵守下述准则:(1)必须理解并描述问题的信息域,根据这条准则应该建立数据模型。(2)必须定义软件应完成的功能,这条准则要求建立功能模型。(3)必须描述作为外部事件结果的软件行为,这条准则要求建立行为模型。(4)必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。3、为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网? (1)软件测试是软件开发中不可缺少的重要一环,原因是:A、测试的工作量约占整个项目开发工作量的40%左右,几乎一半。如果是关系到人的生命安全的软件,测试的工作量还要成倍增加。B、软件测试代表了需求分析、设计、编码的最终复审。(2)软件测试不是软件质量保证的安全网,因为软件测试只能发现错误,不能保证没有错误。4、软件测试的目的是什么?为什么把软件测试的目标定义为只是发现错误? 软件测试的目的有:(1)软件测试是为了发现错误而执行程序的过程。(2)一个好的测试用例能够发现至今尚未发现的错误。(3)一个成功的测试是发现了至今尚未发现的错误。 软件测试的目标定义为知识发现错误,原因是软件测试可以有两个目标,一个是预防错误,另一个是发现错误。由于软件开发是人的创造性劳动,人的活动不可能完美无缺,错误可能发生在任何一个阶段,因此预防错误这一目标几乎是不可实现的,所以软件测试的目标定义为知识发现错误。5、增量开发和原型开发有什么相同和不同的地方? 增量模型和原型模型都是从概要的需求出发进行开发的,但两者有明显的不同。

增量模型是从一些不完整的系统需求出发开始开发,在开发过程中逐渐发现新的需求规格说明,并进一步充实完善该系统,使之成为实际可用的系统。原型开发的目的是为了发现并建立一个完整的经过证实的需求规格说明,并以此作为正式系统的开发基础。因此,原型开发阶段的输出是需求的规格说明,是为了降低整个软件生成期的费用而拉大需求分析阶段的一种方法,大部分原型是

“用完就扔”的类型。6、简述结构化程序设计方法的基本要点。 (1)采用自顶向下,逐步求精的程序设计方法。

(2)使用三种基本控制结构构造程序,分别是顺序,选择和重复。(3)采用主程序员组的组织形式。(4)采用单入口单出口的模块形式。7、简述文档在软件工程中的作用。(1)提高软件开发过程的能见度;(2)提高开发效率;(3)作为开发人员阶段工作成果和结束标志;(4)记录开发过程的有关信息便于使用与维护;

(5)提供软件运行、维护和培训有关资料;

(6)便于用户了解软件功能、性能。

8、简述提高可维护性的方法。(1)建立明确的软件质量目标;(2)利用先进的软件开发技术和工具;(3)建立明确的质量保证工作;(4)选择可维护的程序设计语言;(5)改进程序文档。9、什么是模块的影响范围?什么是模块的控制范围?他们之间应该建立什么关系? 模块的影响范围:受该模块内的一个判定影响的所有模块的集合。模块的控制范围:模块本身及其所有下属模块(直接或间接从属于它的模块)的集合。一个模块的影响范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近。10、可行性研究的任务是什么?首先需要进行概要的分析研究,初步确定项目的规模和目标,确定项目的约束和限制,把他们清楚地列举出来。然后,分析员进行简要的需求分析,抽象出该项目的逻辑结构,建立逻辑模型。从逻辑模型出发,经过压缩的设计,探索出若干种可供选择的主要解决方法,对每种解决方法都要研究它的可行性,可从以下三个方面分析研究每种解决方法的可行性。㈠技术可行性:对要开发项目的功能、性能、限制条件进行分析,确定在现有的资源条件下,技术风险有多大,项目是否能实现。㈡经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否值得投资开发。㈢社会可行性:要开发的项目是否存在任何侵犯、妨碍等责任问题,要开发项目的运行方式在用户组织内是否行得通,现有管理制度、人员素质、操作方式是否可行。11、什么是软件详细设计?该阶段的基本任务是什么?详细设计是软件设计的第二阶段,主要确立每个模块的实现算法、局部数据结构,用适当方法表示算法和数据结构的细节。其基本任务有:为每个模块进行详细的算法设计;为模块内的数据结构进行设计;对数据库进行物理设计,即确定数据库的物理结构;其他设计,根据软件系统类型,还可能要进行代码设计、输入/输出格式设计、人机对话设计;编写详细设计说明书;评审。12、什么是模型?开发软件时为什么要建立模型?所谓模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。通常,模型由一组图形符号和组织这些符号的规则组成,利用它们来定义和描述问题域中的术语和概念。为了开发出复杂的软件系统,系统分析员应该从不同角度抽象出目标系统的特性,使用精确的表示方法构造系统的模型,验证模型是否满足用户对目标系统的需求,并在设计过程中逐渐把和实现有关的细节加进模型中,直至最终用程序实现模型,对于那些因过分复杂而不能直接理解的系统,特别需要建立模型。模型可以帮助我们思考问题、定义术语、在选择术语时作出适当的假设,并且可以帮助我们保持定义和假设的一致性。建立模型的目的主要是为了降低复杂性。四、应用题1、研究生入学考试的科目为英语、数学、政治,录取规则是:总分200分以下(不含200分)不录取。总分200分以上(含200分)时:英语、数学均为60分以上(含60分)录取。数学55分以上(含55分),英语70分以上(含70分)需参加复试。其它情况不录取。用决策树表达此项处理逻辑。2、某银行发放贷款原则如下:对于贷款未超过限额的客户,允许立即贷款;对于贷款已超过限额的客户,若过去还款记录好且本次贷款额在2万元以下,可作出贷款安排,否则拒绝贷款。请用结构化语言描述该原则。3、银行确定储蓄类型部分数据流图如下:整存整取整存整取确定业务类型确定业务类型活期储蓄零存整取 存款单活期储蓄零存整取 试作出事务分析结构的控制结构图。4、高考录取计分子系统有如下功能:计算标准分:根据考生原始分计算,得到标准分,存入考生分数文件;计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。试根据要求画出该系统的数据流图。5、某旅馆的电话服务如下:可以拨分机号和外线号码。分机号是从7201至7299。外线号码先拨9,然后是市话号码或长话号码。长话号码是以区号和市话号码组成。区号是从100到300中任意的数字串。市话号码是以局号和分局号组成。局号可以是455,466,888,552中任意一个号码。分局号是任意长度为4的数字串。要求:写出在数据字典中,电话号码的数据条目的定义(即组成)。6、某培训中心要研制一个计算机管理系统。它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。1)如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。2)如果是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。3)如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。要求:1).对以上问题画出数据流程图。2).画出该培训管理的软件结构图的主图。7.阅读以下说明和数据流图,回答问题1至问题3。

[说明]

学生住宿服务系统帮助学生在就学的城市内找以所需的住房,系统对出租的房屋信息、房主信息、需要租房的学生信息以及学生和房主的会面住处进行管理和维护。

房主信息包括姓名、地址、电话号码以及系统分配的唯一身份标识(ID)和密码;房屋信息包括房屋地址、类型(单间/套间)、适合住宿的人数、房租、房主的ID以及现在是否可以出租(例如由于装修原因,需等到装修后才可出租或者房屋已被租出)。每当房房屋信息发生变化时,房主须通知系统,系统将更新房到文件以便学生能够获得准确的可租用房屋信息,房主向系统中加入可租用的房屋信息时,需交纳一定的费用,由系统自动给出费用信息。房主可随时更新房屋的各种属性。

学生可通过系统查询现有的可租用的房屋,但必须先在系统中注册。学生信息包括姓名、现住址、电话号码、出生日期、性别以及系统分配的唯一身份标识(ID)和密码。若学生希望租用某房屋,则需要发出租房请求,请求中包含房屋的详细信息,系统将安排学生与房主会面的时间和地点,并将会面信息通知学生和房主,会面信息包括会面时间、地点以及会面双方的基本信息,系统将记录会面信息。

学生住宿服务系统的顶层图如图1-1所示;学生住宿服务系统的第0层DFD图如图1-2所示,其中,加工3的细化图如图1-3所示。

[问题1](6分)

(1)数据流图1-1缺少了一条数据流(在图1-2中也未给出该数据流),请给出此数据流的起点和终点,并采用说明中的词汇给出此数据流名。起点:学生住宿服务系统终点:房主数据流名称:费用信息

(2)数据流图1-2中缺少了与"查询房屋"加工相关的数据流,请指出此数据流的起点和终点。起点:房屋文件 终点:查询房屋

[问题2](4分)

"安排会面"加工除需要写入会面文件外,还需要访问哪些文件?

房主文件学生文件

[问题3](5分)

请补齐下列数据字典条目:

登录信息=学生ID+密码

注册信息=姓名+现住址+电话号码+出生日期+性别

[数据流图1-1][数据流图1-2][数据流图1-3]8.乘客可以免费携带50kg的行李。超过50kg,国内乘客,坐头等舱,超重部分按每千克8元收费;乘坐经济舱,超重部分按每千克12元收费;对国外乘客,坐头等舱,超重部分按每千克16元收费;坐经济舱,超重部分按每千克24元收费;残疾乘客费用减半。请用结构化语言、判定树、判定表中的任一种对行李费用计算进行描述。(257页)9、在一栋m层楼的大厦里,用电梯内的和每个楼层的按钮来控制n部电梯的运动。当按下电梯按钮请求在指定楼层停下时,按钮指示灯亮;当电梯到达指定楼层时,指示灯熄灭。除了大厦的最低层和最高层之外,每层楼都有两个按钮分别指示电梯上行和下行。当这两个按钮之一被按下时相应的指示灯亮,当电梯到达此楼层时灯熄灭,电梯向要求的方向移动。当电梯无升降动作时,关门并停在当前楼层。请分别写出电梯系统基本事件流和扩展事件流。(提示:起点在中间的某一层)(2)画出电梯控制类的动态模型(仅考虑一部电梯的情况)。10、下面是某程序的流程图:(1)计算独立路径数;(2)给出一组独立路径。t=a;a=b;b=t;t=a;a=b;b=t;a>ba>ca>db>cb>dc>dt=a;a=c;c=t;t=a;a=d;d=t;t=b;b=c;c=t;t=b;b=d;d=t;t=c;c=d;d=t;排序结果输出⑴T⑵F⑶T⑷F⑸T⑹F⑺T⑻F⑼T⑽F⑾T⑿F⒀⒁⒂⒃⒄⒅⒆⒇第二部分面向对象一选择题一切软件开发都毫无例外地必须从(4)。①软件功能出发②用户出发③软件性能出发④需求出发在分析阶段通常包含两个方面的工作:建立一个以类图表示的反映问题域静态关系的(4);建立一个以用例模型表示的反映(3)的动态模型。用户需求②关系模型③系统行为④概念模型3.发现类的基本方法不包括(4)。①确定客户②跟踪资金流③事件是潜在的类④系统是潜在的类4.继承的基本技巧和技术不包括(3)。①寻找相似之处②寻找已有的类③选择性继承④遵循单句规则5.关联的多重性可用来表达一个(4)、特定值、无限定的范围或者一组(1)。①取值范围②属性③对象④离散值6.当一个类没有足够的(1)去完成它的职责时,就要依靠与其它类的协作来完成工作。①信息②操作③功能④数据7.一般情况下,区分主要参与者与次要参与者应该以使用系统时的(2)为依据,或者以一个(4)是谁发起的作为主要依据。①重要程度②业务量③业务过程④交互过程8.前置条件描述了(2)之前系统必须满足的条件。①系统运行②执行用例③系统启动④成功执行9.用例之所以被广泛采用的主要原因是,用例详细地描述了系统被使用时的(3),使得用户能够明白新系统到底是什么样的。①执行过程②操作细节③行为细节④功能细节10.顺序图描述了对象之间传递消息的(2),它用来表示用例中的(4)。①执行顺序②时间顺序③操作顺序④行为顺序11.RUP是重型方法论的典型代表,它的核心理念是:“(2)、以架构为中心、迭代和增量的软件开发过程。”①测试驱动②用例驱动③模型驱动④功能驱动12.如果说用例图显示(2)应该做什么,活动图则指明了(2)将如何实现它的目标。①对象②系统③用例④参与者13.基本事件流是参与者在用例中所遵循的(3)。①基本原则②执行路径③逻辑路径④执行步骤二填空题1.需求调研是(了解问题),分析是(定义问题),而设计则是(解决问题)。2.建立概念模型的目的是帮助开发团队理解(问题域)的各种概念、各种名词、以及它们之间的各种关系。而建立用例模型的目的是帮助开发团队(理解)用户对系统的各种功能需求。3.类图包含(类名)、(属性)和操作等信息。4.子类应该从父类继承所有的东西,这种概念叫做(纯粹)继承。如果不这样的话,代码将很难(理解)和维护。5.关联通过组合属性和方法来实现。属性(存储)维护关系的信息,方法(保证)信息是当前可用的。6.类的职责是类知道或要完成的(事情)。类所知道的事情是它的(数据),它要完成的事情就是它的(功能)。7.概念模型是“帮助开发团队了解并在此基础上理解用户所处的环境”,而用例模型则是“帮助开发团队弄清楚用户具体想解决什么问题”。前者是(静态模型),为后者工作的展开建立了一个总体框架;后者是(动态模型),为实现前者注入了活力。两者相辅相成,一般情况下,其(工作顺序)不分先后,而是以一种(迭代的)方式向前推进。8.首先,用例是由一组(用例实例)组成的,用例实例也就是常说的“使用场景”,就是用户使用系统的一个特定的、实际的场景;其次,用例应该给参与者带来(可见)价值,即参与者的参与应该能得到好处;最后,用例是在(系统中)的,而不是(系统外)的东西。9.用例是满足需求的(过程),而需求则是过程背后所实现的(价值)。这正是用例建模的(核心思想)。 10.假设描述的是系统在使用用例之前必须满足的状态,这些(条件)并没有经过用例的检测,(用例)只是假设它们为真。 11.识别用例时的一个常见错误是把用例当成是(单独)的步骤、操作或事务的处理。 12.构建用例模型需要经历三个阶段:确定系统的(参与者)、合并(需求)获得用例、细化用例描述。13.用例图显示了系统的(一组用例)、用例的参与者以及用例和参与者之间的(关系)。三问答题1、分析工作的主要内容及结果是什么?分析工作的主要内容是研究问题域和用户需求,运用面向对象的观点和原则发现问题域中与系统责任有关的对象,以及对象的特征和相互关系。分析的结果是确定描述问题域与系统责任所需的对象,定义对象的属性、服务以及它们之间的关系。2、类与对象之间有什么区别?类是对资源的定义,它所包含的信息主要用来描述某种类型实体的特征以及对该类型实体的使用方法。对象是具体的实体,它遵守类制定的规则。从软件的角度看,程序通常包含的是类的集合以及类所定义的行为,而实际创建信息和管理信息的是遵守类的规则的对象。3、组合与聚合有什么异同?同:两者都可表示类之间整体和部分的关系,整体类都是由部分类组成。异:聚合关系是“has-a”关系,组合关系是“contains-a”关系;聚合关系表示整体与部分的关系比较弱,而组合比较强;聚合关系中代表部分事物的对象与代表聚合事物的对象的生存期无关,一旦删除了聚合对象不一定就删除了代表部分事物的对象。组合中一旦删除了组合对象,同时也就删除了代表部分事物的对象。4、建立概念模型有哪些步骤?1、找出问题域中候选概念。用概念类分类列表和名词短语分别识别的方法找出当前需求中的候选概念类。2、将概念绘制到概念模型中。在概念模型中描述找出的概念类。3、在概念之间加入必要的关联来记录概念之间需要保持的联系。在概念类之间添加必要的关联来记录那些需要保存记忆的关系。4、为概念添加必要的属性,来满足需求信息。5、什么是参与者?参与者(actor)是系统外部的一个实体,它以某种方式参与了用例的执行过程。参与者用于表示使用系统的对象,或者说,参与者由它们参与用例时所担当的角色来代表。6、用例有什么特征?(1)用例总是由参与者启动。用例所代表的功能必须由参与者激活,而后才能执行。一般情况下,参与者可能没有意识到启动了一个用例。换句话,参与者需要系统完成的功能,其实都是通过用例具体完成的,参与者一定会直接或间接的命令系统执行用例。(2)用例为参与者提供结果值。用例必须为参与者提供实在的结果值,虽然这个值并不总是重要的,但是能被参与者识别。(3)用例具有完整性。用例是一个完整的描述。虽然编程实现时,一个用例可以被分解成几个小用例(函数),每个小用例之间互相调用执行,一个小用例可以先执行完毕,但是该小用例执行结束并不能说这个用例执行结束。也就是说,不管用例内部的小用例是如何通信工作的,只有最终产生了返回给参与者的结果值,才能说用例执行完毕。7、什么是基本事件流?举例说明。参与者在用例中所遵循的逻辑路径。因为它描述了当各项工作都正常进行时用例的工作方式,所以通常称为基本路径。事件流描述了用户和执行用例之间交互的每一步。例如,图书馆借出图书用例的基本事件流:①管理员输入借书证信息②系统要确保借书证信息的有效性③检查是否有超期的借阅信息④管理员输入要借阅的图书信息⑤系统将借阅者的借阅信息添加到数据库中⑥系统显示该借阅者的所有借阅信息8、什么是边界类?什么是实体类?什么是控制类?边界类:用于建立系统与其参与者之间交互的模型。这种交互通常包括接收来自用户和外部系统的信息与请求以及将信息与请求提交到用户和外部系统。实体类:实体类通常用于对持久的信息建模,即主要对诸如个体、实际对象或实际事件的某些现象或概念的信息及相关行为建模。控制类:代表协调、排序、事务处理以及其他对象的控制,经常用于封装与某个具体用例有空的控制。9、识别用例和描述用例有什么区别?顺序图的主要用途之一是为用例构建逻辑模型,任何用例都可以使用顺序图进行进一步的阐明和实现,即把用例所表达的需求,转化为进一步的、更加正式层次的精细表达。

四应用题1.考虑以下对习题管理系统的需求,识别候选类并说明理由:该系统的需求陈述为:在一个公共

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论