skip to main content
10.1145/1052898.1052907acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
Article

What does aspect-oriented programming mean to Cobol?

Published: 14 March 2005 Publication History

Abstract

We study AOP in the context of business programming with Cobol. We face the following questions: What are join points in Cobol programs? What is advice? Does classic Cobol provide any constructs that hint at AOP? (Yes!) What are typical crosscutting concerns in the Cobol world? How do otherwise typical crosscutting concerns make sense for Cobol? How does AOP for Cobol align with classic re-engineering transformations for Cobol? We deliver an AOP language design for Cobol. Codename: AspectCobol. While we adopt several ideas from AspectJ and friends, we also devise original techniques for joint-point identification and context capture. We briefly discuss a prototypical implementation of AspectCobol.

References

[1]
ANSI. American National Standard Programming Language Cobol X3.23-1974. American National Standards Institute, 1430 Broadway, New York, New York 10018 (Price $17).]]
[2]
G. J. Badros. JavaML: a markup language for Java source code. Computer Networks, 33(1-6):159--177, 2000.]]
[3]
I. D. Baxter. Using transformation systems for software maintenance and reengineering. In ICSE 2001: Proc. of the 23rd International Conf. on Software Engineering, pages 739--740. IEEE Computer Society, 2001.]]
[4]
R. Boban. The Difference Between Logging and Tracing, 18 August 2004. SAP Developer Network; http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/The%20Difference%20Between%20Logging%20and%20Tracing.article.]]
[5]
B. Burke and M. Fleury. A Killer App for AOP. Linux Magazine, June 2004.]]
[6]
T. Cohen and J. Gil. AspectJ2EE = AOP + J2EE. In M. Odersky, editor, ECOOP 2004 - Object-Oriented Programming, 18th European Conf., Proc., volume 3086 of LNCS. Springer, 2004.]]
[7]
A. Colyer and A. Clement. Large-scale AOSD for middleware. In AOSD 2004: Proc. of the 3rd International Conf. on Aspect-Oriented Software Development, pages 56--65. ACM Press, 2004.]]
[8]
K. De Volder and T. D'Hondt. Aspect-Orientated Logic Meta Programming. In P. Cointe, editor, Meta-Level Architectures and Reflection, 2md International Conf., Reflection 1999, Proc., volume 1616 of LNCS, pages 250--272. Springer, 1999.]]
[9]
R. E. Filman and D. P. Friedman. Aspect-oriented programming is quantification and obliviousness. In M. Akşit, S. Clarke, T. Elrad, and R. E. Filman, editors, Aspect-Oriented Software Development. Addison-Wesley, Reading, MA, September 2004.]]
[10]
J. Gray, T. Bapty, S. Neema, and J. Tuck. Handling crosscutting constraints in domain-specific modeling. CACM, 44(10):87--93, 2001.]]
[11]
J. Gray and S. Roychoudhury. A technique for constructing aspect weavers using a program transformation engine. In AOSD 2004: Proc. of the 3rd International Conf. on Aspect-Oriented Software Development, pages 36--45. ACM Press, 2004.]]
[12]
E. Hilsdale and J. Hugunin. Advice weaving in AspectJ. In AOSD 2004: Proc. of the 3rd International Conf. on Aspect-Oriented Software Development, pages 26--35. ACM Press, 2004.]]
[13]
ISO/IEC. Information technology --- Programming languages --- COBOL, 2002. Reference number ISO/IEC 1989:2002(E).]]
[14]
ISO/IEC JTC 1/SC 22/WG 4. Information Technology --- Programming languages, their environments and system software interfaces --- COBOL Collection Classes, 22 November 2004. Technical Report, ISO/WDTR 24717, Working Draft Under Consideration.]]
[15]
A. Jackson and S. Clarke. SourceWeave.NET: Source-level cross-language aspect-oriented programming. In G. Karsai and E. Visser, editors, Proc. of the 3rd International Conf. on Generative Programming and Component Engineering (GPCE 2004), volume 3286 of LNCS, pages 115--134. Springer, 24-28 October 2004.]]
[16]
M. Karaorman, U. Holzle, and J. Bruno. jContractor: A reflective Java library to support design by contract. In P. Cointe, editor, Meta-Level Architectures and Reflection, 2nd International Conf. on Reflection 1999, Proc., volume 1616 of LNCS, pages 175--196. Springer, July 1999.]]
[17]
G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W.G. Griswold. An Overview of AspectJ. In Proc. of the 15th European Conf. on Object-Oriented Programming (ECOOP 2001), volume 2072 of LNCS, pages 327--353. Springer, 2001.]]
[18]
H. Kim and S. Clarke. The Relevance of AOP to an Applications Programmer in an EJB Environment, April 2002. Paper presented at Workshop on Aspects, Components and Patterns for Infrastructure Software (affiliated with AOSD 2002).]]
[19]
S. Klusener, R. Lämmel, and C. Verhoef. Architectural Modifications to Deployed Software. Science of Computer Programming, 54:143--211, 2005.]]
[20]
D. Lafferty and V. Cahill. Language-independent aspect-oriented programming. In OOPSLA 2003: Proc. of the 18th Annual ACM SIGPLAN Conf. on Object-Oriented Programming, Systems, Languages, and Applications, pages 1--12. ACM Press, 2003.]]
[21]
R. Lämmel. Object-Oriented COBOL: Concepts & Implementation. In J. Wessler et al., editors, COBOL Unleashed. Macmillan Computer Publishing, September 1998. 44 pages, 2 chapters.]]
[22]
R. Lämmel and C. Verhoef. Semi-automatic Grammar Recovery. Software---Practice & Experience, 31(15):1395--1438, December 2001.]]
[23]
C. V. Lopes. D: A language framework for distributed programming. PhD thesis, College of Computer Science, Northeastern University, November 1997.]]
[24]
A. C. Lorents. Mining Legacy Assets with AssetMiner. CobolReport.com, May 2001. http://objectz.com/columnists/alden/05212001.asp.]]
[25]
I. Michiels, K. De Schutter, T. D'Hondt, and G. Hoffman. Using Dynamic Aspect to Extract Business Rules from Legacy Code. In Online proceedings of Dynamic Aspects Workshop at AOSD, 2004.]]
[26]
J. Piggot. Variable-Size (Dynamic) Tables, 30 April 2003. J4 Technical Report 03-0107.]]
[27]
A. Rashid and R. Chitchyan. Persistence as an aspect. In Proc. of the 2nd international Conf. on Aspect-oriented software development, pages 120--129. ACM Press, 2003.]]
[28]
D. Sabbah. Aspects: from promise to reality. In AOSD 2004: Proc. of the 3rd International Conf. on Aspect-Oriented Software Development, pages 1--2. ACM Press, 2004.]]
[29]
J. E. Sammet. The early history of COBOL. In The first ACM SIGPLAN Conf. on History of programming languages, pages 121--161. ACM Press, 1978.]]
[30]
S. Schonger, E. Pulvermüller, and S. Sarstedt. Aspect-Oriented Programming and Component Weaving: Using XML Representations of Abstract Syntax Trees. In Proc. of the 2nd German GI Workshop on Aspect-Oriented Software Development, pages 59--64, February 2002. Technical Report No. IAI-TR-2002-1, University of Bonn, Computer Science Dept.]]
[31]
D. Sereni and O. de Moor. Static analysis of aspects. In Proc. of the 2nd International Conf. on Aspect-oriented Software Development, pages 30--39. ACM Press, 2003.]]
[32]
S. E. Sim. Next generation data interchange: Tool-to-tool application program interfaces. In Proc. of Working Conf. on Reverse Engineering (WCRE'00), pages 278--283. IEEE Computer Society, November 2000.]]
[33]
T. Skotiniotis and D. H. Lorenz. Cona: aspects for contracts and contracts for aspects. In OOPSLA 2004: Companion to the 19th annual ACM SIGPLAN Conf. on Object-oriented programming systems, languages, and applications, pages 196--197. ACM Press, 2004.]]
[34]
S. Soares, E. Laureano, and P. Borba. Implementing distribution and persistence aspects with AspectJ. In OOPSLA 2002: Proc. of the 17th ACM SIGPLAN Conf. on Object-Oriented Programming, Systems, Languages, and Applications, pages 174--190. ACM Press, 2002.]]
[35]
N. P. Veerman. Revitalizing modifiability of legacy assets. Journal of Software Maintenance and Evolution, 16(4-5):219--254, July-Oct 2004. Special issue on CSMR 2003.]]
[36]
Y. Zou and K. Kontogiannis. A framework for migrating procedural code to object-oriented platforms. In 8th Asia-Pacific Software Engineering Conf. (APSEC 2001), 4-7 December 2001, Macau, China, pages 390--499. IEEE Computer Society, 2001.]]

Cited By

View all
  • (2023)Crossover: Towards Compiler-Enabled COBOL-C InteroperabilityProceedings of the 22nd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3624007.3624055(72-85)Online publication date: 22-Oct-2023
  • (2020)An Open Source Approach for Modernizing Message-Processing and Transactional COBOL Applications by Integration in Java EE Application ServersWeb Information Systems and Technologies10.1007/978-3-030-35330-8_12(244-261)Online publication date: 17-Jan-2020
  • (2017)A Survey of Naturalistic Programming TechnologiesACM Computing Surveys10.1145/310948150:5(1-35)Online publication date: 26-Sep-2017
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
AOSD '05: Proceedings of the 4th international conference on Aspect-oriented software development
March 2005
210 pages
ISBN:1595930426
DOI:10.1145/1052898
  • General Chair:
  • Mira Mezini,
  • Program Chair:
  • Peri Tarr
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

  • Illinois Institute of Technology
  • BEA Systems, Inc.
  • Siemens AG, CT SE 2
  • IBMR: IBM Research
  • AOSD-Europe: European Network of Excellence on Aspect-Oriented Software Development
  • Oracle Corporation
  • AOSA: Aspect-Oriented Software Association, Inc
  • TheServerSide.COM

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 March 2005

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Cobol
  2. aspect-oriented programming
  3. business programming

Qualifiers

  • Article

Conference

AOSD05
Sponsor:
  • IBMR
  • AOSA

Acceptance Rates

Overall Acceptance Rate 41 of 139 submissions, 29%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)2
Reflects downloads up to 15 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Crossover: Towards Compiler-Enabled COBOL-C InteroperabilityProceedings of the 22nd ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences10.1145/3624007.3624055(72-85)Online publication date: 22-Oct-2023
  • (2020)An Open Source Approach for Modernizing Message-Processing and Transactional COBOL Applications by Integration in Java EE Application ServersWeb Information Systems and Technologies10.1007/978-3-030-35330-8_12(244-261)Online publication date: 17-Jan-2020
  • (2017)A Survey of Naturalistic Programming TechnologiesACM Computing Surveys10.1145/310948150:5(1-35)Online publication date: 26-Sep-2017
  • (2013)Automated Source-Level Instrumentation for Dynamic Dependency Analysis of COBOL SystemsSoftwaretechnik-Trends10.1007/BF0332347332:2(45-46)Online publication date: 4-May-2013
  • (2013)Dynamic Program Analysis for Database Reverse EngineeringGenerative and Transformational Techniques in Software Engineering IV10.1007/978-3-642-35992-7_8(297-321)Online publication date: 2013
  • (2011)A model-driven framework for aspect weaver constructionTransactions on aspect-oriented software development VIII10.5555/2028556.2028558(1-45)Online publication date: 1-Jan-2011
  • (2011)A Model-Driven Framework for Aspect Weaver ConstructionTransactions on Aspect-Oriented Software Development VIII10.1007/978-3-642-22031-9_1(1-45)Online publication date: 2011
  • (2010)Program analysis environment for writing COBOL aspectsProceedings of the 9th International Conference on Aspect-Oriented Software Development10.1145/1739230.1739257(222-230)Online publication date: 15-Mar-2010
  • (2010)AspectMatlabProceedings of the 9th International Conference on Aspect-Oriented Software Development10.1145/1739230.1739252(181-192)Online publication date: 15-Mar-2010
  • (2009)CognacProceedings of the 2009 European Conference on Software Maintenance and Reengineering10.1109/CSMR.2009.9(199-208)Online publication date: 24-Mar-2009
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media