还剩18页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
第六章计算机辅助管理系统的开发第1节概述
一、企业开发计算机辅助管理系统的基本条件1.实现现代化管理的紧迫感和明确的开发目标2.企业高层领导重视及业务人员积极性高3.资金保证4.对计算机辅助管理系统有一个正确的认识5.有一定的科学管理基础6.稳定的专业开发队伍和自己的技术力量
二、计算机辅助管理系统失败的原因1.认识误区计算机辅助管理系统不是在原有人工管理的基础上,仅仅是使用计算机进行一些计算和打印一些报表而已计算机辅助管理要求人们对管理的认识提高一个层次,要改变人们过去的工作方式和习惯,每个人都要进行知识更新以适应现代化管理的需求墨守成规的人必将被历史淘汰2.管理不善3.缺乏好的总体规划
三、计算机辅助管理系统开发的原则⑴一把手原则是保证系统顺利开发的首要条件⑵优化与创新原则不能简单的模拟旧系统,应有所创新⑶适应性与先进性原则既要适应本单位的实际情况,又要考虑先进性如现在应采用B/S模式⑷信息工程原则企业在不断变化,企业的变化体现在数据变化(如产量的增加、人员的变动、部门的调整、开发新产品等),开发出的系统(程序)应适应这种变化,即数据变了,程序不能变或只做小的改动⑸面向用户原则易于掌握和使用,用户界面友好,对某些操作错误系统能自动处理等第2节系统开发方法
一、系统开发模型1.系统生命周期⑴系统起始初步调查⑵可行性研究、需求分析、系统分析、系统设计、系统实施⑶系统维护(售后服务)⑷系统废弃(设计新的系统代替旧系统)P175图6-12.系统开发生命周期•系统开发生命周期中的内容
①系统开发阶段任务的划分;
②每个任务包含哪些作业,即一个任务中可以基本独立完成的部分;
③每个作业中各种人员的作用;
④每个作业的质量标准、经费预算、进度安排等;
⑤开发技术•两种不同的方法
①结构化系统开发生命周期法采用“瀑布模型”,把整个开发工作严格划分为各个阶段,每个阶段再划分若干步按序进行,前一阶段的成果是下一阶段的依据
②快速原型法采用“循环或迭代模型”,把一个最终产品(要开发的系统)细分为若干子产品,这样不断的细分直至不能再分为止对每个子产品进行开发设计时强调采用快速、灵活、交互式的软件开发方法学,即反复与用户沟通,不断完善注
①瀑布模型瀑布模型(WaterfallModel)W.Royce于1970年提出了瀑布模型瀑布模型提供了一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的,从系统需求分析开始直到产品发布和维护,每个阶段都会产生循环反馈项目开发进程从一个阶段“流动”到下一个阶段
②循环或迭代模型迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素所以,在某种程度上,开发迭代是一次完整地经过所有工作流程的过程(至少包括)需求工作流程、分析设计工作流程、实施工作流程和测试工作流程所有的阶段(需求及其它)都可以细分为迭代每一次的迭代都会产生一个可以发布的产品,这个产品是最终产品的一个子集迭代的思想如下图所示
二、系统开发与运行环境的选择•计算机辅助管理系统的主要运行方式把分布式的信息放在地理位置不同的计算机上处理,再由网络把这些分布式信息集成在一起其模式主要有两大类C/S和B/S模式•基于网络的计算机辅助管理系统开发的任务
①网络支撑环境的建设
②应用系统的开发1.网络主要硬件设备的选择⑴服务器主要指标处理能力、存储容量、高速传输总线、磁盘接口、系统容错等⑵网络关键设备路由器、交换机等注
①路由器(Router)是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号的设备
②交换机(switch)是网络节点上话务承载装置交换机能把用户线路、电信电路和或其他要互连的功能单元根据单个用户的请求连接起来2.网络计算模式网络计算模式主要指采用何种方式共享网络资源,有两种模式
①对等层资源共享计算模式网络中所有计算机地位平等,每台机器的资源都可以被大家共享,包括磁盘、打印机等硬件资源即各种软件资源优点灵活、网络资源利用率高缺点当一台机器的资源被其它机器共享了一部分后,其处理能力和速度下降
②客户/服务器(C/S)计算模式网络中的计算机分成两种客户机和服务器客户机可以访问网络中的共享资源,但本机资源只能为本机所使用服务器负责管理共享资源例如服务器中的数据库可以被其它用户访问,服务器管理的打印机可以被其它用户使用客户/服务器计算模式还有4种类型1)基于客户类应用所有处理由客户机完成,服务器提供文件类服务2)基于服务器类应用所有处理由服务器完成,客户机仅完成输入/输出,如无盘工作站3)客户/服务器应用前两者相结合由客户机向服务器提出请求,服务器处理后把结果返回给客户机4)分布处理类应用要求系统有多台服务器,客户机向服务器提出的请求由多台服务器协同完成提高了数据处理能力3.网络操作系统的选择NetWare、UNIX、WindowsNT、Linux等注NetWare是早期的网络操作系统,现在已很少用从Windows2000开始,已包含NT技术Linux是为个人电脑开发的UNIX系统,Linux与UNIX是兼容的现在小型网络多选择Windows或Linux,大型网络多选择UNIX4.数据管理系统的选择⑴多用户数据库单机版数据库的网络版,如FoxPro、Access、Parados等数据集中存放在一个数据库中,通过加锁和解锁的方法访问共享文件⑵分布式数据库数据分存在计算机网络中的各台计算机上的数据库分布式数据库是用计算机网络将物理上分散的多个数据库单元连接起来组成的一个逻辑上统一的数据库每个被连接起来的数据库单元称为站点或结点分布式数据库有一个统一的数据库管理系统来进行管理,称为分布式数据库管理系统注本节所指分布式数据库是早期的概念,这里主要强调客户与服务器的分布处理,减少通信负载现在的大型数据库都具有分布式处理功能,如SQL-server、Oracle、Sybase等
三、结构化系统开发周期法第一阶段系统总体规划提出初步的开发目标、系统规模、粗略的实现方案,可行性研究,制定具体的开发计划第二阶段系统分析详细调查、需求分析,确定系统功能、结构,建立可优化的逻辑模型第三阶段系统设计提出系统在计算机上的实施方案,建立物理模型第四阶段系统实施投入人力、物力,购置安装设备,程序设计、系统测试等第五阶段系统运行维护2.结构化系统开发周期法的开发特点优点
①阶段的顺序性和依赖性
②逻辑设计和物理设计分开进行
③质量保证措施,每一阶段都要进行审核缺点
①预先定义需求,有时很难定义准确
②分析与设计之间过渡不自然分析与设计完全分开进行,发现问题后很难改进如果边分析边设计,发现问题后很容易改进
③文档编写工作量大
四、快速原型法基本思想根据用户提出的基本需求,由设计者利用软件环境迅速构建一个系统“原型”在此原型的基础上,逐步细化、反复修改、评价直至满足用户要求为止1.开发过程P180图6-2⑴确定用户基本需求如用户提出输入哪些数据,最后打印出哪些报表等⑵初始设计原型设计出一个能满足用户基本需求的软件系统⑶使用评价原型由用户使用这个初始原型,进一步提出建议⑷修改原型根据用户提出的建议修改原型,反复进行该过程直至用户满意为止2.原型的种类
①丢弃型原型开发出完整的系统后,丢弃原型
②进化型原型一步步地修改原型,最后变成完整的系统3.原型化方法的特点
①系统开发采用“循序渐进,不断完善”的方法,符合人们认识问题的规律
②利用实例,把系统原型展示给用户,可以启发用户提出各种要求
③增加系统开发人员与用户的交流,利于系统开发
④开发周期短,费用少4.原型化方法的使用使用原型化方法时应注意几个问题
①对支撑软件要求高,现在的很多工具如网页制作工具Dreamweaver可以不用写任何代码
②适合小的易变系统,大的稳定系统采用结构化系统开发周期法较为合适
五、面向对象的系统开发方法1.面向对象方法的由来面向对象技术面向对象技术是一种以以对象为基础,以事件和消息来驱动对象执行处理的程序设计技术面向对象的高级语言在面向对象的高级语言中使用了“类”和“对象”的概念如C++、Java、VB、Delphi等都是面向对象程序设计语言2.面向对象的基本概念⑴对象(Object)相关数据和方法的集合,对象由属性和行为(事件)组成⑵类(Class)同类对象的集合⑶消息(Message)描述事件发生的信息,一个对象发送消息给接收对象,接收对象根据接收到的消息作相应地处理3.面向对象的特征⑴封装性把对象的属性和行为结合成一个整体,尽量隐蔽对象的内部特性,通过接口与外部发生联系⑵继承性继承是连接类与类的层次模型一个类可以派生出多个新类,派生出的新类继承原来类的特性与行为,又可增加属于自己的特色⑶多态性类中同一函数名对应多个具有相似功能的不同函数,由参数的不同来区分它们面向对象技术的优势继承性与多态性的结合使得很多代码可以重用,封装性使得系统更加安全可靠4.面向对象方法简介
①面向对象将数据与对数据的操作封装在一起,形成一个整体
②面向对象以数据为中心描述系统(如对象的属性设置、事件处理等),易于维护
③面向对象的控制流程由运行时的实际发生来触发,不再由程序中的预定顺序决定,更加符合实际即控制流程由运行时的用户行为决定
④面向对象编程可采用框架结构,部分代码可自动生成提高了编程速度VC++具有典型的框架结构5.面向对象分析•面向对象分析方法找到构成系统的类、类的特性、他们之间的关系等使用的工具主要有“用例图”、“类图”、“时序图”等•三个不同层次的对象⑴信息对象开发系统中的实体,如“学生”、“教师”等⑵I/O对象输入/输出对象,如要输入的订货单,打印报表等⑶内部对象程序设计中使用的对象,如窗体、控件等6.面向对象设计在一个大系统中找到若干彼此互相独立但又有联系的对象这种寻找对象的过程可以逐步进行,即大对象中又包括了很多小对象,一次往下直至不能再分为止找到每个对象的属性即相关的处理方法找到对象之间的联系每个对象可以相对独立地设计最后把他们连在一起,形成一个完整的系统7.面向对象方法的特点1)面向对象将数据与对数据的操作封装在一起,形成一个整体2)系统分析与设计过渡平滑主要指系统分析与设计之间联系紧密,可以认为系统分析就是设计的原型如画出类图后就很容易设计出类3)分析与设计于现实世界非常贴近,符合人们的思维习惯4)对象彼此是相对独立的,程序员在长时间的工作中可以积累大量的对象开发新的系统时,程序员可使用原来的对象或稍作改变,像堆积木一样很快搭建起系统,大大地缩短了工期5)易于扩展和维护第三节总体规划
一、总体规划的内容与步骤1.总体规划的重要性⑴总体规划是系统开发成功的基础⑵总体规划是整个系统开发的纲领⑶总体规划是筹措资金的依据⑷总体规划是开发项目确立的依据2.总体规划的内容
①初步调查、分析与评价
②确定系统的目标、规模、功能及约束等
③拟定系统初步实现方案
④可行性分析3.总体规划的步骤⑴初步调查⑵战略分析⑶定义约束条件,即系统管理的范围⑷明确目标⑸拟定系统初步实现方案⑹可行性分析⑺选择开发方案⑻提出实施进度4.现行系统初步调查⑴调查对象和目的向谁调查,调查应达到的目的⑵调查内容原系统管理流程、管理水平等详细见p186⑶调查方法1)调查计划2)调查顺序3)调查方法4)调查记录5.系统目标的确定充分考虑系统的适用性、经济性、先进性和整体性6.可行性分析⑴开发系统的必要性⑵开发系统的可行性,包括:1)技术可行性当前技术能否实现2)经济可行性是否有经济能力开发,运行后是否可获得利润3)运行可行性使用系统人员的技术水平,管理措施等7.系统开发方式有自行开发、委托开发、联合开发和购买商品软件各种开发方式的比较见p188表6-
18.系统开发策略⑴“自下向上”的开发策略先开发最底层,最基本的模块,逐层往上进行合成,最后形成一个完整的系统优点可逐步满足用户需求,边实施边见效缺点整体性和协调性差⑵“自上向下”的开发策略先开发最上层的控制模块,逐层向下开发,最后开发最底层,最基本的模块优点整体性和协调性号缺点对大系统,难度大因为有时最底层,最基本模块的功能不是很清楚
二、企业系统规划法(BPS方法)BPS方法是以一体化的观点定义系统总体结构,以对企业的现实环境进行调查为起点,采用“自上而下”的规划,“自下而上”的实施,使系统具有良好的整体性和一致性•基本思想
①对各种需求信息进行综合分析;
②确定系统所有过程和数据类;
③编排出过程/数据类矩阵(U/C)(为找出子类作准备);
④划分出子类;
⑤画出数据流程图(即系统的逻辑模型)•主要工作步骤1.立项、准备确定研究项目后,建立总体规划小组2.调研3.定义企业过程企业过程(管理功能)是指企业资源转化和资源管理中有逻辑关系的决策和活动的集合定义企业过程的实质是了解企业的所有管理活动,并把这些管理活动规范化形成条文如定义考勤员的职责范围、定义生产调度员的职责范围等4.定义数据类•数据类逻辑上密切相关的,能组成相对独立的完整数据单位的一类数据如经营计划产生的计划报表、工资计算产生的工资汇总表等•数据类的识别方法⑴实体法实体与企业有关的可以独立考虑的事物,如客户、产品、材料等实体数据类型有4种计划型、统计型、事务型和文档型⑵过程法分析企业活动中的每一个过程的输入数据和输出数据,再对这些数据进行分类例如工资系统的输入数据是考勤数据,输出是工资表表5.设计信息系统总体结构⑴建立U/C矩阵,p191表6-2⑵正确性性检验完备性检验表中的每一列是否有一个C产生数据,至少有一个U使用数据表中的每一行是否具有产生者或使用者一致性检验表中的每一列必须有且只有一个C无冗余性检验表中不能有空行和空列如发生上述情况,需根据实际情况进行纠正⑶调整矩阵使C处在对角线上即调整列的位置⑷根据实际情况划分小方块,即把同类的放在一起P192表6-3⑸画出数据流图注意数据流的方向是从产生的方块流向使用的方块P193图6-46.确定子系统开发的优先顺序根据人力、财力和事件要求等确定子系统开发的优先顺序7.形成文档
三、关键成功因素法(CSF法)关键成功因素法是以关键因素为依据来确定系统信息需求的一种MIS总体规划的方法在现行系统中,总存在着多个变量影响系统目标的实现,其中若干个因素是关键的和主要的(即成功变量)通过对关键成功因素的识别,找出实现目标所需的关键信息集合,从而确定系统开发的优先次序如选购电脑的关键因素是CPU、内存、硬盘等,而不是机箱、键盘及随机赠送等第四节系统分析制定总体规划后,就要进行开发实施系统分析是开发实施的第一步
一、系统分析的概念1.系统分析的含义系统分析又称需求分析和逻辑设计通过系统分析确定系统的功能任务和指标,采用哪些方法和手段来完成物理设计系统分析包括功能需求和信息需求信息需求指的是输入与输出数据2.系统分析的任务和步骤任务现行系统调查;现行系统分析评价;建立新系统逻辑模型;书写系统分析说明书步骤现行系统的详细调查;系统化分析;新系统逻辑方案的确定
二、现行系的详细调查包括组织机构调查、管理功能调查、管理业务流程调查和数据流程调查用有关图表对调查结果进行描述常见的图表有组织机构图、管理功能图、业务流程图、数据流程图和数据字典等
(一)组织机构调查P194图6-5
(二)管理功能调查P195图6-6
(三)管理业务流程调查P196图6-7
(四)数据流程调查•数据流程图是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程数据流程图的基本成分•数据流程图的组成 系统部件包括系统的外部实体、处理过程、数据存储和数据流四个组成部分
①外部实体外部实体指系统以外又和系统有联系的人或事物,它说明了数据的外部来源和去处,属于系统的外部和系统的界面外部实体支持系统数据输入的实体称为源点,支持系统数据输出的实体称为终点
②处理过程 处理指对数据逻辑处理,也就是数据变换,它用来改变数据值而每一种处理又包括数据输入、数据处理和数据输出等部分
③数据流数据流是指处理功能的输入或输出
④数据存储数据存储表示数据保存的地方,它用来存储数据系统处理从数据存储中提取数据,也将处理的数据返回数据存储•数据流程图使用的符号•数据流图中所用的符号外部实体处理数据流数据存储例第五章账务处理系统数据流程图附毕业设计论文中的数据流图
2.3数据流图
2.
3.1顶层数据流图图2-1“数字实验室系统”顶层数据流图
2.
3.2第二层数据流图样品管理
1.0检验管理
2.0报告书管理
3.0检验项目方法管理
4.0人员权限管理
5.0纠错管理
6.0样品信息表检验结果信息表检验项目方法信息表项目国标组样品信息及项目请求输入样品信息建立、修改检验项目信息质控员受检单位或委托单位法人或委托人管理员收样员化验员检验结果输入任务单验证制作签发判定分配验证验证验证接收报告书纠错信息表修改与原数据输出设定人员信息表权限图2-2“数字实验室系统”第二层数据流图
2.
3.3细化数据流图样品信息输入
1.1任务分配
1.2收样员化验员样品信息表样品分类信息表样品分类
1.3样品状态信息管理
1.4登记任务单初始页显示图2-3样品信息管理检验结果输入
2.1检验项目计算类型分类(辅助输入)
2.2输入权限
2.3结果三级审核管理
2.4权限信息表样品结果信息表化验员样品任务单信息检验项目方法信息输入测量值验证用户自定义公式输入、复核、审核样品结果图2-4检验结果管理报告书制作
3.1签发
3.2审核
3.3发放
3.4法人或委托人受检单位或委托单位检验结果数据表项目国标组质控员生成签发接受输出对比负责人审核权限验证权限验证人员信息表权限验证权限验证图2-5报告书管理检验项目常规信息
4.2公式管理
4.3化验员检验项目信息表检验项目信息辅助表建立、修改选择默认输入值的转换
4.1人员信息表权限验证图2-6检验项目信息管理检验项目权限
5.1人员职能权限
5.2提交分配权限
5.3管理员人员信息表读取读取写入化验员科室负责人图2-7检验项目方法管理样品基本信息纠错
6.1检验结果纠错
6.2提交纠错结果
6.4化验员人员信息表报告书纠错
6.3修改修改验证权限验证权限写入收样员质控员修改纠错历史信息表样品基本信息表检验结果数据表验证权限图2-8纠错管理
(五)数据字典数据字典是对数据流程图中外部实体、数据流、数据处理和数据存储的文字说明P167给出了其中的部分条目1.数据字典的内容⑴数据元素包括名称、编码、类型和长度、取值范围等⑵数据结构描述数据之间的关系,如把“学生”定义为一个结构体,其中包括多个成员数据结构允许嵌套,即结构体的成员还可以是一个结构体⑶数据流包括名称、来源、去想、流通量等⑷数据存储包括名称、记录数、预计增长率、最大记录长度等⑸加工处理逻辑包括名称、说明、加工处理描述、输入/输出等⑹外部实体包括名称、本系统和外部实体之间的数据流等2.数据字典中加工处理逻辑的描述工具⑴结构化语言介于自然语言和高级语言之间的一种语言如类C语言、类Java语言等其中也有赋值、判断、循环和输入、输出等用结构化语言对加工处理逻辑的描述,通常称为“算法”,如类C语言写的算法,看起来像C程序,但语法要求不严格,不能直接上机执行⑵判定(决策)树当只有两种可能时,使用判断语句较为合适当有多种可能时,使用判断语句较为复杂此时使用判断树比较简单判定树适用于有多种可能,但每一种可能只有一种取值的情况判定树是一种横向的树,最左侧为根,最右侧的叶子为要执行的动作,中间为条件例p204图6-12判定树与C语言中的switch语句相对应⑶判定(决策)表判定表适用于有多种可能,且每一种可能有多种取值的情况以p205的例子进行说明3.数据字典的建立于管理可以手工建立,把各种条目书写在规格统一的卡片上由计算机自动建立如SQLServer有此功能
三、系统化分析在现行系统详细调查的基础上,找出现行系统的目标、功能、业务流程和数据流程等的不足,提出优化改进方法系统化分析的主要内容有1.目标和体制分析评价目标分析评价分析现行系统的目标是否合理,能否满足或脱离实际要求体制分析评价现行管理体制能否保证系统的顺利开发与运行2.逻辑功能分析评价新系统的功能应比原来系统先进,新系统的功能应最接近用户需求,新系统的功能还有哪些地方需要改进3.业务流程分析评价分析业务流程中不合理的地方,对原业务流程进行优化即删除“人浮于事”的部门,让所有的部门、所有的人都“紧张”起来,大家都在“马不停蹄”、“有条不紊”地高效工作主要包括
①原有流程分析;
②业务流程的优化;
③确定新的业务流程4.数据流程分析评价数据流程主要指系统中某些部门产生的数据要向另一些部门传送主要包括
①原有流程分析;
②数据流程的优化;
③确定新的数据流程
四、新系统逻辑方案的确定逻辑方案是系统分析阶段的成果主要包括⑴系统目标的细化如查询条件的种类,响应时间等⑵新系统的业务流程简单有效,充分发挥计算机管理的优势⑶新系统的数据流程计算机内的数据流程应与实际的数据流程相符,利于编程⑷新系统的逻辑结构画出各种图表及必要的文档如数据流图、ER图、总体功能图、子系统功能图、结构化程序设计流程图、主要的界面图等⑸新系统中数据资源的分布数据在网络中如何分布如数据库和共享文件应放在服务器中,每个子系统单独使用的数据可放在客户端分布式系统中数据资源的分布较为复杂⑹新系统的管理模型原来手工管理时期的管理模型已不再适用,应确立新的管理模型注此过程可能非常复杂,如新系统要求管理人员的素质要高,且可以大大地精简人员,如何安置原来的人员其中有很多社会因素必须考虑第五节系统设计
一、系统设计的概念1.系统设计的含义在逻辑设计的基础上,制定具体的实施方案,即进行物理设计注意系统设计不是系统实施,即逻辑设计解决要做什么,系统设计解决怎么做,系统实施才是真正地去做如逻辑设计确定了采用C/S模式,系统设计确定具体服务器及客户端的类型、档次等系统实施阶段负责购买又如逻辑设计确定了数据库的概念结构(主要指ER图及规范化处理到3NF),到底选用SQL还是Oracle,在系统设计阶段确定具体购买及安装在系统实施阶段完成2.系统设计的目标系统设计在满足逻辑设计的功能要求基础上,在现有条件下,尽可能各种性能指标•评价和衡量系统设计优劣的指标有⑴系统的工作效率主要指处理能力、处理速度、响应时间等⑵系统的可靠性主要指系统运行时的抗干扰能力如病毒的防治、人为错误(输入数据超出范围等)、自然灾害等⑶系统的工作质量主要指系统提供信息的准确性、易读性及操作方便性等⑷系统的可变性主要指系统修改与维护的难易程度主要取决于系统设计方式,设计时要求各部分独立性要强如企业部门做了重新调整,程序应做到基本不变⑸系统的经济性收益大于支出3.系统设计的主要内容硬件设计根据逻辑设计的功能,确定计算机机型、档次及各种附属设备,如打印机、绘图仪等软件设计系统软件的设计包括操作系统、数据库、前台开发工具等,这部分主要是购买商品软件应用软件可以购买商品软件,也可以自己开发,要视情况而定如财务软件国家规定必须购买商品软件(用友等),其它可根据自身情况而定如自己开发,包括代码设计、输入设计、输出设计、人机对话设计、处理过程设计和数据库设计等
二、结构化系统设计方法(SD法)SD法是将系统整体看作一个模块,按其功能分为若干个子模块,这些子模块各自承担系统部分功能,并协调完成系统总体功能然后,将每一个子模块分别作为整体,进一步划分下一层功能更简单的子模块,如此类推,直至模块功能不能再划分为止,最终形成层次型的系统结构模型•模块化按照模块化的指导思想,一个复杂系统可以按一定规则由若干相对独立的、功能单一的模块构成模块是结构化系统的基本要素,其功能应当简单明确,模块间联系应该尽量减少•模块的三种基本结构顺序结构、循环结构和选择结构•优点可靠性、维护性、理解性和扩充性都比较高
三、功能模块设计
(一)模块的概念模块用名字可以调用的一段程序语句模块的属性输入和输出、逻辑功能、运行程序和内部数据模块的逻辑功能是如何把输入转换为输出的
(二)模块结构中的符号符号见P210图6-14
(三)模块结构图是一个分层的结构图,最上层只有一个模块,各层模块的调用由实际情况决定
(四)模块设计原则1.块间耦合程度尽可能低,即块间调用越少越好减少复杂性,便于调试2.块内聚合度尽可能高,即块内各部分的联系越紧密越好如数据库设计中,在有联系的表中要设计外键,做到连锁删除与连锁更新等3.启发式规则⑴模块规模要适中,一般不超过60条语句太大不易调试⑵模块的扇出系数要适中,模块的扇出系数是一个模块调用下一级模块的个数一般不超过7个因为扇出系数太大,模块紧凑性差即聚合度低⑶模块的扇入系数要大,模块的扇入系数是一个模块被直接调用的上一级模块的个数扇入系数大表明系统通用型强、冗余度低、共享性越好⑷模块的深度和宽度应适当,深度指模块的最大层次数,宽度指同级模块的最大数一个系统的功能确定后,深度和宽度成反比深度大必定宽度小,反之深度小必定宽度大深度小宽度大时,扇出系数大;深度大宽度小时,调用的层次多,系统开销大
(五)功能模块设计系统整体看作一个模块,按其功能又可划分为分为若干个子模块,然后将每一个子模块分别作为整体,进一步划分下一层功能更简单的子模块,如此类推,直至模块功能不能再划分为止,最终形成层次型的系统结构模型一般来说,最上层模块叫“总控模块”,就是系统的名字;第二层层是“控制模块”,就是系统的子系统;从第三层开始是功能模块P212图6-16模块划分的依据是数据流图,数据流图有两种结构1.以变换为中心的设计变换型数据流图有三部分组成输入数据、变换数据、输出数据变换型数据流图是一个线性结构P213图6-17,图6-182.以事物为中心的设计事物型数据流图是一个非线性结构,根据输入数据类型的不同,采用不同的处理方法,对应多个输出P213图6-19,图6-20
(六)IPO图它是输入加工输出INPUTPROCESSOUTPUT图的简称如企业网站注册模块的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.代码设计的步骤⑴确定代码化对象即对谁编码,如身份证号码对象是具有中国国籍的公民⑵分析代码化对象的特点不同的对象有不同的特点,它决定了编码方法如图书、产品、职工都有各自的特点⑶确定编码方式根据代码化对象的特点确定编码方式⑷编写代码簿4.代码的管理制定一整套代码管理的责任、权限、代码变更手续等规章制度,进行科学管理
六、输出设计输出设计就是完成模块结构图中输出模块的功能1.输出媒介和装置⑴打印机⑵屏幕显示器⑶磁盘与磁带⑷绘图仪2.输出设计评价评价标准⑴提供的信息是否及时、准确、全面⑵应充分利用各种输出设备的功能,避免造成设备浪费⑶新系统的输出是否与原系统一致因为有些上报的报表,在新系统中已有固定的格式,是不能改的⑷输出的信息是否符合人们的习惯,是否便于阅读和理解注在需求分析中收集到的报表,在新系统的输出中应尽量保持原格式不变如果其中有些用计算机输出确实困难,修改时一定要征求用户的意见,用户不同意,再困难也不可以改4.选择输出设备和媒介需要转储的信息应选用磁盘(包括U盘);需要长期保存的信息应选用磁带;需要人们阅览的信息应选用显示器;上报的报表或需要传阅的信息应选用打印机;机械图纸或其它精密图形应选用绘图仪;总之应根据具体用途和本单位的具体情况而定
七、输入设计输入设计与输出设计不同,输出设计要求有严格的格式,特别是报到上级的报表必须按规定的格式设计报表输入设计是为输入数据准备的,只要看得懂就可以了,因此格式要求不是很严格1.输入装置和媒介键盘、磁带、磁盘、光盘、扫描仪等2.输入设计原则⑴输入量尽可能少,即找到系统最原始的数据,所有对数据的加工都由计算机完成⑵输入过程应简单方便,如发现性别为男的占绝大多数,可在性别处设置默认值“男”⑶尽早检查错误,实现整理原始数据,做到规范、一致⑷减少数据转存3.输入设计的内容和步骤⑴确定输入内容,其中包括数据来源、类型、取值范围、精度等⑵确定输入方式,主要有联机和脱机方式联机方式输入设备直接与主机相连速度慢,主机效率低适于输入后需要马上处理的数据脱机方式输入设备不直接与主机相连,使用卫星机输入,再转存到主机上速度快,主机效率高适于批量输入⑶设计输入数据的输入格式,不是很严格只要易读、易懂、不易出错即可4.输入数据的校验⑴视觉校验⑵重复校验,如设置新密码时要重复输入两次⑶数据类型校验⑷数据界限校验,实现设定取值范围,超过范围为错⑸代码校验位校验,如奇偶校验
八、对话设计对话是指人机对话,人机对话设计主要是指屏幕界面设计、对话方式设计1.对话设计设计原则⑴对话要清楚、简单,符合人们的习惯⑵对话要适合操作人员的水平⑶对用户输入的信息要及时核查,发现问题马上提示错误的性质并通知用户如何更改⑷应引导用户进行操作2.对话方式⑴菜单式⑵填表式⑶回答式⑷提问式
九、数据库设计•几个术语1)DBMSDatabseManagementSystem数据库管理系统如SQL、Oracle、Access等2)DBDataBase数据库在某种DBMS中建立的数据库,用于存储数据、定义数据,操作数据等,3)DBSDatabaseSystem数据库系统由计算机、安装的DBMS、在其中建立的DB、编制的使用DB的应用软件及使用系统的人1.数据库设计的目标⑴满足用户需求⑵良好的数据库性能,包括独立性、共享性、最小冗余、安全、完整、一致、可靠等⑶对现实世界模拟的精确程度⑷能被某个现有的DBMS所接受2.数据库设计步骤⑴需求分析收集资料,定义数据的类型、操作及各种约束条件等⑵概念设计根据需求分析的结果绘制ER图,定义实体、属性和关系⑶逻辑设计把ER图转换为关系模式,定义主键和外键对关系模式进行规范化处理,要求至少3NF第六节系统实现
一、系统实现的概念系统实现的任务包括软件的编制与测试;数据的录入与装配;工作环境的准备;人员培训;书写系统说明书;系统总调试等系统实现后要交给用户使用接下来的工作就是售后服务
二、程序设计与结构化程序设计结构化程序设计采用三种结构顺序结构、选择结构和循环结构,主张尽量少用GOTO语句程序设计应做到变量名要规范;设计风格要一致;尽量做到时间(速度)与空间(存储量)的优化;常用的函数、模块等,要设计成子程序,便于调用;考虑代码共享;子程序尽量做到通用,为以后系统的开发打下基础
三、处理过程的描述常用的有流程图、NS盒图、PAD图1.流程图⑴符号⑵例求5的阶乘2.NS盒图⑴符号顺序结构选择结构两种循环结构⑵例求5!算法用N-S图表示3.PAD图PAD图用来描述程序结构PAD图中最左边的竖线是程序的主线,即第一层控制结构随着程序层次的增加,PAD图逐渐向右延伸,每增加一个层次,图形向右扩展一条竖线PAD图中竖线的总条数就是程序的层次数下面是PAD图的符号
四、软件的测试与排错1.动态测试法(程序在执行状态下测试)⑴黑盒法只测试模块的输入和输出,不关心模块的内部结构⑵白盒法测试模块的内部结构,如其中的一个循环结构、选择结构等,有时需要测试每条语句2.静态测试法(程序在静止状态下测试)由测试人员分析程序结构是否合理变量名、程序设计风格等采取静态测试注意所有的测试都不能使程序完美无缺,只能尽量减少错误因此必须制定详细的测试计划和测试案例
五、系统转换系统转换是指当新系统总体测试完毕,认为可以交付用户使用时,用新系统代替旧系统的过程其方式有⑴直接切换旧系统停止运行,新系统开始运行⑵并行切换新、旧系统并行运行一段时间,再进行切换⑶分步切换每次只切换一部分,直至全部切换为止第七节系统运行管理及维护系统投入运行后,用户可能会发现一些问题其中有些可能是需求分析阶段没有收集到的特殊资料,有些是程序设计中存在的缺陷,可能还有近期企业情况发生了一些变化所有这些都要由用户及时反馈给开发者,开发者必须给与解决注一般在合同上要注明,免费维护的时间段如2年,再以后是要收费的王孟石2012-8-4完成PAGE20。