zoukankan      html  css  js  c++  java
  • 实验二 结构化分析与设计

    班级软件工程
    作业要求 实验要求
    学号 3180701224

    一.实验目的

    (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

    psp2.1任务内容计划完成需要的时间(min)实际完成需要的时间(min)
    Planing 计划 10 30
    Estimate 估计这个任务需要多少时间,
    并规划大致工作步骤
    10 10
    Development 开发 200 300
    Analysis 需求分析(包括学习新技能) 30 90
    Design Spec 生成设计文档 15 20
    Design Review 设计审核 15 20
    Coding Standard 代码规范 5 10
    Design 具体设计 10 12
    Coding 具体编码 200 200
    Code Review 代码复核 20 20
    Test 测试(自我测试,修改代码
    提交修改)
    60 60
    Reporting 报告 20 20
    Test Report 测试报告 10 10
    Size Measurement 计算工作量 30 35
    Postmortem & Process
    Improvement
    事后总结,并提出过程修改计划 20 20
  • 相关阅读:
    实训课报告
    java第二次作业
    Java程序设计第一次作业
    【Vue】 编写Vue插件流程
    【JavaScript】 ES6/ES7/ES8
    【vue】 项目接口管理
    【微信小程序】 线上环境搭建
    【微信小程序】 授权登陆
    Mock 基本使用
    fetch 基本使用(使用fetch、axios来替代ajax)
  • 原文地址:https://www.cnblogs.com/p-x-y/p/14084330.html
Copyright © 2011-2022 走看看