Hierarchical modular diagrams: An approach to describe architectural designs

  • Jorge L. Diaz-Herrera
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1078)


A language independent diagrammatic notation for describing the static software structure of an architectural design is introduced. The notation serves to specify the structural relations between the comprising modules and the mapping of design concepts into a hierarchy of actual program components. It can incorporate concepts from other (textual) languages by separating design-oriented syntax, i.e., the notation itself, from detailed “inner” syntax as defined by an underlying textual language. This allows for tools to be built that generate actual code from the specified design structures, and more importantly, that create design structures during reverse engineering in support of reuse. A complete isomorphism is given for existing design languages to illustrate the technique.


Reverse Engineering Architectural Design Program Text Software Engineer Institute Compilation Unit 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Arcadia Project, Dept. of Information and Computer Science, University of California, Irvine.Google Scholar
  2. 2.
    Dáz-Herrera,J.L and R.Flude “Pascal/HSD: A Graphical Programming System” (compsac80: Computer Software & Applications Conference, Chicago, October 1980, pp 723–728)Google Scholar
  3. 3.
    Graphical Kernel System (GKS) Ada Binding, ANSI X3.124.3-1989.Google Scholar
  4. 4.
    Eades, P. and L. Xuemin “How to Draw a Directed Graph” Proceedings of the IEEE Workshop on Visual Languages (VL'89), 13–17, 1989Google Scholar
  5. 5.
    Gomaa,H. “ADARTS” (SPC Technical Report, 1991)Google Scholar
  6. 6.
    Nielsen, K. and K.Shumate “Designing Real-time System with Ada” (Communications of ACM vol 30, no 8, Aug. 1987)Google Scholar
  7. 7.
    Rugaber, S., S.B.Ornburn and R.LeBlanc,Jr. “Recognizing Design Decisions in Programs” (IEEE Software, pp 46–54, Jan. 1990)Google Scholar
  8. 8.
    Tarjan, Robert E. “Depth-first search and linear graph algorithms” SIAM Journal on Computing, vol. 1, no.2, pp. 146–160, June 1972Google Scholar
  9. 9.
    Tracz, W.J., and Edwards, S. Implementation working group report. Reuse in Practice Workshop, Software Engineering Institute, Pittsburgh, PA. 1989.Google Scholar
  10. 10.
    Wasserman, A.I. et al “The Object-oriented Structured Design Notation for Software Design”, IEEE Computer, March 1990, pp 50–63.Google Scholar
  11. 11.
    Watt,D.A., B.A.Wichmann and W.Findlay. “Ada Language and Methodology” (Prentice-Hall, 1979, chapter 16)Google Scholar
  12. 12.
    Wolf,A.L., Clarke,L.A, and J.Wileden “Ada-base support for programming-in-the-large” IEEE Software, March 1985, pp 58–71)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1996

Authors and Affiliations

  • Jorge L. Diaz-Herrera
    • 1
  1. 1.Software Engineering InstituteCarnegie Mellon UniversityPittsburgh

Personalised recommendations