第5讲 面向对象的分析-建立对象模型
- 格式:ppt
- 大小:403.50 KB
- 文档页数:21
建立对象模型方法
要建立对象模型方法,可以按照以下步骤进行:
1. 确定对象的属性:确定对象模型中的每个对象都有哪些属性。
属性是对象的特征或状态,可以通过数据来表示。
例如,一个人对象可以有姓名、年龄、性别等属性。
2. 确定对象之间的关系:确定对象模型中的对象之间如何相互关联。
这些关系通常可以通过引用其他对象来表示。
例如,一个学校对象可以有多个学生对象,那么学校和学生之间就有一对多的关系。
3. 定义对象模型类:根据确定的属性和关系,定义对象模型中的类。
类是对象模型中的模板,描述了对象的属性和方法。
每个类可以有多个对象实例。
例如,可以创建一个"Person"类来描述人对象,其中包含姓名、年龄、性别等属性,并定义一些方法如获取姓名、设置年龄等。
4. 创建对象实例:根据定义的类,创建对象实例。
每个对象实例具有独特的属性值,并可以通过调用类中定义的方法来操作对象。
例如,可以创建一个名为"person1"的人对象实例,其中姓名为"张三",年龄为20岁。
5. 操作对象:通过调用对象的方法来操作对象。
方法是对象具有的行为或操作,可以用来改变对象的状态或执行某些操作。
例如,可以调用"person1"对象的"
设置年龄"方法将其年龄修改为25岁。
通过以上步骤,可以建立对象模型,并使用对象来表示和操作现实世界中的实体和关系。
一、叙述基于UML的面向对象分析设计过程1)识别系统的用例和角色首先对项目进行需求调研,依据项目的业务流程图和数据流程图以及项目中涉及的各级操作人员,通过分析,识别出系统中的所有用例和角色;接着分析系统中各角色和用例间的联系,再使用UML建模工具画出系统的用例图,同时,勾画系统的概念层模型,借助UML 建模工具描述概念层类图和活动图。
2)进行系统分析,并抽象出类系统分析的任务是找出系统中所有需求并加以描述,同时建立特定领域模型。
建立域模型有助于开发人员考察用例,从中抽取出类,并描述类之间的关系。
3)设计系统和系统中的类及其行为设计阶段由结构设计和详细设计组成。
①结构设计是高层设计,其任务是定义包(子系统),包括包间的依赖关系和主要通信机制。
包有利于描述系统的逻辑组成部分以及各部分之间的依赖关系。
②详细设计就是要细化包的内容,清晰描述所有的类,同时使用UML 的动态模型描述在特定环境下这些类的实例的行为。
二、UML中包括哪些图及每件图的作用UML中包括九种图:用例图、类图、对象图、状态图、时序图、协作图、活动图、组件图、配置图。
1)用例图(Use Case Diagram)它是UML中最简单也是最复杂的一种图。
说它简单是因为它采用了面向对象的思想,又是基于用户视角的,绘制非常容易,简单的图形表示让人一看就懂。
说它复杂是因为用例图往往不容易控制,要么过于复杂,要么过于简单。
用例图表示了角色和用例以及它们之间的关系。
2)类图(Class Diagram)是最常用的一种图,类图可以帮助我们更直观的了解一个系统的体系结构。
通过关系和类表示的类图,可以图形化的方式描述一个系统的设计部分。
3)对象图()对象图是类图的实例,几乎使用与类图完全相同的标识。
第五章面向对象的需求分析面向对象的需求分析方法的核心是利用面向对象的概念和方法为软件需求建造模型。
它包含面向对象风格的图形语言机制和用于指导需求分析的面向对象方法学。
面向对象的思想最初起源于 20世纪 60年代中期的仿真程序设计语言Simula67。
20世纪80年代初出现的Smalltalk 语言及其程序设计环境对面向对象技术的推广应用起到了显著的促进作用。
20世纪90年代中后期诞生并迅速成熟的UML(Unified Modeling Language,统一建模语言)是面向对象技术发展的一个重要里程碑。
UML 统一了面向对象建模的基本概念、术语和表示方法,不仅为面向对象的软件开发过程提供了丰富的表达手段,而且也为软件开发人员提供了互相交流、分享经验的共用语言。
本章首先介绍面向对象的主要概念和思想。
在概述了UML的全貌之后,以“家庭保安系统”为实例,介绍与需求分析相关的部分 UML语言机制以及基于UML的面向对象的需求分析方法和过程。
第一节面向对象的概念与思想一、面向对象的概念关于“面向对象”,有许多不同的看法。
Coad和 Yourdon给出了一个定义:“面向对象 = 对象 + 类 + 继承 + 消息通信”。
如果一个软件系统是使用这样4个概念设计和实现的,则认为这个软件系统是面向对象的。
一个面向对象的程序的每一成分应是对象,计算是通过新的对象的建立和对象之间的消息通信来执行的。
1.对象(object)一般意义来讲,对象是现实世界中存在的一个事物。
可以是物理的,如一个家具或桌子,如图 5-1-1所示,可以是概念上的,如一个开发项目。
对象是构成现实世界的一个独立的单位,具有自己的静态特征(用数据描述)和动态特征(行为或具有的功能)。
例如:人的特征:姓名、性别、年龄等,行为:衣、食、住、行等。
图 5-1-1 对象的定义(1)对象、属性、操作、消息定义对象可以定义为系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,由一组属性和一组对属性进行操作的服务组成。
《软件⼯程案例教程》李军国主编习题答案第1章习题答案⼀、判断题⼆、填空题三、简答题1.软件的特点:①软件具有抽象性。
②软件与硬件的⽣产⽅式不同。
③软件与硬件的维护⽅式不同。
④软件具有复杂的逻辑性。
⑤软件的成本较⾼。
⑥软件的使⽤和社会因素有关。
2.软件危机产⽣的原因:①⽤户需求不明确。
②缺乏正确的理论指导。
③软件开发规模越来越⼤。
④软件开发复杂度越来越⾼。
3.软件危机的主要表现:①软件开发进度难以预测。
②软件开发成本难以控制。
③⽤户对产品功能难以满⾜。
④软件产品质量⽆法保证。
⑤软件产品难以维护。
⑥软件缺少适当的⽂档资料。
4.软件⼯程学的基本原则有哪些:①抽象。
②信息隐蔽。
③模块化。
④局部化。
⑤确定性。
⑥⼀致性。
⑦完备性。
⑧可验证性。
5 什么是软件的⽣命周期?答案:软件与任何⼀个事物⼀样,有它的孕育、诞⽣、成长、成熟、衰亡的⽣存过程。
这就是软件的⽣存周期。
6 软件⼯程过程有哪⼏个基本过程活动?试说明之。
答案:软件⼯程过程的基本过程活动有4步:①软件规格说明(需求定义)。
规定软件的功能及其运⾏的限制;②软件设计与开发(设计开发)。
产⽣满⾜规格说明的软件;③软件确认(测试)。
确认软件能够完成客户提出的要求;④软件演进(维护)。
为满⾜客户的变更要求,软件必须在使⽤的过程中演进。
四、综合题1.详细说明软件⽣命周期分哪⼏个阶段?答案:软件⽣命周期主要分为6个阶段:软件项⽬计划、软件需求分析和定义、软件设计、程序编码、软件测试,以及运⾏维护。
(1)软件项⽬计划:在这⼀步要确定软件⼯作范围,进⾏软件风险分析,预计软件开发所需要的资源,建⽴成本与进度的估算。
根据有关成本与进度的限制分析项⽬的可⾏性。
(2)软件需求分析和定义:在这⼀步详细定义分配给软件的系统元素。
可以⽤以下两种⽅式中的⼀种对需求进⾏分析和定义。
⼀种是正式的信息域分析,可⽤于建⽴信息流和信息结构的模型,然后逐渐扩充这些模型成为软件的规格说明。
另⼀种是软件原型化⽅法,即建⽴软件原型,并由⽤户进⾏评价,从⽽确定软件需求。
面向对象设计面向对象建模基础xx年xx月xx日CATALOGUE目录•面向对象设计基础•面向对象建模基础•面向对象设计案例分析•面向对象建模案例分析•面向对象设计与面向对象建模的联系与区别•总结与展望01面向对象设计基础面向对象设计是一种软件开发方法,它以“对象”为核心,通过将现实世界中的实体抽象成程序中的对象,实现对现实世界的映射和抽象。
面向对象设计的目标是将现实世界中的问题空间映射到程序中的解决方案空间,使程序具有更好的可读性、可维护性和可扩展性。
什么是面向对象设计面向对象设计的基本原则将现实世界中的实体抽象成程序中的对象,每个对象都有其属性和行为。
抽象封装继承多态将对象的属性和行为封装在一个独立的单元中,每个对象都有其自己的状态和行为。
通过继承已有的对象来创建新的对象,子类继承父类的属性和行为,并可以添加或覆盖父类的行为。
同一消息或方法调用可以影响多种类型的对象,从而实现不同的行为。
提高软件的可维护性面向对象设计将现实世界中的实体抽象成程序中的对象,每个对象都有其自己的属性和行为,使得代码更加模块化、易于理解和维护。
提高软件的可扩展性面向对象设计采用类和接口的方式,可以方便地添加新的功能和扩展点,实现软件的灵活性和可扩展性。
提高软件的可测试性面向对象设计将复杂的功能分解为独立的对象,每个对象都可以单独测试和验证,降低了测试的难度和成本。
提高软件的可重用性面向对象设计通过继承和多态的机制,可以实现代码的重用,减少重复开发的工作量。
面向对象设计的优势02面向对象建模基础面向对象建模是一种软件开发方法,使用对象、属性、方法和行为来描述现实世界中的事物和关系。
它通过建立模型来映射现实世界中的各种实体、属性和关系,为软件开发提供了一种自然的、易于理解的方法。
什么是面向对象建模通过创建类图来描述对象及其之间的关系,包括继承、接口、实现等。
类图建模法通过创建时序图来描述对象之间的交互和消息传递,用于表现系统的动态行为。
面向对象建立的三种模型
类图模型是用于描述类、接口、属性和方法之间的关系和结构的模型。
它用于在软件设计阶段建立类的层次结构,明确类之间的继承、实现、依赖和关联关系。
对象图模型是用于描述对象及其属性和关系的模型。
它用于在软件设计阶段建立对象的结构和关系,明确对象之间的实例化、聚合和组合关系。
动态模型是用于描述对象行为和状态的模型。
它用于在软件设计阶段建立对象的行为和状态,明确对象之间的交互、时间和事件关系。
这三种模型是面向对象方法的核心,它们相互补充,共同构建了完整的面向对象系统模型。
在软件设计和开发过程中,正确使用和组合这三种模型是非常重要的。
- 1 -。
本讲(第5章)简要说明授课目的与要求:了解对象数据库管理系统的特点、优缺点以及与传统DBMS的区别;了解对象关系数据库系统相对关系数据库的扩充。
5.1 引言1. 高级的数据库应用计算机辅助设计(CAD);计算机辅助软件工程(CASE); 多媒体系统;地理信息系统(GIS);交互的和动态的Web站点。
2. 新的应用需求:1) 处理二进制大对象,文字、图象、声音、视频等多媒体数据。
2) 数据模拟:实体的任意组合、任意联系,例聚合、继承。
3) 行为模拟:对不同数据的多种操作。
3.关系数据库的弱点有限的数据类型缺少全系统唯一、不依赖于属性的OID (Object ID)不支持用户自定义或系统可扩展的运算 不能清晰表示和有效处理复杂对象及联系 阻抗失配4. 面向对象技术1)对象由属性和操作两部分构成。
一个对象包含若干属性,用以描述对象的状态、组成、特性。
一个对象包含若干操作,用以描述对象的行为方式。
2)操作(消息/方法)的接口与实现。
接口说明------给出操作的名称、参数表、操作结果、对象类型等。
实现部分------为实现该操作的一段程序代码。
附加优点:有利于提高数据独立性,有利于数据完整、安全保护。
3)类与实例具有相同属性和方法的一类对象抽象(概化)为类,其中的每一对象称为该类的一个实例。
4)继承与类结构①一个类中所有对象的集合的子集可以定义成一个新的类,它成为原类的子类,原来的类称为子类的超类。
②子类的每个成员继承超类的所有属性和方法。
子类和父类(直接超类)用线连接,构成一个类层次结构。
③子类还可以定义自己特有的属性和方法,也可以重新定义所继承的超类原有的属性和方法。
5. OODBS1.2.3二、模式及其映射1.每个对象在其生命周期中,都有一个系统给定的唯一不变的对象标识OID只要OID 相同,就是同一对象(无论对象的属性、操作如何修改);只要OID 不同,就是不同对象(尽管其属性、操作都一样) 高效快速定位、用户不可修改、独立于内容 系统产生OID 的方法有两种:逻辑OID 物理OID对象标识(OID )6.OO技术与数据库技术结合的途径①在面向对象的程序设计语言(例如Smalltalk,C++,Java)环境中扩展传统的数据库的功能。