您现在的位置:学赛首页 > 自考学院 > 软件工程 > 正文
详细设计描述法
http://www.educity.cn 作者:不详 来源: 2006年9月1日 发表评论 进入社区
5.3 详细设计描述法
    详细描述处理过程常用三种工具:图形、表格和语言。本节主要介绍结构化程序流程图、盒图和问题分析图三种图形工具。
5.3.1 程序流程图

   程序流程图又称为程序框图,它是使用最广泛的一种描述程序逻辑结构的工具。

5.3.2 PAD图
    PAD图指问题分析图(Problem Analysis Diagram),是日本日立公司于1979年提出的一种算法描述工具,它是一种由左往右展开的二维树型结构。


  PAD图的控制流程为自上而下、从左到右地执行。
5.3.3 过程设计语言
  过程设计语言(Problem Design Language,简称PDL),也称程序描述语言(Problem Descripition Language),又称为伪码。它是一种用于描述算法设计和处理细节的语言。
  用PDL表示的程序结构一般有以下几种:
  (1)顺序结构:采用自然语言描述。
  (2)选择结构:

     1、IF-ELSE结构
            IF 条件       IF 条件
               处理S1  或   处理S
            ELSE
              处理S2       ENDIF
            ENDIF
     2、IF-ORIF-ELSE结构
           IF   条件1
                处理S2
           ORIF   条件2
                处理S2
                  .
                  .
                  .
           ELSE    处理Sn
           ENDIF
     3、CASE 结构
           CASE  OF
           CASE(1)
             处理S1
           CASE(2)
             处理S2
           .
           .
           .
           ELSE  处理Sn
           ENDCASE
    (3)重复结构:
     1、FOR结构
            FOR   i=1 TO  n
               循环体
            ENDFOR
     2、WHILE结构
            WHILE  条件
               循环体
            ENDWHILE
     3、UNTIL结构
            REPEAT
               循环体
            UNTIL条件
    (4)出口结构:
     1、ESCAPE结构(退出本层结构)
        WHILE  条件
           处理S1
        ESCAPE  L  IF 条件
           处理S2
        ENDWHILE
     L:……
     2、CYCLE结构(循环内部进入循环的下一次)
           L:WHILE  条件
                处理S1
             CYCLE  L  IF  条件
                处理S2
             ENDWHILE
    (5)模块定义与调用:
     1、模块定义
     PROCEDURE  模块名(参数)
            .
            . 
            .
     RETURN
     END
     2、模块调用
         CALL   模块名(参数)
    (6)数据定义:
         DECLARE     属性   变量名……
         属性有:字符、整型、实型、双精度、指针、数组、结构等类型。
    (7)输入/输出:
         GET(输入变量表)      
         PUT(输出变量表)
     现以xx系统主控模块详细设计为例,说明如何用PDL来描述。
     PROCEDURE    模块名(    )
        清屏;
        显示xx系统用户界面;
        PUT(“请输入用户口令:”);
        GET(password);
        IF  password< >系统口令
            提示警告信息;
            退出运行
        ENDIF
        显示本系统主菜单;
        WHILE(true)
           接收用户选择ABC;
           IF  ABC=“退出”
                 Break;
           ENDIF
           调用相应下层模块完成用户选择功能;
        ENDWHILE
        清屏;
        RETURN
        END
   从以上例子可以看到PDL的总体结构与一般程序完全相同。外语法同相应程序语言一致,内语法使用自然语言,易编写,易理解,也很容易转换成源程序。