(转载)详细设计-盒图 PAD图 过程设计语言

(转载)详细设计-盒图 PAD图 过程设计语言(转载)详细设计-盒图PAD图过程设计语言1、详细设计的任务(主要工作)有哪些?详细设计的工作:确定应该怎样具体地实现所有要求的系统,也就是说经过这个阶段的设计工作,应该得出目标系统的精确描述。设计得到的结果是确定每个模块内部的算法和数据结构,产生描述各模块处理过程的详细文档。2、软件详细设计描述工具的概念和使用:程序流程图、N-S图、PAD图、PDL语言:什么是,基本符号和表…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

(转载)详细设计-盒图 PAD图 过程设计语言
1、详细设计的任务(主要工作)有哪些?

详细设计的工作:确定应该怎样具体地实现所有要求的系统,也就是说经过这个阶段的设计工作,应该得出目标系统的精确描述。

设计得到的结果是确定每个模块内部的算法和数据结构,产生描述各模块处理过程的详细文档。

2、软件详细设计描述工具的概念和使用:程序流程图、N-S图、PAD图、PDL语言:什么是,基本符号和表示的意义,画法;各种工具描述结果间的转换。
程序流程图:

又称为程序框图,对控制流程的描绘很直观,便于初学者掌握。

盒图(N-S图):

出于要有一种不允许违背结构程序设计精神的图形工具的考虑,Nassi和Shneiderman提出了盒图。


它有下述特点:

(1) 功能域(即,一个特定控制结构的作用域)明确,可以从盒图上一眼就看出来。

(2) 没有箭头,不可能任意转移控制。

(3) 很容易确定局部和全程数据的作用域。

(4) 很容易表现嵌套关系,也可以表示模块的层次结构。
PAD:问题分析图(problem analysis diagram)

问题分析图(problem analysis diagram), 1973年由日本日立公司发明。它用二维树形结构的图来表示程序的控制流,将这种图翻译成程序代码比较容易。下图给出PAD图的基本符号。

(转载)详细设计-盒图 PAD图 过程设计语言

过程设计语言(PDL):

也称为伪码,这是一个笼统的名称,现在有许多种不同的过程设计语言在使用。它是用正文形式表示数据和处理过程的设计工具。

3、什么是模块的环形复杂度,如何计算?

环形复杂度定量度量程序的逻辑复杂度
计算:
方法一:流图中的区域数等于环形复杂度;
方法二:流图G的环形复杂度V(G)=E-N+2,其中,E是流图中边的条数,N是结点数;
方法三:流图G的环形复杂度V(G)=P+1,其中,P是流图中判定结点的数目

题目1、耦合和内聚的具体分类及使用原则。

耦合是对一个软件结构内不同模块之间互连程度的度量。耦合强弱取决于模块间接口的复杂程度,进入或访问一个模块的点,以及通过接口的数据。包括数据耦合、控制耦合、特征耦合、公共环境耦合、内容耦合。

内聚标志着一个模块内各个元素彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。简单地说,理想内聚的模块只做一件事情。包括:功能内聚、顺序内聚、通信内聚、过程内聚、时间内聚、逻辑内聚、偶然内聚。

题目2、如何看待模块划分的合理性,模块划分的质量依据是什么?

根据每个模块的成本和接口成本确定的软件总成本最低。

题目3、环形复杂度的计算,结果说明了什么?掌握三种方法中的一种就行。

方法一:流图中的区域数等于环形复杂度;
方法二:流图G的环形复杂度V(G)=E-N+2,其中,E是流图中边的条数,N是结点数;
方法三:流图G的环形复杂度V(G)=P+1,其中,P是流图中判定结点的数目。它是对软件测试难度的一种定量试题,也能对软件最终的可靠性给出某种预测。

题目4、程序流程图和盒图(N-S)如何实现互转?

程图由一些特定意义的图形、流程线及简要的文字说明构成,它能清晰明确地表示程序的运行过程。在使用过程中,人们发现流程线不一定是必需的,为此,人们设计了一种新的流程图,它把整个程序写在一个大框图内,这个大框图由若干个小的基本框图构成,这种流程图简称N-S图。

题目5、画出下列伪码程序的程序流程图和盒图:
START
IF p THEN
    WHILE q DO
        f
    END DO
ELSE
    BLOCK
        g
        n
    END BLOCK
END IF
STOP

从伪码转换成的数据流程图如下:

(转载)详细设计-盒图 PAD图 过程设计语言

从伪码转换成的盒图如下:

(转载)详细设计-盒图 PAD图 过程设计语言

题目6、图中给出的程序流程图代表一个非结构化的程序,问:
(转载)详细设计-盒图 PAD图 过程设计语言

(1)为什么说它是非结构化的?

(2)设计一个等价的结构化程序

(3)在(2)题的设计中使用附加的标志变量flag了吗?若没用,再设计一个使用flag的程序;若用了,再设计一个不用flag的程序。

(1)通常所说的结构化程序,是按照狭义的结构程序的定义衡量,符合定义规定的程序。本题图6-18所示的程序的循环控制结构有两个出口,显然不符合狭义的结构程序的定义,因此是非结构化的程序。

(2)使用附加的标志变量flag,至少有两种方法可以把该程序改造为等价的结构化程序,下图所示盒图描绘了两个等价的结构化程序。

(转载)详细设计-盒图 PAD图 过程设计语言

(3)不使用flag把该程序改造为等价的结构化程序的方法如下图所示。

(转载)详细设计-盒图 PAD图 过程设计语言

题目7、某交易所规定给经纪人的手续费计算方法如下:总手续费等于基本手续费加上与交易中的每股价格和股数有关的附加手续费。如果交易总金额少于1000元,则基本手续费为交易金额的8.4%;如果交易总金额在1000元到10000元之间,则基本手续费为交易金额的5%,再加34元;如果交易总金额超过10000元,则基本手续费为交易金额的4%加上134元。当每股售价低于14元时,附加手续费为基本手续费的5%,除非买进、卖出的股数不是100的倍数,在这种情况下附加手续费为基本手续费的9%。当每股售价在14元到25元之间时,附加手续费为基本手续费的2%,除非交易的股数不是100的倍数,在这种情况下附加手续费为基本手续费的6%。当每股售价超过25元时,如果交易的股数零散(即,不是100的倍数),则附加手续费为基本手续费的4%,否则附加手续费为基本手续费的1%。
要求:

(1)用判定表表示手续费的计算方法

(2)用判定树表示手续费的计算方法

(转载)详细设计-盒图 PAD图 过程设计语言(转载)详细设计-盒图 PAD图 过程设计语言

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170292.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 环境配置(详细教程)「建议收藏」

    java 环境配置(详细教程)「建议收藏」文章目录前言一、jdk下载二、windows1、jdk安装2、环境变量的配置3、检测是否配置成功前言java环境配置,网上教程很多,那我为什么还要写?首先为了完善我的知识体系今后一些软件的安装教程也可能会用到想写一个更加详细的,因为这并不仅仅是写给IT行业的,其它行业可能也需要配置java环境提示:以下是本篇文章正文内容,下面案例可供参考一、jdk下载如果你电脑已经下载了jdk,那就恭喜你可以跳过这一步了jdk的下载路径:https://www.oracle.co

    2022年7月9日
    16
  • 频谱仪无线信号测试_无线信号检测仪app

    频谱仪无线信号测试_无线信号检测仪appAirMagnetSpectrumXT可实时探测并确定大量非WLAN干扰源,该干扰源会干扰和降低WLAN网络性能。设备或干扰源名单包括蓝牙设备、数字和模拟无绳电话、传统和变频微波炉、无线游戏控制器、数字视频转换器、婴儿监视器、RF干扰发射台、雷达、运动探测器和zigbee设备等等。用户也可获得干扰源的详细信息,包括峰值和平均功率、首次和最后看到的时间、中心频率、受影响的信道、干…

    2022年8月11日
    6
  • GROUP BY与COUNT用法详解

    GROUP BY与COUNT用法详解聚合函数在介绍GROUPBY和HAVING子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数,例如SUM,COUNT,MAX,AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。SELECTSUM(population)FROMbbc这里的SUM作用在所有返回记录的population字段上,结果就是该查询只返回一个结果,即国家的总人口数。

    2022年5月9日
    40
  • SSM 整合详细步骤

    SSM 整合详细步骤SSM整合第一章环境准备1、创建数据库和表结构createdatabasessm;createtableaccount(idintprimarykeyauto_increment,namevarchar(100),moneydouble(7,2),);2、创建Maven工程创建ssm_parent父工程(打包方式选择pom,必须的)创建ssm_web子模块(打包方式是war包)创建ssm_service子模块(打包方式是jar包)创建ssm_dao子模

    2022年5月13日
    32
  • 高等数学:第五章 定积分(2)换元积分法 分部积分法 广义积分

    高等数学:第五章 定积分(2)换元积分法 分部积分法 广义积分§5.4  定积分的换元法一、换元公式【定理】若1、函数在上连续;2、函数在区间上单值且具有连续导数;3、当在上变化时,的值在上变化,且 ,  则有                          (1)证明:(1)式中的被积函数在其积分区间上均是连续,故(1)式两端的定积分存在。且(1)式两端的被积函数的原函数均是存在的。假设是在上的一个原函数,据

    2025年5月26日
    3
  • python 404_python检测404页面

    python 404_python检测404页面某些网站为了实现友好的用户交互,提供了一种自定义的错误页面,而不是显示一个大大的404,比如CSDN上的404提示页面如下:这样虽然提高了用户体验,但是在编写对应POC进行检测的时候如果只根据返回的HTTP头部信息判断,则很可能造成误报,为了能准确检测到404页面,需要从状态码和页面内容两个方面来进行判断。从状态码来判断比较简单。可以直接使用requests库发送http请求,得到响应码即可。从…

    2022年7月27日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号