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

博客班级 计算机18级
作业要求 结构化分析
作业目标 掌握结构化的需求分析方法
学号 3180701139
一.实验目的

(1)掌握结构化的需求分析方法;

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

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

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

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

二.实验内容

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

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

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

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

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

【实例1】机票预订系统

参考:

(1)携程网:https://flights.ctrip.com/international/search/domestic

(2)去哪儿:https://www.qunar.com/?ex_track=auto_4e0d874a

为了方便旅客,某航空公司拟开发一个机票预定系统。旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行

时间、旅行目的地等)输入该系统,系统为旅客安排航班,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误即印出

机票给顾客

【实例2】教材订购系统

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

书单,教师或学生即可去书库领书。

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

行人员。

【实例3】图书管理系统

参考:http://lib.ahpu.edu.cn/

三.实验步骤

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

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

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

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

(5)选择对应的结构化程序设计语言,实现并测试部分功能模块
三、图书管理系统
1.系统结构功能分析图

2.业务流程图

3.数据流程图
图书管理系统顶层图:

查询操作:

借阅:

归还:

4.数据字典
数据元素
数据元素条目
数据元素名称:用户密码
别名:userpass
长度:16
描述:用户登录系统的密码
有关的数据结构:User

数据元素条目
数据元素名称:图书分类编号
别名:Bookindex
类型:数值型
长度:10
描述:图书分类的编号

数据元素条目
数据元素名称:读者编号
别名: Readerindex
类型:数值型
长度: 10
描述:区分读者的唯一标识

数据元素条目
数据元素名称:图书名称
别名: BookName
类型:文本型
长度: 50
描述:图书的名称

2)数据流条目
数据流条目
数据流名称:添加读者
简述:进入读者管理可进行添加
数据来源:读者资料
数据流向:读者信息表
包含的数据结构:数据流条目

数据流名称:查询结果
简述:从图书信息表中检索信息
数据来源:图书信息表
数据流向。查询结果

包含的数据结构:数据流条目
数据流名称:查询读者信息
简述:读者登录后可进行查询
数据来源:读者信息查询窗口
数据流向:读者信息查询窗口

包含的数据结构:
数据流条目
数据流名称:按条件查找
简述:读者按类别或作者查找的结果
数据来源:读者信息查询条件窗口
数据流向:读者信息查询条件窗口

包含的数据结构:
数据流条目
数据流名称:管理员登录
简述:管理员对图书进行管理
数据来源:管理员表
数据流向:管理员表

包含的数据结构:
数据流条目
数据流名称:显示图书
简述,由条件将齐类数据显来
数据来源:图书信息表
数据流向:浏览图书

包含的数据结构:
数据流条目
数据流名称:修改读者信息
简述:输入须修改的信息
数据来源,读者信息表
数据流向:读者信息修改界面

包含的数据结构:
数据流条目
数据流名称:读者信息
简述:读者都能对它进行维护
数据来源:读者信息表
数据流向:读者信息维护

包含的数据结构:
数据流条目
数据流名称:添加图书
简述:新购图书的添加
数据来源:图书信息表
数据流向:图书信息表

包含的数据结构:
数据流条目
数据流名称:修改图书信息
简述:图书更新
数据来源:图书信息表
数据流向:图书信息表

包含的数据结构:
3)处理过程描述
处理功能条目
名称:查询图书
输入数据:按图书编号、书目名称、作者等来查询
输出数据:图书
处理逻辑:(1)支持模湖查询编号、书目名称、书目作者
(2)对查询的图书可进行修改删除等
处理功能条目
名称:添加用户
输入数据:用户ID,用户密码,用户名称。
输出数据:是否添加成功
处理逻辑:(1)用户名称是否不同
(3)用户密码是否包含非法字符
处理功能条目
名称:添加图书
输入数据:图书编号,图书名称,作者,在库数量,单价,图书分类,图书简介。
输出数据:是否添加成功
处理逻辑: (1)是否有漏填
(2)数据要求是否匹配
(3)信息是否填写完整
(4)数据存储
数据存储条目
数据存储名称:图书信息表
说明:存储图书基本信息
结构:图书编号,图书名称,图书分类,出版社,入库时间,入库数量,图书状态,在库数量,图书简介。
关键字:图书编号
相关处理:查询,修改,添加,删除。

数据存储条目
数据存储名称:管理员信息表
说明:存储管理员信息
结构:管理员编号,管理员姓名,管理员密码。
关键字:管理员编号

4)外部实体条目
外部实体条目
名称:图书
说明:图书情况
输出数据流:图书借阅信息表
输入数据流:图书借阅信息

外部实体条目
名称:管理员
说明:读者信息情况
输出数据流:读者信息表
输入数据流:管理员 读者信息

外部实体条目
名称:读者
说明:读者借阅情况
输出数据流:读者借阅信息单
输入数据流:读者 借阅信息

四.思考题

(1)简述需求说明书,概要设计,详细设计说明书的主要内容。
答:需求分析:产生软件功能规格说明书,需要确定用户对软件的需求,要作到明确、无歧义。不涉及具体实现方法。
用户能看得明白,开发人员也可据此进行下面的工作(概要设计)。
概要设计:产生软件概要设计说明书,说明系统模块划分、选择的技术路线等,整体说明软件的实现思路。并且
需要指出关键技术难点等。
详细设计:产生软件详细设计说明书,对概要设计的进一步细化,一般由各部分的担当人员依据概要设计分别完
成,然后在集成,是具体的实现细节。理论上要求可以照此编码
(2)结构化分析方法与面向对象分析方法有无本质上的不同?
答:结构化系统分析方法是采用自顶向下,由外到内,逐层分解'的思想对复杂的系统进行分解化简,从而有效地控
制了系统分析每一步的难度 ,并运用数据流图、加工说明和数据字典作为表达工具的一种系统分析技术。
而面向对象的分析方法则是通过将数据和逻辑结构抽象成为对象,运肘象属性和方法等来操作和处理业务数据
和逻辑的系统分析方法。
两者的区别在于:当软件项目较小、系统分析员能力足够高的时候,结构化方法能快速的找到最简洁、高效率的
逻辑模型,结构化方法对复杂问题的帮助有限,而面向对象的分析方法提供了一种方便的、可持续观测和扩展系统
的机制,通过信息隐藏和封装等手段屏蔽了对象内部的执行细节,控制了错误的蔓延,对于需求变化频繁的系统,可
以用面向对象软件系统的方法。
(3)对数据流图进行审查有何意义?
答:检查图中是否存在错误或不合理(不理想)的部分确保两大特性:
一致性:分层DFD中不存在矛盾和冲突。
完整性:是否有遗漏的数据流、加工等
(4)给出一次完整的会议讨论纪要,包括议题,最终结果。
答:一篇会议纪包含以下内容:标题、会议概述、主要议题、会议内容和后续工作,下面以用word做会议纪要的形式。
先概括性的说明会议的主要议题,用尽量简短的语言概括会议主题。可增加解释性语句。根据会议流程,记录与会
者的主要观点以及在讨论后各方达成了什么共识,制定了什么方案等等。建议给会议内容分类、分点的记录,让读
者更直观的了解会议内容。
五、实验小结

| psp2.1 | 任务内容| 计划需要完成的时间(min) |实际完成需要的时间(min) |
| ----------|----------|-------|------------- | ------ |
| Planning| 计划| 300 |360 |
| Estimate |估计这个任务需要多少时间,并规划大致工作步骤| 360| 360 |
| Development| 开发| 20 |15 |
| Analysis |需求分析(包括学习新技术)| 30 |36 |
| Design Spec| 生成设计文档 |40 |36 |
| Design Review |设计复审 |30 |34 |
| Coding Standard| 代码规范| 20 |18 |
| Design |具体设计 |20 |15 |
| Coding |具体编码 |100 |126|
| Code Review |代码复审 |10 |26 |
| Test |测试(自我测试,修改代码,提交修改)| 10 | 15 |
| Reporting| 报告 |20 |20 |
| Test Report |测试报告| 20 |25|
| Size Measurement |计算工作量 |20 | 15 |
| Postmortem & Process Improvement Plan| 事后总结,并提出过程改进计划| 20| 25 |

posted @ 2020-12-06 22:23  葛梦海  阅读(408)  评论(0编辑  收藏  举报