当前位置:文档之家› 面向对象分析与设计uml答案

面向对象分析与设计uml答案

面向对象分析与设计uml答案
面向对象分析与设计uml答案

农业大学期末考试试卷(A卷)-答案

2007学年第1学期考试科目:面向对象分析与设计

考试类型:(闭卷)考试时间:120 分钟

学号姓名年级专业

一、判断题(每题1分,共10分。对的标“T”,错的标“F”,将答案写入下表)

1. 一个状态图最多只能由一个初态和一个终态。(F)

2. 协作图中的消息必须要有消息顺序号。(T)

3. 两个参与者(actor)之间可以有包含(include)关系、扩展(extend)关系或泛化(generalization)关系,而包含关系和扩展关系是依赖(dependency)关系的版型。(F)

4. 参与者(actor)和用例(use case)之间的关系是关联(association)关系。(T)

5. 类A和类B之间的关系如图1所示,则称类B中的getName()方法是对类A中的getName()方法的重载(overload)。(F)

图1 getName()方法之间的关系图2 活动图

6. 如图2所示,活动Gesture和Stream audio可以并发进行。(T)

7. 一个软件系统,如果只有源代码,缺乏其他相应的辅助文档,如缺乏顺序图和类图,则可以利用Rose进行逆向工程得到顺序图和类图,但得到的顺序图和类图会比较简单。(F)8. CMM描述了五个级别的软件过程成熟度,即初始级、可重复级、已定义、已管理级、优化级。(T)

9. UML由用例视图、物理视图、组件视图、进度视图和配置视图组成。(F)

10. 在设计类图时,可以不用对类图中的每个关联进行命名,但如果需要命名的话,最好用一个“动词”给关联命名。(T)

二、单项选择题(每题2分,共30分。将正确答案填入下表)

1. 一个设计得好的OO系统具有(B)

A. 低内聚、低耦合的特征

B. 高内聚、低耦合的特征

C. 高内聚、高耦合的特征

D. 低内聚、高耦合的特征

2.下面()不是UML的基本构成元素。(A)

A. 控制语言

B. 基本构造块

C. 规则

D. 公共机制

3. 面向对象的特点主要概括为(C)。

A. 可分解性、可组合性、可分类性

B. 继承性、封装性、多态性

C. 抽象性、继承性、封装性、多态性

D. 封装性、易维护性、可扩展性、可重用性4.构成对象的两个主要因素是(A)。

A. 属性和服务

B. 标识和内容

C. 继承和多态

D. 消息和封装

5.下列关于面向对象方法中描述中错误的是(C)。

A. 使用设计模式有助于在软件开发中应用面向对象技术

B. 选择面向对象程序设计语言时需要考虑开发人员对其的熟悉程度

C. UML作为一种可视化建模语言需要与RUP开发过程同时使用

D. 目前在软件生命周期的分析、设计、实现和测试中均可以应用面向对象方法

6. 顺序图主要可以为设计人员提供(A)信息。

A. 消息发送的顺序

B. 某个方法的执行流程

C. 类之间关联关系的多重性

D. 某个对象在不同状态之间的转移

7. 类和接口的关系类似于下面哪种类型的关系(D)。

A. 关联(association)和聚集(aggregation)

B. 关联(association)和组合(composition)

C. 脚本(scenario)和用例(use case)

D. 包(Package)和子系统(subsystem)

8. 在类图中,那个类图中的类Order所生成的代码具有

Public class Order

{

Public Customer recipient;

}

的形式?(A)

A. B.

C. D.

9. 下面那个图符表示UML中的实现关系?(C)

A. B.

C. D.

10. 一个银行业务系统采用如图琐事的配置图,则错误的是(D)

A. 与GUI有关的类应该部署在Branch Client上

B. 这个图表示一个三层的体系结构,不管Branch Client、Financial App Server、Database

Server是运行在同一台机器上还是在不同机器上

C. 为了系统的可伸缩性(scalability),与业务逻辑有关的对象应该部署在Financial App

Server上

D. 为了系统的可伸缩性,与业务逻辑有关的对象应该部署在Branch Client上

11. 关于用例与类的对比中(D)是错误的。

A 都属于模型结构元素

B 都存在继承关系

C 类描述系统的部分静态视图,用例描述系统动态的行为视图

D 类描述的是系统的内部构成,用例也可以描述系统的内部构成

12. Innovation公司正在为Rose开发插入件,使得Rose可以把OOA、OOD模型以各种图形格式导出,如JPEG格式、BMP格式、GIF格式等。在导出时,会根据不同的算法来生成相应的图形文件,这些算法很复杂。为了描述这些算法,在下面这些图中,那个是最适合的?(A)(注:活动图可以用来描述细节)

A. 活动图

B. 状态图

C. 类图

D. 用例图

13. 计算机(Computer)由中央处理器、内存、软盘、硬盘、显示器、键盘、鼠标等组成。那么Computer类和其他类(CPU、RAM、FloppyDrive、HardDisk、Monitor、Keyboard、Mouse)之间的关系是:(D)

A. 泛化关系(Generalization)

B. 实现关系(Realization)

C. 包含关系(Inclusion)

D. 聚集关系(Aggregation)

14. 在状态图中不能表示下面那些概念?(D)

A. 动作(action)

B. 事件(event)

C. 转移(transition)

D. 类(class)

15.在数据库设计的阶段开始考虑具体的数据库管理系统(DBMS)的特性。(C)

A. 需求分析

B. 概念设计

C. 逻辑设计.D 物理设计

三、简单题(共36分,每题6分)

1. “要迭代开发、真是有道理。我决定在我们的项目组实施迭代开发,第一迭代先做需求,第二个迭代做分析,第三个迭代做设计……”——这段话有什么问题?(6分)

2. 分析下面的类图,画出新的类图,将原图中的多对多关系转换为1:M(一对多)关系。(6分)

答案:

3.信用卡可能处于“开放”和“关闭”状态,其中“开放”状态可以直接进入“关闭”状态,而从“关闭”状态必须提供密码验证才能进入“开放”状态。“开放”状态又包括“透支”和“正常”状态之间的变化,当剩余金额少于零、或者使用额度大于剩余金额、或者结算余额小于零时进入透支状态,反之则为正常状态。画出信用卡的状态图。(6分)

4. 假设下面是某些以完工用例图等截屏形状,其中有2张图不合适,请说明原因。(6分)

A.

B.

C.

参考答案:

图C 合适,其他有问题。

5. 请判断以下类图中的类关系是否合适,并说明理由。(6分)

(1)飞机有机翼、机身、驾驶舱

(2)商场里的电器。1台电器可以是1台洗衣机,也可以不是;1台

电器可以是1台电视机,也可以不是;1台电器可以是1台空调,也可以不是;

(3)公司的员工很多,包括程序员、分析员、项目经理……

参考答案:

(1)飞机有机翼、机身、驾驶舱 应改为“组合”

(2)商场里的电器。1台电器可以是1台洗衣机,也可以不是;1台电器可以是1台电视机,也可以不是;1台电器可以是1台空调,也可以不是; 应该为“泛化”

(3)公司的员工很多,包括程序员、分析员、项目经理…… 应改为“泛化”

6. 假设你从垃圾堆里捡到这样一张小纸片(如图5所示)。(6分)

根据现有信息尽可能判断:

(1)“小车”类有哪几个操作?

(2)“指挥小车UC”类的“执行任务”操作要做哪些工作?(采用伪代码描述)

图5 时序图

参考答案:

(1)“小车”类有哪几个操作?

返回小车当前位置()

转向和前进()

(2)“指挥小车UC”类的“执行任务”操作要做哪些工作?(采用伪代码描述)移动任务:更新行走断表和目的地()

移动任务:判断现有信息足以让小车行走()

小车:放回小车当前位置()

小车:验证小车尚未到达目的地()

移动:根据但前位置及断表信息计算出速度、角度()

小车:转向和前进()

四、设计题(共24分)

1.仔细分析“语音邮箱系统”的“保留语音信息”和“拨打邮箱号”的用例事件流描述,请找出里面的对象,并画出时序图和协作图。(14分)

用例1: 拨打邮箱号

(1)呼叫者拨打语音邮件系统的主号码.

(2)语音邮件系统发出提示音:输入邮箱号码并加#号.

(3)呼叫者输入接收者的邮箱号.

(4)语音邮件系统发出问候语:已进入XX的邮箱,请留言.

用例2: 保留语音信息

(1)呼叫者”拨打邮箱号”.

(2)呼叫者说出信息.

(3)呼叫者挂断电话.

(4)语音邮件系统将记录的信息存放在接收者的邮箱中.

参考答案:

2.假设某高校需要建立一个档案管理系统,而您是该软件系统的负责人。你所在的软件公司与高校一致同意系统的构建采用面向对象方法。作为开发负责人,请您结合本课程中的学习知识,提供参考的软件体系结构设计方案,描述开发这个系统的过程,并写出开发过程的每个步骤中您认为应该用到的主要技术。(10分)

根据学生的情况给分。

面向对象程序设计—文本编辑器的设计与实现

课程设计报告书 课程名称面向对象程序设计 设计题目文本编辑器的设计与实现 专业班级 学号 姓名 指导教师 年月

目录 1 设计时间 (1) 2 设计目的 (1) 3设计任务 (1) 4 设计内容 (1) 4.1需求分析 (1) 4.2概要设计 (1) 4.2.1功能结构图 (1) 4.3详细设计 (2) 4.3.1流程图 (3) 4.4系统的功能实现 (4) 4.4.1类或包的加载 (5) 4.4.2设计一个主类,变量的定义 (5) 4.4.3文件操作功能的实现 (6) 4.5运行测试 (25) 4.5.1文本编辑器界面 (25) 4.5.2各功能菜单界面 (25) 5 总结与展望 (26) 参考文献 (26) 成绩评定 (27)

1 设计时间 2011年12月19日~2011年12月25日 2 设计目的 本次设计是学习完《java6程序设计》课程后进行的一次全面的综合练习,目的是加深对本学期课程的理解,通过设计文本编辑器并实现其功能来熟练掌握java语言基础,初步掌握软件开发的基本方法与技术将理论课程中学到的知识运用到实践中,实现有一定规模的Java应用。 3设计任务 本次设计的主要任务是文本编辑器的设计与实现,要求设计一个类似于Windows记事本(Notepad)的Java程序。可以打开、新建、保存一个文本文件;对选中的文本进行各种编辑操作(设置字体、字号、字型、对齐方式、背景、前景色、复制、粘贴、剪切、查找、替换等);在文本中能够插入对象。 4 设计内容 4.1需求分析 现在网络上各种文本编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed,xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的文本编辑器程序。 4.2概要设计 4.2.1功能结构图

面向对象分析与设计

第三章 UML是一种建模语言,用于对软件系统制品进行规约。可视化构造和文档化,也可以用于业务建模以及其他非软件系统的建模。因此他只是一种建模语言,而不是一种建模方法 UML用于建立系统的分析模型和设计模型,而不是用于编程 UML的主题部分并不是一种形式化语言,它只是部分的采用了形式化语言的定义方式,而且也不是严格的形式化 第四章 抽象是面向对象方法中使用最为广泛的原则: 1:系统中的对象是对现实世界中事物的抽象 2:类是对象的抽象 3:一般类是对特殊类的抽象 4:属性是事物静态特征的抽象 5:操作是事物动态特征的抽象 粒度控制: 人在面对一个复杂的问题时,不可能在同一时刻纵观全局,又能洞察秋毫。因此需要控制自己的视野;考虑全局时,注重其大的组成部分;暂时不去详细考察每一部分的具体细节;考虑某个部分的细节时暂时撇开其余部分和宏观上的问题,这就是粒度控制。 行为分析: 采用如下行为分析原则,以控制行为的复杂性: 以对象为单位描述系统中的各种行为; 通过消息描述对象之间的行为依赖关系 认识行为的起因,区分主动行为和被动行为 认识系统的并发行为 用况图: 把用况、参与者以及它们之间的关系用一些图形符号进行可视化表示, 便得到用况图(use case diagram)

用况图是直接描述需求的,因此它是一个需求模型 模型图中表达不尽的信息,需要以文字和表格等方式做进一步描述,这就是模型规约。 OOA与OOD的关系: 不同的目标、内容和抽象层次: 通过OOA和OOD所得到的系统模型分别成为OOA模型和OOD模型,它们都是对系统的抽象描述,但是属于不同的抽象层次。 OOA的主要内容是研究问题域和系统责任,运用面向对象的观点发现问题域中与系统责任有关的对象,认识对象的内部特征和各类对象之间的关系,目标是建立一个直接映射问题域,符合用户需求的OOA模型。 OOD的主要内容是以OOA为基础,针对选定的实现平台进行系统设计,目标是产生一个能够在选定的软硬件平台上实现的OOD模型。 系统的体系结构是对系统的部件和连接部件以及这些部件通过连接件进行交互的规约。 第五章 需求分析(requirements analysis)是软件工程中的经典术语之一,其确切含义应该是对用户需求进行分析,旨在产生一份明确、规范的需求定义。 无论是结构化方法中的数据流图还是面向对象方法中的类图,都不是直接描述用户需求,而是描述了一个满足用户需求的系统模型。确切的讲,这些工作应该叫做系统分析 系统边界(system border)是指系统内部的所有成分与系统以外各种事物之间的分界线。在系统边界以内,是系统本身包含的全部对象;在系统边界以外,是与系统进行信息交换的各种事物,即人员、设备和外系统等各种参与者。 系统成分是指在系统模型中给出定义并且在程序中加以实现的系统元素。

UML面向对象分析与设计

UML面向对象分析与设计 大作业 前言 “UML面向对象分析与设计”是计算机专业和软件工程等相关专业的一门重要课程,也是其他理工科专业的热门选修课程。“程序设计语言”、“计算机网络”、“数据库原理”和“数据机构”等是它的前导课程,学好本课程对学生毕业后从事软件开发有着极为重要的作用。 要学好这门课,仅仅通过课堂教学或自学掌握理论知识是远远不够的,还必须加强实践。特在学期末引入uml的综合分析与设计,从实际项目出发,使学生学会运用软件工程基本理论知识,UML建模语言和rose建模环境,去解决软件开发中的实际问题,达到学以致用的目的。

面向对象软件开发技术 项目的引入及需求 简易教学管理系统的分析、设计与实现 一、设计的目的 1.初步了解UML语言的概念、结构、语义与表示方法; 2.掌握UML建模工具Rational Rose的使用方法; 3.给出某个简单系统的模型,能够熟练地使用Rose工具表达; 二、设计理论基础 1. 面向对象的程序设计C++或JAVA程序设计课程; 2.数据结构或算法课程 2.SQLServer或mysql数据库系统; 3. 熟悉传统软件工程以及软件测试技术。 三、设计内容与步骤 需求陈述:简易教学管理系统主要提供两个方面的服务: 选课管理,负责新学期的课程选课注册。 成绩管理,负责学生成绩管理。 (1)简易教学管理系统---选课管理应提供的服务如下: 1.录入与生成新学期课程表 教学管理人员在新学期开学前录入新学期的课程,打印将开设的课程目录表,供师 生参考选择。如果某门课实际选课的学生少于10人,则停开该课程,把该课程从 课程表中删除;如某课程选课学生多于60人,则停止选课。 2.学生选课注册 新学期开始前一周为学生选课注册时间,在此期间学生可以选课注册,并且允许改 变或取消注册申请。 每个学生选课可不允许超过4门,每门课最多允许60名学生选课注册。 3.查询 可以查询课程信息、学生选课信息和学生、教师信息。

面向对象分析与及设计习题及答案

面向对象分析与及设计习题及答案 一、单项选择题 1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是(D)的 形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。 A. Simula67语言 B. Smalltalk语言 C. Java语言 D. 统一建模语言(UML)的标准 2. 面向对象的运动产生了多种面向对象的语言, 其中(C)是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。 A. Smalltalk B. Eiffel C. C++ D. Java 3.下列不属于面向对象技术的基本特征的是(B)。 A. 封装性 B. 模块性 C. 多态性 D. 继承性 4. 面向对象程序设计将描述事物的数据与(C) 封装在一起,作为一个相互依存、不可分割的整体来处理。 A. 信息 B. 数据隐藏 C. 对数据的操作 D. 数据抽象 5. 关于面向对象方法的优点,下列不正确的叙述是(C)。 A. 与人类习惯的思维方法比较一致 B. 可重用性好 C. 以数据操作为中心 D.可维护性好 6. (D)是从用户使用系统的角度描述系统功能的图形表达方法。 A. 类图 B. 对象图 C. 序列图 D. 用例图 7. (C) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作图 和其他图的基础。 A.对象图 B. 组件图 C. 类图 D. 配置图 8.(D)描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对象之 间传递消息的时间顺序。 A.对象图 B. 协作图 C. 状态图 D. 序列图 9.(D)就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示系统 中软件和硬件的物理架构。 A. 组件图 B. 协作图 C. 状态图 D. 配置图 10. 使用UML进行关系数据库的(B)时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务Use Case模型设计 B. 逻辑数据模型设计 C. 物理数据模型设计 C. 物理实现设计 11.一个设计得好的OO系统具有(B) A. 低内聚、低耦合的特征 B. 高内聚、低耦合的特征 C. 高内聚、高耦合的特征 D. 低内聚、高耦合的特征 12.下面()不是UML的基本构成元素。(A) A. 控制语言 B. 基本构造块 C. 规则 D. 公共机制

面向对象的分析设计实现--图书管理系统

实验报告面向对象的分析设计实现—图书管理系统 一.需求分析 1.1系统需求描述 一般图书馆管理系统主要用于对图书馆日常工作的管理,主要任务是用计算机对读者、图书等各种信息进行日常管理,如查询、修改、增加、删除、图书借阅和归还的管理等。本系统实现了图书馆的信息化管理,完成了图书馆管理系统的基本功能。 一般图书馆管理系统主要包括用户登录子系统、用户管理子系统、图书管理子系统、图书借阅与归还、图书和用户信息查询子系统四个部分,各部分主要功能如下: 用户登录子系统:用于数据库的连接,主界面的设计和不同身份用户的登录管理。 用户管理子系统:用于用户信息的管理,如用户添加、用户信息修改、用户删除。 图书管理子系统:用于图书信息的管理,如新书入库、图书信息修改、图书信息删除。 图书借阅与归还子系统:用于用户借阅和归还图书。 图书和用户信息查询:图书和用户信息的查询。 1.2系统功能结构图

图 1.1 图书管理系统分析系统流程图 1.3 系统解决方案 以上述一般的图书管理系统分析为构思原型。为简化系统,忽略掉其他复杂琐碎的功能需求,仅保留图书信息的录入、修改和读者借、续借、还的功能。读者与管理员通过界面对象调用控制类对象,控制对象进行各种操作并把信息写入数据库。 二.系统设计 2.1 系统E-R图 图 1.2 用户实体图

图1.3 书籍实体图 图 1.4 实体属性图 2.2数据库表结构 表2.1 图书信息表

表2.2 用户借阅表 表2.3用户信息表 2.3用例文档 本系统共设置四个活动者。分别是TT_People、TT_Registrar、TT_Reader 和TT_Database。其中TT_People泛指与系统发生关系的人;TT_Registrar为系统管理员,负责添加、修改图书信息;TT_Reader为所有读者,读者可能发生借书、续借、还书的行为;TT_Database为存储各种信息的数据库对象。另:考虑到现实图书馆中还存在“图书馆管理员”这一角色,但其所起的作用仅为代替读者完成各种系统操作,故没有设置此活动者。 系统中共有五个用例。TT_Addinfo、TT_Modifyinfo、TT_Borrow、TT_Renew 和TT_Return。TT_Addinfo表示管理员添加图书信息;TT_Modifyinfo表示修改图书信息;TT_Borrow表示读者借阅图书;TT_Renew表示读者续借图书;TT_Return表示读者归还图书。

最新面向对象分析与设计课程总结

面向对象分析与设计 课程总结 0923010208 指导老师:庄育飞 这学期学院开设了面向对象分析与设计(UML)这门课,通过老师的讲解,自己一些相关书籍的阅读和实践作业的完成,逐步对课程有了由浅及深的认识。我觉得学习这门课还是受益匪浅的。 面向对象(Object Oriented,OO)是一门以实践为主课程,课程中可以分开两块OOA(面向对象系统分析)和OOD(面向对象系统设计)。 OOA(面向对象系统分析)主要内容: 研究问题域和用户需求,运用面向对象的观点和原则发现问题域中与系统责任有关的对象,以及对象的特征和相互关系.OOA不涉及针对具体实现采取的设计决策和有关细节,独立于具体实现的系统模型。是一个完整确切反映问题域和用户需求的系统模型。OOA的优势:复

用、可扩展、可维护性、弹性。 OOD(面向对象系统设计):以OOA模型为基础,按照实现的要求进行设计决策,包括全局性的决策和局部细节的设计,与具体的实现条件相关。OOD的步骤:细化重组类→细化和实现类之间的关系,明确其可见性→增加属性,指定属性的类型和可见性→分配职责,定义执行每个职责的方法→对消息驱动的系统,明确消息传递的方式→利用设计模式进行局部设计→画出详细的类图和时序图。 面向对象的分析与设计方法将致力于解决传统软件研发过程中由于软件模块化结构化程度不高带来的软件重用性差、软件可维护性差、开发出的软件不能满足用户需要等方面问题。面向对象的概念包括:对象、对象的状态和行为、类、类的结构、消息和方法。对象概念将包含对象唯一性、抽象性、继承性、多态性的重要特征。面向对象的要素包含:抽象、封装性、共享性三方面。 在设计模式的研究过程中,我们组选择的是迭代器(Iterator)的设计模式研究。完成设计研究后,我对迭代器的设计模式有了更为深刻的理解。迭代器(Iterator)提供一个方法顺序访问一个聚合对象的各个元素,而又不暴露该对象的内部表示。并了解到迭代器设计模式一般在以下三类场合使用较多。 ●访问一个聚合对象的内容而无需暴露它的内部表示。 ●支持对聚合对象的多种遍历。因为遍历状态是保存在每一个迭代器对象 中的。

(完整版)面向对象程序设计与面向过程程序设计的区别(2)

面向过程程序设计和面向对象程序设计的区别 面向过程程序设计我个人的理解简单来说,他考虑问题的方式是面向流程的,一个程序的设计思路就是解决一个问题的流程。就好比游戏先登入界面,再输入密码,然后选择角色,在然后进入游戏玩耍,结束... .... 这把这些步样就是面向过程。面向过程就是分析出解决问题所需要的步骤,然后用函数骤一步调用就可以了一步实现,使用的时候一个一个依次。可以看出面向过程化程序设计是先确定算法,再确定数据结构。而面向对象程序设计是面向问题中的各种独立个体的,程序的析设分计过程就是将程序分解成不同对象(不同概念体)之间的交互的过程。这就好比在针对某个工程或游戏设计程序时先不考虑,游戏是怎么玩的,工作是怎么做的,而先会去找,游戏或工程中有哪些人或事物参与(一般选择:用户,玩家,角色等等),然后再看他们都有什么用,都干了些什么,针对这个区设计方法。最后在通过这些千丝万缕的联系把他们分门别类的,组装在一起。可以看出面向过程化程序设计是先确定数据结构再确定算法。 从上面很容易看出,面向过程的程序上一步和下一步环环相扣,他只考虑实现客户的需求不考虑以后扩展,如果以后客户的需求有变化那代码量要改变非常大耗费的时间也相当多。从本质上说,面向过程基本上是一种状态机,不利于修改,当新状态出现的时候,甚至可能需要重设每一个状态解决实现。所以说面向过

程是一种直接的编程方法,它是按照编程语言的思路考虑问题。尤其是想C语言这种过程式语言,它就是通过顺序执行一组语句来实现一个功能,这些语句的执行过程就是整个程序。不同的语言解决同一个问题的过程是不一样的。 而面向对象的程序设计很多东西都是独立的,每个对象都可以重复使用。而面向对象程序设计强调“封装”,“继承“和“多态”。数据和与数据相关的操作被包装成对象(严格的说是“类”),每一种对象是相对完整和独立的。对象可以有派生的类型,派生的类型可以覆盖(或重载)原本已有的操作。所有的这些,是为了达成更好的内聚性,即一种对象做好一件(或者一类相关的)事情,对象内部的细节外面世界不关心也看不到;以及降低耦合性,即不同种类的对象之间相互的依赖尽可能降低。而所有的这些,都有助于达成一个崇高的目标,就是可复用性。 下面举个例子来说明面向过程的程序和面向对象的程序设计的区别: 用面向过程的思想去考虑它应该是这样的:如何启动汽车、如何起步、加速、刹车、熄火等一个个操作。面向过程是把所有的功能全部在一个大的类里定义出来,当系统庞大时,功能多了,各种操作之间的调用关系也很复杂,当需要修改一个功能时就可能引发一连串的改动,使修改和维护成本增加,而不利于修改。 而面向对象则以汽车为对象,一切由汽车开始,以上的可用操

面向对象分析设计小结

?1、面向对象方法的基本观点: ?Coad-Y ourdon认为:面向对象=对象+类+继承+通信。 ?2、面向对象方法的特点包括: ?(1)、符合人们对客观世界的认识规律; ?(2)、对需求变化具有很强的适应性; ?(3)、支持软件复用; ?(4)、可维护性好。 ?3、对象、类、封装、继承、消息、多态性的基本概念。 对象是客观世界中具有可区分性的、能够唯一标识的逻辑单元,是现实世界中的一个事物(站在计算机技术角度,即对事物的模拟)。 类是一组具有相同属性和相同操作的对象的集合。 封装是把对象的属性和操作结合在一起,组成一个独立的单元。 继承是指子类(派生类、特化类)自动拥有其父类(基类、泛化类、超类)的全部属性和操作,即一个类可以定义为另一个更一般的类的特殊情况。 消息是对象之间采用消息传递来发生相互作用—互相联系、互发消息、响应消息、协同工作,进而实现系统的各项服务功能。 多态性是一种方法,使在多个类中可以定义同一个操作或属性名,并在每一个类中有不同的实现。 ?4、面向对象系统开发过程。 ?5、运用名词词组法来定义类(对象): ?例:音像商店出租/出售业务信息系统中的类的确定。 ?总目标:?A.提供及时培训。?B.实施的系统必须友好,易学易用。?C.实施的系统必须考虑安全问题。

?具体目标: ?1.1.1 提供一个自动系统协助顾客出售/出租结帐。 ?2.1.1 提供和维护一个自动的会员数据库。?a. 按要求提供最新会员信息。? b. 有添加、改变、删除会员信息的能力。 2.1.2 提供会员信息报表(但不限于)?a. 最少光顾的会员。?b. 最经常光顾的会员。?c. 有问题会员(欠钱,出租过期)? 4.1.1 提供、维护出售和出租项的库存数据库。?a. 按要求提供最新库存信息?b. 有添加、改变、删除库存信息(出售和出租)的能力 4.1.2 提供库存信息报表(但不限于)?a. 最不受欢迎的出租项?b. 最受欢迎的出租项?c. 过期的出租项?d. 出售和出租项的“订购”产品(采购报表) 5.1.1 提供出售报表(但不限于)?a. 用产品码表示的一段时间(天、星期、月)内销售情况?b. 用产品码表示的一段时间(天、星期、月)内出租情况相应的侯选对象清单为:安全问题、自动系统、顾客出售/出租结帐、会员数据库、会员信息、会员信息报表、库存数据库、出售和出租项、库存信息、库存信息报表、采购报表、出售报表。 ?6、对多值属性的处理方法:用部分-整体方法。 例:发票/发票行 第2章统一建模语言UML 1、UML描述的软件基本模型:用例视图、逻辑视图、构件视图、进程视图、 部署视图 2、UML的基本符号。 3、RUP项目开发过程的特征:用例驱动的系统、以体系结构为中心、螺旋 上升式的开发过程、以质量控制和风险管理为保障措施。

面向对象分析与设计试题及其答案

面向对象分析与设计试题B卷 一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题2 分,共20 分) 1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的 形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。 A. Simula67语言 B. Smalltalk语言 C. Java语言 D. 统一建模语言(UML)的标准 2. 面向对象的运动产生了多种面向对象的语言, 其中()是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。 A. Smalltalk B. Eiffel C. C++ D. Java 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. 状态图 D. 配置图 10. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务Use Case模型设计 B. 逻辑数据模型设计 C. 物理数据模型设计 C. 物理实现设计 二、填空题( 每空1 分,共20 分) 1. 面向对象开发方法一改过去传统的以___功能分析___为基础的__面向过程__的结 构化分析与设计方法,它模拟人们理解和处理客观世界的方式来分析问题,把系统视为

面向对象三维图形引擎的设计与实现

第39卷 第1期 电 子 科 技 大 学 学 报 V ol.39 No.1 2010年1月 Journal of University of Electronic Science and Technology of China Jan. 2010 面向对象三维图形引擎的设计与实现 邱 航,陈雷霆 (电子科技大学计算机科学与工程学院 成都 610054) 【摘要】提出并实现了一种面向对象的三维图形渲染引擎Gingko ,对引擎的体系结构、各模块之间的关系以及关键技术进行了分析说明。该引擎提供可扩展的软件体系结构、高效的场景处理方法、方便易用的应用程序接口,为三维图形应用的快速开发和高效运行提供了支撑。实验证明,该引擎具有运行稳定、渲染速度快的特点,对于大规模室外场景的渲染速度能保持在20 fps 以上。 关 键 词 图形引擎; 插件; 实时渲染; 真实感渲染 中图分类号 TP391.41 文献标识码 A doi:10.3969/j.issn.1001-0548.2010.01.028 Design and Implementation of Object-Oriented 3D Graphics Engine QIU Hang and CHEN Lei-ting (School of Computer Science and Engineering, University of Electronic Science and Technology of China Chengdu 610054) Abstract An object-oriented 3D graphics engine is presented and implemented. The general architecture, the relationships of every module, and the key techniques of the engine are discussed. This engine can support extendable software architectures, and provide high efficient scene rendering method and convenient application programming interfaces. It can greatly accelerate the development of 3D graphics and provide supports for its efficient running. Experimental results show that this engine has high stability and high rendering speed, for rendering large-scale out-door scene, the speed is still above 20 fps. Key words graphics engine; plug-in; real time rendering; realistic rendering 收稿日期:2008 ? 06 ? 25; 修回日期:2009 ? 04 ? 28 基金项目:国家863高技术研究发展计划项目(2006AA01Z335);总装“十一五”预研项目 作者简介:邱 航(1978 ? ),男,在职博士生,讲师,主要从事计算机图形学、数字媒体技术方面的研究. 实时真实感图形生成是计算机科学技术的重要 研究方向,目标是使计算机可以产生与真实世界相 同或高度近似的视觉环境,从而使用户获得身临其 境的视觉感受[1-2],其应用范围覆盖大众娱乐、视景 仿真、城市规划及文化教育等诸多领域。 近年来,随着计算机图形软、硬件的不断发展, 人们对实时真实感渲染以及场景复杂度提出了更高 的要求。传统的直接使用底层图形接口如OpenGL 、 DirectX 开发图形应用的模式越来越暴露出开发复 杂性大、周期长、维护困难的缺陷。鉴于以上原因, 三维图形引擎相关技术受到了广泛的关注。目前, 国外已有众多商用或开源三维图形引擎,如 OGRE [3]、OSG [4]等。 OGRE(object-oriented graphics rendering engine) 是一种用C++实现的跨平台开源三维图形引擎。该 引擎底层对DirectX 、OpenGL 进行完全封装,采用 了基于插件的体系结构,方便用户使用和功能扩展。 但OGRE 过于庞大和复杂,使用户感觉掌握困难。此外,由于底层对DirectX 和OpenGL 的完全封装,用户无法对基本图形API 进行直接操作。 OSG(open scene graph)是一款著名的3D 图形引擎,主要用于虚拟现实、仿真和游戏等领域。OSG 底层只提供了对OpenGL 的封装,与其他图形引擎一样,拥有诸如场景管理、地形管理和底层API 封装等功能。但OSG 的渲染管理比较特殊,它不是采用渲染队列进行渲染管理,而是采用渲染树,更为高效。 Irrlicht 引擎是一款开源、跨平台的3D 引擎,底层封装了DirectX 和OpenGL ,并提供基于GLSL 和HLSL 的可编程渲染管道。该引擎结构简单、速度快。但Irrlicht 以牺牲渲染质量达到高速的目的,在光照等真实感方面比较薄弱。 纵观目前国内外三维图形引擎的发展格局,开发具有自主知识产权、融入新方法、新技术的三维图形引擎是我国在信息技术领域的一项重要目标。 本文提出并实现了一种面向对象的三维图形引擎Gingko ,该引擎不仅能提高用户的开发速度,而

面向对象分析与设计

面向对象提纲 需求分析:了解用户的需求,对现实问题进行分析,确定用户需求 一、用例模型:业务用例、业务场景、系统用例、用例规约(用例描述) 根据不同的情况,用例描述可以有三个级别:1)简单描述2)中间描述3)完全展开描述系统分析:将需求分析的结果确定系统的范围和主要功能。 二、分析模型 1)静态视图(类图) 2)动态视图(系统顺序图) 1.1建立静态视图(问题域建模) 定义这些系统需求而建立的类图称为域模型类图或简称域模型 类之间的关系:依赖、泛化、关联(聚合、组合) 2.1动态视图(系统顺序图)

三、OO模型的集成 OO需求模型中的关系 依赖性通常从顶部流到底部,双向箭头表示在两个方向都产生影响。 四、面向对象分析步骤: 第一步域模型 A、分析域模型得到静态视图(类图) B、画出实体对应的类及其之间的关系,注意此阶段强调的是静态关系 第二步基于用例的需求分析 通过对需求的调查,业务用例的构建和活动图的绘制,最终得到系统用例图 在用例图的下方,应附上每个用例的用例描述 第三步输入和输出:系统顺序图 域模型类图:

用例图:系统顺序图: 从分析到设计

五、面向对象设计 OO程序是由一系列协同完成某一任务的程序对象组成 OO设计目标:识别并确定所有对象,并生成每个用例,比如用户界面对象、问题域对象及DB访问对象 六、OO设计过程和模型 设计步骤:⑴创建设计类图的基础版本,或初步模型 ⑵开发交互图 ⑶根据开发交互图时得到的信息,返回设计类图并开发方法名称 ⑷用包图将设计类图分割成相关的功能 输入的模型: 交互图:用例图、用例描述、活动图、系统顺序图、设计类图 设计类图:域模型类图、交互图 包图:设计类图 七、设计类和设计类图 7.1 设计类图符号:1. 构造型 2. 标准的构造型 构造型:按照模型元素的特征进行归类的一种方式,用《》符号描述 2. 标准的构造型 (0)设计模型中的标准构造型 ⑴实体类 ⑵边界类 ⑶控制类 ⑷数据访问类 设计模型中的标准构造型:

面向对象的分析与设计大作业文档

面向对象的分析与设计课程结课大作业 学号______________ 学生姓名___________ 专业______________ 班级______________ 塔里木大学教务处制

《面向对象的分析与设计》课程结课作业\ 题 分\号 值\—— 一 二三四五六七总结总分 总分5 020100 得分 提示:1、请将答案写在此文档的相应位置,图形需在Rational Rose下绘制,大小可以根据个人需求定制(宽不超过页面1/3);2、请将相关的文档,包括程序的相关文档进行压缩,并将压缩文档上传到“大作业电子版文档”文件夹下命名为“班级-学号-姓名”,纸质版于2015年6月12日上午10:00 —13:00交到逸夫楼109。 一、选题(此题5分) 请根据你抽中的题号,请将其所对应的题目写到下方,并将你要描述的界面进行截图。 题目:照相(即手机的“相机”软件) XPERIA Z系列手机的自带相机软件。图中第五行第 该相机软件为SONY 二列 的软件。 相机

用例图用到的界面:A D E F 类图用到的界面:B C D E F 序列图和协作图用到的界面:A C 状态图用到的界面:A C 活动图用到的界面:AB C D E F 部署图用到的界面:A DEF ./ * 1SVf 九—X IJ .鈕 EuH o StiilE 拍 untflimhwiiBMiiriifn Qi -A 1 i a口X nt^tt帕.9* 自怕 笑Kt*n 关闻寸慎毛连拍JI 人■注册 O Q ? O■□Q :9 c口X 快走总谕 填理杯记? ?D 将害?瞳用朴 isn^g C? 内序科11诬? 4k a C3 Q)gv> W BF \j o Q ! A ◎ a o X 白拘Jt 笑隘快门(鞭牆)X nn-:? nt窒恙 (>o ■ U K>Qi A B 手动 创息啟 JR

面向对象分析与设计试题A卷及答案

面向对象分析与设计试题A卷及答案 一、单项选择题 ( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题 1 分,共 20 分 ) 1. 到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是( D )的 出现和广泛使用,使面向对象方法成为了软件开发的主流方法。 A. OMT B. OOSE C. C++ D. UML 2.( D )为编程人员提供了重复利用程序资源的一种途径,使编程人员可以扩充和完善旧的程序以适用新的需求。 A. 封装机制 B. 抽象机制 C. 多态机制 D. 继承机制 3. 面向对象程序设计中用( C ) 来描述具有相同属性和行为的对象集合。 A. 实体 B. 对象 C. 类 D. 类模板 4. 下列语言中, ( D ) 是一种混合型面向对象编程语言。 A. C语言 B. Java语言 C. Basic语言 D. C++语言 5. 下列不属于类的成员函数的是 (D )。 A. 构造函数 B. 析构函数 C. 缺省构造函数 D. 友元函数 6. 多态机制的作用是 ( B )。 A. 信息隐藏 B. 实现“一种接口,多种方法” C. 派生新类 D. 数据抽象 7. 合理地利用( B ), 既可以实现部分成员隐蔽,又能方便部分成员的继承,实现代 码的高效重用和扩充。 A.公有继承 B.保护继承 C.友员函数 D.私有继承 8. ( C )经过实例化而生成具体的类。 A.抽象类 B.函数模板 C.类模板 D.对象 9. 类的析构造函数是在 ( C ) 时调用的。 A.不自动调用 B.创建对象 C.删除对象 D.创建派生类对象 10.在公有继承的情况下,基类的( C)成员无法继承到派生类中。 A. 公有成员 B. 保护成员 C. 私有成员 D. 静态成员

面向对象的设计与分析(网上商城的建模设计)

第4章江西师范大学“网上商城”建模实例 本文所要进行建模分析的系统是学校小型电子商务系统,以欲构建的江西师范大学的便利店和生活超市“网上商城”为例,是满足校园客户(主要在校学生)网购要求的综合性的应用系统,本文以Rational rose 2003为建模工具,并应用第三章提出的基于UML的电子商务系统建模过程,完成该系统的详细分析和设计。对系统进行需求分析,建立系统需求模型、静态结构视图、动态结构视图、数据库模型、物理模型。 4.1系统的需求分析 4.1.1系统的设计背景 江西师范大学瑶湖校区江西师范大学新校区,地处南昌市昌东镇,在校学生3万余人,由于学校占地面积很大,离市区比较远,周围设施还不是很齐全,该校区为解决师生日常生活需要,建设了商业街并且每个宿舍区都有便利超市,这些店是一个小型的生活用品采购区,在校学生平时的大部分消费都是在这些地方,包便利店和小型超市等生活服务的实体商店,满足了师生不出校门就能买到自己想要的东西。近些年,随着高校的扩招,该校区学生和老师的数量也不断增加,新的问题也随之而来,高校学生由于社会发展带来的的巨大压力,生活节奏也日益加快,空闲时间也越来越少。所以如果他们每次生活消费都要到实体店购买,就给他们的生活带来不便,因而如果能够网

上购物就解决了这个矛盾。另外,据数据显示,该校学生80%是网民,该群体的素质较高,接受新事物速度快,而且他们的消费兴趣和倾向也有高度的相似性。该校区学生居住地也比较集中,大都住在学校统一安排的公寓或者学校周围的小区,使物流配送更加方便和及时。 目前学校的实体商店很多,但是大多数商店还没有自己的电子商务系统,所以如果通过一个统一的网上购物平台,商店将这些商品都发布在网上商城上,师生就可以足不出户选购商品,非常方便。只要授予他们可以在平台上销售自己的商品,提高了商店的知名度,也提高了他们的服务能力和影响力。该网上商城具有一般网上购物系统的功能: 1.师生可以通过该网上商城注册为商城用户,浏览商品订购商品放入购物车;客户可以通过该商城发布评论信息;客户可以查看自己订单;客户可以支付商品货款。 2.商户可以通过该商城发布自己的商品信息、供师生购买;可以通过该商城管理自己的商品信息和员工信息;可以进行订单处理。 3.系统管理员对商户申请信息进行审核;对评论信息管理:对系统日常的维护和数据备份;对用户信息管理。 除了以上三个一般购物系统的功能商城的系统管理员可以通过对历史订单信息进行数据挖掘,找出顾客购买商品间的关联关系,建议商户对其营销策略进行调整或者绑定销售一些商品,以提高商户的销售利润,达到在线交易和实体店双重赢利。该功能模块的设计将在第五章详细说明。

2016面向对象分析与设计习题

面向对象分析与设计复习题 一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题 2 分,共20 分) 1.到20 世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的 形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。 A. Simula67 语言 B. Smalltalk 语言 C. Java 语言 D. 统一建模语言(UML)的标准 2.面向对象的运动产生了多种面向对象的语言, 其中()是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。 A. Smalltalk B. Eiffel C. C++ D. Java 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. 状态图 D. 配置图 10.使用UML 进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务Use Case 模型设计 B. 逻辑数据模型设计 C. 物理数据模型设计 C. 物理实现设计 五. 试用UML 对教学管理系统及相关的数据库系统进行分析和设计。学生选课系统一般包括(1)选课管理功能;(2) 成绩管理功能。试完成下列工作: (1)建立系统静态结构模型—画出系统用例图和类图;(10 分) (2) 建立系统动态结构模型—画出系统序列图和协作图;(10 分) (3)建立关系数据库逻辑模型。(10 分) 【答案: (1) 系统用例图如下

面向对象分析与设计(UML)课程设计报告范文1

面向对象分析与设计(UML) 课程设计报告 题目: 学号: 姓名: 班级:

【课程设计名称】网络教学系统-使用UML进行系统的分析和设计 【课程设计目的】1.掌握UML建模的基础知识和其应用; 2.熟悉Rational Rose环境及功能,能够设计出完整系统。 【课程设计要求】1.对系统功能进行必要的描述; 2.绘制系统的主要模型图; 3.模型图要有说明性文字解释。 【课程设计内容】1.网络教学系统的需求分析; 2.网络教学系统UML建模。 【课程设计步骤】 一: 网络教学系统的需求分析 1、系统功能需求 (1)学生可以登陆网站浏览和查找各种信息以及下载文件。 (2)教师可以登陆网站给出课程见解、发布、修改和更新消息以及上传课件。 (3)系统管理员可以对页面进行维护和批准用户的注册申请。 满足上述需求的系统主要包括下面几个模块 (1)数据库管理模块:提供使用者录入、修改并维护数据的途径。 (2)基本业务模块:教师可以上传文件、发布消息、修改和更新消息;学生可以下载文件;管理员可以维护页面,批准注册等。 (3)信息浏览、查询模块:主要用于对网站的信息进行浏览、搜索查询。 图 1.1系统功能需求 2、数据库管理模块 图 1.2数据库管理模块 (1)教师信息管理:负责教师信息的管理。 (2)课程简介信息管理:负责课程简介信息的管理。 (3)文件上传信息管理:负责文件上传信息的管理。

3、基本业务模块 图 1.3基本业务模块 (1)文件上传:教师可以使用此模块将课程的数据上传到网站服务器。 (2)文件下载:学生可以使用此模块从网站上下载课件及其他资料。 (3)消息发布:教师可以通过此模块发布学习方法、课程重点等和教学相关的文章,以及和课程相关的通知等。 (4)消息修改和更新:教师可以通过此模块对自己发布的信息进行修改和更新。 (5)页面维护:网站管理员可以使用此模块对网站的页面进行维护。 (6)用户注册批准:网站管理员可以使用此模块批准用户注册。 4、信息浏览、查询模块 图 1.4信息查询模块功能 (1)网页信息浏览:用户浏览网站信息。 (2)文章信息搜索:用户根据关键字搜索文章。 二: 系统的UML建模 1、系统的用例图 创建用例图之前首先需要确定参与者。 ①在网络教学系统中,需要学生和教师的参与。学生可以浏览课程简介,教学计划,学习方法等教 师发布的文章,并可以根据关键字查询文章。此外,学生可以从网站上下载课件。教师作为教学的主导者,使用此网站可以发布学习方法,课程重点等和教学相关的文章,以及和课程相关的通知等,还可以将某一门课程的课件上传。 ②网站需要一个专门的管理者进行日常维护与管理,所以需要有系统管理员的参与。 (1)系统用户参与的总的用例图 教师和学生都可以从“网站用户”这个参与者泛化而来,网站用户是指网站的注册用户,注册用户可以登录系统完成相应的操作。 系统用户参与的总的用例图如图所示。从图中可以清楚地看到泛化关系与各个参与者所参与的用例。

2016面向对象分析与设计复习题

2016面向对象分析与设计复习题 一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题 2 分,共20 分) 1.到20世纪末,面向对象软件工程已经逐渐发展成熟,特别是()的 形成和广泛使用,采用面向对象分析与编程的软件开发方法已成为软件开发的主流方法。 A. Simula67语言 B. Smalltalk语言 C. Java语言 D. 统一建模语言(UML)的标准 2. 面向对象的运动产生了多种面向对象的语言, 其中()是一种混合性面向对象语言, 既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,有广泛应用的基础和丰富开发环境的支持,因而使面向对象的程序设计能得到很快普及。 A. Smalltalk B. Eiffel C. C++ D. Java 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. 状态图 D. 配置图 10. 使用UML进行关系数据库的()时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务Use Case模型设计 B. 逻辑数据模型设计 C. 物理数据模型设计 C. 物理实现设计 五. 试用UML对教学管理系统及相关的数据库系统进行分析和设计。学生选课系统一般包括(1)选课管理功能;(2) 成绩管理功能。试完成下列工作: (1)建立系统静态结构模型—画出系统用例图和类图;(10分) (2) 建立系统动态结构模型—画出系统序列图和协作图;(10分) (3)建立关系数据库逻辑模型。(10分) 【答案: (1) 系统用例图如下

相关主题
相关文档 最新文档