Coordinating Software Evolution via Two-Tier Programming
Intentional tier: A generic (“abstract”) representation of design and architectural properties (constraints) of the program which, in conformance with the principle of least constraint , is phrased in generic terms.
Extensional tier: The second specification layer which consists of the traditional source code. As software evolves continuously, our approach stresses the relevance of the design and architectural specifications throughout the evolution of a program.
KeywordsSource Code Programming Language Design Pattern Software Architecture Intentional Specification
Unable to display preview. Download preview PDF.
- 2.J. Coker (1997). “Keeping Objects In Sync.” In: Java Developer Connection, http://java.sun.com
- 4.E. R. Comer. 1997. “Alternative Software Life Cycle Models.” In Software Engineering, Dorfman, Merlin; Thayer, Richard, pp. 404–414. Piscataway, NJ: IEEE Computer Society Press.Google Scholar
- 5.J. Coplien, D. Schmidt, eds. (1995). Pattern Languages of Program Design. Reading, MA: Addison-Wesley.Google Scholar
- 6.A. H. Eden. “LePUS: A Formal Specification Language of Object Oriented Design and Architecture.” 2002 NSF Design, Service, and Manufacturing Grantees and Research Conference, Jan. 7–10, 2002, San Juan, Puerto Rico.Google Scholar
- 7.A. H. Eden, Y. Hirshfeld. “Principles in Formal Specification of Object Oriented Architectures.” CASCON 2001, November 5–8, 2001. Toronto, Canada.Google Scholar
- 8.A. H. Eden (2002). “LePUS: A Visual Formalism for Object-Oriented Architectures.” The 6th World Conference on Integrated Design and Process Technology, Pasadena, California, June 26–30, 2002.Google Scholar
- 9.E. Gamma, R. Helm, R. Johnson, J. Vlissides (1994). Design Patterns: Elements of Reusable Object Oriented Software. Addison-Wesley.Google Scholar
- 10.D. Garlan, M. Shaw (1993). “An Introduction to Software Architecture.” In V. Ambriola, G. Tortora, eds., Advances in Software Engineering and Knowledge Engineering, Vol. 2, pp. 1–39. New Jersey: World Scientific Publishing Company.Google Scholar
- 13.N. Medvidovic, R. N. Taylor (1997). “A Framework for Classifying and Comparing Architecture Description Languages”. In Proceedings of the Sixth European Software Engineering Conference, together with Fifth ACM SIGSOFT Symposium on the Foundations of Software Engineering, Zurich, Switzerland, September 22–25, 1997, pp. 60–76.Google Scholar
- 14.MegaLang Institute. “Fundamentals of JFC/Swing, Part II”. http://java.sun.com
- 15.M. O’Cinnéide, P. Nixon. “A Methodology for the Automated Introduction of Design Patterns.” Proceedings of the IEEE International Conference on Software Maintenance, 30 August–3 September, 1999.Google Scholar
- 17.W. W. Royce (1970). “Managing the Development of Large Software Systems: Concepts and Techniques.” 1970 WESCON Technical Papers, Vol. 14, Western Electronic Show and Convention.Google Scholar