《软件工程复习资料_1.pdf》由会员分享,可在线阅读,更多相关《软件工程复习资料_1.pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 1、下列哪一模型是软件的基础模型 A.瀑布模型 B.快速原型 C.增量模型 D.螺旋模型 2、划分软件生存周期的阶段时所应遵循的基本原则是 A.各阶段的任务尽可能相对独立 B.各阶段的任务在时间上连续 C.各阶段的任务尽可能相关性 D.各阶段的任务在时间上相对独立 3、下列哪个办法不属于解决软件危机的途径之一 A.采用软件工程的解决途径 B.研制新一代智能计算机 C.采用面向对象的软件设计方法 D.大力扶持软件企业 4、下列哪个不属于软件工程的内涵之一 A.扶持培养软件高手的学院 B.开发既可靠又能有效运行的软件 C.应用完善的科学与工程原理 D.经济地开发软件 5.造成大型软件开发困难的根
2、本原因在于 A.开发人员缺乏足够的开发经验 B.项目开发进度不合理 C.软件系统的复杂性 D.对软件开发的资金投入不足 6.软件会逐渐退化而不会磨损,其原因在于 A.软件备件很难订购 B.不断的变更使组件接口之间引起错误 C.软件错误在经常使用之后会逐渐增加 D.软件通常暴露在恶劣的环境下 7.下面说法正确的是 A.大多数软件系统是不容易修改的,除非它们在设计时考虑了变化 B.由于软件是产品,因此可以应用其他工程制品所用的技术进行生产 C.一般来说,软件只有在其行为与开发者的目标一致的情况下才能成功 D.购买大多数计算机系统所需的硬件比软件更昂贵 8.Ariane 5 火箭发射失败的事例告诉我
3、们 A.(2)软件后备系统可以通过复制生成 B.(3)软件重用必须重新进行系统论证和系统测试 C.选项(1)和(3)D.(1)系统环境的变化可能影响软件采集数据的精度、范围和对系统的控制 9.软件危机的主要原因是 A.软件本身的特点及开发方法。B.软件工具落后。C.软件生产能力不足。D.对软件的认识不够。10.下面的描述正确的是 A.软件质量是在开发过程中逐渐构建起来的。B.软件质量是由产品的功能、性能、易用性等外在特性决定的。C.运行正确的软件就是高质量的软件。D.软件产品质量越高越好,最理想的情况是达到“零缺陷”。11、可行性研究主要包括哪几项?A.技术可行性、经济可行性和操作可行性 B.
4、技术可行性、经济可行性和道德可行性 C.技术可行性、法律可行性和操作可行性 D.技术可行性、操作可行性和法律可行性 12、成本/效益分析的目的是帮助()正确地作出是否投资于这项开发工程的决定。A.系统分析员 B.客户组织的负责人 C.项目经理 D.软件开发人员 13、在进行成本/效益分析的时候,需要考虑()A.开发成本 B.运行费用 C.系统带来的经济效益 D.系统使用寿命 14、数据流图和数据字典共同定义了新系统的逻辑模型。A.错 B.正确 15、可行性研究可行性研究需要的时间长短和所研究系统的规模关系不大。A.正确 B.错误 16、把可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户
5、组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析员推荐的方案。A.正确 B.错误 17、结构化分析方法遵守的准则之一定义软件需要完成的功能,需要建立的模型是 A.功能模型 B.数据模型 C.行为模型 D.动态模型 18、下列叙述中,()不属于数据字典的作用。A.为用户与开发人员之间统一认识 B.为需求分析阶段定义各类条目 C.作为概要设计的依据 D.作为编码阶段的描述工具 19、分层数据流图是一种比较严格又易于理解的描述方式,它的顶层描述了系统的()。A.总貌 B.软件的作者 C.细节 D.抽象 20、结构化分析方法以数据流图、()和加工说明等描述工具,即用直观的图和简洁的语言来
6、描述软件系统模型。A.PAD 图 B.IPO 图 C.DFD 图 D.数据字典 21、不适于作为数据流图处理(加工)框名称的是()。A.打印工资支票 B.工资支票数据 C.人工校核工资数据 D.计算职工工资 22、需求分析过程中,分析员是()。A.用户和软件人员的中间人 B.用户和软件人员的领导 B.C.软件的编程人员 D.用户中系统的直接使用者 23、原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于下列哪个系统。A.管理信息 B.决策支持 C.需求不确定的 D.需求确定的 24、数据字典是用来定义下列哪个选项中的各成分的具体含义的。A.功能结构图 B.数据流图 C.流程图 D.系
7、统结构图 25、下列哪一项不是用来获取用户需求的。A.与业务人员进行访谈 B.绘制时序图 C.发放调查问卷 D.绘制数据流图 26、获取用户需求的时候,定义数据流图中包含的元素使用下列哪一项进行描述?A.数据字典 B.实体关系图 C.系统流程图 D.IPO 图 27、数据流图的四个基本符号是下列哪一组。A.数据源点,处理,数据存储,数据流 B.数据源点,数据终点,处理,数据存储 C.外部实体,处理,数据终点,数据流 D.外部实体,数据存储,处理,数据流 28、下列哪一项的作用是“用来明确系统和环境的界限”的?A.数据终点 B.数据存储 C.外部实体 D.数据流 29、数据流图中的处理必须有流入
8、的数据流和流出的数据流。A.正确 B.错误 30、可行性研究可行性研究需要的时间长短和所研究系统的规模关系不大。A.错误 B.正确 31、把可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析员推荐的方案。A.正确 B.错误 32、一个软件项目是否进行开发的结论是在可行性报告文档中作出。A.错误 B.正确 33、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。A.错误 B.正确 34、数据流图中的数据流可以从外部实体直接到数据存储。A.错误 B.正确 35、同一个外部实体只能在一张数据流程图中出现一次。A.正确 B.
9、错误 36、处理又称功能,表示对数据进行的操作。A.正确 B.错误 37、下列耦合关系中,模块之间最差的耦合是()A.控制耦合 B.内容耦合 C.数据耦合 D.公共耦合 38、一组模块均与同一外部环境关联,并受到约束时,这种耦合称之为()A.外部耦合 B.数据耦合 C.控制耦合 D.数据耦合 39、如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称之为()A.过程内聚 B.顺序内聚 C.功能内聚 D.通信内聚 40、在结构图中,将上级模块获得的数据,经过处理,再传给下属模块的模块是()A.加工模块 B.协调模块 C.传出模块 D.传入模块 41、耦合是影响软件复杂程度的一个重要因素
10、。应该采取下述分哪些设计原则()A.尽量使用数据耦合 B.限制公共环境耦合的范围 C.偶尔可以使用内容耦合 D.少用控制耦合和特征耦合 42、在考虑模块内聚时的设计原则是()A.应该力求做到模块的高内聚 B.通常中等程度的内聚(通信、过程)也是可以采用的 C.对于地内聚的模块可以考虑进行模块分割 D.低内聚(偶然、逻辑、时间)建议不要使用 42、局部化的概念和信息隐藏概念是密切相关的。A.错误 B.正确 43、程序流程图中表示分支的图形是()。A.矩形 B.平行四边形 C.圆角矩形 D.菱形 44、下列哪一项既可用于表示程序逻辑,也可用于描绘数据结构。()A.流程图 B.判定表 C.PAD 图
11、 D.盒图 45、在结构化程序设计当中,不建议使用()A.循环语句 B.子程序调用语句 C.转向语句 D.分支语句 46、下面哪个不属于良好的人机界面设计原则?()A.力求用户输入量最少 B.具有帮助功能 C.为不同的用户和功能提供一致的界面服务 D.系统的全部界面格式和风格一致 47、当模块中包含复杂的条件组合,下列哪一项能够清晰地表达出各种动作之间的对应关系。()A.流程图 B.盒图 C.关系图 D.判定表和判定树 48、流程图中的矩形表示()A.处理 B.输入输出 C.分支 D.开始 49、判定表由四部分组成,右下部列出的是下列哪一项()A.条件组合与动作之间的对应关系 B.所有条件 C
12、.所有可能的动作 D.可能的条件组合 50、下列关于伪码的描述,哪个是不准确的?()A.描述复杂的条件组合与动作间的对应关系时,不如判定表清晰简单;B.可以嵌入在源程序中一起作为程序文档;C.利用伪码可自动生成程序代码。D.伪码和图形工具一样形象直观;51、不允许违背结构程序设计精神的图形工具有以下哪些选项?()A.盒图 B.流程图 C.PAD 图 D.判定表 52、在同一用户界面中,所有的菜单选择、命令输入、数据显示和其他功能应采用不同的形式和风格。A.错误 B.正确 52、软件设计也可看作将需求规格说明逐步转换为软件源代码的过程。A.错误 B.正确 53、判定表的右上部是表示各种条件组合的
13、一个矩阵。A.正确 B.错误 54、盒图的功能域明确,可以从图上一眼就看出来。A.正确 B.错误 55、PAD 图的符号不支持自顶向下、逐步求精方法的使用。A.正确 B.错误 56、程序流程图中表示分支的图形是()。A.菱形 B.矩形 C.圆角矩形 D.平行四边形 57、下列哪一项既可用于表示程序逻辑,也可用于描绘数据结构。()A.PAD 图 B.盒图 C.流程图 D.判定表 58、在结构化程序设计当中,不建议使用()A.分支语句 B.转向语句 C.子程序调用语句 D.循环语句 59、下面哪个不属于良好的人机界面设计原则?()A.具有帮助功能 B.系统的全部界面格式和风格一致 C.力求用户输入
14、量最少 D.为不同的用户和功能提供一致的界面服务 60、当模块中包含复杂的条件组合,下列哪一项能够清晰地表达出各种动作之间的对应关系。()A.判定表和判定树 B.盒图 C.关系图 D.流程图 61、流程图中的矩形表示()A.分支 B.处理 C.开始 D.输入输出 62、判定表由四部分组成,右下部列出的是下列哪一项()A.所有条件 B.所有可能的动作 C.条件组合与动作之间的对应关系 D.可能的条件组合 63、下列关于伪码的描述,哪个是不准确的?()A.利用伪码可自动生成程序代码。B.可以嵌入在源程序中一起作为程序文档;C.伪码和图形工具一样形象直观;D.描述复杂的条件组合与动作间的对应关系时,
15、不如判定表清晰简单;64、不允许违背结构程序设计精神的图形工具有以下哪些选项?()A.流程图 B.PAD 图 C.判定表 D.盒图 65、在同一用户界面中,所有的菜单选择、命令输入、数据显示和其他功能应采用不同的形式和风格。A.错误 B.正确 66、软件设计也可看作将需求规格说明逐步转换为软件源代码的过程。A.错误 B.正确 67、判定表的右上部是表示各种条件组合的一个矩阵。A.正确 B.错误 68、盒图的功能域明确,可以从图上一眼就看出来。A.错误 B.正确 69、PAD 图的符号不支持自顶向下、逐步求精方法的使用。A.错误 B.正确 70、下列属于维护阶段的文档是()A.用户操作手册 B.
16、软件问题报告 C.软件测试分析报告 D.软件规格说明 71、下列哪项不是维护的代价?()A.维护费用高 B.引发用户不满 C.影响新项目开发 D.降低可重用性 72、下面说法正确的是()。A.成功的测试是发现了迄今尚未发现的错误的测试 B.成功的测试是没有发现错误的测试 C.经过测试没有发现错误说明程序正确 D.测试的目标是为了证明程序没有错误 73、单元测试时,调用被测模块的是()。A.桩模块 B.通信模块 C.代理模块 D.驱动模块 74、软件测试过程中的系统测试主要是为了发现()阶段的错误。A.详细设计 B.需求分析 C.编码 D.概要设计 75、软件测试是按照特定的规程,_的过程。A.
17、设计并运行测试用例 B.说明程序正确 C.证明程序没有错误 D.发现软件错误 76、以程序的内部结构为基础的测试用例技术属于()。A.灰盒测试 B.白盒测试 C.黑盒测试 D.数据测试 77、为了提高测试的效率,正确的做法是()。A.随机选取测试用例 B.在完成程序的编码之后再制定软件的测试计划 C.使用测试用例测试是为了检查程序是否做了应该做的事 D.选择发现错误可能性大的数据作为测试用例 78、有一组测试用例使得每一个被测试用例的分支覆盖至少被执行一次,它满足的覆盖标准_。A.路径覆盖 B.条件覆盖 C.判定覆盖 D.语句覆盖 79、软件测试是软件质量保证的重要手段,下述哪种测试是软件测试
18、的最基础环节?A.单元测试 B.确认测试 C.目的测试 D.集成测试 80、编码阶段产生的错误由_检查出来的。A.单元测试 B.集成测试 C.系统测试 D.有效性测试 81、白盒测试不仅与程序的内部结构有关,还要考虑程序的功能要求。A.错误 B.正确 82、黑盒测试的测试用例是根据程序内部逻辑设计的。A.正确 B.错误 83、为了快速完成集成测试,采用一次性集成方式是适宜的 A.错误 B.正确 84、在设计测试用例时,应包括合理的输入条件和不合理的输入条件。A.错误 B.正确 85、汽车有一个发动机,因而汽车与发动机之间的关系是()关系 A.is a 关系 B.分类关系 C.一般与特殊 D.整
19、体与部分 86、时序图反映对象之间发送消息的时间顺序,它与()是同构的。A.类图 B.协作图 C.用例图 D.活动图 87、封装的的作用是()。A.实例 B.复用 C.对象 D.方法 88、软件部件的内部实现与外部可访问性的分离,是指软件的()。A.封装性 B.继承性 C.共享性 D.抽象性 89、关于用例的概念,下列说法不正确的是()。A.用例是一个连贯的功能性单元 B.可以借助状态转换图来描述用例 C.用例是通过 Actor 确认的 D.用例是一个类,而不是事件 90、模型表示对象的相互行为的模型是()。A.分析 B.动态 C.对象 D.功能 91、面向对象模型主要由以下哪些模型组成()A
20、.对象模型、动态模型、功能模型 B.对象模型、动态模型、数据模型 C.数据模型、动态模型、功能模型 D.对象模型、数据模型、功能模型 92、面向对象的主要特征除对象惟一性、封装、继承外,还有()A.完整性 B.多态性 C.兼容性 D.可移植性 93、用例之间是具有相关性的。在一个“订单输入子系统”中,创建新订单和更新订单都需要检查用户帐号是否正确。那么,用例“创建新订单”、“更新订单”与用例“检查用户帐号”之间是()关系。A.包含(include)B.分类(classification)C.聚集(aggregation)D.扩展(extend)94、在考察系统的一些涉及时序和改变的状况时,要用
21、动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是()A.数据流图 B.状态图 C.系统结构图 D.用例图 95、面向对象方法=对象+类+继承+(用消息通信)96、在学校中,一个学生可以选修多门课程,一门课程可以由多个学生选修,那么学生和课程之间是(关联)关系。97、父类和子类之间共享数据结构和消息的机制是(继承性)。98、(用例图 )定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。99、结构化设计的目标是_ A.建立系统软件模型 B.建立软件体系结构和详细的处理算法 C.产生设计规格说明书 D.以上全部 100、结构化设
22、计一般又可分为概要设计阶段和_详细_设计阶段。101、总体设计不包括_ A.体系结构设计 B.接口设计 C.数据设计 D.数据结构设计 102、模块结构图中,如果两个模块之间有直线连接,表示他们之间存在_关系 A.调用 B.组成 C.连接 D.顺序执行 103、关于总体设计阶段的任务,以下说法错误的是_ A.主要任务是将 DFD 转为 MSD B.针对不同类型的 DFD 有不同的设计方法 C.精化 MSD 不属于总体设计阶段的任务 D.根据穿越系统边界的数据流确定系统与外界的接口 104、获取正确软件的关键是()A.开发逻辑 B.开发团队 C.人员素质 D.明确需求 105、软件生存周期的含义
23、是表明软件的演化和发展具有周期性,每过一段时间就需要更新。A.正确 B.错误 106、当软件的一个版本被淘汰时,则该软件的生存周期就结束了。A.正确 B.错误 107、软件生存周期过程表示软件生存周期内的一个过程。A.正确 B.错误 108、为了表述软件开发需要做什么映射,引入了三个概念:(过程 活动 任务)109、软件工程概念的提出是为了解决(软件危机)。110、在()年的 NATO 会议上,软件工程的术语被首次提出。A.1966 B.1968 C.1970 D.1972 111、软件工程的目的是倡导以工程的原理、原则和方法进行软件开发。A.正确 B.错误 112、软件工程是一门交叉性学科,
24、下列哪些学科是软件工程涉及的?A.数学 B.计算机科学 C.管理科学 D.工程科学 113、需求规约是一个软件产品/系统的()A.开发模型 B.框架模型 C.概念模型 D.功能模型 114、需求规约是一个软件产品所有需求陈述的正式文档,它是不能被修改的。A.正确 B.错误 115、下列哪些不是需求规约的性质。()A.完整性 B.一致性 C.不可修改性 D.稳定性 116、非功能需求必须依附于功能需求而存在。A.正确 B.错误 117、下列需求属于性能需求的是()A.并发访问数 B.网络协议 C.异常响应 D.用户友好 118、下列需求属于外部接口需求的是()A.第三方插件 B.安全隐私 C.编
25、程语言 D.字体字号 119、下列需求属于设计约束的是()A.响应时间 B.运行平台 C.错误处理 D.可维护 120、与其他类型的非功能需求不同,(设计约束)是必须予以满足的,且对项目规划、所需的附加成本和工作产生直接影响。121、质量属性必须要给出量化的测量指标。A.正确 B.错误 122、当无法与用户进行直接交流时,可采用()的需求发现方式。A.自悟 B.提炼 C.小组会 D.思考 123、下列哪些是观察这一需求发现的方法可能带来的问题。()A.无法全面了解需求 B.被客户抵触 C.让客户误以为开发者已经熟悉了业务 D.消耗过多的时间 124、小组会和交流这两种需求发现方式的区别在于参加
26、人员的多少。A.正确 B.错误 125、需求发现常采用多种方式联合进行,但具体某一项需求常采用某一种具体的方式去捕获。A.正确 B.错误 126、下述情况分别最适合采取哪种需求发现的方式()为解决生活中遇到的麻烦事而开发的软件 有较多繁琐环节的社区医保系统的开发 某小型团体组织开发其内部人员管理系统 某大型连锁集团开发集团人员管理系统 某专业化软件外包公司接手烂尾的软件开发项目 A.-自悟;-观察;-交流;-小组会;-提炼 B.-观察;-自悟;-小组会;-交流;-提炼 C.-自悟;-交流;-观察;-提炼;-小组会 D.-提炼;-自悟;-交流;-观察;-小组会 127、关于软件开发方法,以下说法
27、正确的是 A.软件开发方法是指软件开发过程所遵循的办法和步骤 B.软件开发活动的目的是有效地得到一个运行的系统及其支持文档,并且满足有关的质量要求 C.软件开发方法学指的是规则、方法和工具的集成 D.以上说法都正确 128、结构化方法包括了 A.结构化分析方法 B.结构化项目管理方法 C.结构化设计方法 D.结构化程序设计方法 129、需求分析的目标不包括 A.解决需求陈述中的歧义、不一致的问题 B.作为开发人员和客户间技术契约的基础 C.给出解决问题的具体算法和数据结构 D.给出问题的形式化或半形式化的描述 130、结构化分析模型中,支持数据抽象的是哪些术语_ 数据流 数据存储 数据源 数据
28、潭 加工 A.B.C.D.131、在结构化分析方法中,与数据流图配合使用的是_ A.网络图 B.数据字典 C.程序流程图 D.加工小说明 132、结构化分析方法使用 DFD 描述_ A.系统的功能 B.系统的控制流程 C.系统的数据结构 D.系统的基本加工 133、结构化分析阶段,不适用于描述加工逻辑的工具是 A.结构化语言 B.判定表 C.判定树 D.流程图 简答题:1、图书预订系统:书店向顾客发放订单,顾客将所填订单交由系统处理,系统首先依据图书目录对订单进行检查并对合格订单进行处理,处理过程中根据顾客情况和订单数目将订单分为优先订单与正常订单两种,随时处理优先订单,定期处理正常订单。最后
29、系统根据所处理的订单汇总,并按出版社要求发给出版社。画出图书预定系统的各层数据流图。3、说明数据流图的作用和四种基本符号的名称、图形表示和含义。数据流图简称 DFD(,是 SA 方法中用于表示系统逻辑模型的一种工具.它以图形的方式描述数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型.数据流图有四种基本图形符号:“”箭头表示数据流;“”圆或椭圆表述加工;“=”双杠表示数据存储;“”方框表示数据的源点或终点 4、简述需求分析的概念及需求分析的基本任务。需求分析是指开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由
30、需求定义转换到相应的形式功能规约(需求规格说明)的过程。需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题。5、什么叫模块化?设计一个系统时是否分的模块越多就越好?说明原因。1.模块化就是把程序划分成可独立命名且独立访问的模块,每个模块完成一个子功能,把这些模块集成起来构成一个整体,可以完成指定的功能满足用户的需求。2.不一定。当模块数目增加时每个模块的规模将减小,开发单个模块需要的成本(工作量)确实减少了,但是,随着模块数量增加,设计模块间接上所需要的工作量也将增加,根据这两个因素,得出设计一个系统时并不一定模块越多越好 6、说明模块化的两层含义 把
31、程序划分成独立命名且可独立访问的模块,每个模块完成一个子功能,这些模块集成起来构成一个整体,可以完成指定的功能以满足用户的需求。模块是由边界元素限定的相邻程序元素的序列,而且有一个总体标识符代表它。模块是构成程序的基本构件。过程、函数、子程序和宏等,都可作为模块。面向对象方法学中的对象是模块,对象内的方法(或称为服务)也是模块 7、说明模块独立性的概念和衡量模块独立的标准 模块独立的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。模块的独立性很重要:第一,有效的模块化(即具有独立的模块)的软件比较容易开发出来。第二,独立的模块比较容易测试和维护。模块的独立程度可以由两个定性标准度量,分别是
32、内聚和耦合。内聚衡量一个模块内部各个元素彼此结合的紧密程度;耦合衡量不同模块彼此之间互相依赖(连接)的紧密程度。8、简要说明 PAD 图的优点 PAD 图所描述的程序结构十分清晰。用 PAD 图表现程序逻辑,易读、易懂、易记。很容易将 PAD 图转换成高级程序语言源程序 既可用于表示程序逻辑,也可用于描述数据结构 PAD 图的符号支持自顶向下、逐步求精方法的使用。9、请使用 PAD 图和 PDL 语言描述在数组 A(1)A(10)中找最大数的算法 PDL 语言 N=1 WHILE N=10 DO IF A(N)=A(N+1)MAX=A(N+1);ELSE MAX=A(N)ENDIF;N=N+1
33、;ENDWHILE;10、什么是集成测试,包括哪两种策略?集成测试是测试和组装软件的系统化技术,主要目标是发现与接口的问题;由模块组装成程序时有两种方法,一种是渐增式方法,另一种是渐增式反法,当使用渐增式方式把模块结合到程序中去时,有自顶向下和自底向上两种集成策略 11、什么是软件测试,软件测试分为哪几个阶段。软件测试:使用人工或自动的手段来运行或测量软件系统的过程,以检验软件系统是否满足规定的要求,并找出与预期结果之间的差异。软件测试一般分为 4 个阶段:单元测试、集成测试、系统测试、验收测试 11、在软件模型当中如何表达对象的整体性、关联性、交互性、继承性、多态性?整体性:通过面向对象的封
34、装 class 形式来体现 关联性:指一般关系和组成关系:(1)一般关系指主次关系、拥有关系、数量关系;(2)、整体部分关系是组合或聚合 交互性:用依赖关系,消息机制;继承性:通过表达家族谱的泛化关系 多态性:通过重载、接口、抽象类 12、说明面向对象的特征?(1)封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。(2)继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表达共性的方法。(3)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。(4
35、)多态:多态是指允许不同类的对象对同一消息作出响应,多态性语言具有灵活,抽象,行为共享,代码共享的优势,很好地解决了应用程序函数同名问题 综合应用题 1、题目:在某大学学籍管理信息系统中,假设学生年龄的输入范围为 1640,则根据黑盒测试中的等价类划分技术,可以划分为几个有效等价类?几个无效等价类?分别是什么?试根据有效等价类和无效等价类测试用例设计的原则,设计相应的测试用例。答:等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其他值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一
36、个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。有效等价类:是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。无效等价类:与有效等价类的定义恰好相反,指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。对于具体的问题,无效等价类至少应有一个,也可能有多个。对于本题,输入范围为 1640,所以这个区域内的为有效等价类,小于 16 或大于 40 的为无效等价类,即一个有效等价类,两个无效等价类。2、用例建模 某网络学院决定开发一个管理所
37、有学生和教师信息的交互式网络系统,其中网络学院人员包括学生、教师、管理员。该系统提供如下服务:1)浏览学生信息:网络学院的任何人员,包括学生和老师,均可以浏览学院任何学生的信息,包括姓名、学号和专业名称。2)浏览教师信息:网络学院的任何人,包括学生和老师,均可以浏览学院任何教师的信息,包括姓名、工号和职称。3)登录:网络学院给每人一个账号。拥有授权帐号的学生和老师,可以使用系统提供的页面设置个人密码,并使用该帐号和密码 向系统注册。4)修改个人信息:学生或老师向系统注册后,可以发送电子邮件或使用系统提供的页面,对个人信息进行修改。5)删除个人信息:只有管理员才能删除相关人员的信息。请完成下列问
38、题?(1)哪些是参与者?他们之间有什么关系?(2)哪些是用例?答案:3、试用 UML 对新闻发布系统及相关的数据库系统进行分析和设计。假设管理员可以在后台对新闻、评论、注册会员进行管理,并发布新闻;任何游客可以浏览新闻,浏览者注册后可以成为系统会员;注册会员可以发表新闻评论。新闻信息实体的主要属性主要包含标题(title)、内容(content)、发布日期(DateTime),主要操作有添加新闻(Addnews)、删除新闻(Delnews)、修改新闻(Modinews);评论实体的主要属性包含新闻标识(ArticleID)、评论者名(UserName)和评论内容(body),主要操作有添加评论(AddRemark)、删除评论(DelRemark);会员实体的主要属性有会员编号(MemberNo)、会员密码(Memberpsw)、会员名字(MemberName)、会员描述(MemberDesc)等,主要操作有登陆(Login);管理员实体的主要属性有管理员编号(AdmNo)、会员密码(Admpsw)、会员名字(AdmName)等,主要操作有添加用户(Adduser)、删除新闻(Deluser)。请完成下列工作:(1)画出系统用例图;(2)画出分析类图;(3)画出“新闻管理”的活动图;