实验二结构化分析与设计05620512

一.实验目的(1)掌握结构化的需求分析方法;

(2)掌握分层数据流图的绘制、数据字典和加工说明的编制;

(3)掌握数据流图映射为软件结构图的方法;

(4)掌握需求说明书和设计说明。书的主要内容,学习软件需求说明书和设计说明书的编写;

(5)掌握测试的基本方法。

二.实验内容(1)参考一个熟悉的系统,如,机票预订系统/教材订购系统/ATM自动取款机,讨论其用户需求、系统需求和业务需求;

(2)绘制系统的分层数据流图,并给出数据字典;

(3)将系统的分层数据流图映射为软件结构图,绘制软件结构图;

(4)为关键模块进行详细设计,如绘制关键模块的流程图;

(5)实现系统部分功能并测试。

【实例1】机票预订系统

参考:

【实例2】教材订购系统

销售系统的工作过程为:首先由教师或学生提交购书单,经教材发行人员审核是有效购书单后,开发票、登记并返给教师或学生领书单,教师或学生即可去书库领书。

采购系统的主要工作过程为:若是脱销教材,则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书单通知给教材发行人员。

【实例3】图书管理系统

三.实验步骤

(1)复习结构化的分析与设计方法的主要过程;

结构化的分析与设计方法的主要过程:

结构化设计方法给出一组帮助设计人员在模块层次上区分设计质量的原理与技术。它把系统作为一系列数据流的转换,输入数据被转换为期望的输出值,通过模块化来完成自顶而下实现的文档化,并作为一种评价标准在软件设计中起指导性作用,通常与结构化分析方法衔接起来使用,以数据流图为基础得到软件的模块结构。

结构化设计方法的步骤如下:

①评审和细化数据流图

②确定数据流图的类型

③把数据流图映射到软件模块结构,设计出模块结构的上层

④基于数据流图逐步分解高层模块,设计中下层模块

⑤对模块结构进行优化,得到更为合理的软件结构

⑥描述模块接口

结构化设计方法的设计原则:

①使每个模块执行一个功能(坚持功能性内聚)

②每个模块使用过程语句(或函数方式等)调用其它模块

③模块间传送的参数作数据用

④模块间共用的信息(如参数等)尽量少

(2)讨论系统存在的用户角色、工作流等;

(i)本次实验所做的图书借阅系统包含的用户角色有:

①借书者

②图书管理员

③系统管理员

(ii)系统中应存在的工作流:

①图书管理系统能够为一定数量的借阅者提供服务。每个借阅者能够拥有唯一标识其存在的编号。图书馆向每一个借阅者发放图书证,其中包含每一个借阅者的编号和个人信息。提供的服务包括:提供查询图书信息、查询个人信息服务和预定图书服务等。

②当借阅者需要借阅图书、归还书籍时需要通过图书管理员进行,即借阅者不直接与系统交互,而是通过图书管理员充当借阅者的代理和系统交互。

③系统管理员主要负责系统的管理维护工作,包括对图书、数目、借阅者的添加、删除和修改。并且能够查询借阅者、图书和图书管理员的信息。

④可以通过图书的名称或图书的ISBN号对图书进行查找。

(3)对关键功能绘制数据流图,给出数据字典,并反复讨论数据流的合理性;

(i)数据流图:

(ii)数据字典:

①数据流词条描述

②数据元素词条描述

③数据文件词条描述

数据文件名:图书主数据库文件简述:用于存放各类图书基本信息输入数据:图书名称+图书类型+图书状态输出数据:图书编号+图书名称+图书类型+图书状态+登记日期+借还日期数据文件组成:图书编号+图书名称+图书类型+图书状态+登记日期+借还日期组织方式:索引方式存储方式:直接存取频率:高

数据文件名:图书交易流水文件简述:用于记录各类图书交易信息,以便用于查询,统计,恢复。输入数据:无输出数据:交易码+功能码+图书编号+图书名称+图书类型+图书状态+借阅人姓名+登记日期+借还日期数据文件组成:交易码+功能码+图书编号+图书名称+图书类型+图书状态+借阅人姓名+登记日期+借还日期组织方式:顺序方式存储方式:顺序存取频率:高

数据文件名:图书借还文件简述:用于记录图书借还明细信息输入数据:图书编号+图书名称+借阅人姓名+借阅日期+归还日期输出数据:图书编号+图书名称+借阅人姓名+借阅日期+归还日期数据文件组成:图书编号+图书名称+借阅人姓名+借阅日期+归还日期组织方式:索引方式存储方式:直接存取频率:高

数据文件名:图书系统文件简述:用于存放管理系统的系统状态,系统日期,当前图书编号输入数据:系统状态+系统日期+图书编号输出数据:系统状态+系统日期+图书编号数据文件组成:系统状态+系统日期+图书编号组织方式:顺序(单记录文件)存储方式:顺序存取频率:高

(4)对应数据流图,设计系统的功能结构图,关键模块的流程图;

(5)选择对应的结构化程序设计语言,实现并测试部分功能模块

数据库表的具体结构如下:1)管理员表:用于保存管理员信息。代码如下:

SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Users]( [Name][nvarchar](50)NULL, [Password][nvarchar](50)NULL, [Type][int]NULL)ON[PRIMARY]GO2)图书信息表:存储图书信息。代码如下:

SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Book]( [Num][nvarchar](50)NOTNULL, [Name][nvarchar](50)NULL, [Author][nvarchar](50)NULL, [Type][int]NULL, [ISBN][nvarchar](50)NULL, [CBS][nvarchar](50)NULL, [CBRQ][datetime]NULL, [Status][nvarchar](50)NULL,CONSTRAINT[PK_Book]PRIMARYKEYCLUSTERED( [Num]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]GO3)借书卡信息表,代码如下:

SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Card]( [Num][nvarchar](50)NOTNULL, [Name][nvarchar](50)NULL, [Class][nvarchar](50)NULL, [StartTime][datetime]NULL, [EndTime][datetime]NULL,CONSTRAINT[PK_Card]PRIMARYKEYCLUSTERED( [Num]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]GO4)图书借阅表,代码如下:

SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Lend]( [CardNum][nvarchar](50)NULL, [BookNum][nvarchar](50)NULL, [Time][datetime]NULL, [Status][nvarchar](50)NULL)ON[PRIMARY]GO5)图书类型表,代码如下:

SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Type]( [ID][int]IDENTITY(1,1)NOTNULL, [Name][nvarchar](50)NULL,CONSTRAINT[PK_Type]PRIMARYKEYCLUSTERED( [ID]ASC)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY])ON[PRIMARY]GO四.思考题

(1)简述需求说明书,概要设计,详细设计说明书的主要内容。

①软件需求说明书,又称为软件规格说明书,是分析员在需求分析阶段需要完成的文档,是软件需求分析的最终结果。

它的作用主要是:作为软件人员与用户之间事实上的技术合同说明;作为软件人员下一步进行设计和编码的基础;作为测试和验收的依据。

软件需求说明书必须用统一格式的文档进行描述,为了使需求分析描述具有统一的风格,可以采用已有的且能满足项目需要的模板,也可以根据项目特点和软件开发小组的特点对标准进行适当的改动,形成自己的模板。

软件需求说明主要包括引言、任务概述、需求规定、运行环境规定和附录等内容。

②概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、安全设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。

③详细设计说明书又可称程序设计说明书。编制目的是说明一个软件系统各个层次中的每一个程序(每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本部分可以不单独编写,有关内容合并入概要设计说明书中。

(2)结构化分析方法与面向对象分析方法有无本质上的不同?

答:结构化系统分析方法是采用“自顶向下,由外到内,逐层分解”的思想对复杂的系统进行分解化简,从而有效地控制了系统分析每一步的难度,并运用数据流图、加工说明和数据字典作为表达工具的一种系统分析技术。而面向对象的分析方法则是通过将数据和逻辑结构抽象成为对象,运用对象属性和方法等来操作和处理业务数据和逻辑的系统分析方法。两者的区别在于:当软件项目较小、系统分析员能力足够高的时候,结构化方法能快速的找到最简洁、高效率的逻辑模型,结构化方法对复杂问题的帮助有限,而面向对象的分析方法提供了一种方便的、可持续观测和扩展系统的机制,通过信息隐藏和封装等手段屏蔽了对象内部的执行细节,控制了错误的蔓延,对于需求变化频繁的系统,可以用面向对象软件系统的方法。

(3)对数据流图进行审查有何意义?

答:在使用结构化分析方法进行分析时,我们对一个系统的理解,不可能一开始就完美无缺,开始分析一个系统时,尽管我们对问题的理解有不正确、不确切的地方,但还是应该根据我们的理解,用数据流图表达出来,然后对初步完成的流程图进行核对,反复修改完善,从而获得较为完美的数据流图。

(4)给出一次完整的会议讨论纪要,包括议题,最终结果。

答:软件工程实验二小组会议讨论纪要

五、实验小结很好地复习了用结构化设计方法做系统的各个步骤,把其中每个流程自己独立思考了一遍,总体上发现还是有很多很多不会的地方。比如,画分层数据流图时,对该如何正确分层不是很够清晰;“选择对应的结构化程序设计语言实现并测试部分功能模块”这一部分自己不会;等等。还是要多多练习此类题目,掌握其结构化设计方法的主要思想,在练习中加深对有关概念的理解。

THE END
1.2025年度基于UML的图书馆管理系统分析设计报告IT计算机--管理信息系统 图书馆管理系统分析设计 1、系统简介 本系统為一种小型的图书管理系统,需完毕如下工作: (1)借书、还书 (2)在图书馆中增長或删除一本书 (3)按照作者或者专业领域查找一批书 (4)找出被某位读者借出的一批书 (5)找出近来借出某本书的读者 系统的顾客有两类:图书管理员和一般读者。功能https://www.docin.com/touch_new/preview_new.do?id=4773055785
2.图书馆管理系统测试分析报告20231016.doc及发现 IV70523.1测试1(标识符) IV9263.2测试2(标识符) IV110793.3测试3(标识符) IV137834分析摘要 VII123104.1能力 VII238154.2缺陷和限制 VII84724.3建议 VIII231464.4评价 VIII110955测试资源消耗 VIII1引言1.1编写目的该测试报告的编写目的是对该系统进行测试并记录测试过程,对软件的质量进行评价,为软件设计人员提供https://www.renrendoc.com/paper/295300069.html
3.学校图书馆管理信息系统开发的可行性研究报告(通用10篇)学校图书馆管理信息系统开发的可行性研究报告 一、项目概述: 该次系统开发的对象是银杏酒店管理学院,开发该系统的目的主要是对有关读者,书籍,借书,还书,存书等方面的信息进行统一管理,本系统结构分为读者信息管理模块、书籍信息管理模块、借阅信息管理模块和管理者信息管理模块。图书馆信息化是对信息管理系统化、科学化https://www.360wenmi.com/f/fileiv3v59e5.html
4.图书馆管理系统测试分析报告20240311173908.doc图书馆管理系统测试分析报告 1.引言 1.1编写目的 依据测试安排报告,对软件进行测试,具体记录测试过程,以对软件的质量进行评价,为软件设计人员供应BUG依据,故做产生测试分析报告。 1.2项目背景 依据各高校校希望能够充分利用现代科技来提高图书管理的效率,在原有的办公系统基础上进行扩展,将一些可以用计算机来管理的都进行https://max.book118.com/html/2024/0311/8071013077006044.shtm
5.图书馆管理系统图书管理系统的可行性分析报告图书进货管理:1.系统能够记录图书馆购买书籍的基本信息,包括书籍的编码,书名,价格,作者和数量。2系统支持对购买书籍信息的添加,同时更新库存数量。 1.3系统可行性分析: 1. 技术可行性: 在技术可行性方面,我们团队具有较好的编程技术。能够实现对ui界面的实现和优化。我们也具有Mysql等数据库开发工具。同时,在实现过程https://blog.csdn.net/luoqixin/article/details/139107208
6.图书管理系统设计报告(精选5篇)3、进一步加强与同事、读者沟通能力。对于以后的工作,我将更加努力的做好自己的工作,不断的加强自己的能力。 图书管理系统设计报告3 一年来,我本着一切为读者服务的宗旨,通过一年扎扎实实的努力,围绕优化服务、拓展图书馆教育和信息的功能,从读者服务、业务管理、读书活动、提高素质入手,认真完成领导交给的各项任务,积https://www.ruiwen.com/baogao/6481760.html
7.图书管理系统设计报告(精选5篇)3、进一步加强与同事、读者沟通能力。对于以后的工作,我将更加努力的做好自己的工作,不断的加强自己的能力。 图书管理系统设计报告(精选5篇)4 一年来,我本着一切为读者服务的宗旨,通过一年扎扎实实的努力,围绕优化服务、拓展图书馆教育和信息的功能,从读者服务、业务管理、读书活动、提高素质入手,认真完成领导交给的https://www.wenshubang.com/baogao/2575634.html
8.青岛科技大学20172018学年本科教学质量报告3.图书馆及图书资源10 4.信息资源11 三、教学建设与改革12 (一)专业建设12 (二)课程建设13 (三)教材建设14 (四)教学改革14 1.人才培养方式改革14 2.教学模式改革16 3.教学改革成果17 (五)实践教学18 1.实验教学18 2.本科生毕业设计(论文)18 https://xxgk.qust.edu.cn/info/1049/2459.htm
9.校园网设计开题报告范例校园网信息平台应有功能强大的邮件系统和OA系统,可以为每个使用者建立自己的信箱,和OA账号,安全保密又极大地方便了通信。许多事务处理均可以通过邮件和OA提醒,高效便利。 2)电子图书馆 有了电子图书馆以后,所有资料可以以电子文档形式存入大容量服务器中, https://www.yjbys.com/bylw/kaitibaogao/109643.html
10.管理信息系统案例分析报告随着个人素质的提升,报告的使用频率呈上升趋势,我们在写报告的时候要注意逻辑的合理性。那么你真正懂得怎么写好报告吗?下面是小编收集整理的管理信息系统案例分析报告,供大家参考借鉴,希望可以帮助到有需要的朋友。 管理信息系统案例分析报告1 实验一:管理信息系统案例分析 https://www.jy135.com/guanli/2180139.html
11.图书馆管理信息系统可行性分析报告14篇(全文)可行性分析报告 一.引言编写目的基于提高图书馆管理员对用户和图书的管理的效率,把管理员从繁重的工作中解脱出来,同时也让图书馆能够更好的为大众服务.背景 21世纪是一个信息时代,我们一直在获取并应用信息中进步.图书馆是我们获取信息的重要渠道之一,管理系统不完善、开发一套高效的图书馆管理系统是非常必要而且必须https://www.99xueshu.com/w/filelo0qzcmn.html
12.[开题报告]图书馆信息管理系统(附源码)java计算机毕业设计该系统旨在通过集成用户管理、图书分类、借阅查询、借阅归还、图书信息维护、信誉扣除、上报丢失、图书馆信息展示及预订信息管理等核心功能模块,全面优化图书馆的日常管理流程,提升服务质量与效率。同时,通过系统的智能化设计,如智能推荐、数据分析等高级功能,为图书馆管理者提供决策支持,为读者提供更加个性化、精准化的服务https://zhuanlan.zhihu.com/p/719666357
13.500多个全球及各国重要数据网站集锦(老素材,而且里面的内容需要世界和中国宏观经济发展趋势分析与预测。 http://www.china.com.cn/chinese/zhuanti/249651.htm 61. 2003中国经济十大预测报告 提供了福布斯的杂志上的内容,还有专门为福布斯网站设计的内容。 http://www.forbes.com 131. 芬兰赫尔辛基大学经济学信息 -内容含盖经济学大部分学科。 https://www.shangyexinzhi.com/article/2689667.html
14.人力资源管理六大模块于对企业人力资源管理现状信息进行收集、分析和统计,依据这些数据和结果, 结合企业战略,制定未来人力资源工作的方案。正如航行出海的船只的航标的导 航仪,人力资源规划在HR工作中起到一个定位目标和把握路线的作用! 人力资源规划定义 人力资源规划是一项系统的战略工程,它以企业发展战略为指导,以全面核查现 http://www.chinahrd.net/blog/264/1011645/263502.html
15.管理信息系统分析报告管理信息系统分析报告(一) 见于贵公司企业员工人数的不断增长,企业员工的管理工作以日趋繁重,由于企业员工调试灵活,给管理工作带来了难度。为贵公司员工管理部门建立一套网络化的员工管理信息系统已经迫在眉睫。我公司研发的员工管理信息系统通过对员工的进厂、离厂、在职时的各种信息,包括面试管理、招工管理、聘任管理https://www.unjs.com/fanwenwang/gzbg/20160830000000_1319948.html
16.信息检索报告(精选13篇)在撰写实习报告过程中,我发现检索式的书写和检索方法是一个有许多技巧的过程,通过跟老师的学习我只掌握了一部分,后面又跟同学们探讨学到了一些技巧,以后我会更加努力学习文献检索的技巧以充实自己。 通过这一个学期跟随老师的学习,我学到了很多实用知识。我前后一共学到了CNKI、超星数字图书馆、中国专利信息网、中国https://www.liuxue86.com/a/5142179.html
17.2012年第10期(总第42期)库内还存有与上述实物资料相配套的纸质地质资料,这些资料是前人按当时的技术要求,在使用馆藏实物时所提交的分析报告和测试结果。按照目前的规定,新的分析报告需以电子文件形式提交,并由CRC负责上传至美国地调局网站上。为保证服务质量,过去的纸质资料经过数字化后上传于网站。 http://www.gsc.cgs.gov.cn/dtyj/201608/t20160812_353753.html
18.计算力学快讯,第8卷,第11期计算力学快讯探测航天器动力学与控制”、“Microfluidics and Lab on Chip for Health and Environment”、“Lattice Boltzmann for urban physics, air quality and emergency evacuation”、“水下无人系统设计中的流体力学关键技术”的报告,赵宁教授、陆夕云院士、许春晓教授、符松教授、陶建军教授、邵雪明教授分别主持了6个大会报告http://jsstam.org.cn/?list_73/1112.html
19.Java图书管理系统总结java图书管理系统报告面对如此庞大的数据量,能够有一套完整、规范、实用的图书馆管理系统是非常有必要的,能够对图书信息以及读者信息进行有效的管理。因此,开发一套图书管理系统是非常有必要的。3 需求分析图书馆管理系统是图书馆管理工作中不可缺少的部分,要能够有效的、快速的管理图书信息,有便捷的操作以及美观的界面,https://blog.51cto.com/u_14125/10900390
20.计算机调研报告(通用12篇)真正的网络工程师应具备ADIT,即Analysis(分析问题的能力)、Design(规划设计解决问题方案的能力)、Implementing(实现规划方案的能力)、Troubleshooting(监测整个方案的执行并及时对故障进行排查的能力)。当前网络工程师的需求状况随着我国信息技术的不断普及,越来越多的政府机构、高等院校和行业企业都采用信息技术来进行各自的https://www.oh100.com/a/202303/6298022.html
21.学生信息管理系统的用例图和图书管理系统系统分析及用例图[通俗易图书馆向每一个借阅者发放图书证,图书证中包含每一个借阅者的编号和个人信息。系统通过一个单独的程序为借阅者提供服务,不需要管理人员的干预,这些服务包括提供查询图书信息、查询个人信息服务和预定图书服务等。 当借阅者需要借阅书籍、归还书籍时需要通过图书管理员进行,也就是说借阅者不直接与系统交互,而是图书管理https://cloud.tencent.com/developer/article/2091279