2 计算机系统及可行性研究软
件
工
程
原
理
2.1 基于计算机的系统与计算机系统
工程
一、基于计算机的系统
一个 系统 是一组相互关联、能一起
工作从而达到某个目标的相关组件的
集合。
系统元素以及相互之间的关系可以
用 IPO(输入-处理-输出)模型表
示,如下图所示:
软
件
工
程
原
理
过程
文档 硬件
数据库
系统
软件
人员
基于计算机的系统元素
输入 输出
软
件
工
程
原
理
系统分析员 的主要作用是在系统的
整体层次结构(宏元素)的环境中,
描述这个系统,定义总的体系结构,
然后集成各个组件以完成整个基于计
算机的系统。
二、计算机系统工程
计算机系统工程 是指与构造基于计
算机系统有关的过程、方法和技术。
计算机系统工程的任务是组织并指
导系统工程师定义全系统各层次中的
所有基于计算机系统的元素。
软
件
工
程
原
理
在一个特定的领域中,计算机系统
工程师对目标系统元素进行分析,获
得功能、性能、接口、设计约束条件
以及信息结构等的描述,并将它们分
配到各系统元素,分别由相关的系统
工程方法来实现。
从系统工程的角度来看,通常,一
个计算机系统工程包括 硬件工程, 软
件工程 和 人机工程 。
1、硬件和硬件工程
系统工程师 硬件工程师硬件需求
硬件工程师根据硬件需求设计、
制造或选择必需的硬件设备。
硬件工程师要考虑下列因素:
( 1)硬件系统的功能与性能;
( 2)硬件之间的接口、硬件的标准
化、硬件成本和维修服务等。
2、软件和软件工程
软
件
工
程
原
理
系统工程师 软件工程师软件需求
软
件
工
程
原
理
软件工程师借助于软件工程的过
程、方法和工具来开发软件系统。
3、人机工程
人机工程的包括的步骤:
( 1)活动分析;
( 2)动作定义和设计;
( 3)人机对话语言设计;
( 4)用户环境设计;
( 5)原型设计。
4、数据库工程
数据库系统将有关的硬件、软件、
软
件
工
程
原
理
数据和数据库管理人员组合起来,
为用户提供信息服务。
数据库工程的基本任务:
( 1)调查用户的信息需求和对信息
处理的要求;进行可行性论证;提
出成本预算和工作计划等。
( 2)论证、选择和购置支持数据库
系统的硬件和软件;
( 3)数据库设计与实现;
( 4)数据库的管理与维护。
2.2 可行性研究
一、问题定义
问题定义 (Problem Definition)是
计划时期的第一个阶段。其目的是弄
清用户需要计算机解决的问题根本所
在,以及项目所需的资源和经费。
该阶段的主要任务,是在向用户调
查的基础上,编写, 系统目标与范围
说明书,,作为可行性研究的依据。
软
件
工
程
原
理
软
件
工
程
原
理
系统目标和范围
说明书 2001年 1月
1、项目:教材销售系统
2、问题:人工发售教材手续繁琐,且易
出错。
3、项目目标:建立一个高效、无差错的
微机销售系统。
4、项目范围:利用现有微型计算机,软
件开发费用不超过 5000元。
5、初步想法:建议在系统中增加对缺书
的统计与采购功能。
6、可行性研究:建议进行大约 10天的可
行性研究,研究费用不超过 1000元。
软
件
工
程
原
理
可行性
研究
可行性研究报告
系统框架
使用说明
二、可行性研究的目的
用最小的代价,在尽可能短的时间
内确定问题是否有解和是否值得解。
三、可行性研究过程
问题
空间
解
空间
?
四、可行性研究内容
1、经济可行性
系统成本主要包括:
( 1)购置硬件/软件的费用;
( 2)有关设备的工程安装费用;
( 3)系统开发费用;
( 4)系统的安装、运行和维护费用;
( 5)人员培训费用等等。
系统效益包括:
( 1)经济效益;
( 2)社会效益。
软
件
工
程
原
理
2、技术可行性
技术可行性是根据客户提出的
系统功能、性能以及实现系统的各
项约束条件,从技术的角度研究实
现该系统的可行性。
技术可行性研究应该包括:风
险分析、资源分析和技术分析。
数学建模、原型建造和模拟是
基于计算机系统技术分析活动的有
效工具。
软
件
工
程
原
理
3、社会可行性
社会可行性是研究在系统开发过
程中可能涉及的人力资源、各种合
同、知识产权纠纷、责任以及各种
与法律相抵触的问题。
4、方案的抉择和可操作性
系统开发成本包括:研究成本、
设计成本、设备成本、程序编码成
本、测试和评审成本、系统运行和
维护成本、系统退役成本等。
各阶段成本分配方案不同会对系
统的功能、性能产生很大的影响。
软
件
工
程
原
理
五、可行性研究步骤
1、细化和修改, 系统目标和范围说
明,,得出新系统的逻辑模型。这一
步可细分为以下几步:
( 1)进一步了解, 说明, 的含意,
着重弄清用户想要解决的问题;
( 2)带着上述问题访问用户,弄清
当前系统的工作过程,并用, 系统流
程图, 加以描述;
( 3)导出当前系统和新系统的 逻辑
模型,用数据流图 (DFD)描述;
软
件
工
程
原
理
( 4)再访问用户,修改 DFD,并对
,说明, 做必要的补充与修改。
后两步要反复进行,直到得出准确
的, 说明, 和系统逻辑模型为止。
2、导出新系统的解决方案。
3、提出推荐的方案。 P27
六、系统流程图和数据流图
1、系统流程图
系统流程图 (System Flowchart)
是用来描述系统物理模型的一种传统
工具。如下面例图所示:
软
件
工
程
原
理
软
件
工
程
原
理
购书单 发书
审查并
开发票 开领书单
学生
终端 各班学生
用书表
教材
存量表
发票 收书费 发票收讫
领书单
计算机售书系统流程图
软
件
工
程
原
理
2、数据流图 (见 P46)
数据流图 (Data Flow Diagram)
是一种图形化技术。用它可以表达
软件系统必须完成的功能。
教材
购销
系统
学
生
书库
保管
员
购书单
领书单
缺书单
进书通知
教材购销系统的顶层 DFD
软
件
工
程
原
理
第二层 DFD图-教材购销系统
1
销售
2
采购
学
生
书库
保管
员
F1教材存量表
F2缺书登记表
进书通知
缺书单
进书通知
购书单
领书单
2.3 系统分析与系统模型
一、常用的分析方法:
1、功能分解法
功能分解法=功能+子功能+功能
接口
功能分解法的基本思想:
将系统看成若干功能构成的一个集
合,每一个功能又可分成若干子功能
等,在该过程中定义每一个功能的接
口。
软
件
工
程
原
理
软
件
工
程
原
理
缺点:重视操作,轻视数据结构,
因而难以适应系统的变化。
2、数据流方法
数据流方法=数据流+数据变换
+数据存储+终结点+加工说明+
数据字典
该方法的基本出发点是数据流,
即利用数据流来理解问题和分析问
题。它采用 逐步求精 的基本原则。
难点,
( 1)如何确定数据流之间的变换;
( 2), 数据字典爆炸, 问题。
3、信息造型方法
基于数据的信息造型 (建模 )方法本
质上是一种分析方法,它的发展与
数据库技术的发展有着密切的关系,
有时把信息模型看作数据库模型。
信息造型=对象+属性+联系+
父类型/子类型+关联对象
该方法的基本出发点立足于数据
(数据结构 )。其描述工具之一是 ER
图 (实体-联系图 )。
软
件
工
程
原
理
4、面向对象方法
面向对象方法=对象(类)+结
构+继承/委托+消息(通信)
二、系统结构模型
1、结构图
是指系统体系结构图。
系统工程师采用, 结构模板, 来
建立基于计算机系统的系统模型,
以展现一些主要子系统及它们之间
的关联。结构模板如 P30图 2-6所示。
软
件
工
程
原
理
2、系统总体结构关系图
又称 结构环境图 ACD或 系统语境
图 SCD,建立了系统与系统运行环
境之间的信息界面。如 P31图 2-7所
示。
3、结构流程图 AFD
反映信息在系统中各个部件流动
的情况,是描述系统的物理模型。
软
件
工
程
原
理
软
件
工
程
原
理
三、系统规格说明
1、系统规格说明的内容
系统规格说明,又称为 系统规约,
它描述了基于计算机系统的 功能 和
性能 以及将控制其开发的 约束,也
描述了子系统的 输入/输出 。 P32
2、系统规格说明评审
系统规格说明评审首先评价系统
规格说明中的 定义是否正确,然后
客户和开发人员共同判断:
软
件
工
程
原
理
( 1)系统规格说明是否正确描述了
项目的范围 ;
( 2)是否准确地定义了系统的 功能、
性能和界面 ;
( 3)环境和开发风险分析是否表明
了 系统开发的合理性 ;
( 4)开发人员和用户对系统目标是
否有 共同的认识 。
件
工
程
原
理
2.1 基于计算机的系统与计算机系统
工程
一、基于计算机的系统
一个 系统 是一组相互关联、能一起
工作从而达到某个目标的相关组件的
集合。
系统元素以及相互之间的关系可以
用 IPO(输入-处理-输出)模型表
示,如下图所示:
软
件
工
程
原
理
过程
文档 硬件
数据库
系统
软件
人员
基于计算机的系统元素
输入 输出
软
件
工
程
原
理
系统分析员 的主要作用是在系统的
整体层次结构(宏元素)的环境中,
描述这个系统,定义总的体系结构,
然后集成各个组件以完成整个基于计
算机的系统。
二、计算机系统工程
计算机系统工程 是指与构造基于计
算机系统有关的过程、方法和技术。
计算机系统工程的任务是组织并指
导系统工程师定义全系统各层次中的
所有基于计算机系统的元素。
软
件
工
程
原
理
在一个特定的领域中,计算机系统
工程师对目标系统元素进行分析,获
得功能、性能、接口、设计约束条件
以及信息结构等的描述,并将它们分
配到各系统元素,分别由相关的系统
工程方法来实现。
从系统工程的角度来看,通常,一
个计算机系统工程包括 硬件工程, 软
件工程 和 人机工程 。
1、硬件和硬件工程
系统工程师 硬件工程师硬件需求
硬件工程师根据硬件需求设计、
制造或选择必需的硬件设备。
硬件工程师要考虑下列因素:
( 1)硬件系统的功能与性能;
( 2)硬件之间的接口、硬件的标准
化、硬件成本和维修服务等。
2、软件和软件工程
软
件
工
程
原
理
系统工程师 软件工程师软件需求
软
件
工
程
原
理
软件工程师借助于软件工程的过
程、方法和工具来开发软件系统。
3、人机工程
人机工程的包括的步骤:
( 1)活动分析;
( 2)动作定义和设计;
( 3)人机对话语言设计;
( 4)用户环境设计;
( 5)原型设计。
4、数据库工程
数据库系统将有关的硬件、软件、
软
件
工
程
原
理
数据和数据库管理人员组合起来,
为用户提供信息服务。
数据库工程的基本任务:
( 1)调查用户的信息需求和对信息
处理的要求;进行可行性论证;提
出成本预算和工作计划等。
( 2)论证、选择和购置支持数据库
系统的硬件和软件;
( 3)数据库设计与实现;
( 4)数据库的管理与维护。
2.2 可行性研究
一、问题定义
问题定义 (Problem Definition)是
计划时期的第一个阶段。其目的是弄
清用户需要计算机解决的问题根本所
在,以及项目所需的资源和经费。
该阶段的主要任务,是在向用户调
查的基础上,编写, 系统目标与范围
说明书,,作为可行性研究的依据。
软
件
工
程
原
理
软
件
工
程
原
理
系统目标和范围
说明书 2001年 1月
1、项目:教材销售系统
2、问题:人工发售教材手续繁琐,且易
出错。
3、项目目标:建立一个高效、无差错的
微机销售系统。
4、项目范围:利用现有微型计算机,软
件开发费用不超过 5000元。
5、初步想法:建议在系统中增加对缺书
的统计与采购功能。
6、可行性研究:建议进行大约 10天的可
行性研究,研究费用不超过 1000元。
软
件
工
程
原
理
可行性
研究
可行性研究报告
系统框架
使用说明
二、可行性研究的目的
用最小的代价,在尽可能短的时间
内确定问题是否有解和是否值得解。
三、可行性研究过程
问题
空间
解
空间
?
四、可行性研究内容
1、经济可行性
系统成本主要包括:
( 1)购置硬件/软件的费用;
( 2)有关设备的工程安装费用;
( 3)系统开发费用;
( 4)系统的安装、运行和维护费用;
( 5)人员培训费用等等。
系统效益包括:
( 1)经济效益;
( 2)社会效益。
软
件
工
程
原
理
2、技术可行性
技术可行性是根据客户提出的
系统功能、性能以及实现系统的各
项约束条件,从技术的角度研究实
现该系统的可行性。
技术可行性研究应该包括:风
险分析、资源分析和技术分析。
数学建模、原型建造和模拟是
基于计算机系统技术分析活动的有
效工具。
软
件
工
程
原
理
3、社会可行性
社会可行性是研究在系统开发过
程中可能涉及的人力资源、各种合
同、知识产权纠纷、责任以及各种
与法律相抵触的问题。
4、方案的抉择和可操作性
系统开发成本包括:研究成本、
设计成本、设备成本、程序编码成
本、测试和评审成本、系统运行和
维护成本、系统退役成本等。
各阶段成本分配方案不同会对系
统的功能、性能产生很大的影响。
软
件
工
程
原
理
五、可行性研究步骤
1、细化和修改, 系统目标和范围说
明,,得出新系统的逻辑模型。这一
步可细分为以下几步:
( 1)进一步了解, 说明, 的含意,
着重弄清用户想要解决的问题;
( 2)带着上述问题访问用户,弄清
当前系统的工作过程,并用, 系统流
程图, 加以描述;
( 3)导出当前系统和新系统的 逻辑
模型,用数据流图 (DFD)描述;
软
件
工
程
原
理
( 4)再访问用户,修改 DFD,并对
,说明, 做必要的补充与修改。
后两步要反复进行,直到得出准确
的, 说明, 和系统逻辑模型为止。
2、导出新系统的解决方案。
3、提出推荐的方案。 P27
六、系统流程图和数据流图
1、系统流程图
系统流程图 (System Flowchart)
是用来描述系统物理模型的一种传统
工具。如下面例图所示:
软
件
工
程
原
理
软
件
工
程
原
理
购书单 发书
审查并
开发票 开领书单
学生
终端 各班学生
用书表
教材
存量表
发票 收书费 发票收讫
领书单
计算机售书系统流程图
软
件
工
程
原
理
2、数据流图 (见 P46)
数据流图 (Data Flow Diagram)
是一种图形化技术。用它可以表达
软件系统必须完成的功能。
教材
购销
系统
学
生
书库
保管
员
购书单
领书单
缺书单
进书通知
教材购销系统的顶层 DFD
软
件
工
程
原
理
第二层 DFD图-教材购销系统
1
销售
2
采购
学
生
书库
保管
员
F1教材存量表
F2缺书登记表
进书通知
缺书单
进书通知
购书单
领书单
2.3 系统分析与系统模型
一、常用的分析方法:
1、功能分解法
功能分解法=功能+子功能+功能
接口
功能分解法的基本思想:
将系统看成若干功能构成的一个集
合,每一个功能又可分成若干子功能
等,在该过程中定义每一个功能的接
口。
软
件
工
程
原
理
软
件
工
程
原
理
缺点:重视操作,轻视数据结构,
因而难以适应系统的变化。
2、数据流方法
数据流方法=数据流+数据变换
+数据存储+终结点+加工说明+
数据字典
该方法的基本出发点是数据流,
即利用数据流来理解问题和分析问
题。它采用 逐步求精 的基本原则。
难点,
( 1)如何确定数据流之间的变换;
( 2), 数据字典爆炸, 问题。
3、信息造型方法
基于数据的信息造型 (建模 )方法本
质上是一种分析方法,它的发展与
数据库技术的发展有着密切的关系,
有时把信息模型看作数据库模型。
信息造型=对象+属性+联系+
父类型/子类型+关联对象
该方法的基本出发点立足于数据
(数据结构 )。其描述工具之一是 ER
图 (实体-联系图 )。
软
件
工
程
原
理
4、面向对象方法
面向对象方法=对象(类)+结
构+继承/委托+消息(通信)
二、系统结构模型
1、结构图
是指系统体系结构图。
系统工程师采用, 结构模板, 来
建立基于计算机系统的系统模型,
以展现一些主要子系统及它们之间
的关联。结构模板如 P30图 2-6所示。
软
件
工
程
原
理
2、系统总体结构关系图
又称 结构环境图 ACD或 系统语境
图 SCD,建立了系统与系统运行环
境之间的信息界面。如 P31图 2-7所
示。
3、结构流程图 AFD
反映信息在系统中各个部件流动
的情况,是描述系统的物理模型。
软
件
工
程
原
理
软
件
工
程
原
理
三、系统规格说明
1、系统规格说明的内容
系统规格说明,又称为 系统规约,
它描述了基于计算机系统的 功能 和
性能 以及将控制其开发的 约束,也
描述了子系统的 输入/输出 。 P32
2、系统规格说明评审
系统规格说明评审首先评价系统
规格说明中的 定义是否正确,然后
客户和开发人员共同判断:
软
件
工
程
原
理
( 1)系统规格说明是否正确描述了
项目的范围 ;
( 2)是否准确地定义了系统的 功能、
性能和界面 ;
( 3)环境和开发风险分析是否表明
了 系统开发的合理性 ;
( 4)开发人员和用户对系统目标是
否有 共同的认识 。