
管理信息系统八面向对象的系统开发方法课件.ppt
39页本章目标:本章目标: 通过本章的学习,应了解 通过本章的学习,应了解 “面向对象面向对象”的基本的基本概念与特征应对概念与特征应对“面向对象面向对象”的系统开发有一个整的系统开发有一个整体的认识体的认识 八八 面向对象的面向对象的系统开发方法系统开发方法 引言引言 传统的的“面面向向过程程”的的方方法法学学是是把把世世界界分分成成两两个个部部分分,,分分别认知:知:1)数据()数据(Data):用于描述各种状):用于描述各种状态的数据的数据结构;构;2))过程程((Procedures))::就就是是操操作作这些些状状态数数据据的的程程序序,,有有时也称也称为“算法算法” 说得得形形象象一一些些,,它它认为数数据据是是静静态的的,,不不会会自自行行改改变的的,,而而需需要要各各种种各各样的的过程程来来改改为数数据据您您还记得得“数数据据结构构”+“算算法法”=程程序序,,这一一个个伟大大的的等等式式吗??这就就是是“面向面向过程程”方法学的精髓方法学的精髓 八八面向对象的面向对象的系统开发方法系统开发方法引言引言 举个个例例子子,,我我们要要将将一一块木木头从从目目前前的的位位置置向向北北搬搬到到距距原原地地10米米的的地地方方,,我我们首首先先会会定定义一一个个表表示示木木头的的数数据据结构构,,存存储位位置置、、质量量等等状状态信信息息,,然然后后再再编写写一一个个算法操作算法操作这个表示木个表示木头的数据的数据结构,以达到目的。
构,以达到目的 而而“面面向向对象象”的的方方法法学学则认为世世界界是是由由各各种种各各样的的对象象((object))组成成的的,,而而每每一一个个对象象都都有有两两个个特特征征::状状态(也称(也称为属性)与行属性)与行为(也称(也称为方法) 说说得得形形象象一一些些,,每每个个组组成成世世界界的的对对象象都都是是通通过过自自己己的的行行为为来来变变化化自自身身的的状状态态,,一一切切变变化化都都是是对对象象自自身身、、或或对对象间的协调而产生的象间的协调而产生的 第八章第八章 面向对象的面向对象的系统开发方法系统开发方法 所所谓“面向面向对象象”是一种是一种认识客客观世界的世界世界的世界观,,从从结构构组织角度模角度模拟客客观世界的一种方法,人世界的一种方法,人们在在认识和理解和理解现实世界的世界的过程中,普遍运用以下三个程中,普遍运用以下三个构造法构造法则::((1)区分)区分对象及其属性,如区分象及其属性,如区分车和和车的大小;的大小;((2)区分整体)区分整体对象及其象及其组成部分,如区分成部分,如区分车和和车轮;;((3))不不同同对象象类的的形形成成及及区区分分,,如如所所有有车的的类和和所所有船的有船的类。
因因而而,,客客观世世界界可可以以看看成成由由许多多不不同同种种类的的对象象构构成成,,每每个个对象象都都有有自自己己的的内内部部状状态和和运运动规律律,,不不同同对象象间的的相相互互联系系和和相相互互作作用用构构成成了了完完整整的的客客观世界第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征一、面向一、面向对象的基本概念对象的基本概念 1、、对对象象::是是一一种种对对客客观观事事物物的的抽抽象象,,它它由由状状态态(属性)和行为(方法)组成属性)和行为(方法)组成 下下面面,,我我们就就使使用用一一个个图,,来来帮帮助助大大家家认识对象象正正如如图2-1所所示示,,我我们使使用用一一个个大大圆来来表表示示一一个个对象象,,中中间的的一一个个小小圆圈圈定定义了了这个个对象象的的各各种种状状态信信息息,,外外面面则是是各各种种各各样的的行行为,,通通过执行行这个个对象的行象的行为,就会改,就会改变这个个对象的状象的状态第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征 图图2-1 木头对象示意图木头对象示意图 第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征 2、、类类 ::是是对对象象的的集集合合也也就就是是由由所所有有相相似似对对象象的的状状态态变量(属性变量)与行为(方法)所构成的模板或原型。
变量(属性变量)与行为(方法)所构成的模板或原型 我我们首先定首先定义了了“笔店笔店”这个个类,它,它拥有有4个属性:个属性: 1)) 铅笔;笔; 2)) 钢笔;笔; 3)) 圆珠笔;珠笔; 4)) 其它笔其它笔 同同时还定定义了三个行了三个行为:: 1))卖出:将属性的出:将属性的值减少,表示减少,表示卖出;出; 2))进货:将属性的:将属性的值增加,表示增加,表示进货;; 3))盘点:打印出属性的点:打印出属性的值;;第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征3、消息传递、消息传递 在在前前面面,,我我们说到到在在面面向向对象象的的世世界界中中,,一一切切变化化都都是是对象象自自身身、、或或对象象间的的协调而而产生生的的那那么么它它们是如何是如何进行行协商的呢?商的呢?在在面面向向对象象的的程程序序设计中中,,我我们采采用用一一种种叫叫消消息息传递((Message Passing))的的机机制制来来实现消消息息从从一一个个对象象发到另一个到另一个对象,使另一个象,使另一个对象完成某一个行象完成某一个行为 通通常常,,我我们们把把发发送送消消息息的的对对象象称称为为“发发送送对对象象”((sender)),,而而把把接接受受消消息息的的对对象象称称为为“接接受受对对象象”((receiver)。
其工作如下图所示:)其工作如下图所示: 第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征 图图2-2 消息传递机制工作示意图消息传递机制工作示意图 第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征4 、、继继承承 ::是是指指一一个个类类((即即称称子子类类))因因承承袭袭而而具具有有另另一一个类(或称父类)的能力和特征的机制或关系个类(或称父类)的能力和特征的机制或关系 例如,汽例如,汽车中有中有货车、客、客车、、轿车……::1)) 用于运用于运输货物的汽物的汽车叫叫货车;;2)) 用于运用于运输旅客的汽旅客的汽车叫客叫客车;;3)) 豪豪华的的、、较低低矮矮、、较小小的的、、有有钱人人((:-P))坐坐的的汽汽车叫叫轿车 而而汽汽车车、、货货车车、、客客车车、、轿轿车车都都是是类类!!在在本本例例中中,,汽汽车车这这个个类类是是货货车车、、客客车车、、轿轿车车这这三三个个类类的的超超类类((Superclass)),,而而货货车车、、客客车车、、轿轿车车这这三三个个类类则则是是汽车这个类的子类(汽车这个类的子类(subclass)。
第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征这四四个个类((超超类类与与子子类类))的的关关系系,,可可以以通通过下下面面这个个图来表示:来表示:第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征为什么要引入什么要引入继承的概念呢?承的概念呢? 继承承机机制制提提高高了了“软件件可可复复用用性性”大大家家应该知知道道,,在在结构构化化的的程程序序设计中中,,我我们常常常常将将一一些些经常常要要使使用用的的功功能能模模块写写成成子子程程序序,,供供程程序序调用用,,这样会大大提高开会大大提高开发效率这也就是也就是“软件复用件复用” 而而通通过继承承,,我我们可可以以在在已已定定义类的的基基础上上无无限限地地繁繁衍衍出出更更多多的的类,,并并且且通通过直直接接继承承、、新新增增、、局局部部修修改改来来重重复复使使用用超超类这样必必将将使使软件件开开发的速度更快,同的速度更快,同时可以使程序共享成可以使程序共享成为可能第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征5 、、封封装装性性 ::就就是是把把一一组组数数据据和和与与其其有有关关的的操操作作集集合合组组装在一起,形成一个能动的实体,也就是对象。
装在一起,形成一个能动的实体,也就是对象 例例::就就象象电路路设计,,以以前前是是用用一一个个个个晶晶体体管管的的,,后后来来把把能能完完成成某某一一功功能能的的晶晶体体管管做做在在一一起起封封装装起起来来,,并并只只提提供供几几只只引引脚脚,,外外界界只只能能通通过这些些引引脚脚而而不不能能通通过别的的途途径径来来"访问"内内部部功功能能,,这就就成成了了集集成成电路路封封装装使使得得一一个个对象象具具备独独立立和和明明确确的的功功能能,,并并提提供供接接口口便便于于和和其其它它对象象作作用用,,而而其其内内部部的的代代码和和数数据据都都是是受受保保护的好处不言自明不言自明 第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征6、、 多态性多态性多多态性性很很有有意意思思,,不不同同的的对象象可可以以调用用相相同同名名称称的的函函数数,,却却能能导致致完完全全不不同同的的行行为的的现象象这在在现实生生活活中中也也会会发生生,,比比如如"我我"这个个对象象去去调用用"玩玩电脑"这个个"函函数数"时,,一一般般发生生的的是是打打字字的的行行为,,而而"我我表表弟弟"去去调用用"玩玩电脑"这个个函函数数时,,总是是发生生"游游戏大大战"的的行行为。
这是是由由于于"玩玩电脑"这个个函函数数它它能能根根据据不不同同的的对象象做做出出不不同同的的反反应我我们只管只管"玩玩电脑"就行了 多多态态性性::同同一一消消息息发发送送至至不不同同类类或或对对象象可可导导致致不不同同的的操操作作结结果果,,使使软软件件开开发发设设计计更更便便利利,,编编码更灵活码更灵活 第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征7、、易易维维护护性性::面面向向对对象象的的抽抽象象封封装装使使对对象象信信息息隐隐藏藏在在局局部部当当对对象象进进行行修修改改,,或或对对象象自自身身产产生生错错误误的的时时候候,,由由此此带带来来的的影影响响仅仅仅仅局局限限在在对对象象内内部部而而不不会会波波及及其其他他对对象象乃乃至至整整个个系系统统环环境境,,这这极极大大方方便便了了软软件件设设计计、、构构造造和和运运行行过程中的检错、修改过程中的检错、修改第一节第一节 面向对象的基本概念及特征面向对象的基本概念及特征一、面向对象的系统开发方法的原理一、面向对象的系统开发方法的原理 面面向向对对象象开开发发一一般般经经历历三三个个阶阶段段::面面向向对对象象系系统统分分析析((OOA)),,面面向向对对象象系系统统设设计计((OOD))和和面面向向对对象象系系统统实实现现((OOP))。
这这与与传传统统的的生生命命周周期期法法相相似似,,但但各各阶阶段段所所解解决决的的问问题题和和采采用用的的描描述述方法却有极大区别方法却有极大区别一一)、面向对象的系统分析、面向对象的系统分析面向对象分析运用以下主要原则:面向对象分析运用以下主要原则:1、构造和分解相结合的原则构造和分解相结合的原则 2、抽象和具体结合的原则抽象和具体结合的原则 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 (一一)、面向对象的系统分析、面向对象的系统分析面向对象分析运用以下主要原则:面向对象分析运用以下主要原则:3、封装的原则封装的原则 4、继承性的原则继承性的原则 5、构造问题空间构造问题空间 ((1)区分对象及其属性;)区分对象及其属性; ((2)区分整体对象及其组成部分;)区分整体对象及其组成部分; ((3)不同对象类的形成及区分)不同对象类的形成及区分 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 (二)、面向对象的系统设计(二)、面向对象的系统设计 课本课本P194(三)、面向对象的系统实施(三)、面向对象的系统实施 课本课本P194 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法 八八十十年年代代末末以以来来,,随随着着面面向向对对象象技技术术成成为为研研究究的的热热点点出出现现了了几几十十种种支支持持软软件件开开发发的的面面向向对对象象方方法法。
其其中中,,布布什什((Booch)),Coad/尤尤顿顿((Yourdon)),对对象象模模型型技技术术((OMT))和和雅雅寇寇森森((Jacobson))的的方方法法在在面面向向对对象象软软件件开开发发界界得得到到了了广广泛泛的的认认可可特特别别值值得得一一提提的的是是统统一一的的建建模模语语言言UML((Unified Modeling Language)),,该该方方法法结结合合了了Booch, OMT, 和和Jacobson方方法法的的优优点点,,统统一一了了符符号号体体系系,,并并从从其其它它的的方方法法和和工工程程实实践践中中吸吸收收了了许许多多经经过过实实际际检检验验的的概概念念和和技技术术UML方方法法自自去去年年提提出出后后到到现现在在已已发发展展到到1.1版版,,并并已已提提交交给给对对象象管管理理集集团团OMG,,申申请请成成为为面面向向对象方法的标准对象方法的标准 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法 面面向向对对象象方方法法都都支支持持三三种种基基本本的的活活动动::识识别别对对象象和和类类,,描描述述对对象象和和类类之之间间的的关关系系,,以以及及通通过过描描述述每每个个类类的的功功能能定定义义对对象象的的行行为为。
为为了了发发现现对对象象和和类类,,开开发发人人员员要要在在系系统统需需求求和和系系统统分分析析的的文文档档中中查查找找名名词词和和名名词词短短语语,,包包括括可可感感知知的的事事物物((汽汽车车、、压压力力、、传传感感器器));;角角色色((母母亲亲、、教教师师、、政政治治家家));;事事件件((着着陆陆、、中中断断、、请请求求));;互互相相作作用用((借借贷贷、、开开会会、、交交叉叉));;人人员员;;场场所所;;组组织织;;设设备备;;和和地地点点通通过过浏浏览览使使用用系系统统的的脚脚本本发发现现重重要要的的对对象象和和其其责责任任,,是是面面向向对对象象分分析析和和设设计计过过程程的初期重要的技术的初期重要的技术 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法 当当重重要要的的对对象象被被发发现现后后,,通通过过一一组组互互相相关关联联的的模模型型详详细细表表示示类类之之间间的的关关系系和和对对象象的的行行为为,,这这些些模模型型从从四四个个不不同同的的侧侧面面表表示示了了软软件件的的体体系系结结构构::静静态态逻逻辑辑、、动动态态逻逻辑辑、、静静态态物物理理和和动动态态物物理理。
静静态态逻逻辑辑模模型型描描述述实实例例化化((类类成成员员关关系系))、、关关联联、、聚聚集集((整整体体/部部分分))、、和和一一般般化化((继继承承))等等关关系系这这被被称称为为对对象象模模型型一一般般化化关关系系表表示示属属性性和和方方法法的的继继承承关关系系定定义义对对象象模模型型的的图图形形符符号号体体系系通通常常是是从从用用于于数数据据建建模模的的实实体体关关系系图图导导出出的的对对设设计计十十分分重重要要的的约约束束,,如如基基数数((一一对对一一、、一一对对多多、、多多对多),也在对象模型中表示对多),也在对象模型中表示 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法1、、Booch(布什)方法(布什)方法((1))Booch(布什)方法的过程包括以下步骤:(布什)方法的过程包括以下步骤:①①在给定的抽象层次上识别类和对象在给定的抽象层次上识别类和对象②②识别这些对象和类的语义识别这些对象和类的语义③③识别这些类和对象之间的关系识别这些类和对象之间的关系④④实现类和对象实现类和对象 这这四四种种活活动动不不仅仅仅仅是是一一个个简简单单的的步步骤骤序序列列,,而而是是对对系系统统的的逻逻辑辑和和物物理理视视图图不不断断细细化化的的迭迭代代和和渐增的开发过程。
渐增的开发过程 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法1、、Booch(布什)方法(布什)方法((2))Booch((布布什什))方方法法的的力力量量在在于于其其丰丰富富的的符符号体系,包括:号体系,包括:◆◆类图(类结构-静态视图)类图(类结构-静态视图)◆◆对象图(对象结构-静态视图)对象图(对象结构-静态视图)◆◆状态转移图(类结构-动态视图)状态转移图(类结构-动态视图)◆◆时态图(对象结构-动态视图)时态图(对象结构-动态视图)◆◆模块图(模块体系结构)模块图(模块体系结构)◆◆进程图(进程体系结构)进程图(进程体系结构) 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法2、、Rumbaugh(云豹)的(云豹)的OMT方法方法 Rumbaugh((云云豹豹))的的OMT方方法法从从三三个个视视角角描描述述系系统统,,相相应应地地提提供供了了三三种种模模型型,,对对象象模模型型,,动动态态模模型型和和功功能能模模型型。
对对象象模模型型描描述述对对象象的的静静态态结结构构和和它它们们之之间间的的关关系主要的概念包括:系主要的概念包括:◆◆类类◆◆属性属性◆◆操作操作◆◆继承继承◆◆关联(即关系)关联(即关系)◆◆聚集聚集 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法2、、Rumbaugh(云豹)的(云豹)的OMT方法方法动动态态模模型型描描述述系系统统那那些些随随时时间间变变化化的的方方面面,,其其主主要要概念有:概念有:◆◆状态状态◆◆子状态和超状态子状态和超状态◆◆事件事件◆◆行为行为◆◆活动活动 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法2、、Rumbaugh(云豹)的(云豹)的OMT方法方法功功能能模模型型描描述述系系统统内内部部数数据据值值的的转转换换,,其其主主要要概概念念有:有:◆◆加工加工◆◆数据存储数据存储◆◆数据流数据流◆◆控制流控制流◆◆角色(源角色(源/潭)潭) 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法2、、Rumbaugh(云豹)的(云豹)的OMT方法方法该方法将开发过程分为四个阶段:该方法将开发过程分为四个阶段:((1)分析)分析基基于于问问题题和和用用户户需需求求的的描描述述,,建建立立现现实实世世界界的的模模型型。
分析阶段的产物有:分析阶段的产物有:◆◆问题描述问题描述◆◆对象模型=对象图+数据词典对象模型=对象图+数据词典◆◆动态模型=状态图+全局事件流图动态模型=状态图+全局事件流图◆◆功能模型=数据流图+约束功能模型=数据流图+约束 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法2、、Rumbaugh(云豹)的(云豹)的OMT方法方法((2)系统设计)系统设计结结合合问问题题域域的的知知识识和和目目标标系系统统的的体体系系结结构构((求求解解域域)),,将目标系统分解为子系统将目标系统分解为子系统3)对象设计)对象设计基基于于分分析析模模型型和和求求解解域域中中的的体体系系结结构构等等添添加加的的实实现现细细节节,,完成系统设计主要产物包括:完成系统设计主要产物包括:◆◆细化的对象模型细化的对象模型◆◆细化的动态模型细化的动态模型◆◆细化的功能模型细化的功能模型 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法2、、Rumbaugh(云豹)的(云豹)的OMT方法方法((4)实现)实现将将设设计计转转换换为为特特定定的的编编程程语语言言或或硬硬件件,,同同时时保保持持可可追踪性、灵活性和可扩展性。
追踪性、灵活性和可扩展性 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法3、、Coad/Yourdon(尤顿)方法(尤顿)方法Coad/Yourdon((尤尤顿顿))方方法法严严格格区区分分了了面面向向对对象象分分析析OOA和和面面向向对对象象设设计计OOD该该方方法法利利用用五五个个层层次次和和活活动动定定义义和和记记录录系统行为,输入和输出这五个层次的活动包括:系统行为,输入和输出这五个层次的活动包括:◆◆发现类及对象发现类及对象◆◆识别结构识别结构 ◆◆定义主题定义主题 ◆◆定义属性定义属性 ◆◆定义服务定义服务 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法3、、Coad/Yourdon(尤顿)方法(尤顿)方法面向对象设计模型需要进一步区分以下四个部分:面向对象设计模型需要进一步区分以下四个部分:◆◆问题域部分问题域部分 ◆◆人机交互部分人机交互部分 ◆◆任务管理部分任务管理部分 ◆◆数据管理部分数据管理部分 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法4、、Jacobson(雅寇森)方法(雅寇森)方法 Jacobson((雅雅寇寇森森))方方法法与与上上述述三三种种方方法法有有所所不不同同,,它它涉涉及及到到整整个个软软件件生生命命周周期期,,包包括括需需求求分分析析、、设设计计、、实实现和测试等四个阶段现和测试等四个阶段。
在在该该方方法法中中的的一一个个关关键键概概念念就就是是use caseuse case是是指指行行为为相相关关的的事事务务((transaction))序序列列,,该该序序列列将将由由用用户户在在与与系系统统对对话话中中执执行行因因此此,,每每一一个个use case就就是是一一个个使使用用系系统统的的方方式式,,当当用用户户给给定定一一个个输输入入,,就就执执行行一一个个use case的的实实例例并并引引发执行属于该发执行属于该use case的一个事务的一个事务 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 二、面向对象的系统开发方法二、面向对象的系统开发方法4、、Jacobson(雅寇森)方法(雅寇森)方法 基基于于这这种种系系统统视视图图,,Jacobson将将use case模模型型与其它五种系统模型关联:与其它五种系统模型关联:◆◆领域对象模型领域对象模型use case模型根据领域来表示模型根据领域来表示◆◆分析模型分析模型use case模型通过分析来构造模型通过分析来构造◆◆设计模型设计模型use case模型通过设计来具体化。
模型通过设计来具体化◆◆实实现现模模型型该该模模型型依依据据具具体体化化的的设设计计来来实实现现use case模型◆◆测试模型测试模型用来测试具体化的用来测试具体化的use case模型 第二节第二节 面向对象的系统开发方法的原理面向对象的系统开发方法的原理 下下面面我我们们将将以以Coad&&Yourdon的的方方法法为为基基础础,,结结合合工工资资管管理理实实例例,,简简要要地地介介绍绍面面向向对对象象的的系系统统开开发发过过程程为为了了便便于于讲讲述,对该例相应做了些简化述,对该例相应做了些简化一、面向对象的系统分析一、面向对象的系统分析 (-)问题陈述(-)问题陈述 开开发发人人员员对对问问题题域域的的陈陈述述是是系系统统分分析析的的基基础础用用户户最最初初提提出出的的要要求求通通常常都都是是不不够够明明确确和和具具体体,,有有时时甚甚至至是是很很含含糊糊不不清清的的通通过过与与用用户户不不断断交交流流,,开开发发人人员员能能够够加加深深对对问问题题领领域域的的认认识识,,经经过过讨讨论论、、修修改改与与补补充充,,逐逐步步明明确确与与具具体体化化,,获获得得对对问问题题域域详详尽尽的的陈陈述述。
现现先先将将本本例例的的要要求求说说明明陈陈述述如如下:下: 工工资资管管理理系系统统主主要要对对人人员员、、工工资资数数据据来来源源、、工工资资数数据据进进行行管管理理,,数数据据种种类类不不多多,,数数据据的的使使用用频频率率也也不不高高,,但但准准确确率要求高率要求高 第三节第三节 面向对象的系统开发实例面向对象的系统开发实例 系统需要维护和提供的信息有:系统需要维护和提供的信息有:((1))工工资资构构成成信信息息,,包包括括标标准准工工资资、、工工资资性性津津贴贴、、经经常常性性奖奖金、加班加点工资、其它工资、各种代扣款项等;金、加班加点工资、其它工资、各种代扣款项等;((2)人员信息,包括职工编号、姓名、人员类别、单位等;)人员信息,包括职工编号、姓名、人员类别、单位等;((3))工工资资数数据据来来源源信信息息,,包包括括人人事事部部门门提提供供的的人人员员变变动动资资料料、、科科室室班班组组填填制制并并经经劳劳动动部部门门审审核核的的考考勤勤统统计计资资料料、、生生产产车车间间提提供供的的产产量量和和质质量量统统计计资资料料、、总总务务后后勤勤部部门门提提供供的的房房租租、、水水电电费费等等代代扣扣款款资资料料、、工工会会部部门门提提供供的的储储蓄蓄、、互互助助金金、、工工会会会会费、住房公积金等有关资料等;费、住房公积金等有关资料等;((4))汇汇总总核核算算信信息息,,收收集集、、汇汇总总完完上上面面所所列列这这些些工工资资数数据据后后,,会会计计人人员员对对每每一一职职工工的的工工资资数数据据进进行行计计算算,,得得出出每每一一职职工工的的实发工资,编制出工资结算单,并根据需要编制各种统计表;实发工资,编制出工资结算单,并根据需要编制各种统计表;((5)工资管理员信息,包括姓名、使用权限、密码等。
工资管理员信息,包括姓名、使用权限、密码等 第三节第三节 面向对象的系统开发实例面向对象的系统开发实例 (二)识别对象/类((二)识别对象/类(P195))…(三)确定对象的属性(三)确定对象的属性…(四)确定对象的服务(四)确定对象的服务…(五)确定对象(五)确定对象/类的关系类的关系…二、面向对象的系统设计二、面向对象的系统设计…三三、、面面向向对对象象的的实实施施::使使用用面面向向对对象象语语言言Visual FoxPro 6.0为程序开发语言,简单的开发例子如下:为程序开发语言,简单的开发例子如下: 第三节第三节 面向对象的系统开发实例面向对象的系统开发实例 例例1:建立不变数据文件(表),并输入若干数据,表结构如下::建立不变数据文件(表),并输入若干数据,表结构如下:文件:不变数据文件文件:不变数据文件 文件名:文件名:BBSJWJ.DBF 第三节第三节 面向对象的系统开发实例面向对象的系统开发实例 例例2:建立工资子系统一级菜单,模块结构如下::建立工资子系统一级菜单,模块结构如下: 第三节第三节 面向对象的系统开发实例面向对象的系统开发实例 例例3::建建立立不不 变变数数 据据管管 理理 子子 菜菜单单 (( 表表 单单名名 ::BBSJGL),模块结构如上。
模块结构如上 例例 4:: 建建 立立 不不 变变 数数 据据 查查 询询 程程 序序 (( 表表 单单 名名 ::BBSJCX)最后运行,看效果最后运行,看效果————第八章结束第八章结束 第三节第三节 面向对象的系统开发实例面向对象的系统开发实例 。
