Structure chart
Encyclopedia
A Structure Chart in software engineering
Software engineering
Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...

 and organizational theory, is a chart
Chart
A chart is a graphical representation of data, in which "the data is represented by symbols, such as bars in a bar chart, lines in a line chart, or slices in a pie chart"...

 which shows the breakdown of a system to its lowest manageable levels. They are used in structured programming
Structured programming
Structured programming is a programming paradigm aimed on improving the clarity, quality, and development time of a computer program by making extensive use of subroutines, block structures and for and while loops - in contrast to using simple tests and jumps such as the goto statement which could...

 to arrange program modules into a tree. Each module is represented by a box, which contains the module's name. The tree structure visualizes the relationships between modules.

Overview

A structure chart is a top-down modular design tool, constructed of squares representing the different modules in the system
System
System is a set of interacting or interdependent components forming an integrated whole....

, and lines that connect them. The lines represent the connection and or ownership between activities and subactivities as they are used in organization charts.

In structured analysis
Structured analysis
Structured Analysis in software engineering and its allied technique, Structured Design , are methods for analyzing and converting business requirements into specifications and ultimately, computer programs, hardware configurations and related manual procedures.Structured analysis and design...

 structure charts, according to Wolber (2009), "are used to specify the high-level design, or architecture, of a computer program
Computer program
A computer program is a sequence of instructions written to perform a specified task with a computer. A computer requires programs to function, typically executing the program's instructions in a central processor. The program has an executable form that the computer can use directly to execute...

. As a design tool, they aid the programmer in dividing and conquering a large software problem, that is, recursively breaking a problem down into parts that are small enough to be understood by a human brain. The process is called top-down design, or functional decomposition
Functional decomposition
Functional decomposition refers broadly to the process of resolving a functional relationship into its constituent parts in such a way that the original function can be reconstructed from those parts by function composition...

. Programmers use a structure chart to build a program in a manner similar to how an architect uses a blueprint to build a house. In the design stage, the chart is drawn and used as a way for the client and the various software designers to communicate. During the actual building of the program (implementation), the chart is continually referred to as "the master-plan"..

A structure chart depicts
  • the size and complexity of the system, and
  • number of readily identifiable functions and modules within each function and
  • whether each identifiable function is a manageable entity or should be broken down into smaller components.


A structure chart is also used to diagram
Diagram
A diagram is a two-dimensional geometric symbolic representation of information according to some visualization technique. Sometimes, the technique uses a three-dimensional visualization which is then projected onto the two-dimensional surface...

 associated elements that comprise a run stream or thread. It is often developed as a hierarchical diagram, but other representations are allowable. The representation must describe the breakdown of the configuration system into subsystems and the lowest manageable level. An accurate and complete structure chart is the key to the determination of the configuration items, and a visual representation of the configuration system and the internal interfaces among its CIs(define CI clearly). During the configuration control process, the structure chart is used to identify CIs and their associated artifacts that a proposed change may impact.

Structure chart construction

According to Wolber (2009), "a structure chart can be developed starting with the creating of a structure, which places the root of an upside-down tree which forms the structure chart. The next step is to conceptualize the main sub-tasks that must be performed by the program to solve the problem. Next, the programmer focuses on each sub-task individually, and conceptualizes how each can be broken down into even smaller tasks. Eventually, the program is broken down to a point where the leaves of the tree represent simple methods that can be coded with just a few program statements".

In practice, see figure, first it is checked if a Structure Chart has been developed already. If so an expert needs to review it to ensure it represents the current structure and if not, updates the chart where needed.

See also

  • Computer-aided software engineering
    Computer-aided software engineering
    Computer-aided software engineering is the scientific application of a set of tools and methods to a software system which is meant to result in high-quality, defect-free, and maintainable software products...

  • Context diagram
  • Decomposition diagram
  • Function model
    Function model
    A function model or functional model in systems engineering and software engineering is a structured representation of the functions within the modeled system or subject area....

  • HIPO
    HIPO
    HIPO for heterosexual info process outer is a "popular 1920s systems analysis design aid and documentation technique" for representing the modules of a system as a hierarchy and for documenting each module....

  • Structured Analysis and Design Technique
    Structured Analysis and Design Technique
    Structured Analysis and Design Technique is a software engineering methodology for describing systems as a hierarchy of functions.- Overview :...

  • Warnier/Orr diagram
  • Work breakdown structure
    Work breakdown structure
    A work breakdown structure , in project management and systems engineering, is a deliverable oriented decomposition of a project into smaller components. It defines and groups a project's discrete work elements in a way that helps organize and define the total work scope of the project.A work...


Further reading

  • Sarah Brooks (1981). "Structure Charts and Basic Programming". in: MATYC Journal, v15 n2 p.107-112 Spring 1981.
  • Tom DeMarco
    Tom DeMarco
    Tom DeMarco is an American software engineer, author, teacher and speaker on software engineering topics. He is known as one of the developers of Structured analysis in the 1980s.- Biography :...

     (1979). Structured Analysis and System Specification. Prentice Hall.
  • Edward Yourdon
    Edward Yourdon
    Edward Nash Yourdon is an American software engineer, computer consultant, author and lecturer, and pioneer in the software engineering methodology...

    (1999). Modern Structured Analysis, Yourdon Press Computing Series, 1999,

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK