桃夭不妖

导航

实验二 结构化分析与设计

实验二 结构化分析与设计

班级 软件工程
作业要求 要求
学号 3180701229

一.实验目的

(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)复习结构化的分析与设计方法的主要过程
结构化分析方法是以自顶向下,逐步求精为基点,以一系列经过实践的考验被认为是正
确的原理和技术为支撑,以数据流图,数据字典,结构化语言,判定表,判定树等图形表达
为主要手段,强调开发方法的结构合理性和系统的结构合理性的软件分析方法。
结构化分析的步骤如下:
①分析当前的情况,做出反映当前物理模型的 DFD;
②推导出等价的逻辑模型的 DFD;
③设计新的逻辑系统,生成数据字典和基元描述;
④建立人机接口,提出可供选择的目标系统物理模型的 DFD;
⑤确定各种方案的成本和风险等级,据此对各种方案进行分析;
⑥选择一种方案;
⑦建立完整的需求规约

(2)讨论系统存在的用户角色、工作流
用户角色
教师学生和采购员,发货员
工作流

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

一层数据流图

二层销售系统数据流图

二层采购数据流图

数据字典





软件结构图
教材购销系统的最初上层框架设计

销售子系统初始 SC 图

采购子系统初始 SC 图

最终 SC 的上层框架

初售动作分支的最终 SC 图

四.思考题

(1)简述需求说明书,概要设计,详细设计说明书的主要内容。
1、需求说明书是指在研究用户要求的基础上,完成可行性分析和投资效益分析以后,由软件工程师或分析员编写的说明书。它详细定义了信息流和界面,功能需求,设计要求和限制,测试准则和质量保证要求。它的作用是作为用户和软件开发人员达成的技术协议书,作为着手进行设计工作的基础和依据,系统开发完成以后,为产品的验收提供了依据
2、概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序 系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、安全设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
3、详细设计说明书又可称程序设计说明书。编制目的是说明一个软件系统各个层次中的每一个程序 (每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本文件可以不单独编写,有关 内容合并入概要设计说明书。
(2)结构化分析方法与面向对象分析方法有无本质上的不同?
结构化分析方法的分析步骤:1 理解和分析当前的现实环境 已获得当前系统的具体模型 2 建立当前系统的逻辑模型 3 建立目标系统的逻辑模型 4 进一步完善目标系统的逻辑模型

面向对象分析方法:根据面向对象的过程模型 面向对象的需求分析从概念上分为问题分析和应用分析两个方面 问题分析:主要收集并确认用户需求 最后将信息链接最终建立关于对象的分析模型 应用分析:主要是动态描述系统中对象的合法状态序列 并用动态模型表达对象的动态行为 对象之间的消息传递和协同工作的动态信息

综上:结构化分析方法是先创建总体结构模型 之后逐渐填充完善目标的方法

面向对象分析方法是先确认每小部分的过程模型 最终整合完善目标的方法
(3)对数据流图进行审查有何意义?
检查图中是否存在错误或不合理(不理想)的部分确保两大特性
一致性:分层DFD中不存在矛盾和冲突。
完整性:是否有遗漏的数据流、加工等
(4)给出一次完整的会议讨论纪要,包括议题,最终结果。

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

posted on 2020-12-05 20:31  桃夭不妖  阅读(117)  评论(0编辑  收藏  举报