收藏 分销(赏)

系统开发方法与策略.ppt

上传人:快乐****生活 文档编号:14640051 上传时间:2026-10-24 格式:PPT 页数:84 大小:1.87MB 下载积分:10 金币
下载 相关
系统开发方法与策略.ppt_第1页
第1页 / 共84页
系统开发方法与策略.ppt_第2页
第2页 / 共84页


点击查看更多>>
资源描述
系统开发方法与策略,本章内容:,第一节 管理信息系统开发概述,第二节 管理信息系统开发方式与策略,第三节 管理信息系统开发方法,第一节 管理信息系统开发概述,一、管理信息系统开发的必要条件,1领导重视与业务部门的支持,2具有一定科学管理工作基础,3建立一支专业队伍,4具备一定的资金能力,二、管理信息系统开发原则,1领导参与的原则,2优化与创新的原则,3面向用户的原则,4整体性原则,5相关性原则,6动态适应性原则,7效益原则,8工程化、标准化原则,建立领导小组,建立系统组,进行系统规划,系统分析,系统设计,系统实现,系统评价,项目,开发,各级负责人,管理专家,系统分析员,管理专家、计划专家,系统分析员、计算机专家,三、管理信息系统开发的生命周期,(一)系统开发生命周期的5个阶段,系统评价,系统规划,系统设计,系统实施,系统分析,开发,设计,初步,调查,可行性,研究,审批,系统,评价,系统,维护,总体,设计,详细,设计,审计,审查,编程,调试,系统,转换,验收,详细,调查,逻辑,设计,(二)SDLC5个阶段的说明,1、规划,规划阶段是SDLC的最初阶段,它的目标是规划项目范围并做出项目计划。规划阶段包括确定一个可靠的开发信息系统的计划。制定规划阶段是组织所做的所有努力中的第一个也是最为关键的阶段。,下面讨论包含在制定规划阶段中的3个最重要的活动。,(1)识别和定义要开发的系统,为什么要求系统能支持组织的战略目标?这是一个极好的问题,并且如果能正确地回答则说明知道必须开发哪种系统。规划阶段最重要的活动可能是准确地定义商业问题和所需解决方案的范围。,(2)规定项目范围,企业一旦定义要开发的系统,就必须规定信息系统项目的范围。项目范围明确地定义高层系统的总体需求,该范围常常提出系统的最基本的定义。项目范围说明书写明项目范围的定义,并且常常很简明。,(3)制定项目计划,制定一个项目的计划,是规划阶段要完成的最后一项活动,也是最艰苦和最重要的活动之一。项目计划要定义系统开发中全部要完成的活动所涉及的谁在什么时间做什么的问题,也就是完成活动的人员及完成每项活动所需要的时间。,SDLC5个阶段的说明-1.规划,4、实施,系统实施阶段是创建或购买在系统设计中详细列明的各种系统组成部分,进行装配,并让新系统或修改系统投入运行。,这个阶段的重要任务是为让用户有效使用系统作好准备。系统实施的结果是产生一个安装完毕的,可操作的满足业务需求的管理信息系统。,(1)程序开发,在开发阶段,系统开发人员利用设计阶段产生的详细设计资料,将它们变换为实际系统。此阶段的标志就是,从逻辑设计转换到物理实现。,此阶段的活动包括软件的程序编写、建立数据库、配置通信设备、安装硬件和软件。,(2)测试,测试是软件开发的必经步骤,管理信息系统也不例外。,在正式实施之前进行系统测试是关键的。为完成一个彻底的测试就必须对测试条件进行细化。测试条件是对系统必须完成的步骤连同每一步的设想结果所进行的详细描述。,(3)实施,实施的目的就是通过将系统置于组织中,用来提高组织的管理效率,给其带来一定生命力,在实施阶段期间,将系统分配于所有的知识工作者,他们开始使用系统完成每天的工作。要确保培训所有的用户并使商业受益。,只有用户熟悉系统并能正确地使用系统,这个系统才是成功的。实施阶段一个重要的活动是在新系统上培训用户,以便这个系统尽可能地发挥作用。,(4)维护,在后期维护期间,我们需要监测并支持新系统以保证其继续满足管理业务目标。,一旦系统处于适当的位置,就会随业务的变化而改变。,4、实施,5评价,系统评价主要是考查系统达到目标的程度,进行运行的适用性评价、系统安全保密性评价及系统经济效益评价。,系统评价包括衡量系统目标的满足程度、用户满意程度、经济效益及系统可靠性等方面的内容。,(三)系统开发生命周期理论的优缺点,传统系统开发生命周期法基于以下假设:,1)系统的需求能够被预先严格定义,2)系统需求在系统开发过程中基本保持不变,3)系统开发阶段划分严格,4)采用自顶向下的方法将系统划分为子系统及模块,在满足上述假设条件的情况下,传统系统开发生命周期法具有以下,优点,:,(1)采用系统观点和系统工程方法,自顶向下进行分析与设计并自下而上进行实施。,(2)开发过程阶段清楚,任务明确,并有标准的图、表、说明等组成各阶段的文档资料。,(3)用户观点,吸收用户单位的管理人员和业务人员参加,每个阶段的成果都经用户审批。,(4)适用于大型信息系统的开发。,(5)逻辑设计与物理设计分开。系统分析阶段,开发人员用一定的图表工具构造新系统的逻辑模型使用户看到新系统的梗概,设计人员依据系统的逻辑模型进行具体的物理设计。,缺点,是当今信息技术的发展一日千里,我国社会主义市场经济体制正在建立之中,企业管理系统的组织结构及环境都处在不断的变化之中,要求系统需求在开发过程中保持不变是不现实的。,特别是对于一些复杂的、需求不太明确以至多变的大系统来说,假设前提与实际的矛盾就更为突出,静态模型不能描述这种变化的系统需求,因而产生以动态模型描述系统需求为基础的原型化方法。,六种主要系统,战略层次系统,5年 5年 5年 利润 人事,销售趋势预测 运作计划 预算预测 计划 计划,管理层次系统,销售管理 库存控制 年度预算 资本投资分析 重新安置分析,销售区域管理 生产排期 成本分析 定价/利润分析 合同成本分析,知识层次系统,设计工作站 图形工作站 管理工作站,字处理 文件图象 电子日历,操作层次系统,订单跟踪,订单处理,设备管理,生产流程,物流管理,公债交易,现金管理,职工工资,应付帐目,应收帐目,补偿金,培训和发展,员工记录保持,销售和市场营销 制造 财务 会计 人力资源,ESS,MIS,DSS,KWS,OAS,TPS,ESS,TPS,KWS,OAS,DSS,MIS,系统之间的关系:集成,第二节 管理信息系统开发方式与策略,一、管理信息系统开发策略,1“自顶向下”的开发策略,“自顶向下”的开发策略强调从整体上协调和规划,由全面到局部,由长远到近期,从探索合理的信息流出发来设计信息系统。应用此策略进行系统开发时,应从组织的高层管理着手,考虑系统的整体目标,以及资源与约束,再确定需要哪些功能去保证目标的完成,划分相应的子系统,并进行各子系统的业务分析和设计。,2“自底向上”的策略,“自底向上”的开发策略是从组织的各个基层日常业务处理入手,先实现一个个具体的功能,逐步地由低级到高级建立管理信息系统。,“自顶向下”,“自底向上”,优,点,“自顶向下”的开发策略具有较强的整体性与逻辑性,子系统容易被识别、理解、开发和调整,有关的数据流和数据存储也容易确定,可以避免大规模系统可能出现运行不协调的危险,缺,点,开发系统,工程量大,工期长,开发费用高,而且评价标准难以确定,尽管可根据资源的情况逐步满足用户要求,边实施边见效,但缺乏整体目标和协调性,可能导致功能及数据的矛盾、冗余,造成返工,为了充分发挥上述两种策略的优点,人们往往将它们综合起来应用。在用“自顶向下”原则确定了一个信息系统的总体方案之后,再采用“自底向上”的策略,在总体方案指导下,对一个个业务子系统进行具体功能和数据的分析和分解,并逐层归纳到决策层。这样,通过全面分析、协调和调整之后,能得到一个比较理想的,耗费人力、物力、时间较少的,用户满意的新系统。,二、管理信息系统开发方式,1、自行开发,用户具有开发系统的基本必要条件,且技术力量比较雄厚,可以采取自行开发的方式。自行开发是由用户依靠自己的力量独立完成系统开发的各项任务。即根据项目预算,企业自行组织开发队伍,完成系统的分析和设计方案,组织实施,进行运行管理。,2、联合开发,由用户和有丰富开发经验的机构或专业开发人员共同完成开发任务。联合开发方式适合于使用单位有一定的管理信息系统分析、设计及软件开发人员,但开发队伍力量较弱,希望通过管理信息系统的开发建立、完善和提高自己的技术队伍,便于系统维护工作的单位。这种方法一般是由用户负责开发投资,根据项目要求组建开发团队,建立必要的规则,分清各方的权责,以合同的方式明确下来,协作完成新系统的开发。,3、委托开发,用户将信息系统建设的规划、目标等方面的要求明确提出,采取招标等方式委托给富有开发经验的机构或专业开发人员,通过签订合同的方式,按照用户的需求完成系统开发的任务。委托开发方式适合于使用单位无管理信息系统分析、设计及软件开发人员或开发队伍力量较弱、但资金较为充足的组织和单位。采用这种开发方式,关键是要选择好委托单位,最好是对本行业的业务比较熟悉的、有成功经验的开发单位,并且用户的业务骨干要参与系统的论证工作,开发过程中需要开发单位和用户双方及时沟通,进行协调和检查。,4、购买现成软件,目前,软件的开发正在向专业化方向发展,一些专门从事管理信息系统开发的公司已经开发出一批使用方便、功能强大的专项业务管理信息系统软件。为了避免重复劳动,提高系统开发的经济效益,也可以购买现成的适合于本单位业务的管理信息系统软件,如教育管理信息系统、财务管理系统、进销存管理系统等等。,各种开发方式比较,第三节 管理信息系统开发方法,一、管理信息系统开发方法体系,当前有多种信息系统开发方法,它们的侧重点也各不相同。生命周期法强调开发过程的组织、管理和控制;方法论强调开发方法的驱动对象;技术论强调支持某种方法论的技术;系统开发环境/工具研究则强调系统开发需要在一定的开发环境下运用开发工具来完成。这些方法彼此相互联系、相互支持、相互制约。它们之间的关系如下图所示:,系统开发生命周期,方法学,技术,开发环境/工具,中央资源库,系统开发方法体系结构图,计算机辅助软件工程,技术,计算机开发方法,生命周期法,(LC),原型法,面向过程方法,(结构化方法),面向数据方法,(信息工程方法),面向对象方法(OO方法),计算机信息系统开发环境/工具,系统开发生命周期,方法学驱动,可视化技术,计算机辅助软件工程,软件复用技术,其他技术,软件开发环境,集成化的项目/程序支持环境,中央资源库,二、系统开发方法的分类,按时间过程来分,开发方法分为生命周期法和原型法,实际上还有许多处于这两者中间状态的方法。按照系统的分析要素,可以把开发方法分为三类:,面向处理的方法学(,Processing Oriented,,,PO,),结构化方法学,,70,年代的主流。,面向数据的方法学(,Data Oriented,,,DO,),数据建模和信息工程,,80,年代的主流。,面向对象的方法学(,Object Oriented,,,OO,),90,年代的主流。,PO,就是指系统开发的出发点在于搞清系统要进行怎样的处理,分为两种:一种是面向功能,由企业的职能出发;一种是面向过程,由企业运营流程出发,划分成一些过程进行处理分析。,DO,首先分析企业的信息需求,建立企业的信息模型,然后建立全企业共享的数据库。,OO,是先分析企业的一些对象,把描述对象的数据和对对象的操作放在一起,如果多个对象共享某些数据和操作,共享的数据和操作就构成了对象类。,现在十分流行的面向过程的系统分析方法,在概念上它是把功能与数据结合,从本质上可以认为是面向对象的方法。,系统开发方法的二维分类,三、结构化方法,1、SSA&D方法的基本思想与特点,(1)SSA&D的基本思想:,用系统工程的思想和工程化的方法、按用户至上,的原则,结构化、模块化、自顶向下地对信息系统进,行分析与设计。,(2)SSA&D的特点:,自顶向下整体性的分析设计和自底向上逐步实,施;建立面向用户的观点;严格区分工作阶段;深,入调查研究;充分预料可能的变化;工发过程工程,化。,结构化系统开发方法,基本思想用系统工程的思想和工程化的方法,按用户至上的原则,结构化、模块化,自顶向下地对系统进行分析与设计。,特点自顶向下整体性的分析与设计和自底向上逐步实施的系统开发过程、用户至上、深入调研、严格区分工作阶段、开发过程工程化,系统规划,系统分析,系统设计,系统实施,系统的观点,工程的方法,阶 段,活 动,任 务,方,法,标,准,工,具,技,术,产品,费用,规划,分析,设计,运行,维护,实施,早期的方法,结构化方法,结构化系统开发方法,2、SSA&D的开发步骤,1、系统分析阶段:,系统规划与初步调查;可行性研究与分析;现行系统组织结构与业务,功能分析;业务流程分析;数据及数据流程分析;功能数据分析;,提出分析处理方式和新系统的逻辑模型。,2、系统设计阶段:,总体结构设计;代码设计;文件数据库设计;IO设计;模块功,能与处理过程设计。,3、系统实施阶段:,程序设计;系统调试;人员培训;系统切换。,4、系统运行、维护与评价阶段:,系统维护;系统评价。,3、SSA&D的优缺点,(1)优点:,严格区分开发阶段,系统的针对性强;,整体性与全局性好,自顶向下观点;,(2)缺点:,开发周期长;,开发过程繁琐、复杂;,开发工具落后;,与用户交流不直观;,系统的升级较困难。,四、原型法,原型法是软件开发技术发展到一定阶段的产物。与结构化方法不同,原型法不注重对管理信息系统的全面、系统的详细调查与分析,而是本着系统开发人员对用户需求的理解,先快速实现一个原型系统,然后通过反复修改来实现管理信息系统。,(一)传统方法及存在的问题,传统的结构化方法是在一定假设的前提下形成的,这些假设如下述:,1所有的需求能被预先定义,2修改定义不齐备的系统其代价一定是昂贵,的,3项目参加者之间能够清晰而准确地通信,4静态描述/图形模型对应用系统的反映是充,分的,5.结构化生命周期的各阶段都是固有正确的,(二)原型法的基本思想,1并非所有的用户需求在系统开发以前都能准确地说明,2有快速的原型构造工具,3项目参加者之间通常都存在沟通上的障碍,4需要实际的、可供用户参与的系统原型,5需求一旦确定,就可以遵循严格的方法,6大量的反复是不可避免的、必要的,应该加以鼓励,原型方法,1,2,3,4,8,N,5,7,6,循环1,循环2,用户提出要求,识别归纳问题,开发系统原型,分析评价,不可行处理,不满意处理,修改,试运行,.,.,.,运行管理,需要4GL、,软件开发工具,等支持环境,适合需求不确定,解决方案不明确,的系统开发,用户对新系统提出需求(各种问题),完成系统开发并交付用户使用,运行原型系统,开发一个原型系统,开发人员对问题进行总结,有修改意见?,增加新功能?,增加功能,修改,Y,Y,N,N,(三)原型化方法的实现途径,开发高质量的、规模较大的系统没有捷径。它必须依靠一支有经验的系统开发队伍,按照原型化设计方法的步骤和策略,在较完善的开发环境中,在用户支持和配合下,动态地调整开发的诸多环节,以最大限度地满足用户对系统的需求。,我们按照要达到的目的划分以下三类快速原型的实现途径。,1研究探索原型,这种途径关心的基本问题是,如何进行系统开发人员与用户之间的交流合作,。特别在软件开发的早期这是很有用的。,通常,开发人员对应用领域了解很少,而用户对计算机能为他们干些什么也毫无概念。在这种情况下,用一次实际演示来表演可能实现的系统功能,可以促使大家提出积极的意见,并导致参加的各方进行建设性的合作。这样的一次演示不应当排斥任何一种特定的方案,而应能表示出不同方案的特点,进而对其优缺点进行讨论。,2实验性原型,这种方法通常是根据针对用户的问题的某种方案做出原型以供实验评估。,实验性原型方法有以下几种可供选择的不同策略方案:,(1)人机接口模拟。,(2)全功能模拟。,(3)框架程序设计。,(4)基本机器构造,(5)部分功能模拟。,3演进性原型方法,对演进性原型方法来说,一方面它是最强有力的原型化方法,另一方面也是最脱离原型方法本意的。,有人认为不该把它看作原型方法,而应看成按版本开发。,演进型方法是建立在以下经验基础上的:与交互式应用系统有关的机构是逐渐形成的,因此就不断产生新的用户需求;一旦使用交互式应用系统之后,就改变了自身的使用环境,因而本身也提出新的需求。,按循环发生的程度,分为以下两种形式:,(1)增式系统开发。这种开发形式是通过对基本系统原型的逐步扩充而获得对复杂问题的解决。,(2)演进式系统开发。这种方法把软件开发在总体上看成一系列循环,即重新设计、重新实现、重新评估。,原型体,最终系统,抛弃,只利用需求/规格,(a)程序一次性使用,原型体,原型体,最终系统,附加,程序嵌入,(b)程序嵌入,原型体,原型体,最终系统,(c)程序变换,(四)原型化方法的技术与工具,系统开发中,一个好的方法无论在理论上多么诱人,但如果没有提供一个方便、合适的开发工具与环境,那么就很难被人垂青,原型法更是如此。,与原型法有有关的最重要技术是:,模块设计、模拟及会话设计。,1、模块设计,模块设计在所有的原型策略中都是极为重要的。其目的是要把原型归入目标系统之中。这些策略包括人机接口模拟、框架程序设计及增式系统开发。,在所有情况下,模块化都有利于逐步地用目标系统单元替换原型单元。,2、模拟,作为一种原型方法,对于目标系统在实际评估中不能完全忽略的部分、但又没有在演示时用其最终形式实现的部分采用模拟技术。,3、会话设计,会话设计的目的是使系统与用户的接口变得透明而灵活。,为使对用户接口的评估有意义,必须能够来命名、讨论和变更各种详细程度上的会话特性。这些特性包括会话的总体结构、系统命名选择、屏幕设计、出错及特殊情况处理,以及在系统需要时提供构造任务的可能性。,(五)原型化方法存在的问题,原型化方法融合了系统开发方法的两种途径,第一,与机器打交道的软件开发方法,即高级软件语言与软件开发环境;第二,软件的设计和规格说明方法。这两种方法没有一种能单独对系统开发过程的效率和开销带来重大的改善,但二者的结合,即原型法的引入将使系统开发真正达到高效率、低开销的目的。,但原型本身不是系统开发的一种完整方法。它并没有规定一系列的步骤来保证一个运行系统满足用户的模糊概念及看法中导出的全部需求,应当把原型化方法看作是软件开发中的一个需要与其他步骤相结合的步骤。,原型法贯彻的是“从下到上”的开发策略,它更易被用户接受。但是,由于该方法在实施过程中缺乏对管理信息系统全面、系统的认识,因此,它不适用于开发大型的管理信息系统。,至今,原型法的技术过程尚未搞得很清楚,对支持工具的选择和构造原型的概念也有很多不同意见。即使如此,由于原型化方法有许多优点,在各系统开发工作中应认真考虑是否采用这一方法。,五、面向对象开发方法,随着技术的进步,管理信息系统分析和设计方法也在进步。继20世纪70年代结构化方法发展成熟之后,80 年代出现面向对象的技术和方法。到20世纪80年代后期,面向对象程序设计语言已经发展并达到比较成熟的阶段,同时,面向对象的应用领域也在迅速扩大。,一方面,将面向对象方法应用于管理信息系统开发方法中,出现面向对象的系统分析和设计方法,从方法论上摆脱了传统的结构化系统系统开发方法的束缚,使管理信息系统开发进入一个全新的阶段:,另一方面,面向对象技术也在计算机相关专业领域得到发展,如面向对象数据库、面向对象软件开发环境、面向对象的操作系统等,已经取得一定进展。,面向对象(Object Oriented,OO)方法,简称 OO 方法,近年来引起强烈关注,被誉为“研究高技术的好方法”。OO 方法作为一种认识方法论,强调对现实世界的理解和模拟,把现实世界到信息世界的转换工作量减少到最小,特别适合于系统分析与设计。,1、面向对象的基本概念,(1)对象,对象(Object)是对某一事物属性及行为特征的描述。,每个对象都具有用于描述对象的属性,还有附属于它的行为。对象把事物的属性和事物的行为封装在一起,是一个整体的、动态的概念。,例如:某一型号手机就是一个对象,用一组名词就可以描述手机的基本特征,如65536色、300万象素和超薄体积等,这是对象的属性;操作说明介绍的如何对手机进行不同的操作,这是附属于对象的可执行的动作。,(1)面向对象=对象+类+继承+通信。,(2)面向对象软件的每一成份都是对象。计算是通过对象之间的通信来进行的。,面向对象的概念,(1)对象的定义包括一组属性和一组操作,(2)属性只能通过执行对象中的操作才能改变,(3)操作也称方法和服务,它描述了对象提供的功,能。,(4)其它对象通过消息传递使用对象中定义的操作。,(5)消息定义了一个操作名和一个参数表,并指定,了某一个对象。,(6)对象接收到发送给自己的消息后,调用由消息,指定的操作。,(7)操作会改变对象的属性和状态,并向其它对象,发消息。,对象,(8)对象的封装原则,对象所反映的是一个概念的实体、实例或物理对,象.,对象中的属性是相关的。,操作是对象所允许的对其自身属性的操作。,对象实现了说明与实现的分离。,(a)说明部分描述了对象的接口(属性接口和方法,接口)。,(b)实现部分具体描述了操作的实现过程。,(c)在接口保持不变的情况下,实现方案可以改变。,对象,(2)类,所谓类(C1ass),就是一组对象的数据和行为特征的抽象描述,或者说,类是具有共同属性、共同操作性质的对象的集合。,对象和类的概念是很容易模糊,但它们是不同的。,类是对象的抽象描述;对象是类的实例。类是抽象的,对象是具体的。,如果说电话是抽象的,那么相对于这个抽象的电话,无绳电话机、手提电话等就是具体的;如果说桥梁是抽象的,那么相对于这个抽象的桥梁,长江大桥、卢沟桥等就是具体的。,在这里,可以把电话、桥看成是类,把某一具体的电话机、某一具体的桥看成是对象。这与哲学当中抽象与具体的关系是一致的。,(1)类是一组具有相同属性和操作的对象的,集合。是一种概念上的表示。,(2)类的定义包括一组数据属性和在这组数,据属性上的一组合法操作。,(3)类是具有类似特性与共同行为的对象的,模板,它用来生成对象。,(4)对象都是由类生成的,对象也被称为类,实例、实例对象等。,所有对象都可以使用类中定义的操作,,但拥有自己独立的属性空间。,类,(1)继承是以现存类为基础,建立新类的技,术。,(2)现存类可作为父类(基类)。,新类可作为子类(派生类)。,(3)子类可以继承父类的属性和操作,,也可以增加新的属性和操作。,继承,同样的消息既可以发给父类的实例对象,也可以发给子类的实例对象。,同一消息因接收对象的不同,可以引起不同的行为。,(1)继承是以现存类为基础,建立新类的技,术。,(2)现存类可作为父类(基类)。,新类可作为子类(派生类)。,(3)子类可以继承父类的属性和操作,,也可以增加新的属性和操作。,同样的消息既可以发给父类的实例对象,也可以发给子类的实例对象。,同一消息因接收对象的不同,可以引起不同的行为。,多态,(1)基本原则,使开发软件的方法与过程尽可能接近人类,认识世界,解决问题的方法与步骤。,使描述解空间与实现解空间在概念上、在,结构上尽可能一致。,(2)面向对象方法是一种新的思维方法,以数据和信息为主线,把数据与处理结合,起来。,软件系统不是一系列过程的集合。,软件系统是相互协作又彼此独立的对象集,合每个对象就像一个小程序,有自己的数,据、操作、功能和目的,即具有,职责,。,面向对象方法,(3)属性,属性(Attribute)是用来描述对象特征的参数。,属性是属于某一个类的,不能独立于类而存在。派生一个新类,新类将继承基类的全部属性。,在Visual FoxPro系统中,对象拥有70多个属性。对象的属性可以在设计对象时定义,也可以在对象运行时进行设置、修改。这对不同的对象来讲具有不同的要求。,(4)事件与方法,事件(Event)是每个对象可以识别和响应的某些行为和动作。,在Visual FoxPro系统中,对象可以响应50多种事件。多数情况下,事件是通过用户的某种操作行为引发的,当事件发生时,将执行包含在事件过程中的全部代码。,方法(Method)是附属于对象的行为和动作。,在Visual FoxPro系统中,对象可以实现50多种方法操作。创建对象后,就可以从应用程序的任意位置调用已创建的方法。,2、面向对象技术的特点,1)从现实世界中区分特定的客体及其属性。,例如,以一辆汽车及它的大小、外形以及颜色等来区别于其他事物。,2)区分事物的整体及其组成部分,。,例如,区分一辆汽车和组成这辆汽车的车轮、车门和发动机等部件。,3)对不同种类的事物给出形式化表示,然后在此基础上加以区分。,例如,给出汽车和飞机这两类事物的形式表示,以区分这两类对象。对象集中体现对重要问题空间的理解。,1、面向对象的分析,面向对象分析,(Object-Oriented Analysis,OOA)要求把现实问题分解成一些类或对象,找出这些对象的特点,以及对象间的关系,并由此产生一个规格说明。它反映面向对象方法的客观性和自然性,即依照客观世界本身的规律开发管理信息系统,符合人们的思维规律。面向对象的分析由五个主要步骤构成:标识对象、标识结构、定义主题、定义属性(及实例连接)、定义方法(及消息连接)。,(二),面向对象开发方法的原理,对象是对一组数据及其操作的描述,,反映系统保存的有关信息和与现实世界交互的能力。对象是系统中最稳定的部分,标识对象能产生一个稳定的框架模型,以避免从分析到设计时改变系统的基本表示。,标识对象的过程包括寻找对象、挑剔对象及命名对象。,1)标识对象,上级系统接口,商品,收款机,销售事件,账册,商品一览表,特价商品,供货员,计量商品,商场销售管理系统中的对象,结构表示问题空间的复杂程度。标识结构的目的是便于管理问题空间模型的复杂性。,结构有两种,分类结构和组装结构。分类结构针对的是事物的类别之间的组织关系,指一般与特殊结构,同人类用于管理复杂性中三种基本方法中的“类属及其成员”相对应。组装结构是对应于事物的整体与部件之间的组织方法。,2)标识结构,飞机,军用飞机,民用飞机,分类结构的示例,座位,机翼,发动机,飞机,l,L,N,M,组装结构的示例,销售事件,收款人,购物清单,应收款,销售计价,入账,账册,前班结余,销售事件表,收入累计,上交款,本班结余,接班,收款机,本班收款员,开始时间,结束时间,登录,售货,结账,商品一览表,商品目录,检索,种类增删,商品,编号,名称,单价,架上数量,下限,售出,上级系统接口,账册目录,消息收发,查账,报账,价格更新,种类增删,供货员,缺货登记表,缺货登记,供货,特价商品,开始日期,结束日期,计量商品,*单价,计量单位,计价方式,*售出,*补充,l,m,m,l,图3-8 商场销售管理系统结构关系示意图,主题就是对模型的提炼和抽象。主题给出模型中各图的概观,使用户和各种分析图的读者在更高层次上观察模型全貌,为读者在一个时间段内所能考虑的模块数提供一个控制机制。,OOA 对主题的使用有两种方式。一种是自底向上的,即先建立类图,然后,把类图中每一组联系较强的类组织为一个主题。,另一种方式是自顶向下的,即先对系统做初步的分析,确定几个大的主题,每个主题相当于一个子系统,按这些子系统进行分工,各个分析小组对自己分工的子系统进行面向对象分析,建立各个子系统(主题)中的类图。,3)标识主题,1.销售记录,2.商品信息,3.外部接口,1.销售记录,收款机,账册,销售事件,3.外部接口,上级系统接口,供货员,2.商品信息,商品一览表,商品,物价商品,计量商品,(a)压缩方式,(b)半展开方式,商场销售管理系统的主题图,属性是描述对象或分类结构实例的数据单元。对象通过属性来描述。属性在对象库中一步说明,,使系统模型变得更加明确和详细。问题空间中对象相当稳定,属性却比较容改变,属性由该对象的服务专门操作。,在分析过程之中,对属性的定义可以通过以下五个步骤进行。,(1)标识属性;(2)属性定位;(3)标识实例关联;,(4)详细说明属性和实例关联的约束;(5)实例,4)定义属性,收款机,本版收款员,开始时间,结束时间,商品,编号,名称,单价,架上数量,下限,销售事件,收款人,购物清单,应收款,账册,前班结余,销售事件表,收入累计,上交款,本班结余,上级系统接口,账册目录,商品一览表,商品目录,供货员,缺货登记表,特价商品,开始日期,结束日期,计量商品,*单价,计量单位,计价方式,商场销售管理系统对象属性,OOA的最后一步是考虑方法和消息关联。与传统分析方法的考虑顺序不同,这些关于加工、加工步骤以及控制结构的考虑,在认定对象、结构、属性实例关联之后才进行。方法是指在接收到一条消息后所要进行的加工。定义方法首先是要定义每一种对象和分类结构为应用所要求的行为。其次,还要定义对象的实例之间必要的通信。这里,通信的基本方式是消息传递,定义通信就是定义实例之间的消息关联。,5)定义方法,收款机,本班收款员,上班时间,下班时间,登陆,售货,结账,商品,编号,名称,单价,架上数量,下限,售出,补充,价格更新,销售事件,收款人,购物清单,应收款,销售计价,入账,账册,前班结余,销售事件表,收入累计,上交款,本班结余,接班,记账,报账交班,上级系统接口,账册目录,消息收发,查账,报账,价格更新,种类增删,商品一览表,商品目录,检索,种类增删,特价商品,开始日期,结束日期,供货员,缺货登记表,缺货登记,供货,计量商品,*单价,计量单位,计价方式,*售出,*补充,*价格更新,商场销售管理系统对象方法,2、面向对象的设计,面向对象设计,(Object-Oriented Designs,OOD)是面向对象分析产生的逻辑结果,从面向对象的分析转到面向对象的设计是一个累进的模型扩充过程。面向对象分析的各个层次(如对象、结构、主题、属性和方法)是对“问题空间”进行模型化,而面向对象的设计则需要对一个特定的“实现空间”进行模型化。把 00 方法运用到系统设计的根本目标是改进设计、增进软件生产效率、提高软件质量以及加强可维护性。面向对象设计可以从一个项目向另一个项目提供一些重用类的实际机制而提高生产率。,面向对象设计可分为四个部分:问题空间部分的设计(PDC)、人机交互部分的设计(HIC)、任务管理部分的设计(TMC)、数据管理部分的设计(DMC)。,(二),面向对象开发方法的原理,在面向对象设计中,,面向对象分析(OOA)的结果恰好符合面向对象设计(OOD)的问题空间部分,因此,OOA 的结果就是OOD 部分模型中的一个完整部分。但是,为解决一些特定设计所需要考虑的实际变化,可能要对OOA结果进行一些改进和增补。问题空间部分的设计策略包括三部分:运用OOA的结果:改进OOA的结果:增补OOA的结果。,1)问题空间设计,人机交互部分突出人如何命令系统以及系统如何向用户提交信息,,人在使用计算机过程中的感受直接影响到对系统的接受程度。人机交互部分的友好性直接关系到一个软件系统的成败,虽然好的人机交互部分不可能挽救一个功能很差的软件,但同时性能很差的人机交互部分将使一个功能很强的产品变得不可接受。尤其对于不熟悉计算机的用户来讲,人机交互界面显得更为重要。,设计人机交互部分的策略由以下6项构成:对人分类;描述人和他们的任务脚本;设计命令层次;设计详细的交互;不断原型化;设计人机交互部分的类。,2)人际交互设计,任务又称为进程,若干任务并发执行称为多任务。任务管理部分的设计策略有:识别事件驱动任务;识别时钟驱动任务;识别优先任务和关键任务;识别协调者;审查每个任务;定义每个任务。,3)任务管理部分的设计,数据管理部分提供在数据管理协调中存储和检索东西的基本结构。数据管理部分旨在隔离数据管理方案的影响,不管该方案是普通文件、关系型数据库、面向对象数据库或其他方式的。,设计数据管理部分包括数据存放的设计和相应方法的设计。,4)数据管理部分的设计,六、CASE方法,20,世纪,80,年代,计算机图形处理技术和程序生成技术的出现,缓和了系统开发中的,“,瓶颈,”,问题,即主要靠图形处理技术、程序生成技术、关系数据库技术和各类开发工具为一身的,CASE,(,Computer Aided Software Engineering,,,CASE),工具代替人在信息处理领域中的重复性劳动。,CSAE,的目的是加快系统开发的过程,并提高所开发系统的质量。,1CASE方法的基本思路,在实际开发一个系统时,CASE的应用必须结合一种具体的开发方法,如结构化开发方法、原型法、OO方法等。,CASE,只是一种辅助的开发方法,它主要在于帮助开发者产生出开发过程中的各类图表、程序和说明性文档。如果自对象系统调查后,系统开发过程中的每一步都可以在一定程度上形成对应关系的话,就完全可以借助于专门研制的软件工具,实现上述开发方法的各个开发过程。这些系统开发过程中的对应关系包括:结构化方法中的业务流程分析,数据流程分析,功能模块设计,程序实现;业务功能一览表,数据分析,指标体系,数据过程分析,数据分布和数据库设计,数据库系统等等;,OO,方法中的问题抽象,属性、结构和方法定义,对象分类,确定范式,程序实现等等。CASE的目的是最终实现系统开发的自动化。,2CASE的体系结构,CSAE体系结构指出了CSAE工具之间的相互关系,根据它们在系统生命周期中所支持的阶段来划分,一般分为以下四类:集成化CSAE;上游CSAE(Upper CSAE)或称前端CSAE(Front-end CSAE)、下游CSAE或称后端CSAE(Back-end CSAE);支持项目管理的、并贯穿于整个生命周期的CSAE。,3CASE的特点,与一般开发方法相比,CASE方法有如下特点:,(1)解决了从客观世界对象到软件系统的直接映射。强有力地支持软件/信息系统开发的全过程。,(2)自动检测方法提高了软件的质量和软件的重用性。,(3)简化了软件的管理和维护。,(4)加速了系统的开发过程,软件功能进一步完善。,(,5,)自动产生统一的标准化的系统文档。,CASE,的体系结构图,案例:SCANIA公司软件包的选择,SCANIA公司是瑞典SAAB汽车公司的主要生产厂,每天可以生产140辆卡车,是世界上第二大的卡车生产商,卡车的零组件从许多地方运到工厂。SCANIA长期使用计算机来帮助生产线更快地运转并维持最低可能的组件库存。20世纪80年代末期,SCANIA的管理层认识到公司的计算机系统已经过时,因此他们决定采取行动。,SCANIA的计算机工程师认为,SCANIA被已经过时的、专用的计算机系统束缚住了。SCANIA的系统是一套Sperry Univac的计算机,使用专用的操作系统和在该系统上专门设计的应用软件。由于这个技术平台是专用的,SCANIA不能在这个系统上继续开发新的应用程序。管理层决定,他们需要向一个新的关系型数据库的环境移植,以获得可以增加新的表格和字符的灵活性。这个决策又需要做两个层次的选择:首先要先选择一个执行应用软件的平台,其次需要选择应用软件包以及相关的关系数据库管理系统的供货商。,平台的选择相对比较容易。因为SCANIA已经准备在商业系统上使用DEC公司的VAXVMS硬件和操作系统。软件包的选择除了要考虑业务功能方面的因素以外,另外一个重要的因素是SCANIA要求软件包具有足够的灵活性,希望在为应客户的特殊需求而对软件包做必要的修改和补充的流程中,不必做太多的修改就能够与SCANIA已经很完备的生产方式相适应。SCANIA的管理人员研究了7个很有名的软件包以后,决定不接受这些软件包,因为发现他们都缺乏灵活性。如果使用这些软件包,SCANIA公司要么必须调整内部的工作形式以适应软件包,要么就要对软件包进行非常复杂的修改来适应他们的工作方式,但这又是软件开发商所不支持的。最后SCANIA选择了一家没有知名度的小软件公司AVALON的软件包计算机综合交互式制造系统(CIIM)。,尽管CIIM也需要一些修改,但是它仍然比其他的软件包更加灵活。第一,根据一些用过CIIM用户的经验,SCANIA可以不加修改的使用软件包的80。第二,软件包有很丰富的功能,包括生产汁划、生产线管理、生产制造、数据传输监控、原材料定额、人力资源需求、监控生产效率以及质量控制等,这些都是SCANIA一直在追求的功能。第三,它是Oracle数据库导向的系统,Oracle公司是世界上最大的关系型数据库系统的供应厂商。第四,它可以在DEC公司
展开阅读全文

开通  VIP、SVIP  下载更划算
下载10份以上建议开通 VIP 会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        关注我们

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服