第六章 计算机辅助管理系统的开发 - 图文

更新时间:2024-01-22 23:25:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第六章 计算机辅助管理系统的开发

第一节 概述

一、企业开发计算机辅助管理系统的基本条件 1.实现现代化管理的紧迫感和明确的开发目标 2.企业高层领导重视及业务人员积极性高 3.资金保证

4.对计算机辅助管理系统有一个正确的认识 5.有一定的科学管理基础

6.稳定的专业开发队伍和自己的技术力量 二、计算机辅助管理系统失败的原因 1.认识误区

计算机辅助管理系统不是在原有人工管理的基础上,仅仅是使用计算机进行一些计算和打印一些报表而已。计算机辅助管理要求人们对管理的认识提高一个层次,要改变人们过去的工作方式和习惯,每个人都要进行知识更新以适应现代化管理的需求。墨守成规的人必将被历史淘汰。 2.管理不善

3.缺乏好的总体规划

三、计算机辅助管理系统开发的原则

⑴一把手原则:是保证系统顺利开发的首要条件。

⑵优化与创新原则:不能简单的模拟旧系统,应有所创新。

⑶适应性与先进性原则:既要适应本单位的实际情况,又要考虑先进性(如现在应采用B/S模式)。

⑷信息工程原则:企业在不断变化,企业的变化体现在数据变化(如产量的增加、人员的变动、部门的调整、开发新产品等。),开发出的系统(程序)应适应这种变化,即数据变了,程序不能变或只做小的改动。 ⑸面向用户原则:易于掌握和使用,用户界面友好,对某些操作错误系统能自动处理等。

第二节 系统开发方法

一、系统开发模型 1.系统生命周期

⑴系统起始:初步调查。

⑵可行性研究、需求分析、系统分析、系统设计、系统实施。 ⑶系统维护(售后服务)。

⑷系统废弃(设计新的系统代替旧系统)。 P175图6-1

2.系统开发生命周期

?系统开发生命周期中的内容 ①系统开发阶段任务的划分;

②每个任务包含哪些作业,即一个任务中可以基本独立完成的部分; ③每个作业中各种人员的作用;

④每个作业的质量标准、经费预算、进度安排等; ⑤开发技术。 ?两种不同的方法

①结构化系统开发生命周期法

采用“瀑布模型”,把整个开发工作严格划分为各个阶段,每个阶段再划分若干步。按序进行,前一阶段的成果是下一阶段的依据。 ②快速原型法

采用“循环或迭代模型”,把一个最终产品(要开发的系统)细分为若干子产品,这样不断的细分直至不能再分为止。对每个子产品进行开发设计时强调采用快速、灵活、交互式的软件开发方法学,即反复

1

与用户沟通,不断完善。 注:

①瀑布模型:瀑布模型(Waterfall Model)

W.Royce于1970年提出了瀑布模型。瀑布模型提供了一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈。项目开发进程从一个阶段“流动”到下一个阶段。 ②循环或迭代模型:

迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。所以,在某种程度上,开发迭代是一次完整地经过所有工作流程的过程:(至少包括)需求工作流程、分析设计工作流程、实施工作流程和测试工作流程。

所有的阶段(需求及其它)都可以细分为迭代。每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集。迭代的思想如下图所示:

二、系统开发与运行环境的选择

?计算机辅助管理系统的主要运行方式:

把分布式的信息放在地理位置不同的计算机上处理,再由网络把这些分布式信息集成在一起。其模式主要有两大类C/S和B/S模式。

?基于网络的计算机辅助管理系统开发的任务: ①网络支撑环境的建设 ②应用系统的开发

1.网络主要硬件设备的选择 ⑴服务器

主要指标:处理能力、存储容量、高速传输总线、磁盘接口、系统容错等。 ⑵网络关键设备 路由器、交换机等。 注:

①路由器(Router)是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号的设备。

②交换机(switch)是网络节点上话务承载装置。交换机能把用户线路、电信电路和(或)其他要互连的功能单元根据单个用户的请求连接起来。 2.网络计算模式

网络计算模式主要指采用何种方式共享网络资源,有两种模式。 ①对等层资源共享计算模式

网络中所有计算机地位平等,每台机器的资源都可以被大家共享,包括磁盘、打印机等硬件资源即各种软件资源。

2

优点:灵活、网络资源利用率高。

缺点:当一台机器的资源被其它机器共享了一部分后,其处理能力和速度下降。 ②客户/服务器(C/S)计算模式

网络中的计算机分成两种:客户机和服务器。

客户机:可以访问网络中的共享资源,但本机资源只能为本机所使用。 服务器:负责管理共享资源。

例如服务器中的数据库可以被其它用户访问,服务器管理的打印机可以被其它用户使用。 客户/服务器计算模式还有4种类型: 1)基于客户类应用

所有处理由客户机完成,服务器提供文件类服务。 2)基于服务器类应用

所有处理由服务器完成,客户机仅完成输入/输出,如无盘工作站。 3)客户/服务器应用

前两者相结合。由客户机向服务器提出请求,服务器处理后把结果返回给客户机。 4)分布处理类应用

要求系统有多台服务器,客户机向服务器提出的请求由多台服务器协同完成。提高了数据处理能力。 3.网络操作系统的选择

NetWare、UNIX、Windows NT、Linux等。

注:NetWare是早期的网络操作系统,现在已很少用。

从Windows2000开始,已包含NT技术。

Linux是为个人电脑开发的UNIX系统,Linux与UNIX是兼容的。 现在小型网络多选择Windows或Linux,大型网络多选择UNIX。 4.数据管理系统的选择 ⑴多用户数据库

单机版数据库的网络版,如FoxPro、Access、 Parados等。

数据集中存放在一个数据库中,通过加锁和解锁的方法访问共享文件。 ⑵分布式数据库

数据分存在计算机网络中的各台计算机上的数据库。

分布式数据库是用计算机网络将物理上分散的多个数据库单元连接起来组成的一个逻辑上统一的数据库。每个被连接起来的数据库单元称为站点或结点。分布式数据库有一个统一的数据库管理系统来进行管理,称为分布式数据库管理系统。

注:本节所指分布式数据库是早期的概念,这里主要强调客户与服务器的分布处理,减少通信负载。 现在的大型数据库都具有分布式处理功能,如SQL-server、Oracle、Sybase等。 三、结构化系统开发周期法 第一阶段:系统总体规划

提出初步的开发目标、系统规模、粗略的实现方案,可行性研究,制定具体的开发计划。 第二阶段:系统分析

详细调查、需求分析,确定系统功能、结构,建立可优化的逻辑模型。 第三阶段:系统设计

提出系统在计算机上的实施方案,建立物理模型。 第四阶段:系统实施

投入人力、物力,购置安装设备,程序设计、系统测试等。 第五阶段:系统运行维护

2.结构化系统开发周期法的开发特点 优点:①阶段的顺序性和依赖性

②逻辑设计和物理设计分开进行

3

③质量保证措施,每一阶段都要进行审核。 缺点:①预先定义需求,有时很难定义准确。

②分析与设计之间过渡不自然。分析与设计完全分开进行,发现问题后很难改进。如果边分析边设

计,发现问题后很容易改进。 ③文档编写工作量大。 四、快速原型法

基本思想:根据用户提出的基本需求,由设计者利用软件环境迅速构建一个系统“原型”。在此原型的基础上,逐步细化、反复修改、评价直至满足用户要求为止。 1.开发过程 P180图6-2

⑴确定用户基本需求:如用户提出输入哪些数据,最后打印出哪些报表等。 ⑵初始设计原型:设计出一个能满足用户基本需求的软件系统。 ⑶使用评价原型:由用户使用这个初始原型,进一步提出建议。

⑷修改原型:根据用户提出的建议修改原型,反复进行该过程直至用户满意为止。 2.原型的种类 ①丢弃型原型

开发出完整的系统后,丢弃原型。 ②进化型原型

一步步地修改原型,最后变成完整的系统。 3.原型化方法的特点

①系统开发采用“循序渐进,不断完善”的方法,符合人们认识问题的规律。 ②利用实例,把系统原型展示给用户,可以启发用户提出各种要求。 ③增加系统开发人员与用户的交流,利于系统开发。 ④开发周期短,费用少。 4.原型化方法的使用

使用原型化方法时应注意几个问题

①对支撑软件要求高,现在的很多工具如网页制作工具Dreamweaver可以不用写任何代码。 ②适合小的易变系统,大的稳定系统采用结构化系统开发周期法较为合适。 五、面向对象的系统开发方法 1.面向对象方法的由来 面向对象技术:面向对象技术是一种以以对象为基础,以事件和消息来驱动对象执行处理的程序设计技术。 面向对象的高级语言:在面向对象的高级语言中使用了“类”和“对象”的概念。 如C++、Java、VB、Delphi等都是面向对象程序设计语言。 2.面向对象的基本概念

⑴对象(Object):相关数据和方法的集合,对象由属性和行为(事件)组成。 ⑵类(Class):同类对象的集合。

⑶消息(Message):描述事件发生的信息,一个对象发送消息给接收对象,接收对象根据接收到的消息 作相应地处理。 3.面向对象的特征

⑴封装性:把对象的属性和行为结合成一个整体,尽量隐蔽对象的内部特性,通过接口与外部发生联系。 ⑵继承性:继承是连接类与类的层次模型。一个类可以派生出多个新类,派生出的新类继承原来类的特性与行为,又可增加属于自己的特色。

⑶多态性:类中同一函数名对应多个具有相似功能的不同函数,由参数的不同来区分它们。 面向对象技术的优势:继承性与多态性的结合使得很多代码可以重用,封装性使得系统更加安全 可靠。

4.面向对象方法简介

4

①面向对象将数据与对数据的操作封装在一起,形成一个整体。

②面向对象以数据为中心描述系统(如对象的属性设置、事件处理等),易于维护。

③面向对象的控制流程由运行时的实际发生来触发,不再由程序中的预定顺序决定,更加符合实际。 即控制流程由运行时的用户行为决定。

④面向对象编程可采用框架结构,部分代码可自动生成。提高了编程速度。VC++具有典型的框架结构。 5.面向对象分析 ?面向对象分析方法

找到构成系统的类、类的特性、他们之间的关系等。使用的工具主要有“用例图”、“类图”、“时序图”等。 ?三个不同层次的对象

⑴信息对象:开发系统中的实体,如“学生”、“教师”等。

⑵I/O对象:输入/输出对象,如要输入的订货单,打印报表等。 ⑶内部对象:程序设计中使用的对象,如窗体、控件等。 6.面向对象设计

在一个大系统中找到若干彼此互相独立但又有联系的对象。这种寻找对象的过程可以逐步进行,即大对象中又包括了很多小对象,一次往下直至不能再分为止。 找到每个对象的属性即相关的处理方法。 找到对象之间的联系。

每个对象可以相对独立地设计。

最后把他们连在一起,形成一个完整的系统。 7.面向对象方法的特点

1)面向对象将数据与对数据的操作封装在一起,形成一个整体。

2)系统分析与设计过渡平滑。主要指系统分析与设计之间联系紧密,可以认为系统分析就是设计的原型。 如画出类图后就很容易设计出类。

3)分析与设计于现实世界非常贴近,符合人们的思维习惯。

4)对象彼此是相对独立的,程序员在长时间的工作中可以积累大量的对象。开发新的系统时,程序员可使用原来的对象或稍作改变,像堆积木一样很快搭建起系统,大大地缩短了工期。 5)易于扩展和维护。

第三节 总体规划

一、总体规划的内容与步骤 1.总体规划的重要性

⑴总体规划是系统开发成功的基础 ⑵总体规划是整个系统开发的纲领 ⑶总体规划是筹措资金的依据 ⑷总体规划是开发项目确立的依据 2.总体规划的内容

①初步调查、分析与评价

②确定系统的目标、规模、功能及约束等 ③拟定系统初步实现方案 ④可行性分析

3.总体规划的步骤 ⑴初步调查 ⑵战略分析

⑶定义约束条件,即系统管理的范围。 ⑷明确目标

⑸拟定系统初步实现方案 ⑹可行性分析

5

⑺选择开发方案 ⑻提出实施进度

4.现行系统初步调查

⑴调查对象和目的:向谁调查,调查应达到的目的。

⑵调查内容:原系统管理流程、管理水平等。详细见p186 ⑶调查方法 1)调查计划 2)调查顺序 3)调查方法 4)调查记录

5.系统目标的确定

充分考虑系统的适用性、经济性、先进性和整体性。 6.可行性分析

⑴开发系统的必要性

⑵开发系统的可行性,包括:

1) 技术可行性:当前技术能否实现。

2) 经济可行性:是否有经济能力开发,运行后是否可获得利润。 3) 运行可行性:使用系统人员的技术水平,管理措施等。 7.系统开发方式

有自行开发、委托开发、联合开发和购买商品软件。 各种开发方式的比较。见p188 表6-1 8. 系统开发策略

⑴“自下向上”的开发策略

先开发最底层,最基本的模块,逐层往上进行合成,最后形成一个完整的系统。 优点:可逐步满足用户需求,边实施边见效。 缺点:整体性和协调性差。 ⑵“自上向下”的开发策略

先开发最上层的控制模块,逐层向下开发,最后开发最底层,最基本的模块。 优点:整体性和协调性号。

缺点:对大系统,难度大。因为有时最底层,最基本模块的功能不是很清楚。 二、企业系统规划法(BPS方法)

BPS方法是以一体化的观点定义系统总体结构,以对企业的现实环境进行调查为起点,采用“自上而下”的规划,“自下而上”的实施,使系统具有良好的整体性和一致性。 ?基本思想

①对各种需求信息进行综合分析; ②确定系统所有过程和数据类; ③编排出过程/数据类矩阵(U/C)(为找出子类作准备); ④划分出子类;

⑤画出数据流程图(即系统的逻辑模型)。 ?主要工作步骤 1.立项、准备

确定研究项目后,建立总体规划小组。 2.调研

3.定义企业过程

企业过程(管理功能):是指企业资源转化和资源管理中有逻辑关系的决策和活动的集合。 定义企业过程的实质是了解企业的所有管理活动,并把这些管理活动规范化形成条文。

6

如定义考勤员的职责范围、定义生产调度员的职责范围等。 4.定义数据类

?数据类:逻辑上密切相关的,能组成相对独立的完整数据单位的一类数据。 如经营计划产生的计划报表、工资计算产生的工资汇总表等。 ?数据类的识别方法 ⑴实体法

实体:与企业有关的可以独立考虑的事物,如客户、产品、材料等。 实体数据类型有4种:计划型、统计型、事务型和文档型。 ⑵过程法

分析企业活动中的每一个过程的输入数据和输出数据,再对这些数据进行分类。 例如工资系统的输入数据是考勤数据,输出是工资表表。 5.设计信息系统总体结构 ⑴建立U/C矩阵,p191表6-2 ⑵正确性性检验

完备性检验:表中的每一列是否有一个C(产生数据),至少有一个U(使用数据)。 表中的每一行是否具有产生者或使用者。

一致性检验:表中的每一列必须有且只有一个C。 无冗余性检验:表中不能有空行和空列。 如发生上述情况,需根据实际情况进行纠正。 ⑶调整矩阵使C处在对角线上。即调整列的位置。

⑷根据实际情况划分小方块,即把同类的放在一起。P192表6-3

⑸画出数据流图。注意数据流的方向是从产生的方块流向使用的方块。P193图6-4 6.确定子系统开发的优先顺序

根据人力、财力和事件要求等确定子系统开发的优先顺序。 7.形成文档

三、关键成功因素法(CSF法)

关键成功因素法是以关键因素为依据来确定系统信息需求的一种MIS总体规划的方法。在现行系统中,总存在着多个变量影响系统目标的实现,其中若干个因素是关键的和主要的(即成功变量)。通过对关键成功因素的识别,找出实现目标所需的关键信息集合,从而确定系统开发的优先次序。 如选购电脑的关键因素是CPU、内存、硬盘等,而不是机箱、键盘及随机赠送等。

第四节 系统分析

制定总体规划后,就要进行开发实施。系统分析是开发实施的第一步。 一、系统分析的概念 1.系统分析的含义

系统分析又称需求分析和逻辑设计。

通过系统分析确定系统的功能任务和指标,采用哪些方法和手段来完成物理设计。 系统分析包括功能需求和信息需求。信息需求指的是输入与输出数据。 2.系统分析的任务和步骤

任务:现行系统调查;现行系统分析评价;建立新系统逻辑模型;书写系统分析说明书。 步骤:现行系统的详细调查;系统化分析;新系统逻辑方案的确定。 二、现行系的详细调查

包括组织机构调查、管理功能调查、管理业务流程调查和数据流程调查。 用有关图表对调查结果进行描述。常见的图表有:

组织机构图、管理功能图、业务流程图、数据流程图和数据字典等。 (一)组织机构调查 P194 图6-5

7

(二)管理功能调查 P195 图6-6

(三)管理业务流程调查 P196 图6-7

(四)数据流程调查 ?数据流程图

是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。 数据流程图的基本成分。 ?数据流程图的组成

系统部件包括系统的外部实体、处理过程、数据存储和数据流四个组成部分。 ①外部实体

外部实体指系统以外又和系统有联系的人或事物,它说明了数据的外部来源和去处,属于系统的外部和系统的界面。外部实体支持系统数据输入的实体称为源点,支持系统数据输出的实体称为终点。 ②处理过程

处理指对数据逻辑处理,也就是数据变换,它用来改变数据值。而每一种处理又包括数据输入、数据处理和数据输出等部分。 ③数据流

数据流是指处理功能的输入或输出。 ④数据存储

数据存储表示数据保存的地方,它用来存储数据。系统处理从数据存储中提取数据,也将处理的数据返回数据存储。

?数据流程图使用的符号 ?数据流图中所用的符号

外部实体 处理 数据流 数据存储 例:第五章 账务处理系统数据流程图

8

附:毕业设计论文中的数据流图

2.3 数据流图 2.3.1 顶层数据流图

管理员收样员权限分配人员信息报告书结论判定质控员检验请求样品信息任务单LIMS数字实验室系统报告书签发法人或委托人化验员输入检验结果检验项目方法设置报告书接受受检单位或委托单位图 2-1 “数字实验室系统”顶层数据流图

2.3.2 第二层数据流图

样品信息表检验结果信息表项目国标组设定样品信息及项目请求判定输出制作质控员签发收样员任务单输入样品信息样品管理1.0检验管理2.0验证报告书管理3.0法人或委托人检验结果输入接收报告书化验员建立、修改检验项目方法管理4.0人员权限管理5.0验证验证纠错管理6.0受检单位或委托单位检验项目信息分配权限修改与原数据验证检验项目方法信息表管理员人员信息表纠错信息表 9

图 2-2 “数字实验室系统”第二层数据流图

2.3.3 细化数据流图

收样员登记样品信息输入1.1任务分配 1.2任务单化验员样品分类 1.3样品状态信息管理1.4初始页显示样品分类信息表样品信息表 图 2-3样品信息管理

样品任务单信息检验项目方法信息化验员输入测量值检验结果输入2.1样品结果用户自定义公式检验项目计算类型分类(辅助输入)2.2验证输入、复核、审核样品结果信息表结果三级审核管理2.4权限信息表输入权限2.3 图 2-4 检验结果管理

10

检验结果数据表项目国标组输出对比质控员生成报告书制作3.1签发3.2签发法人或委托人权限验证权限验证负责人审核审核3.3发放3.4接受受检单位或委托单位权限验证权限验证人员信息表 图 2-5 报告书管理

人员信息表权限验证化验员建立、修改检验项目常规信息4.2默认输入值的转换4.1选择公式管理4.3检验项目信息表检验项目信息辅助表 图 2-6 检验项目信息管理

人员信息表读取读取化验员(科室负责人)检验项目权限5.1写入人员职能权限5.2管理员提交分配权限5.3 11

图 2-7 检验项目方法管理

人员信息表验证权限验证权限收样员修改检验结果数据表样品基本信息纠错6.1验证权限检验结果纠错6.2修改化验员样品基本信息表质控员报告书纠错6.3修改提交纠错结果6.4写入纠错历史信息表 图 2-8 纠错管理

(五)数据字典

数据字典是对数据流程图中外部实体、数据流、数据处理和数据存储的文字说明。 P167给出了其中的部分条目。 1. 数据字典的内容

⑴数据元素:包括名称、编码、类型和长度、取值范围等。

⑵数据结构:描述数据之间的关系,如把“学生”定义为一个结构体,其中包括多个成员。 数据结构允许嵌套,即结构体的成员还可以是一个结构体。 ⑶数据流:包括名称、来源、去想、流通量等。

⑷数据存储:包括名称、记录数、预计增长率、最大记录长度等。 ⑸加工处理逻辑:包括名称、说明、加工处理描述、输入/输出等。 ⑹外部实体:包括名称、本系统和外部实体之间的数据流等。 2.数据字典中加工处理逻辑的描述工具 ⑴结构化语言

介于自然语言和高级语言之间的一种语言。如类C语言、类Java语言等。 其中也有赋值、判断、循环和输入、输出等。

用结构化语言对加工处理逻辑的描述,通常称为“算法”,如类C语言写的算法,看起来像C程序,但语法要求不严格,不能直接上机执行。 ⑵判定(决策)树

当只有两种可能时,使用判断语句较为合适。当有多种可能时,使用判断语句较为复杂。此时使用判断树比较简单。判定树适用于有多种可能,但每一种可能只有一种取值的情况。

判定树:是一种横向的树,最左侧为根,最右侧的叶子为要执行的动作,中间为条件。 例:p204 图6-12

判定树与C语言中的switch语句相对应。 ⑶判定(决策)表

判定表适用于有多种可能,且每一种可能有多种取值的情况。 以p205的例子进行说明。 3.数据字典的建立于管理

可以手工建立,把各种条目书写在规格统一的卡片上。

12

由计算机自动建立。如SQL Server有此功能。 三、系统化分析

在现行系统详细调查的基础上,找出现行系统的目标、功能、业务流程和数据流程等的不足,提出优化改进方法。

系统化分析的主要内容有 1.目标和体制分析评价

目标分析评价:分析现行系统的目标是否合理,能否满足或脱离实际要求 体制分析评价:现行管理体制能否保证系统的顺利开发与运行。 2.逻辑功能分析评价

新系统的功能应比原来系统先进,新系统的功能应最接近用户需求,新系统的功能还有哪些地方需要改进。 3.业务流程分析评价

分析业务流程中不合理的地方,对原业务流程进行优化。即删除“人浮于事”的部门,让所有的部门、所有的人都“紧张”起来,大家都在“马不停蹄”、“有条不紊”地高效工作。 主要包括:①原有流程分析;②业务流程的优化;③确定新的业务流程 4.数据流程分析评价

数据流程主要指系统中某些部门产生的数据要向另一些部门传送。 主要包括:①原有流程分析;②数据流程的优化;③确定新的数据流程 四、新系统逻辑方案的确定

逻辑方案是系统分析阶段的成果。主要包括:

⑴系统目标的细化:如查询条件的种类,响应时间等。

⑵新系统的业务流程:简单有效,充分发挥计算机管理的优势。

⑶新系统的数据流程:计算机内的数据流程应与实际的数据流程相符,利于编程。

⑷新系统的逻辑结构:画出各种图表及必要的文档。如数据流图、ER图、总体功能图、子系统功能图、结构化程序设计流程图、主要的界面图等。

⑸新系统中数据资源的分布:数据在网络中如何分布。如数据库和共享文件应放在服务器中,每个子系统单独使用的数据可放在客户端。分布式系统中数据资源的分布较为复杂。

⑹新系统的管理模型:原来手工管理时期的管理模型已不再适用,应确立新的管理模型。

注:此过程可能非常复杂,如新系统要求管理人员的素质要高,且可以大大地精简人员,如何安置原来的人员。其中有很多社会因素必须考虑。

第五节 系统设计

一、系统设计的概念 1.系统设计的含义

在逻辑设计的基础上,制定具体的实施方案,即进行物理设计。

注意:系统设计不是系统实施,即逻辑设计解决要做什么,系统设计解决怎么做,系统实施才是真正地去做。

如逻辑设计确定了采用C/S模式,系统设计确定具体服务器及客户端的类型、档次等。系统实施阶段负责购买。又如逻辑设计确定了数据库的概念结构(主要指ER图及规范化处理到3NF),到底选用SQL还是Oracle,在系统设计阶段确定。具体购买及安装在系统实施阶段完成。 2.系统设计的目标

系统设计在满足逻辑设计的功能要求基础上,在现有条件下,尽可能各种性能指标。 ?评价和衡量系统设计优劣的指标有:

⑴系统的工作效率:主要指处理能力、处理速度、响应时间等。

⑵系统的可靠性:主要指系统运行时的抗干扰能力。如病毒的防治、人为错误(输入数据超出范围等)、自然灾害等。

⑶系统的工作质量:主要指系统提供信息的准确性、易读性及操作方便性等。

⑷系统的可变性:主要指系统修改与维护的难易程度。主要取决于系统设计方式,设计时要求各部分独立

13

性要强。如企业部门做了重新调整,程序应做到基本不变。 ⑸系统的经济性:收益大于支出。 3.系统设计的主要内容

硬件设计:根据逻辑设计的功能,确定计算机机型、档次及各种附属设备,如打印机、绘图仪等。 软件设计:系统软件的设计包括操作系统、数据库、前台开发工具等,这部分主要是购买商品软件。 应用软件可以购买商品软件,也可以自己开发,要视情况而定。如财务软件国家规定必须购买商品软件(用友等),其它可根据自身情况而定。

如自己开发,包括:代码设计、输入设计、输出设计、人机对话设计、处理过程设计和数据库设计等。 二、结构化系统设计方法(SD法)

SD法是将系统整体看作一个模块,按其功能分为若干个子模块,这些子模块各自承担系统部分功能,并协调完成系统总体功能。然后,将每一个子模块分别作为整体,进一步划分下一层功能更简单的子模块,如此类推,直至模块功能不能再划分为止,最终形成层次型的系统结构模型。

?模块化:按照模块化的指导思想,一个复杂系统可以按一定规则由若干相对独立的、功能单一的模块构成。模块是结构化系统的基本要素,其功能应当简单明确,模块间联系应该尽量减少。 ?模块的三种基本结构:顺序结构、循环结构和选择结构。 ?优点:可靠性、维护性、理解性和扩充性都比较高。 三、功能模块设计 (一)模块的概念

模块:用名字可以调用的一段程序语句。

模块的属性:输入和输出、逻辑功能、运行程序和内部数据。 模块的逻辑功能:是如何把输入转换为输出的。 (二)模块结构中的符号 符号见P210图6-14 (三)模块结构图

是一个分层的结构图,最上层只有一个模块,各层模块的调用由实际情况决定。 (四)模块设计原则

1.块间耦合程度尽可能低,即块间调用越少越好。减少复杂性,便于调试。 2.块内聚合度尽可能高,即块内各部分的联系越紧密越好。

如数据库设计中,在有联系的表中要设计外键,做到连锁删除与连锁更新等。 3.启发式规则

⑴模块规模要适中,一般不超过60条语句。太大不易调试。

⑵模块的扇出系数要适中,模块的扇出系数是一个模块调用下一级模块的个数。一般不超过7个。因为扇出系数太大,模块紧凑性差即聚合度低。

⑶模块的扇入系数要大,模块的扇入系数是一个模块被直接调用的上一级模块的个数。扇入系数大表明系统通用型强、冗余度低、共享性越好

⑷模块的深度和宽度应适当,深度指模块的最大层次数,宽度指同级模块的最大数。

一个系统的功能确定后,深度和宽度成反比。深度大必定宽度小,反之深度小必定宽度大。 深度小宽度大时,扇出系数大;深度大宽度小时,调用的层次多,系统开销大。 (五)功能模块设计

系统整体看作一个模块,按其功能又可划分为分为若干个子模块,然后将每一个子模块分别作为整体,进一步划分下一层功能更简单的子模块,如此类推,直至模块功能不能再划分为止,最终形成层次型的系统结构模型。

一般来说,最上层模块叫“总控模块”,就是系统的名字;第二层层是“控制模块”,就是系统的子系统;从第三层开始是功能模块。 P212图6-16

模块划分的依据是数据流图,数据流图有两种结构:

14

1.以变换为中心的设计

变换型数据流图有三部分组成:输入数据、变换数据、输出数据。 变换型数据流图是一个线性结构。 P213图6-17,图6-18 2.以事物为中心的设计

事物型数据流图是一个非线性结构,根据输入数据类型的不同,采用不同的处理方法,对应多个输出。 P213图6-19,图6-20 (六)IPO图

它是输入加工输出(INPUT PROCESS OUTPUT)图的简称 如企业网站注册模块的IPO图如下: 输入:点击“公司简介”超级链接按钮。

处理:当进入企业网站,点击“进入”按钮,就链接到公司简介界面,该界面有HTML语言组成。 输出:“公司简介”界面。 四、系统物理配置方案设计

包括:计算机网络的选择;计算机硬件的选择;网络操作系统的选择(指服务器端);桌面操作系统的选择(指客户端);数据库管理系统的选择。 五、代码设计

这里的代码指的是对事物的编码、定义的变量名称、类名等。不是用高级语言书写的程序。 如:职工编号、图书编号、学生学号等。 1.代码设计原则

⑴唯一确定性:即不能有二义性。

⑵规范化:特别是商品软件更应该做到规范化。

⑶标准化和通用化:如图书代码编写应符合国家标准,系统应适用于同行业的所有单位。

⑷可扩充性:代码设计应考虑到系统的发展,如学号设计成两位,当人数达到100时就不适用了。 ⑸可识别性:易读、易懂,如变量名字要用完整的英文单词或汉语拼音。 ⑹简洁性:代码尽可能短,做到时间与空间的优化。 2.代码的种类

⑴有序码:用一串数字表示,通常从1开始。该方法简单,但代码没有逻辑含义,删除其中一些代码后,造成不连续。

⑵区间码:把代码分成几个区间,分别代表一定的含义。 如18位的身份证号码含义如下:

①1~6位为地区代码,其中1、2位数为各省级政府的代码,3、4位数为地、市级政府的代码,5、6位数为县、区级政府代码

②7~10位为出生年份(4位), ③11~12位为出生月份, ④13~14位为出生日期,

⑤第15~17位为顺序号,为县、区级政府所辖派出所的分配码,每个派出所分配码位10个连续号码,例如“150—159”,其中单数为男性分配码,双数为女性分配码,如遇同年同月同日有两人以上时顺延第二、第三、第四、第五个分配码。 ⑥18位为效验位(识别码),通过复杂公式算出,普遍采用计算机自动生成。 ⑶助记码:用可以帮助记忆的字母、数字编码。 ⑷校验码:在原代码上加检验位,如奇偶校验。 3.代码设计的步骤

⑴确定代码化对象:即对谁编码,如身份证号码对象是具有中国国籍的公民。

⑵分析代码化对象的特点:不同的对象有不同的特点,它决定了编码方法。如图书、产品、职工都有各自的特点。

15

⑶确定编码方式:根据代码化对象的特点确定编码方式。 ⑷编写代码簿 4.代码的管理

制定一整套代码管理的责任、权限、代码变更手续等规章制度,进行科学管理。 六、输出设计

输出设计就是完成模块结构图中输出模块的功能。 1.输出媒介和装置 ⑴打印机 ⑵屏幕显示器 ⑶磁盘与磁带 ⑷绘图仪

2.输出设计评价 评价标准

⑴提供的信息是否及时、准确、全面。

⑵应充分利用各种输出设备的功能,避免造成设备浪费。

⑶新系统的输出是否与原系统一致。因为有些上报的报表,在新系统中已有固定的格式,是不能改的。 ⑷输出的信息是否符合人们的习惯,是否便于阅读和理解。

注:在需求分析中收集到的报表,在新系统的输出中应尽量保持原格式不变。如果其中有些用计算机输出确实困难,修改时一定要征求用户的意见,用户不同意,再困难也不可以改。 4.选择输出设备和媒介

需要转储的信息应选用磁盘(包括U盘); 需要长期保存的信息应选用磁带; 需要人们阅览的信息应选用显示器;

上报的报表或需要传阅的信息应选用打印机; 机械图纸或其它精密图形应选用绘图仪;

总之应根据具体用途和本单位的具体情况而定。 七、输入设计

输入设计与输出设计不同,输出设计要求有严格的格式,特别是报到上级的报表必须按规定的格式设计报表。输入设计是为输入数据准备的,只要看得懂就可以了,因此格式要求不是很严格。 1.输入装置和媒介

键盘、磁带、磁盘、光盘、扫描仪等。 2. 输入设计原则

⑴输入量尽可能少,即找到系统最原始的数据,所有对数据的加工都由计算机完成。 ⑵输入过程应简单方便,如发现性别为男的占绝大多数,可在性别处设置默认值“男”。 ⑶尽早检查错误,实现整理原始数据,做到规范、一致。 ⑷减少数据转存

3. 输入设计的内容和步骤

⑴确定输入内容,其中包括数据来源、类型、取值范围、精度等。 ⑵确定输入方式,主要有联机和脱机方式。

联机方式:输入设备直接与主机相连。速度慢,主机效率低。适于输入后需要马上处理的数据。

脱机方式:输入设备不直接与主机相连,使用卫星机输入,再转存到主机上。速度快,主机效率高。适于批量输入。

⑶设计输入数据的输入格式,不是很严格。只要易读、易懂、不易出错即可。 4.输入数据的校验 ⑴视觉校验

⑵重复校验,如设置新密码时要重复输入两次。

16

⑶数据类型校验

⑷数据界限校验,实现设定取值范围,超过范围为错。 ⑸代码校验位校验,如奇偶校验。 八、对话设计

对话是指人机对话,人机对话设计主要是指屏幕界面设计、对话方式设计。 1.对话设计设计原则

⑴对话要清楚、简单,符合人们的习惯。 ⑵对话要适合操作人员的水平。

⑶对用户输入的信息要及时核查,发现问题马上提示错误的性质并通知用户如何更改。 ⑷应引导用户进行操作。 2.对话方式 ⑴菜单式 ⑵填表式 ⑶回答式 ⑷提问式

九、数据库设计 ?几个术语:

1)DBMS(Databse Management System) 数据库管理系统:如SQL、Oracle、Access等。

2)DB(DataBase) 数据库:在某种DBMS中建立的数据库,用于存储数据、定义数据,操作数据等。, 3)DBS(Database System) 数据库系统:由计算机、安装的DBMS、在其中建立的DB、编制的使用DB的应用软件及使用系统的人。 1.数据库设计的目标 ⑴满足用户需求

⑵良好的数据库性能,包括:独立性、共享性、最小冗余、安全、完整、一致、可靠等。 ⑶对现实世界模拟的精确程度 ⑷能被某个现有的DBMS所接受 2.数据库设计步骤

⑴需求分析:收集资料,定义数据的类型、操作及各种约束条件等。 ⑵概念设计:根据需求分析的结果绘制ER图,定义实体、属性和关系。

⑶逻辑设计:把ER图转换为关系模式,定义主键和外键。对关系模式进行规范化处理,要求至少3NF。

第六节 系统实现

一、系统实现的概念

系统实现的任务包括:软件的编制与测试;数据的录入与装配;工作环境的准备;人员培训;书写系统说明书;系统总调试等。

系统实现后要交给用户使用。接下来的工作就是售后服务。 二、程序设计与结构化程序设计

结构化程序设计采用三种结构:顺序结构、选择结构和循环结构,主张尽量少用GOTO语句。 程序设计应做到: 变量名要规范; 设计风格要一致;

尽量做到时间(速度)与空间(存储量)的优化; 常用的函数、模块等,要设计成子程序,便于调用; 考虑代码共享;

子程序尽量做到通用,为以后系统的开发打下基础。

三、处理过程的描述

常用的有:流程图、NS盒图、PAD图。

17

1.流程图 ⑴符号

⑵例:求5的阶乘

18

2.NS盒图 ⑴符号

顺序结构 选择结构

两种循环结构

⑵例:求5!算法用N-S图表示

3.PAD图

PAD图用来描述程序结构。PAD图中最左边的竖线是程序的主线,即第一层控制结构。随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线。PAD图中竖线的总条数就是程序的层次数。 下面是PAD图的符号

19

四、软件的测试与排错

1.动态测试法(程序在执行状态下测试)

⑴黑盒法:只测试模块的输入和输出,不关心模块的内部结构。

⑵白盒法:测试模块的内部结构,如其中的一个循环结构、选择结构等,有时需要测试每条语句。 2.静态测试法(程序在静止状态下测试)

由测试人员分析程序结构是否合理。变量名、程序设计风格等采取静态测试。 注意:所有的测试都不能使程序完美无缺,只能尽量减少错误。因此必须制定详细的测试计划和测试案例。

五、系统转换

系统转换是指当新系统总体测试完毕,认为可以交付用户使用时,用新系统代替旧系统的过程。 其方式有:

⑴直接切换:旧系统停止运行,新系统开始运行。

⑵并行切换:新、旧系统并行运行一段时间,再进行切换。 ⑶分步切换:每次只切换一部分,直至全部切换为止。

第七节 系统运行管理及维护

系统投入运行后,用户可能会发现一些问题。其中有些可能是需求分析阶段没有收集到的特殊资料,有些是程序设计中存在的缺陷,可能还有近期企业情况发生了一些变化。所有这些都要由用户及时反馈给开发者,开发者必须给与解决。

注:一般在合同上要注明,免费维护的时间段(如2年),再以后是要收费的。

王孟石 2012-8-4完成

20

本文来源:https://www.bwwdw.com/article/1k7o.html

Top