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

    | 所在班级 | https://edu.cnblogs.com/campus/ahgc/AHPU-se-JSJ18 |
    | ---- | ---- | ---- |
    | 作业要求 | https://edu.cnblogs.com/campus/ahgc/AHPU-se-JSJ18/homework/11548 |
    | 作业目标 | 掌握结构化分析与设计 |
    | 学号 | 3180701232 |

    一、实验目的
    (1)掌握结构化的需求分析方法;

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

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

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

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

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

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

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

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

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

    三、实验步骤
    (1)复习结构化的分析与设计方法的主要过程;

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

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

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

    (5)选择对应的结构化程序设计语言,实现并测试部分功能模块

    教材订购系统:该系统可细化为两个子系统:销售系统和采购系统

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

    采购系统的主要工作过程为:若是脱销教材,则登记缺书,发缺书单给书库采购人员;一旦新书入库后,即发进书通知给教材发行人员,以上的功能要求在计算机上实现。

    部分数据字典信息如下:

    库存表={书号+书名+数量+单价}
    缺书登记表={登记日期+需求信息}
    缺书信息=[学生信息|教师信息]+{书号+缺书数量+备注}
    进书通知=进书日期+书号+书名+数量
    购书单=单号+[学生信息|教师信息]+{书号+书名+购书数量+备注}
    

    数据流图:

    数字字典:



    软件结构图:

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

    (2)结构化分析方法与面向对象分析方法有无本质上的不同?
    结构化分析方法的分析步骤:1 理解和分析当前的现实环境 已获得当前系统的具体模型 2 建立当前系统的逻辑模型 3 建立目标系统的逻辑模型 4 进一步完善目标系统的逻辑模型
    面向对象分析方法:根据面向对象的过程模型 面向对象的需求分析从概念上分为问题分析和应用分析两个方面 问题分析:主要收集并确认用户需求 最后将信息链接最终建立关于对象的分析模型 应用分析:主要是动态描述系统中对象的合法状态序列 并用动态模型表达对象的动态行为 对象之间的消息传递和协同工作的动态信息
    综上:结构化分析方法是先创建总体结构模型 之后逐渐填充完善目标的方法
    面向对象分析方法是先确认每小部分的过程模型 最终整合完善目标的方法

    (3)对数据流图进行审查有何意义?
    检查图中是否存在错误或不合理(不理想)的部分确保两大特性
    一致性:分层DFD中不存在矛盾和冲突。
    完整性:是否有遗漏的数据流、加工等

    (4)给出一次完整的会议讨论纪要,包括议题,最终结果。

    五、小结

    psp2.1 任务内容 计划完成需要的时间(min) 实际完成需要的时间(min)
    Planning 计划 20 15
    Estimate 估计这个任务需要多少时间,并规划大致工作步骤 120 100
    Development 开发 20 25
    Analysis 需求分析(包括学习新技术) 15 10
    Design Spec 生成设计文档 10 10
    Design Review 设计复审 30 20
    Coding Standard 代码规范 20 10
    Design 具体设计 30 40
    Coding 具体编码 30 20
    Code Review 代码复审 30 10
    Test 测试(自我测试,修改代码,提交修改) 60 30
    Reporting 报告 100 60
    Test Report 测试报告 25 20
    Size Measurement 计算工作量 30 25
    Postmortem & Process Improvement Plan 事后总结,并提出过程改进计划 20 10
  • 相关阅读:
    Java 基础:继承中的执行顺序
    Java 基础:抽象类与接口
    ElasticSearch : 基础简介
    Java GUI : 实现排序算法的动态演示
    Java GUI:将JPanel添加进JScrollPane
    菜鸟的算法入门:java的链表操作
    Docker与Tomcat:去掉项目名称进行访问
    vue输入框的搜索返回信息高亮显示
    position: static 和 position: unset
    vue css /deep/ 用法
  • 原文地址:https://www.cnblogs.com/yj-1/p/14105979.html
Copyright © 2011-2022 走看看