第五章 系统开发概述
本章重点
?了解系统开发的基本特点
?了解系统开发的生命周期,以及系统开发
的基本方法、开发方式
?了解系统规划的内容、作用,了解系统可
行性分析的主要内容
一、问题的提出
二、系统开发的指导思想
三、系统开发的认知模型与生命周期
四、系统开发的方法
五、软件流程模型
六、系统开发人员与开发方法
七、系统规划
一、问题的提出
1、实例
上外物流:总裁亲自抓管理信息系统的开发
2、系统开发的主要风险
联想与方正:引进或自主开发?
华夏证券:技术选择与投资决策
投入超计划
系统性能比预期差
未获得预期收益
二、系统开发的指导思想
1、系统工程
1)基本思想
运用信息论、控制论、运筹学等理论和方法,从整体的角度对系统进
行规划、研究、设计、实施和控制的工程技术。
2)基本特征
最优化
系统性
综合性
咨询性
3)霍尔三维结构
社会科学
工程技术
法律
医学
规划阶段
设计阶段
实施阶段
安装阶段
运行阶段
更新阶段




























T( 时间维 )
L( 逻辑维 )
K( 知识维 )
2、信息工程
1)基本思想
詹姆斯 ?马丁,约翰 ?柯林等提出。信息工程包括为建立基于当代数据
系统的计算机化企业所必需的所有相关的学科。
2)基本原理
数据位于现代数据处理的中心
数据是稳定的,处理是多变的
用户必须真正参与开发工作
3、系统开发的特点
1)一把手工程
2)面向管理 管理信息系统与一定的管理思想相联系
管理信息系统的功能设计依赖于管理
3)基于原系统,高于原系统
4)“信息思维”方

5)工程性
6)综合性
知识的综合性
工艺和工程的结合
人机的结合 系统功能的人机分工
系统评价依赖于人
三、系统开发的认知模型与生命周期
1、管理信息系统开发的认知过程与认知模型
1)认知过程
观念世界,
逻辑模型
数据世界,
物理模型
计算机世界,
计算机可
执行模型
现实世界:
问题


根据问题
进行抽象
技术内容增加 根据系统平台进行抽象
利用实用软
件进行描述
现实需求 系统
功能
转换
理解、表达
逻辑模型
数据模型
功能模型
2)认知模型
A,问题域
将问题视为一个系统,通过定义系统,界定组成系统的要素、要素的
相关属性、要素之间的关系、系统的边界等。
B,逻辑模型
对用户需求的理解以模型的形式表达,正确定义系统需求。逻辑模型
与技术实现和系统平台无关。
C,物理模型
将逻辑模型转化为在计算机上表达的模型,为物理模型。物理模型与
采用的信息技术和系统平台有关。
D,计算机可执行模型
根据物理模型所设计的数据库、程序等为计算机可执行模型。
3)实例
某企业采取现款现货的分销方式,通过分销商销售其产品,通过第
三方物流企业运输产品到客户,在全国各地设置特约维修点,免费完成
三包期内的维修服务。要开发及时掌握产品库存、销售及回款情况的管
理信息系统。
A,问题的系统表达
企业销售业务员(姓名、性别、文化程度等)
分销商(名称、合作时间、负责人等)
第三方物流企业(名称、地址、负责人、联系方式、合作时间等)
客户(姓名、联系方式等)
特约维修点(名称、合作时间、负责人等)
要素之间的关系:产品与分销商现款现货,在规定的三包期内免费维修服
务。
问题域:掌握产品库存和销售及回款情况。
B,逻辑模型
D3 产品发货
D2 产品货款
D1 产品库存
XS.1
产品销售
收 款
XS.2
产品销售
发 货
XS.3
产品销售
查 询
入库信息
发货通知
付款
收据
查询
结果
总装
分厂
相关
人员
客户
分销

C,物理模型
产品库存(产品编码,库存数量,库存金额);
产品货款(销售合同号,客户编码,产品编码,货款,付款日期)
产品发货(销售合同,产品编码,数量,发货日期,达到地)
产品销售
输入
合同号
查找合同
是否付款
库存
变更
通知
发货
合同号
合同号 发货标志
发货标志 =1 发货标志 =1
2、管理信息系统开发生命周期
管理信息系统开发周期分为五个阶段:系统规划、系统
分析、系统设计、系统实施、系统维护与评价。
1)系统规划
A,主要活动
定义问题
系统开发的可行性分析
制定项目时间表
分配项目需要的人力资源
B,阶段文档 系统规划报告
2)系统分析
A,主要活动
详细调查,获得问题相关信息
定义系统需求
企业流程重组
建立系统逻辑模型
系统测试要求
B,阶段文档
系统分析
报告
3)系统设计
A,主要活动
设计和集成系统运行平台
设计应用软件体系结构
设计应用软件的模块
设计用户界面
设计系统接口
设计和集成数据库
设计和集成系统的安全、控制
4)系统实施
A,主要活动
编制程序
调试和测试程序
系统转换
培训和编写文档
5)系统维护与评价 数据维护、软件维护、平台维护
B,阶段文档
系统设计
说明书、
平台设计
报告
B,阶段文档
软件设计说明书
测试报告
源程序清单
用户使用说明书
系统验收报告
四、系统开发方法
1、结构化方法
由结构化分析方法( SA),结构化设计方法( SD),结构化程序设计
方法( SP) 组成。
1)结构化分析方法
A,基本思想
要求终端用户参与系统分析
系统分析产生的文档面向多类人员
使用适当的图表描述系统分析的工作成果
采用自顶向下的策略进行系统分析
B,逻辑模型的表达方法
数据流程图 DFD
数据字典 DD
处理逻辑说明
2)结构化设计
遵循黑箱原则、模块化原则,采取结构图,对结构化分析建立的分层
DFD,按照顺序结构、分支结构、循环结构及其组合,设计相互独立、功
能单一的模块,建立系统的模块结构图,并给出模块说明书。
3)结构化程序设计
结构化程序设计由顺序结构、分支结构、循环结构组合而成。
结构化
系统分析
结构化
系统设计
结构化
程序设计
系统分析
SA
系统设计
SD
系统实施
SP
数据流程图
数据字典
E-R模型
结构图
模块说明书
2、面向对象方法
面向对象分析、面向对象设计、面向对象程序设计
1)基本概念
对象 由属性及其操作的描述组成的包。
消息 对象对某种信息的处理要求的描述。
类 代表一组具有共性的对象。
方法 表示类的行为特征,描述类具有规律的行为,描述对象对消息的响应。
2)面向对象分析( OOA)
面向对象分析定义问题中所有的对象,以及描述对象之间如何交互完成任务。
面向对象分析采用类描述语言、类图等表达系统的逻辑模型。
名称
地址
负责人
物流公司 <>
运货通知
名称
地址
负责人
………
取货
运输货物(名称,收货人
姓名,电话,……)
发货 出货
运输的货物
提货通知
物流公司
分销商 客户
3)面向对象设计( OOD)
在一定的语言和系统平台上,细化逻辑模型中的类,增加与系统通信需
要的附加类,考虑与系统实现有关的因素,从数据、控制和交互控制等方面
进行补充描述。
4)面向对象程序设计( OOP)
针对 OOD设计的物理模型,采用一定的程序设计语言或开发工具,完成
对类及对象中各属性的说明,编写代码,生成源程序。
5)面向对象方法的模型表示
Booch法、面向对象建模技术、统一建模语言 UML。
UML是基于实例的面向对象方法,系统逻辑模型包括实例模型、概念模型、
系统行为模型、状态模型。
3、面向对象方法和结构化方法的比较
面向对象方法按照对象或概念来分解问题域,将复杂过程分解成一系列
具有封装、继承、多态的对象;结构化方法将复杂问题分解成一系列层次结
构的子过程,将问题设计成一系列功能相互独立又共享数据的模块。
产品 维修商
分销商
客户服务
人 员
客户
客户服务
人 员
系统














营销管理
信息系统 结构化方法:按功能 /过程分解 面向对象方法:按对
象分解
结构化方法 面向对象法
数据流程图 类层次结构图
数据字典 类组合结构图
E - R 模型 消息流图
结构图
模块说明书
顺序结构 类库
分支结构 对象
循环结构 实例
系统实施
模型
开发阶段
系统分析
系统设计 类库
管理信息系统开发方法总结
五、软件流程模型
1、瀑布模型
瀑布模型在 1970年提出,它覆盖管理信息系统开发的五个阶段,并规定
自上而下,相互衔接的固定次序。
系统可行性研究
系统分析
系统实施
系统设计
系统维护与评价
规格说明冻结
审核:定义的问题与规划
分析说明冻结
审核:逻辑模型
设计说明冻结
审核:物理模型
提交的系统与说明的一致
新的生命周期
主要问题
各阶段划分固定,且有明确的任务和目标
阶段间产生大量的文档,增大系统工作量
瀑布模型呈线性
前阶段的错误传递到后阶段,将使错误扩散、放大
要求用户需求确定且完整。该开发方法周期长,风险大。适用于
目标明确、需求清晰且变化小的管理信息系统。
2、演进式模型
确定关键问题
快速编制程序
运行
修正、增加 修改、运行 放弃
有问题?
增量
开发
Yes
No
主要问题
各阶段同时进行,开发过程不可见,开发困难
从局部到全局,从个别到整体,系统结构设计困难,系统性差
需要特殊的工具和技术
适用性
对大型系统不适用
对有大量运算,逻辑性强的系统不适用
对基础管理不善,信息处理混乱的系统不适用
适合需求较难一次弄清楚,系统规模较小的管理信息系统。
六、系统开发人员与开发方式
1、系统开发人员与项目组的人员结构
1)系统开发人员
信息主管 CIO
项目经理
系统分析员
系统设计员
程序设计员
系统维护人员
数据库管理员
2)项目组人员结构
开发阶段 主要人员
系统可行性研究 C I O,项目经理、系统分析人员
系统分析 系统分析员、终端用户
系统设计 系统设计员、数据库管理员
系统实施 程序设计员、数据库管理员、终端用户
系统维护与评价 系统维护人员、数据库管理员
规划 维护 实施 设计 分析
影响度
人数
2、系统开发方式
1)系统的开发方式
自行开发
联合开发
外包
采购
2)选择开发方式需要考虑的主要因素
企业自身对管理信息系统采取的战略
需要解决问题的特点
相应的专业人才
3、实例
1)背景简介
产品大量库存积压
内部管理效率低
难以应对客户个性化需要
2)开发方式选择
3)实施方案
购买
外包
联合开发
4)系统集成模式
采取联合
方式开发
的系统
采取采购
方式开发
的系统
采取外包
方式开发
的系统
采取联合方式
开发的系统数
据库
采取购买方式
开发的系统数
据库
触发器自动更新:员工基
本信息,财务预算指标 ….,
触发器自动更新:物品进
销存、产品销售、设备 ….,
七、系统规划
1、作用与主要问题
1)作用
确定系统开发的依据
为系统开发筹集资金的依据
与合作单位签定合同的依据
系统验收的依据
2)需要解决的主要问题
1)开发的目的
2)新系统的定界
3)新系统开发的可行性
4)开发采用的技术规范
5)开发的时机和所需的时间
6)开发的方式
2、定义问题
管理
信息技术
组织
挑战
解决方案




1)发现问题
来自企业高层发现的问题
来自企业下层的问题
2)确定系统边界
问题 期望企业
收益








例:某企业销售大型机械和配件,原有的配件销售管理信息系统功能不能满足要
求。原系统只简单记录产品的进销存中发生的数据,没有实现流程控制,分布在
全国各地的营销点情况对于企业是一个“黑箱”,企业对营销点失控,企业的营
销、生产工作被动。企业的产品销售、配件销售、技术支撑和客户服务工作分离,
现要开发一个集产品销售、配件销售、技术支撑和客户服务为一体的新系统。
集成营销
管理信息
系统
公司
领导
技术
中心
生产
管理部
质量
管理部
特约
维修商
财务部 客户
分销商
服务
需求 销售
支持 服务支持
跟踪要求、产品入库
销售计划、产品故障 市场
需求 销售指令
跟踪要求 销售信息
员工信息
财务
要求
质量
问题
销售
信息
服务
支持
3、可行性分析





















经济
可行
性分

管理
可行
性分

定义问题
期望收益
1)必要性与重要性分析
2)技术可行性分析
3)经济可行性分析
投资和费用及计算方法
效益及计算方法
4)管理可行性分析
4、项目组织
选择开发的时机,安排人力资源,确定开发进度
开发时间进度可采用计划评审技术、关键路线方法、形象进度图、甘特图表示。
A
B
C
D
E
时间
任务 甘特图 当前进度线
表示文档
表示评审
5、系统规划阶段的文档
1)系统规划阶段文档的作用
编写目的
项目背景
2)系统规划报告的主要内容
企业决策开发新系统的依据
系统分析阶段的任务书
术语定义
参考资料
问题描述
期望的收益
系统开发方式的选择分析
新系统的基本能力
可行性分析
其他可供选择的方案
结论意见
开发的必要性和重要性
6、实例
1)公司基本情况
茶叶公司总经理
销售副总经理 生产副总经理 财

































2)可行性研究
急需解决的问题
可行性分析
3)开发的时间进度计划
5)开发方式的选择
4)软件流程模型的选择
6)员工培训