📌  相关文章
📜  结构化分析

📅  最后修改于: 2020-12-04 05:40:24             🧑  作者: Mango


分析师使用各种工具来理解和描述信息系统。一种方法是使用结构化分析。

什么是结构化分析?

结构化分析是一种开发方法,可让分析人员以逻辑方式理解系统及其活动。

这是一种系统的方法,它使用图形工具来分析和完善现有系统的目标,并开发新的系统规范,使用户可以轻松理解。

它具有以下属性-

  • 它是指定应用程序表示的图形。

  • 它划分了进程,以便清晰地显示系统流程。

  • 它是逻辑上的而不是物理上的,即系统的元素不依赖于供应商或硬件。

  • 它是一种从高层概述到底层细节的方法。

结构化分析工具

在结构化分析期间,各种工具和技术都用于系统开发。他们是-

  • 数据流程图
  • 数据字典
  • 决策树
  • 决策表
  • 结构化英语
  • 伪码

结构化工具

数据流程图(DFD)或气泡图

它是拉里·康斯坦丁(Larry Constantine)开发的一种以图形形式表达系统需求的技术。

  • 它显示了系统各种功能之间的数据流,并指定了如何实现当前系统。

  • 它是设计阶段的初始阶段,从功能上将需求规范划分为最低的详细级别。

  • 它的图形特性使其成为用户与分析师或分析师与系统设计人员之间的良好交流工具。

  • 它概述了系统处理的数据,执行的转换,存储的数据,产生的结果以及它们流向何处。

DFD的基本要素

当所需的设计不清楚并且用户希望使用一种符号语言进行通信时,DFD易于理解并且非常有效。但是,它需要大量迭代才能获得最准确和完整的解决方案。

下表显示了用于设计DFD的符号及其含义-

Symbol Name Symbol Meaning
Square Square Source or Destination of Data
Arrow Arrow Data flow
Circle Circle Process transforming data flow
Open Rectangle Rectangle Data Store

DFD的类型

DFD有两种类型:物理DFD和逻辑DFD。下表列出了区分物理DFD和逻辑DFD的要点。

Physical DFD Logical DFD
It is implementation dependent. It shows which functions are performed. It is implementation independent. It focuses only on the flow of data between processes.
It provides low level details of hardware, software, files, and people. It explains events of systems and data required by each event.
It depicts how the current system operates and how a system will be implemented. It shows how business operates; not how the system can be implemented.

上下文图

上下文图有助于通过一个DFD来了解整个系统,该DFD提供了系统概述。它从提及主要流程开始,只包含很少的细节,然后使用自上而下的方法提供更多流程细节。

混乱管理的上下文图如下所示。

上下文图

数据字典

数据字典是系统中数据元素的结构化存储库。它存储所有DFD数据元素的描述,即数据流,数据存储,存储在数据存储中的数据和过程的详细信息和定义。

数据字典可改善分析人员与用户之间的沟通。它在构建数据库中起着重要作用。大多数DBMS具有数据字典作为标准功能。例如,请参考下表-

Sr.No. Data Name Description No. of Characters
1 ISBN ISBN Number 10
2 TITLE title 60
3 SUB Book Subjects 80
4 ANAME Author Name 15

决策树

决策树是一种通过描述决策并避免沟通中的问题来定义复杂关系的方法。决策树是显示水平树框架内其他动作和条件的图。因此,它描述了首先要考虑的条件,等等。

决策树描述了每个条件及其允许动作之间的关系。正方形节点表示动作,圆圈表示条件。它迫使分析人员考虑决策顺序,并确定必须做出的实际决策。

决策树

决策树的主要局限性在于,它缺乏格式的信息来描述您可以采用哪些其他条件组合进行测试。它是条件与动作之间关系的单一表示。

例如,请参考以下决策树-

决策实例

决策表

决策表是一种以易于理解的精确方式描述复杂逻辑关系的方法。

  • 在所产生的动作取决于独立条件的一种或几种组合的发生的情况下,它很有用。

  • 它是一个包含行或列的矩阵,用于定义问题和操作。

决策表的组成部分

  • 条件存根-在左上象限中列出了所有要检查的条件。

  • 动作存根-在左下象限中概述了要满足这种条件要执行的所有动作。

  • 条件输入-位于右上象限,提供条件存根象限中所提出问题的答案。

  • 动作输入-在右下象限中,指示根据条件输入象限中条件的答案而产生的适当动作。

决策表中的条目由“决策规则”给出,“决策规则”定义了条件组合与操作过程之间的关系。在规则部分,

  • Y表示条件的存在。
  • N表示不满足的条件。
  • 空白-反对行动指出将被忽略。
  • 对要执行的动作状态使用X(或复选标记)。

例如,请参考下表-

CONDITIONS Rule 1 Rule 2 Rule 3 Rule 4
Advance payment made Y N N N
Purchase amount = Rs 10,000/- Y Y N
Regular Customer Y N
ACTIONS
Give 5% discount X X
Give no discount X X

结构化英语

结构英语源于结构化的编程语言,该语言提供了更易理解和精确的过程描述。它基于过程逻辑,该过程逻辑使用旨在执行操作操作的构造和命令式句子。

  • 当必须考虑程序中的顺序和循环并且问题需要有决定的动作序列时,最好使用该方法。

  • 它没有严格的语法规则。它按照顺序决策结构和迭代表示所有逻辑。

例如,请参阅以下操作序列-

if customer pays advance 
   then 
      Give 5% Discount 
   else 
      if purchase amount >=10,000 
         then 
            if  the customer is a regular customer 
               then Give 5% Discount 
            else  No Discount
         end if 
      else No Discount  
   end if 
end if 

伪码

伪代码不符合任何编程语言,并以简单的英语表达逻辑。

  • 它可以指定物理编程逻辑,而无需在物理设计期间和之后进行实际编码。

  • 它与结构化编程结合使用。

  • 它代替了程序流程图。

选择适当工具的准则

使用以下准则来选择最适合您需求的工具-

  • 在较高或较低级别的分析中使用DFD可以提供良好的系统文档。

  • 使用数据字典可以简化满足系统数据需求的结构。

  • 如果循环很多且动作复杂,请使用结构化英语。

  • 当要检查的条件很多且逻辑复杂时,请使用决策表。

  • 当条件排序很重要且要测试的条件很少时,请使用决策树。