中 国 地 质 大 学
资 源 信 息 系 统
第二章 资源信息系
统的开发方法
资源信息系统China University of Geosciences
目 录
第 二 节 地矿资源勘查信息系统的开发方法2
第 一 节 地矿勘查信息系统的基本概念31
第三节 地矿资源勘查信息系统的开发过程3
资源信息系统China University of Geosciences
本节内容提要
? 系统开发的系统开发策略与开发计划
? 接收式的开发策略
? 直接式的开发策略
? 迭代式的开发策略
? 实验式的开发策略
?第二节 地矿资源勘查信息系统的开发过程
?系统开发的基本方法 (要求掌握各种方法的基
本细想,实施步骤,优缺点和适用范围)
? 1.生命周期法( Life Cycle Approach )
? 2.原型法( Prototyping Approach)
? 3.面向对象法( Object-Oriented Approach)
资源信息系统China University of Geosciences
参考书目
?张海潘,, 软件工程导论,,清华大学出
版社,1998。
?邝孔武、王晓敏,, 信息系统分析与设
计,,清华大学出版社,1998。
?黄敬仁,, 系统分析,,清华大学出版社,
2002。
资源信息系统China University of Geosciences
资源勘查领域的
信息管理与处理技术
第二章 资源勘查信息系统开发方法
第二节 资源勘查信息系统的开发方法
资源信息系统China University of Geosciences
一,资源信息系统开发概述
?资源信息系统开发的阶段与步骤
? 1.系统战略规划
? 2.项目论证(可行性分析)
? 3.用户需求调查
? 4.系统分析
? 5.系统设计
? 6.系统实现
? 7系统测试
? 8.系统维护和评价
(一 ),资源信息系统开发的阶段与步骤
资源信息系统China University of Geosciences
?系统开发要搞清楚 5个 W即 what,why,who,where,
when。 即要做什么, 为什么要做, 由谁来做, 在什么
地方做和什么时候做 。
?这里首先讲 what,就是说要确定做什么 。 系统开发的
最大错误就是没弄清问题就动手去做 。 结果在错误的
时间, 错误的地点做了错误的事, 不是前功尽弃, 也
是得不偿失 。 因而识别问题是最最重要的事 。
?过去进行数据处理系统的分析时一般提调查信息需求 。
在今天管理信息系统和网络时代, 这已显得不够 。 只
调查现时的或中低层人员的信息需求, 往往做出的系
统只是手工作业的计算机化, 只能减轻中低层管理人
员的负荷, 对提高效益和效率的作用甚少 。
?当代信息系统的开发, 均要首先了解 企业目标, 现行企业系
统的问题, 企业的信息战略, 然后才是如何用信息技术解决
这些问题 。 要识别的问题首先是 管理上的问题, 例如企业战
略优势下滑, 产品滞销, 生产周期过长, 成本过高, 资产短
缺, 人浮于事, 机构臃肿, 行政效率低下等, 然后才是信息
技术问题 。 例如数据混乱, 处理速度慢, 设备老化等 。
?识别上述问题以后, 还要了解这些需求的确实程度 。 现代系
统开发均是要捕捉未来的信息和信息技术的需求 。 这些需求
多数不是由管理人员直接说出的, 而是由系统分析员科学启
发以后, 激起管理人员的新需求 。 所以说现代的系统分析已
由, 满足顾客需求, 变到, 使顾客满意, 。 满足需求是被动
的, 使顾客满意则是主动的 。 系统分析员识别问题要有变革
现实的主动性 。
?识别确定程度, 要识别信息需求的确定程度和稳定程度, 处
理方式的确定和稳定程度, 以及管理人员思想组织的确定和
稳定程度 。
?总之, 问题识别的越准越清楚, 系统开发成功的概率将会越
大 。
资源信息系统China University of Geosciences
可行性研究
?可行性 ( feasibility) 研究是指在当前组织内外
的具体条件下, 系统开发工作必须具备资源和
条件, 看其是否满足系统目标的要求 。 在系统
开发过程中进行可行性研究, 对于 保证资源的
合理使用, 避免浪费和一些不必要的失败, 都
是十分重要的 。
?系统开发可行性研究包括如下几方面:
? 1,目标和方案的可行性
? 2,技术方面的可行性
? 3,经济方面的可行性
? 4,社会方面的可行性
资源信息系统China University of Geosciences
?1,目标和方案的可行性
?目标和方案的可行性是指目标
是否明确, 方案是否切实可行,
是否满足组织进一步发展的要
求等等 。
资源信息系统China University of Geosciences
?2,技术方面的可行性
?技术方面的可行性就是根据现有的技术条件, 考虑所提出的要
求能否达到 。 如计算机速度, 容量等能否达到要求, 一般来说,
技术方面的可行性包括如下几个方面:
? (1) 人员和技术力量的可行性 即有多少科技人员, 其技术力量和开发
能力如何, 有没有系统开发的可行性, 如果本单位没人, 有没有同其
它单位合作开发的可能性 。
? (2) 基础管理的可行性 即现有的管理基础, 管理技术, 统计手段等能
否满足新系统开发的要求 。
? (3) 组织系统开发方案的可行性 即合理地组织人, 财, 物和技术力量
并进行实施的技术可行性 。
? (4) 计算机硬件的可行性 包括各种外围设备, 通讯设备, 计算机设备
等的性能是否能满足系统开发的要求, 以及这些设备的使用 。 维护及
其充分发挥效益的可行性 。
? (5) 计算机软件的可行性 包括各种软件的功能能否满足系统开发的要
求, 软件系统是否安全可靠, 本单位对使用, 掌握这些软件技术的可
行性 。 暂时不能被本单位开发人员掌握的技术, 一般应视为不成熟或
是没有可行性的技术 。
? (6) 环境条件以及运行技术方面的可行性 。
资源信息系统China University of Geosciences
?3,经济方面的可行性
?经济方面的可行性主要是从组织的人力、财力、
物力三方面来考查系统开发的可行性。如有多
少资源可以利用,有多少资金可以投入,应该
建立什么样规模的系统,资金分几批投入时投
资效果最好等等。另一个方面就是要研究系统
开发后可能带来的经济效益,信息系统的经济
效益有两个方面:一是直接效益;二是间接效
益。
资源信息系统China University of Geosciences
?4,社会方面的可行性
?社会方面的可行性主要是指一些社会的或者
人的因素对系统的影响 。 如由于某些特殊的
原因 ( 如体制问题, 安全保密问题, 制度问
题等等 ), 不能向系统提供运行所必须的条
件 。 另外由于信息系统的实施将会给组织各
方面带来很多变化, 如工作方式的变化, 管
理模式的变化, 以及人的权力, 作用, 职责,
工作范围的变化等, 都会对信息系统的开发
和开发后的运行造成影响 。
资源信息系统China University of Geosciences
(二 ),系统开发的原则
?系统开发所应遵循的原则一般包括:
?(1) 领导参加的原则 信息系统的开发是一项庞大的系
统工程, 它涉及到组织日常管理工作的各个方面,
所以领导出面组织力量, 协调各方面的关系是开发
成功的首要条件 。
?(2) 优化与创新的原则 信息系统的开发不能模拟目
的管理模式和处理过程, 它必须根据实际情况和科
学管理的要求加以优化与创新 。
?(3) 充分利用信息资源的原则 即数据尽可能共享,
减少系统的输入输出, 对已有的数据, 信息作进一
步的分析处理, 以便充分发挥深层次加工信息和作
用 。
资源信息系统China University of Geosciences
(二 ),系统开发的原则
?(4)实用和时效的原则 即要求从制定系统开
发方案到最终的信息系统都必须是实用的,
及时的和有效的 。
?(5)规范化原则 即要求按照标准化, 工程化的
方法和技术来开发系统 。
?(6)发展变化的原则 即充分考虑到组织和管理
模式可能发生的变化, 使得系统具有一定适
应环境变化的能力 。
资源信息系统China University of Geosciences
(三 ),系统开发策略
?在进行了上述工作之后, 下一步将要考虑的
是系统开发策略的选择以及制定出系统的开
发计划 。
?系统开发策略目前主要有四种 。
? 1,接收式的开发策略
? 2,直接式的开发策略
? 3,迭代式的开发策略
? 4,实验式的开发策略
资源信息系统China University of Geosciences
1,接收式的开发策略
经过调查分析, 认为用户对信息需求
是正确的, 完全的和固定的, 现有的
信息处理过程和方式也是科学的, 这
时可采用接收式的开发策略 。 即根据
用户需求和现有状况直接设计编程,
过渡到新系统 。 这种策略主要适用于
主系统规模不大, 信息和处理过程结
构化程度高, 用户和开发者又都很有
经验的场合 。
资源信息系统China University of Geosciences
2,直接式的开发策略
?是指经调查分析后, 即可确定用户需求和
处理过程, 且以后不会有大的变化, 则系
统的开发工作就可以按照某一种开发方法
的工作流程 ( 如结构化系统开发方法中系
统开发生命周期的流程等等 ), 按部就班
的走下去, 直至最后完成开发任务 。 这种
策略对开发者和用户要求都很高, 要求在
系统开发之前就完全调查清楚实际问题的
所有状况和需求 。
资源信息系统China University of Geosciences
3,迭代式的开发策略
?是指当问题具有一定的复杂性和难度,
一时不能完全确定时, 就需要进行反
复分析, 反复设计, 随时反馈信息,
发现问题, 修正开发过程的方法 。 这
种策略一般花费较大, 耗时较长, 但
对用户和开发者的要求较低 。
资源信息系统China University of Geosciences
4,实验式的开发策略
?是指当需求的不确定性很高时, 一时无
法制定具体的开发计划, 则只能用反复
试验的方式来做 。 原型方法就是这种开
发策略的典型代表 。 这种策略一般需要
较高级的软件支撑环境, 且对大型项目
在使用上有一定的局限性 。
资源信息系统China University of Geosciences
?系统开发计划主要是针对已确定的开发策略, 选
定相应的开发方法 。
?开发计划主要是制定系统开发的工作计划, 投资
计划, 进度计划, 资源利用计划 。 开发计划一般
多是根据具体问题, 具体情况而定, 没有什么统
一的模式 。 在 一般 情 况下, 我们 常 用甘 特
( Gaut) 图来记载和描绘开发计划的时间, 进
度, 投入和工作顺序之间的关系 。
?经改造后的甘特图如下所表示 。 它的横坐标表示
开发阶段, 纵坐标表示人员的工作投入 。
(四 ),系统开发计划
资源信息系统China University of Geosciences
Caut 图
资源信息系统China University of Geosciences
(五 ),系统开发前的准备工作
?搞好系统开发前的准备工作是信息系统开发的前提条件, 系统
开发前的准备工作一般包括 基础准备和人员组织准备 两部分 。
? 1,基础准备工作
? 资金准备
? 开发软硬件环境准备
? 数据管理准备:做好基础数据管理工作, 严格计量程序, 量化手段,
检测手段和数据统计分析渠道 。
? 资料准备:数据, 文件, 报表的统一化 。
? 2,人员组织准备
? ·领导是否参与开发是确保系统开发能否成功的关键因素 。
? ·建立一支由系统分析员, 管理岗位业务人员和信息技术人员组成的
研制开发队伍 。
? ·明确各类人员 ( 系统分析员, 企业领导, 业务管理人员, 程序员,
计算机软, 硬件维护人员, 数据录人员和系统操作员等 ) 的职责 。
资源信息系统China University of Geosciences
3.资源信息系统的开发方法
资源信息系统的,开发” 与,建造”
?【 资源信息系统的开发 】 是指软件开发者根据某
一专业 (或行业 )领域的用户需求,通过对信息系统
基础软件 (DBS和 GIS等 )进行再开发 (或称为二次开
发 ),从而建立一个具有一定通用性的高功能 RIS专
用软件的过程和全部工作。(软件开发)
?【 资源信息系统的建造 】 是指用户根据本单位资
源信息管理和处理的实际需求,选择并利用适宜的
专用 RIS软件,来具体地建立一个适合于本单位使用
的点源信息系统的过程和全部工作。(工程实施)
资源信息系统China University of Geosciences
?资源信息系统的开发是一项复杂的系统工程,
必须从系统的观点出发,按照系统发展的客观规
律进行作业。从数据库诞生以来的 30多年中,人
们通过大量的实践,探索和发展了许多指导信息
系统开发的理论和方法,如 结构化生命周期法、
企业系统规划法、战略数据规划法、原型法和面
向对象的分析及设计法 等。
?正确的开发策略和方法是提高信息系统开发质
量和成功率、降低开发费用的基本保证。
3.资源信息系统的开发方法
资源信息系统China University of Geosciences
?按照系统的 分析要素, 可以把开发
方法分为三类:
?① 面 向 处 理 方 法 ( processing
oriented,简称 PO) 。
?② 面向数据方法 ( data oriented,
简称 DO) 。
?③ 面 向 对 象 的 方 法 ( object
oriented,简称 OO) 。
3.1开发方法分类
资源信息系统China University of Geosciences
3.1 开发方法分类
?从系统工程的角度分为:
? 1.生命周期法( Life Cycle
Approach )
? 2.原型法( Prototyping Approach)
? 3.面向对象法( Object-Oriented
Approach)
资源信息系统China University of Geosciences
?【 结 构 化 系 统 开 发 方 法 】 ( Structured
system development methodologies), 亦
称 SSA& D (structured system analysis and
design ) 或 SADT( structured analysis
and design technologies) 是结构化分析和
结构化设计方法的简称, 是自上向下结构化方
法, 工程化的系统开发方法和生命周期方法的
结合 。
?该法出现于 70年代, 是迄今为止开法方法中应
用最普遍, 最成熟的一种 。
3.2 结构化生命周期法
资源信息系统China University of Geosciences
3.2.1 结构化系统开发方法的基本思想
?结构化方法的基本思想是把信息系统看成是功能模
块的集合, 这些功能模块由一定的系统结构相联系 。
其分析过程是一个自顶而下的功能分解过程, 而设
计过程是一个自顶向下的功能合成过程 。
?有利于把一个复杂的大系统分解成许多子系统来处
理 。
?结构化方法的着眼点在于一个信息系统需要什么样
的加工方法和过程, 并把数据结构和处理方式截然
分开, 用过程抽象来应付系统的要求 。
资源信息系统China University of Geosciences
3.2,2 结构化开发方法的特点
?1)预先明确用户的要求, 根据用户需求来设计
系统 ( 用户至上 )
强调直接为用户服务,要求以用户需求为系统设计的出
发点,而不是以设计人员的主观想象为依据。因此,本
法将需求调查作为系统分析的前提,并且要求在未明确
用户需求之前,不能进行下一阶段的工作,以保证工作
质量和以后各阶段开发的正确性。需求的预先定义,使
系统开发减少了盲目性。
资源信息系统China University of Geosciences
?2) 自顶向下来设计或规划信息系统
结构化生命周期法着眼于全局,从维护系统总体效
益的角度来设计或规划系统,保证了系统内数据和信息
的完整性、一致性;注意系统内部或子系统之间的有机
联系和信息交流,并且努力防止系统内部数据的重复存
贮和处理,从而大大地减少了数据的冗余量,保证了系
统运行的有效性。
3.2,2 结构化开发方法的特点
资源信息系统China University of Geosciences
?3) 严格按阶段进行开发
该法将系统开发的生命周期划分为若干个阶段,
每个阶段都规定了明确的任务和目标,进而将各个阶段
划分为若干项工作和步骤。这种有序的安排,不仅条理
清楚,便于计划管理和控制,而且有利于后续工作的展
开,基础扎实,不易出现返工现象。
3.2,2 结构化开发方法的特点
资源信息系统China University of Geosciences
3.2,2 结构化开发方法的特点
?4) 工作文档标准化和规范化
该法将系统开发的生命周期划分为若干个阶段,每
个阶段都规定了明确的任务和目标,进而将各个阶段划
分为若干项工作和步骤。这种有序的安排,不仅条理清
楚,便于计划管理和控制,而且有利于后续工作的展开,
基础扎实,不易出现返工现象。
资源信息系统China University of Geosciences
?5) 运用系统的分解和综合技术,使复杂的系统简单
结构化方法的基本思想是把信息系统看成是由一定的系
统结构相联系的功能模块集合。
自顶而下地将一个复杂的大系统,分解为一系列相互联系
而又相对独立的子系统和模块,使对象简单化,便于建模、设
计、开发和实施
可以使系统的设计和实施过程,成为一个自下而上的功能
合成过程;从而地将子系统及其功能模块综合成完整的系统以
体现总体功能。
3.2,2 结构化开发方法的特点
资源信息系统China University of Geosciences
?6) 强调阶段成果的审定和检验
进行生命周期的阶段划分,目的是尽量使任务单一化
和分工明确化,增强系统开发的有序性,并且减少错误的传
播。为此,要求加强阶段成果的审定和检验,及时发现并清
除系统中的隐患,弥补各阶段工作的不足与过失。根据结构
化生命周期法的建模原则,只有得到用户、管理人员和专家
认可的阶段成果,才能作为下一阶段工作的依据。
3.2,2 结构化开发方法的特点
资源信息系统China University of Geosciences
3.2,3,系统开发的生命周期
?用结构化系统开发方法开
发一个系统, 将整个开发
过程划分为五个首尾相连
接的阶段, 一般称之为系
统开发的生命周期 ( life
cycle) 。
一般信息系统的生命周期
系统分析 系统设计 系统开发 系统维护系统调查
资源信息系统China University of Geosciences
资源信息系统China University of Geosciences
3.2.4 系统开发的过程描述
1) 系统开发准备阶段
在筹划建立资源信息系统或者现行系统不能适应新形势
要求而着手开发新系统之前,用户单位的领导首先应当
选派有关人员进行初步调查和论证,然后组成系统开发
领导小组,进行宏观得规划,规定开发目标,时间进度
并制定初步开发计划。
资源信息系统China University of Geosciences
2)系统调查 (可行性研究 )阶段
?在这一阶段中,系统分析员采用各种方式,调查用户的
业务工作现状和数据现状,搞清系统的界限、组织分工、
业务流程、资源及薄弱环节等,并且用一系列相关图表加
以表示。
?在此基础上,进行需求分析,同时结合系统开发的经费
来源、社会效益与经济效益、政策因素与法律约束、用户
的组织机构和隶属关系等方面进行可行性综合分析。然后
与用户协商讨论,提出对系统目标的初步设想和论证,编
写并提交可行性报告。
资源信息系统China University of Geosciences
3) 系统分析阶段
所谓系统分析,是指在建立新的信息系统
之前或之初,从系统观念出发,应用各种技术方
法和手段,对系统的目的、目标、结构、功能和
信息工作流程等进行全面而深入的分析和评价,
找出存在的问题及其产生的原因,并根据现时的
目标需求和所处的环境条件,拟定出系统模型及
解决问题的可行性方案。
资源信息系统China University of Geosciences
4) 系统设计阶段
?系统设计是信息系统开发的核心,其基本任务是把
系统分析阶段提出的逻辑模型变成系统的物理模型,
即按照系统分析阶段所确定的的目标和逻辑模型,具
体地设计出运行效率高、适应性强、可靠性高且经济
实用的系统实施方案和应用软件。系统设计阶段可划
分为总体设计和详细设计两个亚阶段。
资源信息系统China University of Geosciences
?5) 系统实现阶段
系统实现是把系统的物理模型付诸实际运行的过程。其基
本任务是:
?① 制定实施计划、组织实施队伍、筹措硬软件及配套设
施;
?② 重新组织信息流程、修订业务规程;
?③ 程序编制与调试;
?④ 系统平台 (硬、软件 )的安装与调试;
?⑤ 信息系统的整体调试;
?⑥ 培训上岗人员、整理数据;
?⑦ 数据库与数据文件的实际加载;
?⑧ 试运行、评价与验收。
资源信息系统China University of Geosciences
6) 系统维护阶段
?信息系统不仅具有复杂的结构,而且具有显著的时限
性。
?任何一个企业和单位的业务活动与管理活动总是随着
系统的目标、环境及自身条件的变化而不断变化和发展
的。
?为了适应这种变化,一方面,信息系统开发时必须留
下发展的余地,另一方面也必须不断地地加以改进和更
新。这就需要进行系统维护。
资源信息系统China University of Geosciences
3.2.5 结构化系统开发方法的优缺点
? 优点:强调系统开发过程的整体性和全局性,强
调在整体优化的前提下来考虑具体的分析设计问
题,即自上向下的观点。它强调的另一个观点是
严格地区分开发阶段,强调一步一步地严格地进
行系统分析和设计,每一步工作都及时地总结,
发现问题及时地反馈和纠正。从而避免了开发过
程的混乱状态,是一种目前广泛被采用的系统开
发方法。
资源信息系统China University of Geosciences
? 最突出缺点是它的起点太低,所使用的工具落后(主要
是手工绘制各种各样的分析设计图表),致使系统开发
周期过长,带来了一系列的问题(如在这段漫长的开发
周期中,原来所了解的情况可能发生较多的变化等)。
? 这种方法要求系统开发者在调查中就充分地掌握用户需
求、管理状况以及预见可能发生的变化,这不大符合人
们循序渐进地认识事物的规律性。这样的系统一旦完成,
往往不能要求做很大的变动。因此在实际工作中实施有
一定的困难。
? 适用性,适用于大型、管理模型相对确定的系统。
资源信息系统China University of Geosciences
?【 原型方法 】 是 80年代随着计算机软件技术的发展,
特别是在关系数据库系统 ( RDBS,relational data
base system), 第 4代程序生成语言 ( 4GL,4th
generation language) 和各种系统开发生成环境产
生的基础之上, 提出的一种从设计思想, 工具, 手段
都全新的系统开发方法 。
?与前面介绍的结构化方法相比, 它扬弃了那种一步步
周密细致地调查分析, 然后逐步整理出文字档案, 最
后才能让用户看到结果的繁琐作法 。 原型法一开始就
凭借着系统开发人员对用户要求的理解, 在强有力的
软件环境支持下, 给出一个实实在在的系统原型, 然
后与用户反复协商修改, 最终形成实际系统 。
3.3 原型方法
资源信息系统China University of Geosciences
?首先用户提出开发要求, 开
发人员识别和归纳用户要求,
根据识别, 归纳的结果, 构
造出一个原型 ( 即不完善的
一个初步系统 ) ;
?然后开发人员同用户一道评
价这个原型 。 如果根本不行,
则回到第三步重新构造原型;
如果不满意, 则修改原型,
直到用户满意为止;
?满意后就开始系统试运行,
进入系统运行和维护阶段 。
?3.3.1 原型方法的工作流程
资源信息系统China University of Geosciences
? 从上述流程来看, 原型方法无论从原理到流程都是十分简单的, 并无任何
高深的理论和技术, 但为什么会倍受推崇, 在实践中获得了巨大的成功呢?
我们认为与结构化方法相比, 原型方法具有如下几方面的特点 。
? ( 1) 从认识论的角度来看, 原型方法更多地遵循了人们
认识事物的规律, 因而更容易为人们所普遍接受, 这主
要表现在:
? 人们认识任何事物都不可能一次就完全了解, 并把工作做得
尽善尽美 。
? 认识和学习的过程都是循序渐进的 。
? 人们对于事物的描述, 往往都是受环境的启发而不断完善的 。
? 人们批评指责一个已有的事物, 要比空洞地描述自己的设想
容易得多, 改进一些事物要比创造一些事物容易得多 。
?3.3.2 原型法的特点
资源信息系统China University of Geosciences
? ( 2) 原型方法将模拟的手段引入系统分析的初期阶段, 沟
通了人们的思想, 缩短了用户和系统分析人员之间的距离,
解决了结构化方法中最难于解决的一环 。 这主要表现在:
? 所有问题的讨论都是围绕某一个确定原型而进行的, 彼此
之间不存在误解和答非所问的可能性, 为准确认识问题创
造了条件 。
? 有了原型后才能启发人们对原来想不起来或不易准确描述
的问题有一个比较确切的描述 。
? 能够及早地暴露出系统实现后存在的一些问题, 促使人们
在系统实现之前就加以解决 。
? ( 3) 充分利用了最新的软件工具, 摆脱了老一套工作方法,
容易复用已有得软件成果, 使系统开发的时间, 费用大大
地减少, 效率, 技术等方面都大大地提高 。
资源信息系统China University of Geosciences
? 原型方法有很多长处, 有很大的推广价值 。 但必须指出, 它的推广应用必
须要有一个强有力的软件支持环境作为背景, 没有这个背景它将变得毫无
价值 。 一般认为原型方法所需要的软件支撑环境主要有:
? 一个方便灵活的关系数据库系统 ( RDBS)
? 一个与 RDBS相配套的方便灵活的数据字典, 它具有存储所有实体的功
能 。
? 一套与 RDBS相对应的快速查询系统, 能支持任意非过程化的 ( 即交互
定义方式 ) 组合条件查询 。
? 一套高级的软件工具 ( 如 4GL或信息系统开发生成环境等等 ) 用以支
持结构化程序, 并且允许采用交互的方式迅速地进行书写和维护, 产
生任意程序语言的模块 ( 即原型 ) 。
? 一个非过程化的报告或屏幕生成器, 允许设计人员详细定义报告或屏
幕输出样本 。
? 软件的 组件, 构件, 复用件库 。 ( 原型库 )
?3.3.3 软件支持环境
资源信息系统China University of Geosciences
?3.3.4 快速原型法的优点及缺点
快速原型法采用设假求真的策略,比结构化生命周期法更
为明智。其优点主要有:
① 开发周期短、费用相对较少;
② 用户的参与更及时、更直接、更富有建设性;
③ 易于改进,因而生命力较强;
④ 易学易用,用户培训时间短。
快速原型法的缺陷:难以直接面对大系统和复杂系统;开
发过程管理困难,如果用户配合不好会拖延开发进程;用
户易于将早期所看到原型错当新系统而缺乏信心;软件人
员易于用原型取代系统分析。
资源信息系统China University of Geosciences
? 适用性 快速原型法比较适合于用户需求不清、管理及业务处
理不稳定、需求经常变化、系统规模较小且较为简单、信息可
以相对分散处理的系统或单位。
?可见原型方法是在信息系统研制过程中的一种简单的模拟
方法, 与最早人们不经分析直接编程时代以及结构化系统
开发时代相比, 它是人类认识信息系统开发规律道路上的
,否定之否定, 。 它站在前者的基础之上, 借助于新一代
的软件工具, 螺旋式地上升到了一个新的更高的起点, 它
,扬弃, 了结构化系统开发方法的某些繁琐细节, 继承了
其合理的内核, 是对结构化开发方法的发展和补充 。 这种
相互补充, 相互促进的系统开发方式将会是今后若干年信
息系统或软件工程中所使用的主要方法之一 。
?3.3.5 快速原型法的适用性
资源信息系统China University of Geosciences
?面向对象系统的开发方法是从 80年代各种面向对象
的程序设计方法 ( 如 Smalltalk,C+ 十等 ) 逐步发
展而来的 。
?【 面对对象方法 】 ( Object Oriented,简称 OO方
法 ) 而是从面向对象的角度为我们认识事物, 进而
开发系统提供了一种全新的方法 。 避免功能分解方
法只能单纯反映管理功能的结构状态, 数据流程模
型 ( data flow diagram,简称 DFD) 只是侧重反映
事物的信息特征和流程, 信息模拟只能被动地迎合
实际问题需要的做法 。
3.4 面向对象的开发方法
资源信息系统China University of Geosciences
?OO方法认为, 客观世界是由各种各样的对
象组成的, 每种对象都有各自的内部状态和
运动规律, 不同的对象之间的相互作用和联
系就构成了各种不同的系统 。
?当我们设计和实现一个客观系统时, 如能在
满足需求的条件下, 把系统设计成由一些不
可变的 ( 相对固定 ) 部分组成的最小集合,
这个设计就是最好的 。 而这些不可变的部分
就是所谓的对象 。
3.4.1 OO方法的基本思想
资源信息系统China University of Geosciences
?对象是 OO方法的主体, 对象有以下特征:
? ( 1) 模块性
? 即对象是一个独立存在的实体, 从外部可以了解它的
功能, 但其内部细节是, 隐蔽, 的, 它不受外界干扰 。
对象之间的相互依赖性很小, 因而可以独立地被其它
各个系统所选用 。
? ( 2) 继承和类比性
? 事物之间都有一定的相互联系, 事物在整体结构中都
会占有它自身的位置 。 在对象之间有属性关系的共同
性, 在 OO方法学中称之为继承性, 即子模块继承了
父模块的属性 。 通过类比方法抽象出典型对象的过程
称之为类比 。
? ( 3) 动态连接性
? 即各种对象之间统一, 方便, 动态的消息传递机制 。
3.4,1 OO方法的基本思想
资源信息系统China University of Geosciences
? 因此, 以对象为主体的 OO方法可以解释为
? ① 客观事物都是由对象 ( object) 组成的, 对象是在原事物基础上抽象的
结果 。 任何复杂的事物都可以通过对象的某种组合结构构成 。
? ② 对象由属性和方法组成 。 属性 ( attribute) 反映了对象的信息特征, 如
特点, 值, 状态等等 。 而方法 ( method) 则是用来定义改变属性状态的
各种操作 。
? ③ 对象之间的联系主要是通过传递消息 ( message) 来实现的, 而传递的
方式是通过消息模式 ( message pattern) 和方法所定义的操作过程来完
成的 。
? ④ 对象可按其属性进行归类 ( class).类有一定的结构, 类上可以有超类
( super class), 类下可以有子类 ( subclass) 。 这种对象或类之间的
层次结构是靠继承关系维系着的 。
? ⑤ 对象是一个被严格模块化了的实体, 称之为封装 ( encapsulation) 。
这种封装了的对象满足软件工程的一切要求, 而且可以直接被面向对象的
程序设计语言所接受 。
资源信息系统China University of Geosciences
? 按照上述思想, 可将用 OO方法开发的工作过程分为四个阶段 。
? ( l) 系统调查和需求分析
? 对系统将要面临的具体管理问题以及用户对系统开发的需求进行调查研究,
即先弄清要干什么的问题 。
? ( 2) 分析问题的性质和求解问题
? 在繁杂的问题域中抽象地识别出对象以及其行为, 结构, 属性, 方法等 。 这
一阶段一般被称之为面向对象分析, 简称为 OOA。
? ( 3) 整理问题
? 即对分析的结果作进一步地抽象, 归类, 整理, 并最终以范式的形式将它们
确定下来 。
? 这一阶段一般被称之为面向对象设计, 简称为 OOD。
? ( 4) 程序实现
? 即用面向对象的程序设计语言将上一步整理的范式直接映射 ( 即直接用程序
语言来取代 ) 为应用程序软件 。 这一阶段一般被称之为面向对象的程序, 简
称为 OOP。
? 下面我们重点看一下 OOA和 OOD所包涵的具体内容 ( 因 OOP是一个直接映
射过程, 故不详细介绍 ) 。
3.4.2 OO方法的开发过程
资源信息系统China University of Geosciences
?面向对象的分析方法, 即 OOA方法 。 在一个系统的开发过程
中进行了系统业务调查以后, 就可以按照面向对象的思想来
分析问题 。 OOA所说的分析与结构化分析有较大的区别 。
OOA所强调的是在系统调查资料的基础上, 针对 OO方法所
需要的素材进行的归类分析和整理, 而不是对管理业务现状
和方法的分析 ( 映射 ) 。
?( l) 处理复杂问题的原则
?用 OOA方法对所调查结果进行分析处理时, 一般依据以下几
项原则 。
? ① 抽象 ( abstraction) ② 封装 ( encapsulation)
? ③ 继承 ( inheritance) ④ 相关 ( association)
?⑤ 消息通信件 (communication with message)
? ⑥ 组织方法 ( method of organization)
?⑦ 比例 ( scale) ⑧ 行为范畴 ( categories of behavior)
映射映射
3.4.3 OOA方法
资源信息系统China University of Geosciences
? 第一步, 确定对象 ( object) 和类 ( class) 。 对象即对数据及其处理方式的抽象,
它反映了系统保存和处理现实世界中某些事物的信息的能力 。 类是多个对象的共同
属性和方法集合的描述, 它包括如何在一个类中建立一个新对象的描述 。
? 第二步, 确定结构 ( structure) 。 这里所说的结构是指问题域的复杂性和连接关
系 。 类成员结构反映了泛化一特化关系, 整体一部分结构反映整体和局部之间的关
系 。
? 第三步, 确定主题 ( subject) 。 即确定事物的总体概貌和总体分析模型 。
? 第四步, 确定属性 ( attribute) 。 即确定数据元素, 可用来描述对象或分类结构
的实例, 可在图中给出, 并在对象的存储中指定 。
? 第五步, 确定方法 ( method) 。 即确定在收到消息后必须进行的一些处理方法:方
法要在图中定义, 并在对象的存储中指定 。 对于每个对象和结构来说, 那些用来增
加, 修改, 删除和选择一个方法本身都是隐含的 ( 虽然它们是要在对象的存储中定
义的, 但并不在图上给出 ), 而有些则是显示的, 如计算费用等 。
?用 OOA五个基本步骤:
资源信息系统China University of Geosciences
?面向对象的设计方法 (OOD)是 OO方法中一个中间过渡环
节 。 其主要作用是对 OOA分析的结果作进一步的规范化
整理, 以便能够被 OOP直接接受 。 在 OOD的设计过程中,
要展开的主要有如下几项工作 。
?( l) 对象定义规格的求精过程
?对于 OOA所抽象出来的对象一&一类以及汇集的分析文档,
OOD需要有一个根据设计要求整理和求精的过程, 使之更
能符合 OOP的需要 。 这个整理和求精过程主要有两个方面:
一是要根据面向对象的概念模型整理分析所确定的对象结
构, 属性, 方法等内容, 改正错误的内容, 删去不必要和
重复的内容等 。 二是进行分类整理, 以便于下一步数据库
设计和程序处理模块设计的需要 。 整理的方法主要是进行
归类, 对类一&一对象, 属性, 方法和结构, 主题进行归
类 。
3.4.4 OOD方法
资源信息系统China University of Geosciences
?( 2) 数据模型和数据库设计
? 数据模型的设计需要确定类一&一对象属性的内容, 消息连接的方式, 系统访问
( access), 数据模型的方法等等 。 最后每个对象实例的数据都必须落实到面向
对象的库结构模型中 。
?( 3) 优化
? OOD的优化设计过程是从另一个角度对分析结果和处理业务过程的整理归纳, 优
化包括对象和结构的优化, 抽象, 集成 。
? 对象和结构的模块化表示 OOD提供了一种范式, 这种范式支持对类和结构的模块
化 。 这种模块符合一般模块化所要求的所有特点, 如信息隐蔽性好, 内部聚合度
( cohesion) 强和模块之间耦合度 ( coupling) 弱等 。
? 抽象表示对明抽象 ( abstraction by specification) 和参数化抽象 ( abstraction
by parameterization) 。
? 集成化使得单个构件有机地结合在一起, 相互支持 。
资源信息系统China University of Geosciences
?OO方法以对象为基础, 利用特定的软件工具直接完成从对象
客体的描述到软件结构之间的转换 。 这是 OO方法最主要的特
点和成就 。
?OO方法解决了传统结构化开发方法中客观世界描述工具与软
件结构的不一致性问题, 缩短了开发周期, 解决了从分析和设
计到软件模块结构之间多次转换映射的繁杂过程, 是一种很有
发展前途的系统开发方法 。
?但是同原型方法一样, OO方法需要一定的软件基础支持才可
以应用, 另外在大型的 MIS开发中如果不经自须向下的整体划
分, 而是一开始就自底向上的采用 OO方法开发系统, 同样也
会造成系统结构不合理, 各部分关系失调等等问题 。 所以 00方
法和结构化方法目前仍是两种在系统开发领域相互依存的, 不
可替代的方法 。
3.4.5,OO方法的特点和面临的问题
资源信息系统China University of Geosciences
?目前这些工具技术的发展主要支持的都是在信息系统开
发的后几个环节, 例如系统实施, 系统设计和系统分析
中各种流程图的绘制等, 这就导致了目前信息系统开发
工作中工作量重心的偏移 。 就国外最新的统计数据来看,
在信息系统开发过程中各环节工作量所占的比重如下表
所示:
阶段 调查 分析 设计 实现
工作量 > 30% > 40% < 20% < 10%
4 各种开发方法的比较
资源信息系统China University of Geosciences
?1,原型方法
?它是一种基于 4GL的快速模拟方法 。 它通过模拟以及对模
拟后原型的不断讨论和修改最终建立系统 。 要想将这样一
种方法应用于一个大型信息系统开发过程中的所有环节是
根本不可能的, 故它多被用于小型局部系统或处理过程比
较简单系统的设计到实现环节 。
?2,面向对象法
?它是一种围绕对象来进行系统分析和系统设计, 然后用面
向对象的工具建立系统的 。 这种方法可以普遍适用于各类
信息系统开发, 但是它不能涉足系统分析以前的开发环节 。
4 各种开发方法的比较
资源信息系统China University of Geosciences
?3,结构化系统开发方法
?只有结构化系统开发方法是真正能较全面支持整个系统
开发过程的方法 。 其它几种方法尽管有很多优点, 但都
只能作为结构化系统开发方法在局部开发环节上的补充,
暂时都还不能替代其在系统开发过程中的主导地位, 尤
其是在占目前系统开发工作量最大的系统调查和系统分
析这两个重要环节 。 这里再一次强调所例举的几种方法
不是相互独立的, 它们经常是可以混合应用的 。
?4.结论 一个复杂的资源信息系统的开发需要
多种方法的合理混合使用 !
资源信息系统China University of Geosciences
可行性研究
现行系统调查
系统分析
系统设计
系统实施
维护及评价
确定基本需求
开发原型
评审、提炼需求
用户满意否?
修正、改进原型


结构化生命周期法
快速原型法
快速原型法与结构化生命周期法结合的系统开发方式
可以把原型的开发过程作为结构化生命周期法开发过程的需求定义阶段,弥补结构化生
命周期法在需求定义阶段存在的或可能产生的困难。一旦需求完全清楚,就可以丢弃各
种原型,采用严格的结构化方法进行开发。
资源信息系统China University of Geosciences
1.资源信息系统开发的一般步骤
?1.项目论证(可行性分析)
?2.用户需求调查
?3.系统分析
?4.系统设计
?5.系统实现
?6系统测试
?7.系统维护和评价


资源信息系统China University of Geosciences
2.资源信息系统开发的一般方法
?1.生命周期法( Life Cycle Approach )
?2.原型法( Prototyping Approach)
?3.面向对象法( Object-Oriented
Approach)
?综合法
?详 细介绍请参阅相关资料


资源信息系统China University of Geosciences
The end
Thanks