A Theoretical Proposal for a CASD System Extending Jackson’s Method for Program Construction
This paper presents a new programming method called the data transform programming method. In particular, we present a specialization of data transform programming to deal with file processing applications. Direct comparison is made with Jackson’s approach by the presentation of uniform solutions to problems that cannot be solved through his basic method.
The new method consists of the application of data transformations to the abstract problem statement, following the formal notions of problem reduction and problem decomposition. Data transformations are expressed in programming terms through a basic set of data type constructors. The method reduces the original problem to a set of sub-problems that can be solved through the direct application of Jackson’s method. It produces a solution which is correct by construction.
KeywordsRegular Expression File Processing Program Schema Problem Reduction Data Flow Graph
Unable to display preview. Download preview PDF.
- M. A. Jackson, Principles of Program Design, London: Academic Press, 1975.Google Scholar
- J. D. Warnier, Logical Construction of Programs, New York: Van Nostrand Reinhold, 1974.Google Scholar
- E. Yourdon and L. L. Constantine, Structured Design: Fundamentals of a Discipline of Computer Program and System Design, Yourdon Press, 1978.Google Scholar
- J. W. Hughes, A Formalization and Explanation of the Michel Jackson Method of Program Design, Software-Practice and Experience, Vol. 9, 1979.Google Scholar
- D. D. Cowan, J. W. Graham, J. W. Welch, and C. J. Lucena, A Data-Directed Approach to Program Construction, Software-Practice and Experience, Vol. 10, 1980.Google Scholar
- P. A. S. Veloso and S. R. M. Veloso, “Problem Decomposition and Reduction: Applicability, Soundness, Completeness,” Trappl, R., Klir, J., Pichler, F. (eds), Progress in Cybernetics and Systems Research, Vol. VIII, Hemisphere Publ. Co., 1980.Google Scholar
- C. J. Lucena, R. C. B. Martins, P. A. S. Veloso, and D. D. Cowan, “The data transform programming method - an example for processing problems,” Proceedings of the 7th International Conference of Software Engineering, IEEE Computer-Society, 1983.Google Scholar
- C. J. Lucena, R. C. B. Martins, P. A. S. Veloso, and D. D. Cowan, “A theoretical proposal to a CASD system extending the Jackson’s method, 1983 International Conference on Advanced Automation, Taiwan, Republic of China, 1983.Google Scholar
- C. A. R. Hoare, “Notes on Data Structuring,” in Dahl, O. J., Dijkstra, E. W., Hoare, C. A. R., Structured Programming, Academic Press, 1972.Google Scholar
- L. Logrippo and D. R. Skuce, “File structures, program structures, and attributed grammers,” Technical Report TR82–02, Computer Science Department, University of Ottawa, 1982.Google Scholar
- T. E. Cheatham, G. H. Holloway, and J. A. Townley, “Program refinement by transformation,” Proceedings of the 5th International Conference on Software Engineering, 1981.Google Scholar
- R. C. B. Martins, “Data Transform Method,” Doctoral Thesis (in Portuguese), Computer Sciences Department, PUC/RJ, Rio de Janeiro, Brazil, 1984.Google Scholar