实验项目:小型软件的系统设计 实验学时:2学时 实验日期:2014年10月30日 实验目的:通过对软件设计要求学生掌握系统的总体结构设计、模块结构设计、代码设计、输入输出设计等相关知识 实验要求:1. 熟悉系统物理配置方案设计 2. 了解系统设计报告的内容。 3. 了解软件结构设计;代码 设计;详细设计等 实验内容:系统物理配置方案设计和内容 在进行总体设计时,还要进行系统总体布局的设计。 1、 系统总体布局的原则 就系统布局而言,一般应考虑以下几个问题: ① 系统类型:即是采用集中式还是分布式 ② 数据存储:可以采用一种,也可以混合使用 ③ 硬件配置:设备类型、工作方式 ④ 软件配置:购买或自行开发 2、 设计系统物理配置方案的方法 ① 信息调查法 ② 方案征集法 ③ 招标法 ④ 适用法 ⑤ 基准测试法 3、 系统配置方案报告的具体内容 ① 计算机物理系统配置概述。介绍物理系统总体布局情况,以及选择计算机物理系统的背景、要求、原则、制约因素等。 ② 计算机物理系统选择的依据。包括功能要求、容量要求、性能要求、硬件设备配置要求、通信与网络要求、应用环境要求等。 ③ 计算机物理系统配置。包括4方面的内容:第一,介绍硬件结构情况以及硬件的组成及其连接方式。第二,介绍硬件系统配置的选择情况。第三,介绍通信与网络系统配置的选择情况。第四,介绍软件系统配置的选择情况。 ④ 指出费用情况。介绍计算机硬件、软件、机房及其他附属设备、人员培训及计算机维护等所需费用、并给出预算结果。 ⑤ 具体配置方案的评价。从使用性能和价格等方面进行分析,提供多个物理系统配置方案。通过对各个配置方案进行评价,提出设计者倾向性的选择方案。 3.(1)软件结构设计是对组成系统的各个子系统的进一步分解与规划。它主要包括构造子系统的模块元素;定义每个模块功能;定义模块接口,设计接口的数据结构;确定模块间的调用与返回关系;评估软件结构质量,进行结构优化等。 1)模块化。系统中任何一个处理功能都可以看成是一个模块。根据模块功能具体化程序不同,可以分为逻辑模块和物理模块。模块化是软件设计和开发的基本原则和方法,是总体设计的主要工作之一。模块是指一个独立的,拥有明确定义的输入、输出特性的程序实体。模块结构中的基本符号主要包括:模块、调用、数据、控制信息和转接符号。 模块的独立性。模块的独立性是指不同模块之间的相互联系应尽可能的少,尽可能减少公共的变量和数据结构;一个模块应尽可能在逻辑上独立,有完整单一的功能。 15
度量模块独立性的程度主要从模块的内聚性和模块的耦合度两个方面。
2)耦合度是从模块外部考察模块的独立性程度。它用来衡量多个模块间的相互联系。主要包括内容耦合、公共耦合、控制耦合、数据耦合。独立耦合。
内聚性是模块内部各成分之间的联系。显然,模块的内部各成分联系越紧密,即其内聚性越大,模块独立性越强,系统越易理解和维护。内聚性按照强度从弱到强为偶然耦合、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚。
(2)1)代码设计:代码是代表事物名称、属性、状态等的符号,一般用数字、字母和它们的组合来表示。在系统开发过程中,设计代码的目的是唯一化、规范化、系统化。唯一化是指为事物提供一个概要而不含糊的认定,便于数据的存储和检索;规范化是指编码要有规律,符合某一类事物的聚集,提高处理的 效率和精度;系统化是指符合国家或行业标准,提高数据全局一致性。 2)代码设计的功能主要有:鉴别功能、分类、排序、专用含义。 3)代码的种类:顺序码、区间码、助忆码。 (3)详细设计是软件工程中软件开发的一个步骤,就是对概要设计的一个细化,就是详细设计每个模块实现算法,所需的局部结构。详细设计的主要任务是设计每个模块的实现算法、所需的局部数据结构。 详细设计的方法:传统软件开发方法的详细设计主要是用结构化程序设计法。详细设计的表示工具有图形工具和语言工具。图形工具有业务流图、程序流程图、PAD图(Problem Analysis Diagram)、NS流程图(由 Nassi和 Shneidermen开发,简称 NS)。语言工具有伪码和PDL(Program Design Language)等。 详细设计的工具:
(1)程序流程图。程序流程图又称为程序框图,是使用最广泛然而也是用得最混乱的一种描述程序逻辑结构的工具。它用方框表示一个处理步骤,菱形表示一个逻辑条件,箭头表示控制流向。其优点是:结构清晰,易于理理解,易于修改。 (2)盒图。盒图是一种强制使用结构化构造的图示工具,也称为方框图。其具有以下特点:功能域明确、不可能任意转移控制、很容易确定局部和全局数据的作用域、很容易表示嵌套关系及模板的层次关系。
(3)PAD图。PAD是一种改进的图形描述方式,可以用来取代程序流程图,比程序流程图更直观,结构更清晰。最大的优点是能够反映和描述自顶向下的历史和过程。PAD提供了5中基本控制结构的图示,并允许递归使用。
PAD的特点有:使用PAD符号设计出的程序代码是结构化程序代码;PAD所描绘的程序结构十分清晰;用PAD图表现程序的逻辑易读、易懂和易记;容易将PAD图转换成高级语言源程序自动完成;即可以表示逻辑,也可用来描绘数据结构;支持自顶向下方法的使用。
(4)PDL。PDL也可称为伪码或结构化语言,它用于描述模块内部的具体算法,以便开发人员之间比较精确地进行交流。语法是开放式的,其外层语法是确定的,而内层语法则不确定。外层语法描述控制结构,内层语法描述具体操作,考虑到不同软件系统的实际操作种类繁多,内层语法因而不确定,它可以按系统的具体情况和不同的设计层次灵活选用,实际上任意英语语句都可用来描述所需的具体操作。用它来描述详细设计,工作量比画图小,又比较容易转换为真正的代码。 PDL的优点:可以作为注释直接插在源程序中;可以使用普通的文本编辑工具或文字处理工具产生和管理;已经有自动处理程序存在,而且可以自动由PDL生成程序代码。
16
实验项目:小型软件的系统实施 实验学时:2学时 实验日期:2014年11月06日 实验目的:要求学生掌握系统实施的步骤与内容、结构化程序设计方法及系统转换的相关知识等 实验要求:1. 熟悉自顶向下的模块化设计及系统维护与管理的相关知识。 2. 了解系统物理实施的工作内容。 3. 熟悉系统实施的任务;结构化程序设计方法;系统转换等 实验内容:自顶向下的模块化设计 结构化方法主张自顶向下实现,先实现上层模块,逐步向下,最后实现下层最基本的模块。自顶向下模块化程序设计中应注意: ① 块应该具有独立性。在系统模块之间应尽可能的相互独立,减少模块间的耦合,即信息交叉,以便于将模块作为一个独立子系统开发。 ② 作为大小划分要适当。模块中包含的子系统模块数要适当,以便于模块的单独开发,又便于系统重构。 ③ 模块功能要简单。底层模块一般应完成一项独立的处理任务。 ④ 共享的功能模块要集中。对于可供各模块共享的处理功能,应集中在一个上层模块中,供各模块引用。 系统维护与管理的相关知识 1、 维护的内容。系统维护主要包括以下几个方面的内容: ① 程序的维护:在系统维护阶段,会有一部分程序需要改动。 ② 数据文件的维护:业务发生了变化,从而需要建立新文件,或者对现有文件的结构进行修改。 ③ 代码的维护:随着环境的变化,旧的代码不能适应新的要求,必须进行改造,制定新的代码或修改旧的代码体系。 ④ 机器、设备的维护:包括机器、设备的日常维护与管理,一旦发生晓得故障,要有专人进行维修,保证系统的正常运行。 2、 维护的类型。依据信息系统需要维护的原因不同,系统维护工作可以分为四种类型。 ① 正性维护。这是指由于发现系统中的错误而引起的维护。工作内容包括诊断问题和改正错误。 ② 适应性维护。指为了适应外界环境的变化而增加或修改系统部分功能的维护工作。 ③ 完善性维护。这是指为了改善系统功能或用户的需求而增加的新的功能的维护工作。 ④ 预防性维护。这是主动性的预防措施。 3、 系统维护的管理。通常对系统的修改应执行以下步骤: ① 提出修改要求。操作人员或业务人员用书面形式向系统管理人员提出对某项工作的修改要求。 17
② 领导批准。系统管理人员进行一定的调查后,根据系统的情况和工作人员的
情况,考虑这种修改是否必要、是否可行。
③ 分配任务。系统主管人员若认为有必要进行修改,则向有关的维护人员下达任务,说明修改的内容、要求、期限。
④ 验收成果。系统修改人员对验收成果进行验收。
⑤ 登记修改情况。登记所做的修改,作为新的版本通报用户和操作人员,说明新的功能和修改的地方。 2.系统实施阶段的工作内容:
(1)系统实施是指开发信息系统的最后一个阶段。特点是:
工作量大,投入的人力、物力多。为顺利实施阶段的各项工作,主要包括硬件准备、软件准备、人员培训和数据准备。
1)硬件准备包括计算机主机、输入输出设备、存储设备、辅助设备、通信设备等
2)软件准备包括系统软件、数据库管理系统以及其他应用软件; 3)人员培训主要指用户培训,包括主管人员和业务人员; 4)基础数据准备是系统良好的调试的保证。
(2)系统实施的步骤:硬件获取、软件编程、用户准备、人员、机房场所准备、数据准备、安装、测试、试运行、系统切换、用户验收等。
3.(1)系统实施阶段的任务:实现系统设计阶段提出的物理模型,按照实施方案完成一个可以实际运用的信息系统,交付用户使用。
(2)结构化程序设计方法是指采用顺序结构、循环结构、选择结构三种基本逻辑结构来编写程序的方法。顺序结构表示含有多个连续的处理步骤,按照书写的先后顺序执行;循环结构是由一个或多个模块构成,程序运行时重复执行,直到满足某一条件为止;选择结构是由某个逻辑表达式的取值决定选择两个处理加工中的一个。
(3)1)完成系统测试之后,即可将其交付使用。所谓交付使用是新系统与旧系统的交替,即旧系统停止使用、新系统投入执行。整个交付流程也可以称为系统的转换流程,在这个流程中要选择切换的方式,要完成客户的操作训练、数据的转换等工作,在新系统投入使用的流程中要做好系统的维护等工作。 2)系统转换前的准备工作主要包括数据准备、文件准备、用户训练等。 3)系统转换的内容:新系统和旧系统的切换;把旧系统的文件转换成新系统的文件;数据的整理和录入;人员、设备、组织结构的改造和调整;有关资料档案的建立和移交。
4)系统切换主要有三种方式:直接转换法、并行切换法、分段转换法等。
18
实验项目:常用MIS开发工具 实验学时:2学时 实验日期:2014年11月13日 实验目的:1、了解常用MIS开发工具的基本功能; 2、Microsoft Visio及Access软件的基本操作; 实验要求:1、描述成绩管理的业务,并依此用Visio软件绘制该成绩管理业务的E-R图; 2、根据绘制的E-R图设计成绩管理业务的数据库,用Access创建该数据库,在该数据库中包含:学生信息表、课程信息表、成绩信息表。 实验内容: 1.学生成绩管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护以及前段应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强,数据安全性好的库。学生成绩管理系统的E-R图如下所示: (2)1)创建数据库。命名为“WU” 2)创建数据表。主要包括学生信息表、课程信息表和成绩信息表三大表。 ? 学生信息表 ? 课程信息表 ? 成绩信息表 19