结构化分析与设计
这个作业属于哪个课程 | 首页 - AHPU-软件工程导论-软件19级 - 安徽工程大学 - 班级博客 - 博客园 (cnblogs.com) |
这个作业要求在哪里 | 实验二 结构化分析与设计 - 作业 - AHPU-软件工程导论-软件19级 - 班级博客 - 博客园 (cnblogs.com) |
这个作业的目标 | 结构化分析与设计 |
学号 | 3190704235 |
一.实验目的
(1)掌握结构化的需求分析方法;
(2)掌握分层数据流图的绘制、数据字典和加工说明的编制;
(3)掌握数据流图映射为软件结构图的方法;
(4)掌握需求说明书和设计说明。书的主要内容,学习软件需求说明书和设计说明书的编写;
(5)掌握测试的基本方法。
二.实验内容
(1)参考一个熟悉的系统,如,机票预订系统/教材订购系统/ATM自动取款机,讨论其用户需求、系统需求和业务需求;、
机票预定系统
- 用户需求:随着时代的发展,人们旅游出行的次数越来越多,旅游业越来越发达,针对旅游公司帮助客人订机票的需求,建立此系统。旅游公司的订票及预订系统主要功能是查询某一城市到另一城市的航班,并帮助游客预订,在行程取消时可将订单删除。
- 系统需求:该系统能够让普通用户查询机票的航班号、航空公司、出发时间、到达时间和票价,并选择预订数量和出发日期,提供正确的身份信息后可成功预订机票。系统管理员可以对航班信息和用户信息进行管理操作,以满足不同航班和不同用户的信息更改等操作。
- 业务需求:整个系统的数据是共享的机票预定系统的数据字典,系统的运行要求机票预定系统中的各个子系统的硬件和软件,建立系统的约束 系统做为Client/Server 结构的一个应用系统,在其实施的各个阶段都要服从它的一些规划,机票预定系统还受到其它系统的信息约束。 机票预定工程实施的目标就是要带给航空公司看得出见的效益,其开发过程中也要考虑到人力,资金和时间的约束。
(2)绘制系统的分层数据流图,并给出数据字典;
(用户数据流图)
(管理员数据流图)
(3)将系统的分层数据流图映射为软件结构图,绘制软件结构图;
(4)为关键模块进行详细设计,如绘制关键模块的流程图;
/ /航空公司模块
//订单模块
(5)实现系统部分功能并测试。
三.实验步骤
(1)复习结构化的分析与设计方法的主要过程;
(2)讨论系统存在的用户角色、工作流等;
(3)对关键功能绘制数据流图,给出数据字典,并反复讨论数据流的合理性;
(4)对应数据流图,设计系统的功能结构图,关键模块的流程图;
(5)选择对应的结构化程序设计语言,实现并测试部分功能模块
四.思考题
(1)简述需求说明书,概要设计,详细设计说明书的主要内容。
-
使用“瀑布模型”:
-
A 功能需求
-
B 性能需求
-
C 可靠性和可用性需求
-
D 出错处理需求
-
E 接口需求
-
F 约束
-
G 逆向需求
-
H 将来可能提出的要求)进行获取、分析和记录,不必要的方面可以略去。
(2)结构化分析方法与面向对象分析方法有无本质上的不同?
有本质上的不同
- 面向过程分析(结构化分析)的实质是分析出解决问题所需要的步骤,然后使用函数实现这些步骤,最后调用这些函数来解决这个问题;
- 面向对象中不是将程序看成一系列过程或函数的集合,而是把程序看做是互相协作而又彼此独立的对象的集合,每个对象就像一个微型程序,有自己的数据、操作、功能和目的;而建立对象的目的不是为了完成一个步骤,而是为了描述整个事物在整个解决问题的步骤中的行为。
(3)对数据流图进行审查有何意义?
- 数据流图是从数据的角度来描述一个系统的,而流程图则是从对数据加工的角度来描述系统的;数据流图中的箭头是数据流,而流程图中的箭头则是控制流,它表达的是程序执行的次序;数据流图适合于宏观地分析一个组织业务概况,而程序流程图只适合于描述系统中某个加工的执行细节。因此,对数据流图进行审查是非常有必要的。
(4)给出一次完整的会议讨论纪要,包括议题,最终结果
- 个人在这学期又得到了一次锻炼,虽然完成的效果没有我预期想像的好、任务也只完成了预期的一半,但是还是可以搞个东西出来了(虽然不大完整)。这学期懂得了要相互配合,在指导和写文档的过程中,我意识到了人和人的相互合作性是非常重要的,3个人一起学习知识总来得一个人学习要快。一个团队学习知识总是比一个人单打独斗要快的,当然,其中的工作协调是相当困难的和烦琐的。这学期增加了对python,c++的理解,当然,本打算加个spring上去的,弄成个完整的框架,但是一想到大家学习的难度,就减少了spring。
马上新的一年就要来了,希望大家平安喜乐,万事如意!