Structured analysis

The Structured Analysis (SA) is a technology developed mainly by Tom DeMarco method for creating a formal system description in the context of software development. It is used during the analysis phase of a software project. Structured design refines the results of the SA to the extent that they can be brought to fruition. It is a method of system analysis.

The result of the Structured Analysis is a hierarchically structured requirements document for the scope and content of the business application that is to be implemented in the proposed software system. The Structured analysis is a graphical method of analysis that splits using a top-down approach a complex system into simpler and simpler functions or processes and simultaneously performs data flow modeling. In its basic form, the SA is a static analysis, but this was later expanded to include methods for dynamic analysis.

Historical development

From the 1960s, there were efforts to systematize the process of system development. 1974 about Jackson made ​​a proposal for a graphical representation form for structured analysis. Tom DeMarco and others began in the 1970s with the development of structured analysis, which they published in 1977.

Structured Analysis

In structured analysis following elements are used:

  • Context diagram (English context diagram ): This graph is the root of the analysis tree. It is bordered on the system from its environment and thus, what aspects are considered by the analysis and what not defined.
  • A hierarchical representation of the structure of the application in the form of a ( an organization similar ) " tree ". Their highest chart above context diagram. For each lower branch of the tree structure corresponds to a " data flow diagram " (see below ). For each "leaf" of the tree (end point, which is not further refined ) is as a description of its processes is a " mini- specification " (see below ).
  • Data Flow Diagram (English dataflow diagram, short DFD ): A DFD visualized in which sub-processes, the process shown on the DFD is divided and how the use of data in this process runs.
  • Mini Specification (English mini specification ): The Mini -Spec is a formal description of a no longer divided in the analysis of elementary process. The description is made with the aid of a pseudo-code, which is not standardized, and is independent from the programming language normally used later, that uses the logical constructs of structured programming. Other ways of description, Nassi- Shneiderman diagrams, flowcharts, decision tables and decision trees.
  • Data dictionary (English datadictionary, short DD): A collection of all the data definitions that are used in the analysis.

The first two charts use the following graphical elements:

  • Data flow, shown as an arrow
  • Data, labeling the arrow
  • Memory, two parallel horizontal lines, between the name of the memory
  • Partial and elementary processes, circle with the name and number of the sub-process in the circle
  • External data receiver / transmitter (only on the context diagram ), with an enclosed quadrangle name

Structured real-time analysis (RT)

The Structured Real-Time analysis extends the normal structured analysis of a real-time component. This is achieved by defining the behavior of the process layer under all possible external and internal conditions and modes. Was designed, the system of Imtiaz A. Pirbhai and Derek J. Hatley.

Dynamic Analysis

In addition to the definitions of the static analysis, the following elements be defined as:

  • Decision table (English decision table, short DT): For a number of input values ​​is defined in tabular form as the output value is set.
  • State transition diagram (English state transition diagram, briefly STD): states are represented in this diagram as rectangles and transitions as arrows. The STD has input and output values ​​that are set depending on the transitions and states.
  • Process activation table (English process activation table, PAT ): The table describes the sequence of activation of the processes listed in the table.

A DFD always contains only one PAT and any number of DT and STD. All three new elements are graphically represented by a vertical line. Arrows from the left are the input, arrows to the right the output parameters.

  • Only data is sent with Boolean definition Shown as a dashed arrow on control flows: control flows (english control flow). These are used to control the DT and STD and bear no real data, but serve only the modeling of the dynamic process.

Use in the practice

One of the largest software projects that have been implemented using the structured analysis in Germany, is the software for the central computer of the Tornado fighter plane.

Otherwise, the Structured analysis in many places by the object -oriented analysis (OOA ) is replaced, but is still used in many projects.

752098
de