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
    作业目标 结构化分析与设计
    学号 3180701201
    一.实验目的

    (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.顶层图

    2.一层数据流图

    3.加工1的子图

    4.加工2的子图

    5.数据字典
    数据元素
    数据元素条目
    数据元素名称:用户密码
    别名:userpass
    长度:16
    描述:用户登录系统的密码
    有关的数据结构:User

    数据元素条目
    数据元素名称:图书分类编号
    别名:Bookindex
    类型:数值型
    长度:10
    描述:图书分类的编号

    数据元素条目
    数据元素名称:读者编号
    别名: Readerindex
    类型:数值型
    长度: 10
    描述:区分读者的唯一标识

    数据元素条目
    数据元素名称:图书名称
    别名: BookName
    类型:文本型
    长度: 50
    描述:图书的名称

    2)数据流条目
    数据流条目
    数据流名称:添加读者
    简述:进入读者管理可进行添加
    数据来源:读者资料
    数据流向:读者信息表
    包含的数据结构:数据流条目

    数据流名称:查询结果
    简述:从图书信息表中检索信息
    数据来源:图书信息表
    数据流向。查询结果

    包含的数据结构:数据流条目
    数据流名称:查询读者信息
    简述:读者登录后可进行查询
    数据来源:读者信息查询窗口
    数据流向:读者信息查询窗口

    包含的数据结构:
    数据流条目
    数据流名称:按条件查找
    简述:读者按类别或作者查找的结果
    数据来源:读者信息查询条件窗口
    数据流向:读者信息查询条件窗口

    包含的数据结构:
    数据流条目
    数据流名称:管理员登录
    简述:管理员对图书进行管理
    数据来源:管理员表
    数据流向:管理员表

    包含的数据结构:
    数据流条目
    数据流名称:显示图书
    简述,由条件将齐类数据显来
    数据来源:图书信息表
    数据流向:浏览图书

    包含的数据结构:
    数据流条目
    数据流名称:修改读者信息
    简述:输入须修改的信息
    数据来源,读者信息表
    数据流向:读者信息修改界面

    包含的数据结构:
    数据流条目
    数据流名称:读者信息
    简述:读者都能对它进行维护
    数据来源:读者信息表
    数据流向:读者信息维护

    包含的数据结构:
    数据流条目
    数据流名称:添加图书
    简述:新购图书的添加
    数据来源:图书信息表
    数据流向:图书信息表

    包含的数据结构:
    数据流条目
    数据流名称:修改图书信息
    简述:图书更新
    数据来源:图书信息表
    数据流向:图书信息表

    包含的数据结构:
    3)处理过程描述
    处理功能条目
    名称:查询图书
    输入数据:按图书编号、书目名称、作者等来查询
    输出数据:图书
    处理逻辑:(1)支持模湖查询编号、书目名称、书目作者
    (2)对查询的图书可进行修改删除等
    处理功能条目
    名称:添加用户
    输入数据:用户ID,用户密码,用户名称。
    输出数据:是否添加成功
    处理逻辑:(1)用户名称是否不同
    (3)用户密码是否包含非法字符
    处理功能条目
    名称:添加图书
    输入数据:图书编号,图书名称,作者,在库数量,单价,图书分类,图书简介。
    输出数据:是否添加成功
    处理逻辑: (1)是否有漏填
    (2)数据要求是否匹配
    (3)信息是否填写完整
    (4)数据存储
    数据存储条目
    数据存储名称:图书信息表
    说明:存储图书基本信息
    结构:图书编号,图书名称,图书分类,出版社,入库时间,入库数量,图书状态,在库数量,图书简介。
    关键字:图书编号
    相关处理:查询,修改,添加,删除。

    数据存储条目
    数据存储名称:管理员信息表
    说明:存储管理员信息
    结构:管理员编号,管理员姓名,管理员密码。
    关键字:管理员编号

    4)外部实体条目
    外部实体条目
    名称:图书
    说明:图书情况
    输出数据流:图书借阅信息表
    输入数据流:图书借阅信息

    外部实体条目
    名称:管理员
    说明:读者信息情况
    输出数据流:读者信息表
    输入数据流:管理员 读者信息

    外部实体条目
    名称:读者
    说明:读者借阅情况
    输出数据流:读者借阅信息单
    输入数据流:读者 借阅信息

    6.教材购销系统的最初上层框架设计:

    7.销售子系统初始SC图:

    8.采购子系统初始SC图:

    9.最终SC的上层框架:

    10.初售动作分支的最初SC图:

    四.思考题
    (1)简述需求说明书,概要设计,详细设计说明书的主要内容
    需求说明书
    软件需求说明书,又称为软件规格说明书,是分析员在需求分析阶段需要完成的文档,是软件需求分析的最终结果。软件需求说明主要包括引言、任务概述、需求规定、运行环境规定和附录等内容。
    概要设计说明书
    概要设计说明书又可称系统设计说明书,这里所说的系统是指程序系统。编制的目的是说明对程序 系统的设计考虑,包括程序系统的基本处理流程、程序系统的组织结构、模块划分、功能分配、接口设计、运行设计、安全设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
    详细设计说明书
    详细设计说明书又可称程序设计说明书。编制目的是说明一个软件系统各个层次中的每一个程序 (每个模块或子程序)的设计考虑,如果一个软件系统比较简单,层次很少,本文件可以不单独编写,有关内容合并入概要设计说明书。
    (2)结构化分析方法与面向对象分析方法有无本质上的不同?
        结构化系统分析方法是采用自顶向下,由外到内,逐层分解'的思想对复杂的系统进行分解化简,从而有效地控制了系统分析每一步的难度 ,并运用数据流图、加工说明和数据字典作为表达工具的一种系统分析技术;而面向对象的分析方法则是通过将数据和逻辑结构抽象成为对象,运肘象属性和方法等来操作和处理业务数据和逻辑的系统分析方法。
        两者的区别在于:当软件项目较小、系统分析员能力足够高的时候,结构化方法能快速的找到最简洁、高效率的逻辑模型,结构化方法对复杂问题的帮助有限,而面向对象的分析方法提供了一种方便的、可持续观测和扩展系统的机制,通过信息隐藏和封装等手段屏蔽了对象内部的执行细节,控制了错误的蔓延,对于需求变化频繁的系统,可以用面向对象软件系统的方法。
    (3)对数据流图进行审查有何意义?
        它在系统分析中的作用是,它用结构化系统分析方法从数据传递和加工角度出发,用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。
        确保两大特性:一致性(分层DFD中不存在矛盾和冲突)、完整性:(是否有遗漏的数据流、加工等)
    (4)给出一次完整的会议讨论纪要,包括议题,最终结果。
        一篇会议纪包含以下内容:标题、会议概述、主要议题、会议内容和后续工作,下面以用word做会议纪要的形式。先概括性的说明会议的主要议题,用尽量简短的语言概括会议主题,可增加解释性语句。根据会议流程,记录与会者的主要观点以及在讨论后各方达成了什么共识,制定了什么方案等等。建议给会议内容分类、分点的记录,让读者更直观的了解会议内容。
    五.个人小结
    1)psp耗时表

    psp3.1 任务内容 计划完成需要的时间(min) 实际完成需要的时间(min)
    Planning 计划 300 250
    Estimate 估计这个任务需要多少时间,并规划大致工作步骤 50 55
    Development 开发 10 5
    Analysis 需求分析(包括学习新技术) 50 62
    Design Spec 生成设计文档 10 8
    Design Review 设计复审 5 5
    Coding Standard 代码规范 15 30
    Design 具体设计 20 50
    Coding 具体编码 30 50
    Code Review 代码复审 60 70
    Test 测试(自我测试,修改代码,提交修改) 40 45
    Reporting 报告 20 15
    Test Report 测试报告 15 20
    Size Measurement 计算工作量 25 30
    Postmortem & Process Improvement Plan 事后总结,并提出过程改进计划 30 35
  • 相关阅读:
    百度搜索技巧
    phpstorm知识点
    A-Z
    边框
    display
    布局
    盒模型
    浮动
    字体与图标
    pselect 问题
  • 原文地址:https://www.cnblogs.com/yjjtt/p/14105295.html
Copyright © 2011-2022 走看看