管理信息系统第02章_第1页
管理信息系统第02章_第2页
管理信息系统第02章_第3页
管理信息系统第02章_第4页
管理信息系统第02章_第5页
已阅读5页,还剩81页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章管理信息系统

的战略规划和开发方法目录2.1MIS的战略规划概念2.2制定MIS的战略规划的常用方法2.3系统的结构化开发方法2.4系统开发的原型法2.5面向对象方法2.6计算机辅助软件工程2.7各种开发方式的比较2.1管理信息系统的战略规划的概念2.1.1管理信息系统的战略规划

战略(Strategy)是组织领导者关于组织某些问题的概念的集合,主要包括:组织的使命和长期目标、组织的环境约束及政策以及组织当前的计划和计划指标的集合。1.战略规划的特点(1)目标明确;(2)可执行性良好;(3)组织人事落实;(4)灵活性好2.战略规划的内容战略规划的内容由以下三个要素组成。(1) 方向和目标:经理在设立方向和目标时有自己的价值观和自己的抱负,但是他必须要考虑到外部的环境和自己的长处,因而最后确定的目标总是这些相关因素的折衷,这往往是主观的。一般来说,最后确定的方向和目标绝不是一个人的愿望。(2) 约束和政策:就是要找到环境和机会与自己组织资源之间的平衡。要找到一些最好的活动集合,使它们能最好地发挥组织的长处,并最快地达到组织的目标。这些约束和政策所考虑的机会是现在还未出现的机会,所考虑的资源是正在寻找的资源。(3) 计划与指标:这是近期的任务,计划的责任就在于进行机会和资源的匹配。但是这里考虑的是现在的情况,或者说是不久将来的情况。由于是短期,有时可以做出最优的计划,以达到最好的指标。为了执行好战略规划,应当做到以下三点。(1) 做好思想动员工作:让各种人员了解战略规划的意义,使各层干部均能加入战略规划的实施。要让高层人员知道吸收外部人员参加规划的优点,要善于使执行计划的人了解制定规划的人的意图,对于一些大企业战略计划的新思想应当与企业的文化形式相符合,或者以企业习惯的方式推行新的内容。一旦规划制定,就不要轻易改动。(2)把规划活动当成一个连续的过程:在规划制定和实行的过程中要不断地进行“评价与控制”,也就是不断地综合集成各种规划和负责执行这种规划的管理,不断调整。一个好的战略管理应当包含内容有:①建立运营原则;②确定企业地位;③设立战略目标;④进行评价与控制。这些内容在整个运营过程中是动态的和不断修改的。(3) 激励新战略思想:战略规划的重要核心是战略思想,激励新战略思想的产生是企业获得强大生命力的源泉。3.战略规划的执行困难一个管理信息系统的规划应包括:组织的战略目标、政策和约束、计划和指标的分析;管理信息系统的目标、约束和计划指标的分析;应用系统或系统的功能结构,信息系统的组织、人员、管理和运行;以及信息系统的效益分析和实施计划等。进行管理信息系统的战略规划一般包括下列步骤,如图2-1所示。4.管理信息系统的战略规划图2-1管理信息系统战略规划步骤2.1.2诺兰阶段模型及其指导作用1.诺兰阶段模型计算机应用到一个组织的管理,一般要经历从初级到高级的成长过程。诺兰(Nolan)于1973年首次提出了信息系统发展的阶段理论,被称为诺兰阶段模型;1980年,诺兰进一步完善模型,将信息系统的成长过程划分为六个不同阶段。初装蔓延控制集成数据管理成熟初装蔓延控制集成数据管理成熟费用图2-1诺兰阶段模型2.诺兰阶段模型的作用诺兰阶段模型总结了管理信息系统发展的经验和规律,其基本思想对于管理信息系统的建设具有指导意义。一般认为模型中的各阶段都是不能跳越的。无论是确定开发管理信息系统的策略,还是制定管理信息系统的规划,都应该首先明确组织当前处于哪一成长阶段,进而根据该阶段特征来指导管理信息系统的建设。2.1.3系统规划及其作用1)系统规划系统规划是指根据组织的战略目标和用户提出的需求,从用户的现状出发,经过调查,对所要开发管理信息系统的技术方案、实施过程、阶段划分、开发组织和开发队伍、投资规模、资金来源及工作进度,用系统的、科学的、发展的观点进行全面规划。2)作用从整体上把握管理信息系统的开发,有利于集中全部资源优势,使其得到合理配置与使用;使开发的目标系统与用户建立良好的关系;促进管理信息系统的开发与深化;作为系统开发的标准;促使管理人员回顾过去的工作,发现可以改进的薄弱环节。3)内容系统规划的内容:组织的战略目标、计划和指标分析、外部环境与管理现状调查;用户的需求调查与分析;新的管理信息系统的目标、计划和指标分析、功能结构、组织运行和管理、效益分析和规划以及新的管理信息系统的运行环境、资源选型和开发计划。4)一般步骤系统规划的步骤:分析组织的战略规划;根据组织的战略规划确定系统开发总目标(以前未规划的系统项目);设立优先级并选择项目;分析资源需求;设定时间进度和最终期限;编制系统规划文档。5)系统规划阶段的成果(1)技术文档:系统规划报告。(2)管理文档:开发计划、开发合同以及系统规划报告评审意见。2.2制定管理信息系统的战略规划的常用方法图2-2

数据库的分析与建立的步骤2.2.1关键成功因素法1970年,哈佛大学教授WilliamZani在MIS模型中使用了关键成功变量,这些变量是确定MIS成败的因素。10年后,MIT教授JoneRockart将CSF提高成为MIS的战略。历史上,CSF方法己经广泛应用到信息系统领域。更作为一种“通用”的管理方式,尤其是在战略管理和业务规划层面。关键成功因素也涉及到核心竞争力、价值链和业务流程。当管理者按关键成功因子CSF所指明的方向实施管理与调控时,还需要有一个相应的评价指标体系以衡量行为的效果.这些指标就叫做关键性能指标KPI。美国微波联合体公司(MicrowaveAssociates)曾与麻省理工学院的分析研究人员花了二个半小时研究了组织的目标、关键成功因素和具体指标,具体结果参见下表。确定关键成功因素是通过两次会议完成的,在第一次会议上该公司总裁列出了9个关键成功因素,而在第二次会议结束的时候,其中两个因素被合并成了一个,另一个因素由于其重要程度偏低被删除。这个过程就是典型的决策者信息需求识别过程中的关键成功因素的确定过程。关键成功因素法通过目标分解和识别、关键成功因素识别、性能指标识别,产生数据字典。关键成功因素就是要识别与系统目标联系的主要数据类及其关系,识别关键成功因素所用的工具是树枝因果图。图2-3某企业的树枝图CM公司信息化战略规划—吴国成电子科技大学MBA2010年论文运用“五力”模型剖析了CM所处的行业竞争态势,运用SWOT方法分析了自身竞争能力和地位,从而确定了公司竞争战略;然后,论文对CM公司信息化内外部环境分析评估,运用信息化管理成熟度模型评估了在信息化建设方面的差距,论证了信息化建设的必要性和可行性;接下来,论文运用SST战略集转化法规划出CM公司信息化战略目标,通过CSF关键成功因素法梳理出CM公司的信息需求,并结合BSP企业系统规划法设计出CM公司信息系统总体框架;最后,结合CM公司信息化系统实施目标和阶段计划,阐述了公司信息化实施的原则和组织体系,分析了公司信息化系统应用和优化,再次使用信息化管理成熟度模型评估了CM公司信息化应用能力。2.2.2战略目标集转化法WilliamKing于1978年提出战略目标集转化法,将整个战略目标看成“信息集合”,由使命、目标、战略和其他战略变量组成。MIS的战略规划过程就是将组织的战略目标转变为MIS战略目标的过程。识别和阐明组织的战略集把组织的战略集转化为MIS战略集提出MIS的结构123战略目标集转化法由三个工作步骤首先要构造组织的战略集,构造过程如下:⑴勾画出组织的关联集团结构关联集团指与该组织有“利害关系”的各类集团,组织的使命、目标和战略必然和关联集团相关。

⑵确定关联集团的要求组织的使命、目标和战略实质上是反映出了每一关联集团的要求,因此要识别每一个关联集团的要求,并说明这些要求的被满足程度。⒈识别和阐明组织的战略集

⑶定义组织相对于每个关联集团的任务和战略对应于关联集团的要求定义组织相对于这些关联集团的任务和战略,构成组织的战略集。

⑷解释和验证组织的战略集当组织的战略集初步识别后,应送交组织的最高管理者审查。关联集团公众P客户Cu股东S政府G债权人Cr管理者M员工E企业目标企业战略企业属性企业战略集Ol:年增收入10%(S,Cr,M)O2:改善现金流(S,Cr)O3:保持客户的满意度(Cu)O4:增加社会义务(G,P)O5:高品质产品生产(M,Cu)O6:消除生产中的安全隐患(G,S)S1:拓展新业务(O1,O6)S2:增加资金(O1,O2,O3)S3:设计新产品(O1,O3,O5)A1:管理水平高(M)A2:当前经营状况不好,有改革现状的要求(S,M)A3:大部分管理者有使用计算机的经验(M)A4:管理权力高度分散

管理信息系统目标管理信息系统约束管理信息系统战略管理信息系统战略集MO1:改善财务系统(S2)MO2:提供市场产品需求信息(S3)MO3:提供新业务机会的信息(S1)MO4:提供对现金流改变的评估信息(S2)MO5:能迅速了解客户的要求(O3)MO6:及时准确地提供企业运营情况的信息(A2)MO7:能对管理系统进行整体协调(A4)C1:缺乏大规模开发系统的资金(A2)C2:系统需要采用决策模型和管理技术(A1,A3)C3:需要提供综合性的可分析信息报告(A1)C4:需要来自外部与内部的信息(MO2、MO3、MO4)MS1:采用软件重用技术(C1)MS2:要求系统的独立性强(C1)MS3:系统有及时处理的能力(O3,MO5)MS4:系统能够对各种业务信息进行综合分析(C3)MS5:系统导入、整合外部的各种信息(MO2、MO3、C4)⒉把组织的战略集转化为MIS战略集根据MIS的战略集所列举的系统目标、系统约束和系统战略,提出整个MIS的结构,提交给组织的最高管理者。⒊提出MIS的结构1.基本思想企业系统规划法的基本思想:信息支持企业运行。通过自上而下地识别系统目标、企业过程和数据,然后对数据进行分析,自下而上地设计管理信息系统。该管理信息系统支持企业目标的实现,表达所有管理层次的要求,向企业提供一致性信息,对组织机构的变动具有适应性。2.2.3企业系统规划法20世纪70年代初,IBM公司将BSP作为用于内部系统开发的一种方法,它主要是基于用信息支持企业运行的思想。2.作用企业系统规划法的作用:确定未来信息系统的总体结构;明确系统的子系统的组成和开发子系统的先后顺序;对数据进行统一规划、管理和控制,明确各子系统之间的数据交换关系,保证信息的一致性。企业系统规划法的优点在于利用它能保证管理信息系统独立于企业的组织机构,也就是能够使信息系统具有对环境变更的适应性。4.一般步骤BSP方法是把企业目标转化为信息系统(IS)战略的全过程,它支持的目标是企业各层次的目标。BSP详细步骤如图2-4所示。3.基本原则先“自上而下”识别和分析,再“自下而上”设计。

图2-4BSP详细步骤1)开始的动员会动员会要说明工作的期望和期望输出。系统组要简介企业的现状,包括政治上、经济上以及管理上敏感的问题,还应介绍企业的决策过程、组织功能、关键人物、用户的期望以及用户对现有信息系统的看法等。由信息系统负责人介绍信息人员对企业的看法,同时应介绍现有项目状况、历史状况以及信息系统的问题。通过介绍使大家对企业和对信息支持的要求进行全面了解。战略规划管理控制战略规划管理控制经济预测组织计划政策开发放弃/追求分析市场/产品预测工作资金计划雇员水平计划运营计划预测管理目标开发产品线模型预测测量与评价表2-1企业战略规划和管理控制方面的过程2)定义企业过程定义企业过程又称识别企业过程,是BSP方法的核心。企业过程定义为逻辑上相关的一组决策和活动的集合,这些决策和活动是管理企业资源所需要的。整个企业的管理活动由许多企业过程组成。表2-2识别产品与服务过程要

求获

得服

务退

出市场计划市场研究预测定价材料需求能力计划工程设计开发产品说明工程记录生产调度生产运行购买库存控制接受质量控制包装储存销售订货服务运输运输管理识别产品与服务过程与此略有不同。众所周知,任何一种产品的生命周期均由要求、获得、服务和退出四个阶段组成,对于每一个阶段,将用一些过程对它进行管理,如表2-2所示。资

源生命周期要

求获

得服

务退

出资金财务计划成本控制资金获得接收公文管理银行账会计总账会计支付人事人事计划工资管理招聘转业补充和收益职业发展终止合同退休材料需求生产采购接收库存控制订货控制运输设备主设备计划设备购买建设管理机器维修家具、附属物设备报损表2-3资源识别企业过程支持资源识别企业过程的方法类似于产品和服务,根据资源的生命周期列举出企业过程。一般来说,企业资源包括资金、人才、材料和设备,如表2-3所示。3)定义数据类识别企业数据的方法有两种,一种是企业实体法,实体有顾客、产品、材料以及人员等客观存在的东西。企业实体法首先是列出企业实体,一般来说要列出7~15个实体;然后列出一个矩阵,实体列于水平方向,在垂直方向列出数据类,如表2-4所示。另一种识别数据的方法是企业过程法,它利用以前识别的企业过程,分析每一个过程利用什么数据,产生什么数据,或者说每一过程的输入和输出数据是什么。它可以用输入—处理—输出图来形象地表达,如图2-6所示。企业实体数据类产品顾

客设

备材

料卖

主现

金人

员计划/模型产品计划销售领域

市场计划能力计划

设备计划材料需求

生产调度预算人员计划统计/汇总产品需求销售历史运行设备利用开列需求卖主行为财务统计生产率赢利历史库存产品成本零件顾客设备机器负荷原材料成本材料单卖主财务会计总账雇用工资技术业务订货运输采购订货材料接收接收支付表2-4数据/企业实体矩阵图2-6输入—处理—输出图过程组织市场计划市场预测销售区域管理销售订货服务产品设计开发产品说明财务计划成本核算人员计划培训计划人员考核

……财物部×/¤¤销售部¤¤¤¤¤×技术部פ¤人事部¤¤¤……4)分析企业和系统的关系分析企业和系统的关系主要是用几个矩阵来表示,例如组织/过程矩阵,它在水平方向列出各种过程,垂直方向列出各种组织,如果该组织是该过程的主要负责者或决策者,则在对应的矩阵元中画“*”;若为主要参加者就画“x”;若为部分参加者就画“/”。确定经理的想法就是确定企业领导对企业前景的看法。作为系统组的成员就应当充分准备采访提纲,积极地采访以及及时并准确地进行分析总结等。一般来说,所提问题应是openup型;即打开话匣子型,而不应当是closedown型,即只要求回答是否式的问题。5)确定经理的想法图2-7评价企业问题的流程图表2-5总结采访数据主要问题问题解价值说明信息系统要求过程/组影响过程/组起因由于生产计划影响利润计划机械化改善利润改善顾客关系改善服务和供应生产计划生产生产6)评价企业问题和收益由图2-7可知,第一步是总结采访数据,将其汇集到一张表中,如表2-5所示。第二步是分类采访数据,任何采访的数据均要分三类,即现存系统的问题和解、新系统需求和解以及非IS问题。第三类问题虽不是信息系统所能解决的,但也应充分重视,并整理递交总经理。第三步是将数据和过程关联起来,可以用问题/过程阵表示,其中数字表示这种问题出现的次数,如表2-6所示。表2-6问题/过程阵

过程组问题市场销售工程生产材料财务人事经营市场/顾客选择222预测质量34产品开发411定义信息结构实际上就是划分子系统。BSP方法根据信息的产生和使用来划分子系统,它尽量将信息产生的企业过程和使用的企业过程划分在一个子系统中,从而减少子系统之间的信息交换,具体的作法是使用U/C图,其中U表示使用(Use),C表示产生(Create),如图2-8所示。7)定义信息结构图2-8U/C矩阵知识链接

①调整U/C矩阵。首先,将过程按照过程组排列,每一过程组按资源生命周期的四个阶段排列。其次,调整“数据类”,使矩阵中C及U靠近从左上到右下的主对角线,尤其是C必须靠近主对角线,而U可能在某些情况下需要放弃将其靠近主对角线的企图。

②把U、C比较集中的区域用粗线条框起来,这样形成的框就是一个个子系统。

③表示数据流向。用箭头把落在方框外的U与子系统联系起来,表示子系统之间的数据流,即数据从一个系统流向另一个系统。

U/C矩阵的调整知识链接

①对于一个数据类须有一个产生过程且至少有一个使用过程。

②对于一个数据类必须仅有一个产生过程。③在U/C矩阵里,不允许出现空行、空列现象。

U/C矩阵的正确性检验定义结构优先序就是确定系统优先顺序,将子系统按先后顺序列出开发计划。8)定义结构优先序9)评价信息系统管理10)完成BSP研究报告,开发建议书和行动计划CSF方法能抓住主要矛盾,使目标的识别突出重点。用这种方法所确定的目标和传统的方法衔接得比较好,但是一般最有利的只是在确定管理目标上。SST方法从另一个角度识别管理目标,它反映了各种人的要求,而且给出了按这种要求的分层,然后转化为信息系统目标的结构化方法。它能保证目标比较全面,疏漏较少,但它在突出重点方面不如CSF方法。BSP方法虽然也首先强调目标,但它没有明显的目标引出过程。它通过管理人员酝酿“过程”引出了系统目标,企业目标到系统目标的转换是通过组织/系统、组织/过程以及系统/过程矩阵的分析得到的。这样可以定义出新的系统以支持企业过程,也就把企业的目标转化为系统的目标,所以识别企业过程是BSP战略规划的中心,绝不能将BSP方法的中心内容当成U/C矩阵。若将这三种方法结合起来使用,则称它为CSB方法,即CSF、SST和BSP结合。这种方法首先用CSF方法确定企业目标;然后用SST方法补充完善企业目标,并将这些目标转化为信息系统目标;最后用BSP方法校核两个目标,并确定信息系统结构,这样就补充了单个方法的不足。2.2.4三种系统规划方法的比较2.3系统的结构化开发方法2.3.1系统结构化开发方法的基本思想用系统的思想和系统工程的方法,按照用户至上的原则,结构化、模块化、自上向下地对系统进行分析与设计。将整个信息系统的开发过程划分为若干个相对独立的阶段,例如系统规划、系统分析、系统设计和系统实施等。在前三个阶段坚持自上向下地对系统进行结构化划分。在系统调查和规划管理业务时,应从最顶层的管理业务入手,逐步深入至最基层;在系统分析阶段提出目标系统方案和系统设计时,应从宏观整体考虑入手,先考虑系统整体的优化,然后再考虑局部的优化问题.在系统实施阶段,则坚持自底向上地逐步实施,即组织人员从最基层的模块做起(编程),然后按照系统设计的结构,将模块一个个拼接到一起进行调试,自底向上、逐步地构成整个系统。系统规划系统分析系统设计系统实施系统运行与维护管理信息系统的生命周期模型用结构化系统开发方法开发一个系统时,将整个开发过程划分为首尾相连的五个阶段,即一个生命周期(LifeCycle)。2.3.3系统结构化开发方法的特点(1)自顶向下整体地进行分析与设计和自底向上逐步实施的系统开发过程(2)用户至上是影响成败的关键因素。(3)符合实际,客观性和科学化,即强调在设计系统之前,深入实际详细地调查研究,努力弄清楚实际业务处理过程中的每一个细节,然后分析研究,制定出科学合理的目标系统设计方案。(4)严格区分工作阶段,每一个阶段都有明确的任务和目标以及预期达到的工作成效,以便计划和控制进度,协调各方面的工作。前一阶段的工作成果是后一阶段的工作依据。(5)充分预料可能发生的变化:环境变化、内部处理模式变化以及用户需求发生变化。(6)开发过程工程化,要求开发过程的每一步都要按工程标准规范化,工作文体或文档资料标准化。系统结构化开发方法适合于大型信息系统的开发,它的主要优点如下。(1)注重系统开发过程的整体性和全局性。在开发策略上强调采用“自顶向下”的原则分析和设计系统,首先解决全局问题,强调在系统整体优化的前提下,考虑具体的解决方案。(2)严格区分工作阶段。整个开发过程的阶段和步骤都非常清晰,每一个阶段和每一个步骤均有明确的成果,并可作为下一步工作的依据,以避免造成浪费和混乱。(3)立足全局,步步为营,减少返工,有利于提高开发质量,加快开发进度。(4)目标明确,阶段性强,开发过程易于控制。结构化系统开发方法的一些缺陷如下。(1)开发过程复杂繁琐,难以准确定义用户需求。(2)系统开发周期过长,难以适应环境的变化。(3)见效慢,风险较大。(4)相当耗费资源。(5)不适用于面向决策的系统开发,适用于大型系统和复杂系统。2.3.4系统结构化开发方法的优缺点2.4系统开发的原型法它的基本思想是:系统开发人员首先对用户提出的问题进行理解、研究和总结,快速建立原型系统并运行。在运行过程中,不断发现新情况、新问题,反复修改,增加新功能,直到用户满意为止。2.4.1原型法基本思想初始原形不断地完善,直至用户满意2.4系统开发的原型法原型法是以一种与严格定义法截然不同的观点看待需求定义问题的方法。从一个能满足用户基本需求的原型系统开始,允许用户在开发过程中提出更好的要求,根据用户的要求不断地对系统进行完善,它实质上是一种迭代的、循环型的开发方式,如图2-9所示。2.4.2原型定义的策略图2-9原型法的开发过程(1) 原型法符合人们认识事物的规律,人们认识事物不可能一次就完全了解。(2) 原型法有利于项目的开发者和用户之间进行交流。(3) 实际的原型为准确认识问题创造了条件。(4) 能充分利用最新的系统开发环境。(5) 原型法将系统的调查、分析和设计融为一体。2.4.3原型法的特点其主要有以下几个优点。(1) 原型法以用户为中心开发系统,提供了一个验证用户需求的环境,允许在系统开发生命期的早期进行人机交互测试,提高了人们对最终系统的安全感,便于应用实例来建立新系统。(2) 原型法加强了开发过程中的用户参与程度。(3) 原型法可以接受需求的变动和风险。(4) 原型法对用户具有强大的吸引力。(5) 原型法可以缓和通信和交流的困难,可以提供很好的系统说明和示范,可以简化开发过程的项目管理和文档编制。2.4.5原型法的优缺点和适用范围作为一种具体的开发方法,原型法不是万能的,有其一定的适用范围和局限性,具体如下。1.原型法的局限性(1) 对于大型的系统,如果不经过系统分析来进行整体性划分就想直接用屏幕一个一个进行模拟,那是很困难的。(2) 对于大量的运算、逻辑性较强的程序模块,原型法很难构造一个合适的模型来供人评判。(3) 对于原基础管理不善、信息处理混乱的问题,使用原型法有一定困难。(4) 对于批处理系统,因其大部分是内部处理,因此使用原型法有一定困难。2.原型法的适用范围(1) 适用于小型、局部系统。(2) 适用于规模较小的系统。(3) 适用于业务处理过程比较简单或不太复杂的系统。(4) 适用于业务需求相对较为确定(不一定很明确)的系统。(5) 适用于具有较丰富系统开发经验的人员采用。2.5面向对象方法主张从客观世界固有的事物出发来构造系统,提倡用人类在现实生活中常用的思维方法来认识、理解和描述客观事物,强调最终建立的系统能够映射问题域,也就是说,系统中的对象以及对象之间的关系能够如实地反映问题域中固有事物及其关系。2.5.1面向对象方法的基本思想传统开发方法存在问题

1.软件重用性差

重用性是指同一事物不经修改或稍加修改就可多次重复使用的性质。软件重用性是软件工程追求的目标之一。

2.软件可维护性差

软件工程强调软件的可维护性,强调文档资料的重要性,规定最终的软件产品应该由完整、一致的配置成分组成。在软件开发过程中,始终强调软件的可读性、可修改性和可测试性是软件的重要的质量指标。实践证明,用传统方法开发出来的软件,维护时其费用和成本仍然很高,其原因是可修改性差,维护困难,导致可维护性差。

3.开发出的软件不能满足用户需要

用传统的结构化方法开发大型软件系统涉及各种不同领域的知识,在开发需求模糊或需求动态变化的系统时,所开发出的软件系统往往不能真正满足用户的需要。

用结构化方法开发的软件,其稳定性、可修改性和可重用性都比较差,这是因为结构化方法的本质是功能分解,从代表目标系统整体功能的单个处理着手,自顶向下不断把复杂的处理分解为子处理,这样一层一层的分解下去,直到仅剩下若干个容易实现的子处理功能为止,然后用相应的工具来描述各个最低层的处理。因此,结构化方法是围绕实现处理功能的“过程”来构造系统的。然而,用户需求的变化大部分是针对功能的,因此,这种变化对于基于过程的设计来说是灾难性的。用这种方法设计出来的系统结构常常是不稳定的,用户需求的变化往往造成系统结构的较大变化,从而需要花费很大代价才能实现这种变化。2.5.2面向对象开发方法的基本概念对象面向对象开发方法的中心类属性事件消息对象(Object)就是客观世界中的任何事物在计算机程序世界里的抽象表示,或者说,是现实世界中个体的数据抽象模型。对象是一个封闭体,它由一组数据和施加于这些数据上的一组操作构成。对象由这样几个部分组成:对象的标识、数据、操作和接口。(1) 标识:即对象的名称,用来在问题域中与其他对象相区别。(2) 数据:描述对象属性的存储或数据结构,表明了对象的一种状态。(3) 操作:即对象的行为,分为两类,一类是对象自身承受的操作,即操作结果修改了自身原有属性状态;另一类是施加于其他对象的操作,即将产生的输出结果作为消息发送的操作。(4) 接口:主要是指对外接口,是指对象受理外部消息所指定操作的名称集合。1)对象类(Class)又称对象类,是具有相同或相似结构、操作和约束规则的对象组成的集合,是一组对象的属性和行为特征的抽象描述,或者说,是具有共同属性、共同操作方法(性质)的对象集合。类中最基础的称为基类,是其他子类派生的基础。子类是在继承基类的基础上,又增加一些新的特性与功能构成的。类由类说明和类实现两部分组成:类说明描述了对象的状态结构、约束规则和可执行的操作,定义了对象类的作用和功能;类实现是由开发人员研制实现对象类功能的详细过程以及方法、算法和程序。2)类属性(Attribute)就是对象的特性,是对象外观及行为的特征。对象的属性可以在建立对象时从其所属的类(或子类)继承,也可以在对象创建或运行时进行修改与设置。3)属性举例事件(Event)是对象可以识别和响应的行为与操作,它一般由用户或系统来触发。事件是固定的,用户不能再创建新的事件。4)事件客观世界的各种事物都不是孤立的,而是相互联系、相互作用的。实际问题中的每一个个体也是相互联系、相互作用的,个体之间的相互联系反映了问题的静态结构,相互作用则反映了问题的动态变化。为能够反映出对象或对象类之间的相互联系和相互作用,就需要在他们之间发布、传递消息(Message),即向其他对象发出服务请求。5)消息所谓抽象性是指在分析问题时,强调实体的本质、内在属性而忽略一些无关紧要的细节,它是分析问题的基本方法。其作用如下。(1)使用抽象性仅涉及应用域的概念而不必涉及问题域的求解,因此可以尽可能避免过早地考虑实现的细节。(2)合理地使用抽象性,可以在分析、高级设计、程序结构、数据库结构以及文档化等阶段和过程中使用统一模型(对象模型)。(3)抽象性可以帮助我们明确对象是什么、对象做什么,而不必考虑对象怎么做。

2.5.3面向对象开发方法的特性1)抽象性比如,我们要设计一个学生成绩管理系统,考察学生这个对象时,我们只关心他的班级、学号、成绩等,而不用去关心他的身高、体重这些信息。

面向对象思想采纳了事物分类的层次思想,在描述类时,某些类之间具有结构和行为的共性。利用类之间的继承关系,可以简化对类的描述。利用继承机制可以提高软件代码的可重用性。2)继承性比如说,所有的Windows应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不同的子类,各个子类添加了不同的特性。在面向对象方法中,多态并不是指一个对象类有多种形态或状态,而是指同一个操作在不同的类中有不同的实现方法和不同的执行结果,即同一消息发送到不同类或对象可导致不同的操作结果。多态性可定义为:“一个类中定义的属性或操作被继承之后,可以具有不同的数据类型或表现出不同的行为。这使得同一属性或操作在父类和子类(或子类的子类,可多次继承)中具有不同的语义。”3)多态性比如同样的加法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编辑-粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。封装是一种信息隐藏技术,对象内部对用户是隐藏的,不可直接访问;用户只能见到对象封装界面上的信息,通过对象的外部接口访问对象。用户向对象发送消息,对象根据收到的消息调用内部方法作出响应。封装的目的在于将对象的使用者和设计者分开,使用者无须知道对象内部实现的细节,只需要知道对象接收的消息。4)封装性1.面向对象方法开发过程的四个阶段(1) 系统调查和需求分析:对系统面临的问题和用户的开发需求进行调查研究。(2) 分析问题的性质和求解问题:在复杂的问题域中抽象识别出对象及其行为、结构、属性和方法。这一个阶段一般称为面向对象分析(ObjectOrientedAnalysis,OOA)。(3) 整理问题:对分析的结果进一步抽象、归类整理,最终以范式的形式确定下来,即面向对象设计(ObjectOrientedDesign,OOD)。(4) 程序实现:使用面向对象的程序设计语言将其范式直接映射为应用程序软件,即面向对象实现(ObjectOriented,OOP),它是一个直接映射过程。2.OOA方法面向对象分析的关键是识别出问题域内的对象,并分析他们相互之间的关系,最终建立起问题域的正确模型。通常,面向对象分析过程从分析陈述用户需求的文件开始。需求陈述的内容包括:问题范围、功能需求、性能需求、应用环境及假设条件等。2.5.4面向对象方法的开发过程面向对象分析大体上按照下列顺序进行:建立功能模型、建立对象模型、建立动态模型以及定义服务。1) 建立功能模型功能模型从功能角度描述对象属性值的变化和相关的函数操作,表明了系统中数据之间的依赖关系以及有关的数据处理功能,它由一组数据流图组成。其中的处理功能可以用IPO图、伪码等多种方式进行进一步描述。建立功能模型首先要画出顶层数据流图,然后对顶层图进行分解,详细描述系统加工、数据变换等功能,最后描述图中各个处理的功能。2) 建立对象模型复杂问题(大型系统)的对象模型由五个层次组成:主题层(也称为范畴层)、类-&-对象层、结构层、属性层和服务层,如图2-11所示。图2-11大型系统的对象模型组成3) 建立动态模型当问题涉及交互作用和时序时(例如用户界面及过程控制等),建立动态模型则是很重要的。建立动态模型的第一步是编写典型交互行为的脚本。脚本是指系统在某一执行期间内出现的一系列事件。编写脚本的目的是保证不遗漏重要的交互步骤,它有助于确保整个交互过程的正确性和清晰性。第二步从脚本中提取出事件,确定触发每个事件的动作对象以及接受事件的目标对象。第三步排列事件发生的次序,确定每个对象可能有的状态以及状态之间的转换关系。第四步,比较各个对象的状态,检查它们之间的一致性,确保事件之间的匹配。4) 定义服务通常在完整地定义每个类中的服务之前,需要先建立起动态模型和功能模型,通过对这两种模型的研究,能够更正确、更合理地确定每个类应该提供哪些服务。正如前面已经指出的那样,“对象”是由描述其属性的数据及可以对这些数据施加的操作(即服务)封装在一起构成的独立单元。因此,为建立完整的动态模型,既要确定类的属性,又要定义类的服务。在确定类中应有的服务时,既要考虑类实体的常规行为,又要考虑在本系统中特殊需要的服务。3.OOD方法从面向对象分析到面向对象设计,是一个逐渐扩充模型的过程。或者说,面向对象设计就是用面向对象观点建立求解域模型的过程。1) 模块化2) 抽象3) 信息隐藏4) 弱耦合5) 强内聚6) 可重用4.OOP方法面向对象实现主要包括两项工作:一是把面向对象设计结果翻译成用某种程序语言书写的面向对象程序;二是测试并调试面向对象的程序。1) 面向对象的语言与非面向对象的语言应该选用面向对象语言还是非面向对象语言,关键不在于语言功能的强弱。选择编程语言的关键因素是语言的一致的表达能力、可重用性及可维护性。从面向对象观点来看,能够更完整、更准确地表达问题和语义的面向对象语言的语法是非常重要的。一般来说,纯面向对象语言着重支持面向对象方法研究和快速原型的实现,而混合型面向对象语言的目标则是提高运行速度和使传统程序员容易接受面向对象思想。成熟的面向语言通常都提供丰富的类库和强有力的开发环境。2) 程序设计风格良好的程序设计风格对保证程序质量来说是非常重要的。良好的程序设计风格对面向对象实现来说尤其重要,不仅能明显减少维护或扩充的开销,而且有助于在新项目中重用已有的程序代码。良好的面向对象程序设计风格,既包括传统的程序设计风格和准则,也包括为适应面向对象方法所特有的概念(例如继承性)而必须遵循的一些新准则。3) 面向对象测试一般来说,对面向对象软件的测试可分为下列4个层次进行。(1) 算法层。(2) 类层。(3) 主题层。(4) 系统层。1.面向对象方法的优点(1) 是一种全新的系统分析设计方法(对象、类、结构属性和事件)。(2) 适用于各类信息系统的开发。(3) 实现了对客观世界描述到软件结构的直接转换,大大减少了后续软件开发量。(4) 开发工作的重用性、继承性高,降低重复工作量。(5)缩短了开发周期。2.面向对象方法的缺点(1) 需要一定的软件支持环境。(2) 不太适宜大型的MIS开发,若缺乏整体系统设计划分,易造成系统结构不合理、各部分关系失调等问题。(3) 只能在现有业务基础上进行分类整理,不能从科学管理角度进行理顺和优化。(4) 初学者不易接受、难学。2.5.5面向对象方法的优缺点2.6计算机辅助软件工程20世纪80年代,计算机图形处理技术和程序生成技术的出现,缓和了系统开发过程中的系统分析、系统设计和开发“瓶颈”,即集图形处理技术、程序生成技术、关系数据库技术和各类开发工具于一身的计算机辅助软件工程(ComputerAidedSoftwareEngineering,CASE)工具代替了人在信息处理领域中的重复性劳动。2.6.1CASE的基本思路在前面所介绍的任何一种系统开发方法中,如果自对象系统调查后,系统开发过程中的每一步都可以在一定程度上形成对应关系,那么就可以完全借助专门研制的软件工具来实现上述的系统开发过程。这些系统开发过程中的对应关系包括:结构化方法中的业务流程分析——数据流程分析——功能模块设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论