面向对象系统的分析与设计学习报告.docx
《面向对象系统的分析与设计学习报告.docx》由会员分享,可在线阅读,更多相关《面向对象系统的分析与设计学习报告.docx(11页珍藏版)》请在冰豆网上搜索。
面向对象系统的分析与设计学习报告
《面向对象系统的分析与设计》
学习报告
题目:
院系:
计算机学院
专业:
软件工程
年级:
2012级
姓名:
刘勇
学号:
72
指导教师:
刘晓鸿
提交日期:
2013年7月
1.面向对象技术
面向对象的开发方式OOSD是一种新的软件工程方式,大体思想
是尽可能的依照人类熟悉世界的方式和思维方式来分析和解决问题,这种方式能够提供加倍清楚的需求分析和设计,是指导和开发活动的系统方式。
可是至今在面向对象领域,大多数工作都集中在编程语言上。
面向对象的开发方式,贯穿了整个软件的生命期,这里主要讨论一下面向对象的大体概念、方式和设计等内容。
面向对象的大体概念
这里主要讨论几个重要的面向对象的大体概念,了解大体概念对面向对象的思想,学习和掌握你想的开发方式十分重要。
1.1.1对象和分类
面向对象的方式是以对象作为最大体的元素,它是分析问题、解决问题的核心,对象与类是讨论面向对象的最大体概念。
1)对象
对象是客观事物活动概念的抽象表述,对象不仅能表示具体的实体,也能表示抽象的规则、计划或事件。
通常有以下的对象类型:
(1)有型的实体:
在现实世界中,每一个实体都是对象,入飞机、计算机、机械、屋子等都属于有型的实体,这是容易识别的对象。
(2)作用:
指人或组织,入学生、老师、公司、政府部门等所起的作用。
(3)事件:
指在摸个特按时间所发生的事情。
入学习、演出等。
(4)性能说明:
如对产品的行为能够说明,比如计算机硬盘、内存、性能说明等。
即对象不仅能表示结构化的数据,而且也能表示抽象的事件、规则和复杂的工程实例,这是结构化方式所不能做到的,因此,对象具有很强的表达能力和描述功能。
2)类
类又称对象类是指一组具有相同属性和运算的对象的抽象,u、一组具有相同数据结构和相同操作的对象的几盒,类是对象的模板。
在一个类中,每一个对象都是累的实例,它们都可利用类中的提供的函数。
例如轿车是一个类,东风牌轿车、奇瑞轿车都是它的一个对象。
类具有属性,用数据结构来描述累的属性,类具有操作,它是对象行为的抽象,用操作名和实现操作方式,即操作时间实现的进程和描述。
3)对象和类的描述
类和对象的描述如下图和所示:
在图中人事类名,包括两个属性:
姓名和年龄,具有两个运算:
改变工作和改变地址。
图则描述了人这个类的两个对象实例。
人
姓名:
字符型
年龄:
整型
改变工作
改变地址
几何对象
颜色位置
移动(矢量)
选择:
布尔型
类名
属性
操作
图类的描述
(人)
李军24
司机
无
(人)
刘洋28
售票员
人民大街3号
图对象的描述
由于对象是类的实例,在进行系统分析和设计时,通常把注意力集中在类上,而不是具体对象上。
4)继承
继承是利用现存的概念作为基础,成立新概念的技术,是父类和子类之间共享数据机构和方式的机制,这是类之间的一种关系。
在概念和实现一个类的时候,可以再一个已经纯在的类的基础上来进行,把这个已经存在的类所概念的内容作为自己的内容,并加入若干新内容。
图是集成的一种图式方式。
父类
继承
现存类概念新类概念子类
子类A
子类B
父类(一般类)
图继承性
5)多态性
多态性是指相同的操作或函数、进程作用于不同的对象上并取得不同的结果。
相同的操作的消息发送给不同的对象时,每一个对象将按照自己所属类中所概念的操作去执行,而产生不同的结果。
一个行为的多态性从外界看来具有相同的行为属性,因另外界看到的是一种行为,而具体执行那种形态则有对象自己按照所接到的消息的相关参数决定。
6)消息
消息是指对象之间在交互中所传送的通信消息。
一个消息包括以下信息:
消息名、接收消息对象的标识、服务标识、消息和方式。
7)方式
类中操作的实现进程成为方式,一个方式包括方式名、参数及法体。
面向对象的设计
面向对象的方式不强调分析与设计之间严格的阶段划分。
依照描述OO方式的“喷泉模型”,软件生命周期的各阶段交叠回溯,整个生命周期的概念一致,表示方式也一致,因此从分析到设计无需表示方式的转换。
固然,分析和设计也有不同的分工和偏重。
与OOA的模型比较,OOD模型的抽象层次较低,因为它包括了与具体实现有关的细节,可是建模的原则和方式相同。
2.1.1面向对象设计的准则
由于OOA与OOD在概念,属于、描述方式的一致性,成立一个针对具体是辖区内的OOD模型,可以看做是依照设计的准则,对分析模型进行细化。
虽然这些准则并非面向对象的系统独用,但对面向设计起着重要的支撑作用。
面向对象的准则有:
1)抽象
抽象是指强调实体的本质、内在的属性,二忽略了一些无关紧要的属性。
在系统开发中,分析阶段利用抽象仅仅涉及应用域的概念,在理解问题域以前不考虑设计与实现。
而在面向对象的设计阶段,抽象概念不仅用于子系统,在对象设计中,由于对象具有极强的抽象表达能力,而类实现了对象的数据和行为的抽象。
2)信息隐蔽
信息隐蔽在面向对象的方式中也称“封装性”,封装性是保证软件不见具有优良的模块性的基础。
3)弱耦合
依照抽象与封装性,弱耦合是指子系统之间的联系应该尽可能的少。
子系统应具有良好的接口,子系统接口与系统的其他部份联系。
4)强内聚
是指子系统内不时有一些关系的类组成,除少数的通信类外,子系统的类应该只与该子系统中的其他类协作,组成强内聚性的子系统。
5)可重用
弱耦合、强内聚的子系统和类,才能有效的提高所设计的部件的可重用性。
2.2.2面向对象涉及的大体任务
面向对象的设计OOD是面向对象方式阿紫哦软件设计阶段应用与扩展的结果,试讲OOA所创建的分析模型转换为设计模型,解决如何做的问题。
面向对象的设计主要目标是提高生产效率,提高质量和提高可保护性。
OOA主要考虑系统做什么,而不是关心系统如何实现的问题。
在OOD中为了实现系统,需要以OOA模型为基础,从头概念或补充一些新的类,活在原有的类中补充或修改一些属性及操作。
因此,OOD的目标是产生一个知足用户需求,可实现的OOD模型。
1)系统设计
系统设计的任务包括:
将分析模型中紧密相关的类划分为若干子系统,子系统应该具有良好的接口,子系统中的类彼此协作。
标识问题本身的并发性,将各子系统分派给处置器,成立子系统之间的通信。
进行系统设计关键是子系统的划分,子系统由它们的责任及所提供的服务表示,在OOD中这种服务是完成特定共轭能的一组操作。
讲划分的子系统组织成完整的系统时蛮有水平的层次组织和垂直组织两种方式,层次结构分为封锁式和开放式。
所谓封锁式是指每一个子系统仅利用其直接基层的服务,这就降低了各层次之间的彼此依赖,提高了易理解性和可修改性。
开放式则润徐隔层子系统利用其下属任意子系统提供服务。
应用软件包
人机
对话
控制
窗口图形
仿真
软件包
屏幕图形
像素图形
操作系统
计算机硬件
图典型应用系统的组织结构
2)对象设计
在面向对象的系统中,模块、数据结构及接口等都是集中体此刻对象和对象层次结构中,系统开发的全进程都与层次结构直接相关,是面向对象系统的基础和核心。
面向对象的设计通过对象层次结构的组织,肯定解空间中应存在的对象和对象层次的结构,并肯定外部接口和主要的数据结构。
3)设计优化
对设计进行优化,主要涉及提高效率的技术和成立良好的继承结构的方式。
提高效率的技术包括增加冗余来提高访问效率,调整查拳层次,优化算法等技术。
成立良好的继承关系式优化设计的重要内容,通过对继承关系的调整实现。
典型的面向对象的方式
随着面向对象开发方式的发展,逐渐形成了几个主要的流派:
Coad/Yourdon方式、BOOCH方式、OMT方式和OOSE法。
它们各有特色,主要描述方式、图例,考虑的重点有所不同。
但在描述方式上成心图形方式为主的特性。
下面主要讲一下Coad/Yourdon方式和OOSE方式。
3.1.1Coad/Yourdon方式
Coad/Yourdon方式由于1990年推出,该方式主如果面向对象的分析和面向对象的设计组成,特别强调OOA和OOD采用完全要养的概念和表示法,是分析和设计之间不需要表示发的转换。
该方式的特点是表示精练、易学,对于对象、结构、服务的认定较系统、完整、可操作性。
1)OOA
在Coad/Yourdon方式中,OOA的任务是主要成立问题域的分析模型。
分析进程和构造OOA概念模型的顺训有5个层次组成,这五个层次是:
类与对象、属性层、服务层、结构层和主题层。
(1)类和对象的认定:
面向对象的分析的核心是肯定系统的累及对象,它们是组成软件系统的大体元素。
(2)结构的认定:
指的是描述累及对象之间的结构关系,用来反映问题空间中复杂的实物和复杂关系。
(3)认定主题:
主题是一种帮忙理解复杂模型的抽象机制,它是将关系较密切的类及对象住址在一路,主题起到一种控制作用。
(4)概念属性:
属性是类的实质,概念类和对象的属性和实例连接。
(5)概念服务:
概念类和对象的服务和消息连接。
下图给出了Coda/Yourdon方式一些应用实例:
报刊订阅
属性
服务
确定订阅
订阅请求
录入定款额
生成报告
订户
属性
服务
录入订户
录入地址
报告地址
图服务层的例子
报社
印刷厂
编辑室
采访组
图泛华与特化结构的例子
2)OOD
面向对象的设计结构通过对象的认定和层次结构的组织,肯定解空间中应存在的对象和对象层次结构,病肯定外部接口和主要的数据结构。
面向对象设计的主要目标是提高生产效率,提高质量及可保护性。
PDC
问题域
部件
HIC
人机交互
部件
TMC
任务管理
部件
DMC
数据管理
部件
主题层
类与对象层
结构层
属性层
服务层
图方式的OOD模型
OOD设计模型是在面向对象的分析模型的5各层次上由四个部件组成,如图所示。
3.1.2OOSE方式
面向对象软件工程是将面向对象的思想应用于软件的工程中。
OOSE方式采用五类模型成立目标系统:
需求模型RM、分析模型AM、设计模型DM、实现模型IM和测试模型TM。
OOSE的开发活动主要分为三类,分析、构造和测试。
其中分析进程分为需求分析和健壮分析两个子进程,分析活动别离产生需求模型和分析模型。
构造活动包括设计和实现两个子进程,别离忏悔是呢过设计模型和实现模型。
测试进程包括单元测试、集成测试和系统测试三个进程,一路产生测试模型。
下图是00SE的开发活动:
测试
构造
分析
需求模型RM设计模型DM测试模型TM
分析模型AM实现模型IM
以上从大体概念、方式和设计,讨论了面向对象技术这门课程,还有很多不足的地方,还请老师多多指教。