首页 > 技术文章 > 实验二 结构化分析与设计

hu666 2020-12-08 19:36 原文

博客班级 AHPU-软件工程导论-计算机18级
作业要求 实验二 结构化分析与设计
学号 3180701230

一.实验目的

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

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

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

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

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

二.实验步骤

(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/

四.实验截图







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

最终 SC 的上层框架:

初售动作分支的最终 SC 图:

五.思考题

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

1.引言(目的、背景、参考资料、术语)
2.项目概述(被开发软件的一般描述、被开发软件的功能、实现语言、用户特点、一般约束)
3.具体需求(功能需求)

概要设计的主要内容

  1. 系统架构
  2. 模块层次划分
  3. 系统接口
  4. 数据(库)设计

详细设计说明书的主要内容

1 引言
2 软件结构 用图表(常用系统流程图的层次结构表示)的形式列出本软件的各模块和程序单元的名称以及它们的相互关系。
3 模块设计说明
4 数据结构设计

(2)结构化分析方法与面向对象分析方法有无本质上的不同?
1)结构化分析方法
分析问题的过程中各个环节联系紧密,环环相扣。主要用来分析系统的功能,是一种直接根据数据流划分功能层次的分析方法,该方法较为传统,主要适用于数据处理。主要帮助开发人员定义系统需要做什么,系统需要存储和使用那些数据,系统需要什么样的输入和输出,以及如何把这些功能结合在一起来完成任务。面向过程分析的主要工具是数据流图(DFD)。
2)面向对象分析方法
定义在系统中工作的所有类型的对象,且对象之间相互独立,互不影响,但通过整体性的协调和相互作用完成任务,构成完整的体系。面向对象的方法关注的是事件、重用和继承,关注的多态,它自己有一整套独特的思维方式,这和面向过程方法是根本不同的。但相对于结构化分析方法而言呢,其各个部分或者环节是可以经过修改的,而且不会对其他部分造成多余的影响。 面向对象分析方法主要分为问题分析和应用分析两个方面。面向对象分析方法则是根据获得的需求信息从中抽象出类与对象并分析他们之间的静态关系,再结合实际问题,确定对象的动态行为以及对象间的信息传递,以此建立需求模型。主要工具是统一建模语言(UML)。

(3)对数据流图进行审查有何意义?
保证分层的数据流图要一致性和完整性。
简单说就是分层DFD不存在矛盾和冲突,完整性指分成DFD保证本身的完整性,不遗漏数据流,加工等元素。
(4)给出一次完整的会议讨论纪要,包括议题,最终结果。
虚拟开发团队会议纪要
会议议题主要是相互熟悉和人员分工
最终结果
1、成立开发组和测试组,开发小组共6人,测试小组共2人;
2、成立个小组人员的初步分工:
PM --甲
开发小组 :
乙 -- 销售管理及开发协调
丙 -- 合作伙伴管理
丁 -- 采购管理
戊 -- 财务管理
己 -- 价格管理
甲 -- 物料、库存、权限...
测试组
庚 -- 测试计划及测试协调
辛 -- 测试用例编写及实施,具体模块待定

3、建立MSN群,便于成员的即时交流;
4、建立邮件列表,便于文档的交流;
5、初步确定项目例会制度

六.实验小结

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

推荐阅读