




已阅读5页,还剩46页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
类的提取与设计 潘正军 2/49 回顾 &活动图 主要用于描述某一方法、机制或用 例的内部行为 适合描述多个对象跨越多个用例时 的总面貌 结构模型视图 用户视图用户视图 用例图用例图 实现视图实现视图 结构视图结构视图 行为视图行为视图 环境视图环境视图 类图类图 对象图对象图 顺序图顺序图 协作图协作图 状态图状态图 活动图活动图 组件图组件图 部署图部署图 主要内容 &设计过 程 &类图 &类的定义与表示 &静态建模 类的分析与获取 设计过程设计过程的活动 总体设计总体设计 详细设计详细设计 数据设计数据设计 体系结构设计体系结构设计 过程设计过程设计 接口设计接口设计 管理方面管理方面 技术方面技术方面 &数据设计 将实体-关系图中描述的对象和关系 ,以及数据词典中描述的详细 数据内容转化为 数据结构定义。 &体系结构设计 定义软 件系统各主要成分之间的 关系。 &接口设计 根据数据流图定义软 件内部各成分之 间、软件与其他协同系统之间及软件与用户之 间的交互机制。 &过程设计 则是把结构成分转换软 件的过程性 描述。在编码阶 段,根据这种过程性描述,生 成源程序代码,然后通过测试 得到完整有效的 软件。 设计过程设计活动 最终系统设计的组件图 用户界面设计,格式用户界面设计,格式 报告、输入输出控制报告、输入输出控制 网络设计、将系统连在网络设计、将系统连在 一起的硬件与中间层一起的硬件与中间层 数据库设计、详细数据库设计、详细 的底层数据库结构的底层数据库结构 完整的系统完整的系统 系统接口设计、描述了系统接口设计、描述了 与其他系统的通信与其他系统的通信 应用设计、计算机应用设计、计算机 程序集和模型程序集和模型 类图示例 类图 &类图描述的是对象之间的结构静态关系,用于 软件系统的静态建模。 &类图是显示一组类、接口、协作以及它们之 间关系的图。用于对系统静态设计视图建模。 &类图通常包含下述内容: 类 接口 协作 关联关系 依赖 泛化 类图 &类很少单独存在。 &当建造模型时,通常要注重于相互作用的 那些类群(类簇)。 &在UML中,这些类的群体形成了协作,并 且通常在类图 中被可视化。 &类的群体协作主要通过类 之间的各种关系 来表达。 类( Class )的定义1 &类是面向对象系统组织结构的核心 &对象表示被建模的应用领域中的离 散概念物理实体 &飞机、商业事物(如一份订单)、 逻辑事物(如广播计划)、应用事 物(如取消键)、计算机领域的事 物(如哈希表)或行为事物(如一 项任务) 类( Class )的定义2 &类类是有着相同结结构、行为为和关系的 一组对组对 象的描述符号 &类类定义义了一组组有着状态态和行为为的 对对象。属性和关联联用来描述状态态。 个体行为为由操作来描述,方法是操 作的实现实现 类( Class )的定义3 &所有的属性与操作都被附在类类或其 他类类元上 &对对象的生命期由附加给类给类 的状态态 机来描述 &类类的表示法是一个矩形,带带有类类 名、属性和操作的分格框组组成 类( Class )的定义4 &一个类从它的双亲和祖先那里继承 状态和行为描述,并且定义它的后代 所继承的状态和行为描述 &含义分层-类可以存在于模型的几 种含义层中,包括分析层、设计层和 实现层 类的名称 &每个类都必须有一个有别于其他类的名称 ,类名称是一个文本串。 &单独的名称叫做简单 名(simple name);用 类所在的包的名称作为前缀的类名叫做路 径名。 &一个包中的各个类的名称都必须是唯一的 。 类的属性 &属性(attribute)是已被命名的类 的特性,它描述了该特性的实 例可以取值的范围。 &类可以有任意数目的属性,也 可以没有属性。 &属性描述了正被建模的事物的 特性,这些特性为类的所有对 象所共有。 &属性集合(Attributes):属性集 合描述了该对象的属性的当前值。 &根据图的详细程度,每条属性值可 以包括属性名称、属性类型和属性 当前值。 &UML规定类的属性的语法为: 属性名 :属性类型 = 属性值 属性集合 类的操作 &操作(operation)是一个服务的实现 ,该服务可以由类的任何对象请求以 影响其行为。 &操作是你能对一个对象所做的事情的 抽象,并且它由这个类的所有对象共 享。 &一个类可以有任意数目的操作,也可 以没有操作。 &可以用操作查询、修改对象 属性的特性。 &调用对象的操作经常(不总 是)会改变对象的数据或状 态。 &操作名可以是像类名那样的 正文。实际上,操作名是描 述它所在类的一些特性的动 词或动词短语。 类的操作 &操作用于修改、检索类的属性或 执行某些动作。操作通常也被称 为功能,在软件开发的某些阶段 操作有时也被称为行为,但是它 们被约束在类的内部,只能作用 到该类的对象上。 &操作名、返回类型和参数表组成 操作的接口。 &UML规定操作的语法为: 可见性 操作名 (参数表) : 返回类型 操作集合 类的职责 &职责(responsibility)是类的契约或 责任。当创建一个类时,就声明了这 个类的所有对象具有相同种类的状态 和相同种类的行为。 &在较高的抽象层次上,这些相应的属 性和操作正是要完成类的职责的特 征。 类的职责 &对类 建模的一个好的开始点是详述词汇 表 中的事物的职责 。 &虽然实际 上每个结构良好的类都最少有一 个职责 ,最多也是可数的,但类可以有任 何数目的职责 。 &当精化模型时,要把这些职责转换 成能 很好地完成这些职责 的一组属性和操作。 &职责 是自由形式的文本。 &可以把单一的职责 写成一个短语、一个句 子或 (最多)一段短文,写在 类的描述栏中 。 类的其他特征 &属性、操作和职责职责 是创建抽象所需要的最 常见的特征。 &事实上,对于大多数要建造的模型,这3 种特征的基本形式足以传达类的最重要的 语义 。 &类还 有一些高级特征:UML可以对多重 性、可见性、特征标记 、多态性和其他特 性建模。 一个类的简单表示法 雇员雇员 学生学生 汽车汽车 注册表注册表 EmployeeEmployee employeeIDemployeeID EmployeenameEmployeename dateofBirthdateofBirth SalarySalary departmentdepartment 类属性 类的属性和缺省值 EmployeeEmployee employeeID:employeeID:IntegerInteger Employeename:Employeename:StringString dateofBirth:dateofBirth:DATEDATE Salary:Salary:FloatFloat=0.0=0.0 Department:Department:StringString 类的操作 EmployeeEmployee employeeID:IntegeremployeeID:Integer Employeename:StringEmployeename:String . setEmployeeDetails()setEmployeeDetails() getEmployeeDetails()getEmployeeDetails() setSalary(setSalary(salary:Floatsalary:Float) ) getSalary():getSalary():FloatFloat . 可见性 构造型的使用 &为每一个属性和 操作集分类,并 且为该组 提供一 个名称 &称为一个构造型 &用括起来 EmployeeEmployee employeeId : Integer employeeName : String dateOfBirth : DOB salary : Float = 0 department : String . setEmployeeDetails() setSalary(salary : Float) . getEmployeeDetails() getSalary() : Float 类的职责 EmployeeEmployee Responsibilities - maintain the employee details - determine the age of the employee - capable of setting employee details 类的分析与提取 &名词法:搜索用例并找出所有 名词,组成候选类 &CRC技术:类-职责-协作 31/53 类名: 职责 : 协作 者: 类的获取-分析类 &代表了对系统设计 中一个或 几个类或若干子系统的抽象 &特征 侧重处理功能性需求 很少定义或提供任何接口,其行 为由职责 表示 定义的属性是较高层次 关系也是较高层次的、概念性的 类的获取-分析类 &三种版型 边界类 实体类 控制类 &用例中获取类 边界类 &负责系统与系统的外部环境的通信 ,提供系统和用户、系统和其他系统 的界面 &常常代表窗口、表单、窗格、通信 接口、打印机接口、传感器、终端及 API等的抽象 &每个边界类至少与一个执行者有关 实体类 &类的信息和行为存在较长时间 ,是现 实问题 的抽象,通常叫域类,是现实 世 界的实体,或需要执行系统的内部事 务。 &通常独立于外部环境,多数时独立于 应用。 &多数情况下,直接由业务实 体类导 出 &通常是系统需要用来完成某个责任的 类,需要从事件流中的名词中发现 控制类 &用来规范一个或多个类的行为。规范 用例中实现系统行为的类的事件 &在初期,可以认为每一个执行者/用例 对都有一个控制类。控制类响应用例中 的事件流 &控制类代表与其他对象之间的协作、 排序、事务处理以及对其他对象的控制 ,常常用于封装与特定用例有关的控 制。 POS销售类分析 &边界类 用户界面类( POS 机界面 ) 与数据库连接 与外部信用卡连接 税务系统 POS销售类分析 &控制类 一个用例一个,pos 销售 POS销售类分析 &实体类 从用例描述中的名词中发现 商品、账目、存货清单、收 据、销售单、销售事件 等 &其他 外部 u顾客、出纳员等 类的识别 &识别原型中的类 名词法:搜索用例并找出所有名 词,组成候选类 CRC技术 应用筛选规则 &识别类 的属性和操作 应用筛选规则1 &删除具有如下特征的候选类 冗余:商品-货物,税-税金,款额- 销售款 不相关:错误、利益 操作:税额计算、金额合计 事件:描述特定时间频率的名词,每 日产生一个报表 应用筛选规则2 &删除具有如下特征的候选类 属性: u描述了另一个类的结构的名词,如商品 标识码、信用卡号 u注意:在不同的应用中可能会不同 n邮政编码:通常是属性,但对邮政服 务,可能包含(地理位置、统计、费 率结构、运送信息)属性和(投送线 路、日期)行为 应用筛选规则3 &删除具有如下特征的候选类 角色:描述一个特定实体的状态或 其分类的名次多半不是类,他是一 个角色,顾客最佳顾客 实现结构:描述硬件元件(打印机 )或算法(复利计算) 确定类的属性与操作 &类的属性 名称、类型、初始值 &类的操作 名称、参数、参数类型、返回值 等 &注意可见性 44/53 识别类的属性和操作 类属性操作 Cashier name cashierID access CashierInfo() SaleFormdate cashierID getSaleSum() SaleFormLinemerchandiseID price getPrice() getNumber MerchandisemerchandiseID mame Price specificationl getName() getAmount() getPrice() setPrice() Voucherdate MerchandiseId set Merchandise() 识别类的属性和操作 类属性操作 StockListmerchandiseID merchandiseA mount GetAmount() setAmount() AccountBookdate cashierId account get CashierId() get Account() setAccount() TaxInfomationdate custormId getTaxSum() TaxOffciename telephone getTaxCal() Invoice Payment 小结 &类的定义与图示 &类的获取与分析 类图 元语 类 第一栏是类名,第二栏是类的属性,第三栏 是类的操作 包包表示一个类图的集合 对象对象是类的一个实例 关联 关联用于表示类的对象之间的关系,其特殊 形式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024安全员考试考前冲刺练习题【各地真题】附答案详解
- 2025年自考专业(市场营销学)测试卷【学生专用】附答案
- 2024-2025学年度自考专业(护理)模拟试题含完整答案详解【名校卷】
- 2024年安全员考试每日一练试卷含答案详解(预热题)
- 2024年焊工考试检测卷含答案详解(A卷)
- 上海家居装饰装修施工合同示范文本3篇
- 2025年高级电焊工考试试题题库含答案参考
- 2024-2025学年自考专业(公共关系)测试卷附答案详解(模拟题)
- 2024计算机二级测试卷及参考答案详解(基础题)
- 客房销售合同(二)
- 矿井建设工程课件
- 消防设备设施操作讲解培训课件P
- 2025年执业医师考试-中医师承及确有专长考核历年参考题库含答案解析(5卷单选一百题)
- 中国绳结课件
- 中国民族服饰课件
- 2025年中储粮储运有限公司招聘考试真题+答案
- 蝴蝶粘土儿童课件教学
- 氨水氨气培训课件
- 第9课《天上有颗“南仁东星”》课件 2025-2026学年统编版八年级语文上册
- 早读的好处教学课件
- 2025年生态与环境保护的法律法规考试题及答案
评论
0/150
提交评论