skip to main content
10.1145/1509239.1509266acmconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
research-article

Enabling the adoption of aspects - testing aspects: a risk model, fault model and patterns

Published: 02 March 2009 Publication History

Abstract

Aspect oriented programming (AOP) has started to achieve industry adoption for custom programs and some adoption in frameworks such as the Spring framework. Aspect oriented programming provides many benefits -- it can increase the scope of concerns that can be captured cleanly, it has explicit language support, and the separation provided by AOP provides an elegant mechanism for custom solutions.
In this paper we present a model for AOP testing. This includes a model for risk assessment, an associated fault model and AOP testing patterns. We also propose further opportunities for research in the area for automated AOP risk assessment and testing.
At ApTSi™ (Applied Technology Solutions, Inc.) we have been applying AOP in the creation of our SOASense™ framework, and in our consulting engagements. We are seeing adoption typically in classical AOP areas such as Logging, Error Handling, Audit events, etc. In these scenarios, having a reliable AOP implementation is critical. For example, having an Audit event not occur for a service call due to a faulty join-point definition can have severe legal implications. We need a solution that provides reliability, is repeatable and enables us to assess risk.

References

[1]
Christian Bruel and Francisco Reverbel. Join point selectors. In AOSD '07: Proceedings of the 5th workshop on Engineering properties of languages and aspect technologies, article no. 3, Vancouver, Britich Columbia, Canada, 2007. ACM Press.
[2]
John Burton, Fergal Mc Caffery, Jun and Ita Richardson. A risk management capability model for use in medical device companies. In ICSE '06: Proceedings of the 2006 international workshop on Software quality, pages 3--8, Shanghai, China, May 21, 2006. ACM
[3]
Mariano Ceccato, Paolo Tonella and Filippo Ricca. Is AOP code easier or harder to test than OOP code? On-line Proceedings of the First Workshop on Testing Aspect-Oriented Programs (WTAOP 2005), Chicago, Illinois, 2005
[4]
Yanping Chen, Robert L. Probert and D. Paul Sims. Specification-based regression test selection with risk analysis. In IBM Centre for Advanced Studies Conference 2002: Proceedings of the 2002 conference of the Centre for Advanced Studies on Collaborative research, Page 1, Canada, 2006. IBM Press.
[5]
Zaid Dwaikat and Francesco Parisi-Presicce. Risky trust: risk based analysis of software systems. In SESS'05: Software Engineering for Secure Systems, ACM SIGSOFT Software Engineering Notes, pages 1--7, New York, NY, USA, 2005. ACM
[6]
Arilo C. Dias Neto, Rajesh Subramanyan, Marlon Vieira and Guilherme H. Travassos. A survey on modelbased testing approaches: a systematic review. In ASE '07: Proceedings of the 1st ACM international workshop on Empirical assessment of software engineering languages and technologies: held in conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE) 2007, page 31--38, Atlanta, GA, USA, 2007. ACM
[7]
Ronald P. Higuera, Yacov Y. Haimes. Software Risk Management. Technical Report. CMU/SEI-96-TR-012 ESC-TR-96-012, June 1996.
[8]
Gregor Kiczales and Mira Mezini. Aspect-oriented programming and modular reasoning. In ICSE '05: Proceedings of the 27th international conference on Software engineering, pages 49--58, St. Louis, MO, USA, 2005. ACM
[9]
Paul Luo Li, Mary Shaw, Jim Herbsleb, Bonnie Ray and P.Santhanam. Empirical evaluation of defect projection models for widely-deployed production software systems. In FSE '04: Proceedings of the 12th ACM SIGSOFT twelfth international symposium on Foundations of software engineering, pages 263--272, Newport Beach, CA, USA, 2004. ACM
[10]
Elisabetta Di Nitto, Robert J. Hall, Jun Han, Yanbo Han, Andrea Polini, Kurt Sandkuhl and Andrea Zisman. Report on the International workshop on service oriented software engineering (IW-SOSE'06). In ICSE '06. ACM SIGSOFT Software Engineering Notes, Volume 31 Issue 5, 2006. ACM.
[11]
A. Restivo and A. Aguiar. Disciplined composition of aspects using tests. In AOSD '08: Proceedings of the 2008 AOSD workshop on Linking aspect technology and evolution, page 68--77, Charleston, South Carolina, USA, 2008. ACM.
[12]
Idongesit Mkpong-Ruffin, David Umphress, John Hamilton and Juan Gilbert. Quantitative software security risk assessment model. In ACM '07: Proceedings of the 2007 ACM workshop on Quality of protection, pages 31--33, Alexandria, Virginia, USA, 2007. ACM
[13]
Baekken, Jon Swane. (2006). A fault model for pointcuts and advice in AspectJ programs (Thesis, Washington State University, 2006). Retrieved from System requirements: http://hdl.handle.net/2376/568
[14]
Dominik Stein, Stefan Hanenberg, and Rainer Unland. Expressing different conceptual models of join point selections in aspect-oriented design. In AOSD '06: Proceedings of the 5th international conference on Aspect-oriented software development, page 15--26, Bonn, Germany, 2006. ACM
[15]
Friedrich Steimann. The paradoxical success of aspect-oriented programming. In OOPSLA '06: Proceedings of the 2006 OOPSLA Conference, pages 481--497, Portland, Oregon, USA, 2006. ACM
[16]
M. A. Vouk and K.C. Tai . Some issues in multi-phase software reliability modeling. In IBM Centre for Advanced Studies Conference 1993: Proceedings of the 1993 conference of the Centre for Advanced Studies on Collaborative research: software engineering -- Volume 1, pages 513--523, Toronto, Ontario, Canada, 1993. IBM Press
[17]
Bart De Win, Frank Piessens and Wouter Joosen. How Secure is AOP and What can we Do about it? In AOSD '06: Proceedings of the 2006 international workshop on Software engineering for secure systems, page 27--34, Shanghai, China, 2006. ACM
[18]
W. Eric Wong, Yu Qi and Kendra Cooper. Source code-based software risk assessing. In ACM '05: Proceedings of the 2005 ACM symposium on Applied computing, page 1485--1490, Santa Fe, New Mexico, USA, 2005. ACM
[19]
Dianxiang Xu and Kendall Nygard. A threat-driven approach to modeling and verifying secure software. In IEEE '05: Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering, pages 342--346, Long Beach, CA, USA, 2005. ACM
[20]
Chuan Zhao and Roger T. Alexander. Testing AspectJ programs using fault-based testing. In AOSD '07: Proceedings of the 3rd workshop on Testing aspect-oriented programs, page 13--16, Vancouver, British Columbia, Canada, 2007. ACM
[21]
Chuan Zhao and Roger T. Alexander. Testing Aspect-Oriented Programs as Object-Oriented Programs. In AOSD '07: Proceedings of the 3rd workshop on Testing aspect-oriented programs, page 23--27, Vancouver, British Columbia, Canada, 2007. ACM
[22]
Graham-Leach--Bliley Act of 1999, Act, Pub.L. 106--102, 113 Stat. 1338, enacted November 12, 1999.
[23]
Nikhil Kumar, Patterns in SOA, In 15th Enterprise Architect Practitioners Conference, Proceedings of the 15th Enterprise Architect Practitioners Conference, Austin, TX, USA, 2007
[24]
Xu, D., Xu, W., State-Based Incremental Testing of Aspect-Oriented Programs. AOSD'06, March 20-24, 2006 Bonn, Germany.
[25]
Zhao, J., Data-flow-based unit testing of aspect-oriented programs. In Proc. of the 27th Annual IEEE International Computer Software and Applications Conference (COMPSAC'03), pp.188--197, 2003.
[26]
Chittister, Clyde & Haimes, Yacov Y. Risk Associated with Software Development: A Holistic Framework for Assessment and Management, IEEE Transactions on Systems, Man, and Cybernetics 23, 3 (May-June 1993):710--723.
[27]
Lowrance, William W. Of Acceptable Risk: Science and the Determination of Safety. Los Altos, Ca: William Kaufmann, 1976.
[28]
PCI Security Standards Council, Payment Card Industry (PCI) Data Security Standard, Version 1.2, 2008

Cited By

View all

Index Terms

  1. Enabling the adoption of aspects - testing aspects: a risk model, fault model and patterns

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    AOSD '09: Proceedings of the 8th ACM international conference on Aspect-oriented software development
    March 2009
    278 pages
    ISBN:9781605584423
    DOI:10.1145/1509239
    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

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 02 March 2009

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. aspect-oriented programming
    2. aspectj
    3. bytecode
    4. decompilation
    5. eclipse
    6. testing
    7. weaver
    8. woven code

    Qualifiers

    • Research-article

    Conference

    AOSD '09

    Acceptance Rates

    Overall Acceptance Rate 41 of 139 submissions, 29%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 24 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media