An Automated Software Design Methodology Using CAPO

Abstract:Software design is the process which decomposes a set of requirement specifications into certain basic elements and partitions these decomposed specifications into modules. In this paper, important techniques for the logical design of software and the properties associated with a structured design are analyzed in order to develop a framework for an automated approach to software design. To ensure software quality, a set of matrices is developed to guide the design process and to evaluate the quality of a design for the purpose of comparing different designs. The applicability of the methodology in nonsequential and object-oriented design environments is also discussed.

[1]  Calvin C. Gotlieb,et al.  Semantic Clustering of Index Terms , 1968, J. ACM.

[2]  Sallie Marie Henry,et al.  Information flow metrics for the evaluation of operating systems' structure. , 1979 .

[3]  Stephen S. Yau,et al.  An Approach to Distributed Computing System Software Design , 1981, IEEE Transactions on Software Engineering.

[4]  Richard E. Fairley,et al.  Software engineering concepts , 1985, McGraw-Hill series in software engineering and technology.

[5]  E. Yourdon What ever happened to structured analysis , 1986 .

[6]  Jay F. Nunamaker,et al.  Processing Systems Optimization through Automatic Design and Reorganization of Program Modules , 1974 .

[7]  Rosalind B. Marimont,et al.  A New Method of Checking the Consistency of Precedence Matrices , 1959, JACM.

[8]  Michael Jackson,et al.  Principles of program design , 1975 .

[9]  K. G. Salter,et al.  A methodology for decomposing system requirements into data processing requirements , 1976, ICSE '76.

[10]  Grady Booch,et al.  Object-oriented development , 1986, IEEE Transactions on Software Engineering.

[11]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[12]  Alexander Borgida,et al.  Features Of Languages for the Development of Information Systems at the conceptual Level , 1985, IEEE Software.

[13]  Laszlo A. Belady,et al.  System partitioning and its measure , 1981, J. Syst. Softw..

[14]  Paul T. Ward,et al.  The transformation schema: An extension of the data flow diagram to represent control and timing , 1986, IEEE Transactions on Software Engineering.

[15]  Jon Silverman,et al.  Quantifying software designs , 1984, ICSE '84.

[16]  L. Hubert Some applications of graph theory to clustering , 1974 .

[17]  Stephen S. Yau,et al.  On Communication in the Design of Software Components of Distributed Computer Systems , 1982, ICDCS.

[18]  J. V. Ryzin,et al.  Clustering Algorithms@@@Cluster Analysis Algorithms@@@Classification and Clustering , 1981 .

[19]  Atul Prakash,et al.  Software Engineering: Problems and Perspectives , 1984, Computer.

[20]  Taylor L. Booth,et al.  Towards an engineering approach to software design , 1976, ICSE '76.

[21]  Victor R. Basili,et al.  System Structure Analysis: Clustering with Data Bindings , 1985, IEEE Transactions on Software Engineering.

[22]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[23]  Jahangir Karimi Computer aided process organization in software design , 1983 .

[24]  James Lyle Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[25]  David N. Card,et al.  Empirical Study of Software Design Practices , 2004 .

[26]  Edward Yourdon,et al.  Structured design : fundamentals of a discip!ine of computer proqram and system desiqn , 1979 .

[27]  David Lorge Parnas,et al.  The Modular Structure of Complex Systems , 1984, IEEE Transactions on Software Engineering.

[28]  Stephen S. Yau,et al.  A survey of software design techniques , 1986, IEEE Transactions on Software Engineering.

[29]  Stephen S. Yau,et al.  Design Stability Measures for Software Maintenance , 1985, IEEE Transactions on Software Engineering.

[30]  Jay F. Nunamaker,et al.  PLEXSYS-84: An Integrated Development Environment for Informational Systems , 1984, J. Manag. Inf. Syst..

[31]  Nancy Giddings,et al.  An automated software design evaluator , 1984, ACM '84.

[32]  Meilir Page-Jones,et al.  The practical guide to structured systems design , 1980 .

[33]  Tsun S. Chow,et al.  Testing Software Design Modeled by Finite-State Machines , 1978, IEEE Transactions on Software Engineering.

[34]  Mack W. Alford SREM at the Age of Eight; The Distributed Computing Design System , 1985, Computer.

[35]  Ernest A. Hershey,et al.  PSL/PSA: A Computer-Aided Technique for Structured Documentation and Analysis of Information Processing Systems , 1976, IEEE Transactions on Software Engineering.

[36]  Jeffrey E. Kottemann,et al.  Complexity assessment: a design and management tool for information system development , 1983, Inf. Syst..

[37]  L. A. Belady,et al.  System partitioning and its measure, RC 7560 (32643) , 1980 .

[38]  Glenford J Myers,et al.  Reliable software through composite design , 1975 .

[39]  John A. Hartigan,et al.  Clustering Algorithms , 1975 .

[40]  Jahangir Karimi,et al.  An Automated Software Design Assistant , 1988, IEEE Trans. Software Eng..

[41]  Chris Gane,et al.  Structured Systems Analysis: Tools and Techniques , 1977 .