Open Access   Article Go Back

Role of Software Composition in Aspect Oriented Programming

P.R. Sarode1 , R. N. Jugele2

Section:Research Paper, Product Type: Journal Paper
Volume-6 , Issue-9 , Page no. 154-159, Sep-2018

CrossRef-DOI:   https://doi.org/10.26438/ijcse/v6i9.154159

Online published on Sep 30, 2018

Copyright © P.R. Sarode, R. N. Jugele . This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

View this paper at   Google Scholar | DPI Digital Library

How to Cite this Paper

  • IEEE Citation
  • MLA Citation
  • APA Citation
  • BibTex Citation
  • RIS Citation

IEEE Style Citation: P.R. Sarode, R. N. Jugele, “Role of Software Composition in Aspect Oriented Programming,” International Journal of Computer Sciences and Engineering, Vol.6, Issue.9, pp.154-159, 2018.

MLA Style Citation: P.R. Sarode, R. N. Jugele "Role of Software Composition in Aspect Oriented Programming." International Journal of Computer Sciences and Engineering 6.9 (2018): 154-159.

APA Style Citation: P.R. Sarode, R. N. Jugele, (2018). Role of Software Composition in Aspect Oriented Programming. International Journal of Computer Sciences and Engineering, 6(9), 154-159.

BibTex Style Citation:
@article{Sarode_2018,
author = {P.R. Sarode, R. N. Jugele},
title = {Role of Software Composition in Aspect Oriented Programming},
journal = {International Journal of Computer Sciences and Engineering},
issue_date = {9 2018},
volume = {6},
Issue = {9},
month = {9},
year = {2018},
issn = {2347-2693},
pages = {154-159},
url = {https://www.ijcseonline.org/full_paper_view.php?paper_id=2837},
doi = {https://doi.org/10.26438/ijcse/v6i9.154159}
publisher = {IJCSE, Indore, INDIA},
}

RIS Style Citation:
TY - JOUR
DO = {https://doi.org/10.26438/ijcse/v6i9.154159}
UR - https://www.ijcseonline.org/full_paper_view.php?paper_id=2837
TI - Role of Software Composition in Aspect Oriented Programming
T2 - International Journal of Computer Sciences and Engineering
AU - P.R. Sarode, R. N. Jugele
PY - 2018
DA - 2018/09/30
PB - IJCSE, Indore, INDIA
SP - 154-159
IS - 9
VL - 6
SN - 2347-2693
ER -

VIEWS PDF XML
425 279 downloads 270 downloads
  
  
           

Abstract

Software composition is becoming more and more vital as innovation in software engineering shifts from the development of individual components to their reuse and recombination in innovative ways. It is a key topic in computer science and particularly programming language analysis. Software composition is the process of constructing software systems from a set of software components. It aims at improving the reusability, customizability, and maintainability of large software systems. The primary motivation for software composition is reuse. Generally, the composition can be defined as any promising and expressive interaction between the complex software concept and a composition mechanism defines such an interface. The more recently proposed programming approach known as Aspect-Oriented Programming illustrate the concept of modularization i.e. managing software complexity and improving its reusability, understandability, extensibility. It provides an alternative mechanism to solve the code tangling and scattering problems in the implementation of crosscutting concerns using abstraction and composition mechanisms. This work considers different views of software composition and various existing definitions of composition units with the corresponding composition mechanisms. Also, deliberated how software composition is more efficiently reusable in aspect-oriented programming and mentioned the fundamental facts of software composition implementation based on Aspect-Oriented programming paradigm.

Key-Words / Index Term

Software composition, composition mechanisms, object-oriented programming, aspect-oriented programming, extension,paradigm.

References

[1] Christian Becker and Kurt Geihs. Quality of service - aspects of distributed programs. In Int`l Workshop on Aspect-Oriented Programming (ICSE 1998), April 1998.
[2] G. Bracha and W. Cook. Mixin-based inheritance. In Proc. OOPSLA/ ECOOP 90, pages 303–311. ACM Press, 1990.
[3] O. Nierstrasz and D. Tsichritzis, editors. Object-Oriented Software Composition. Prentice-Hall International, 1995.
[4] M. Shaw and D. Garlan. Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, 1996.
[5] J. Sametinger. Software Engineering with Reusable Components. Springer-Verlag, 1997.
[6] G. Kiczales et al. Aspect-oriented programming. In Proc. ECOOP 97, pages 220–242. Springer-Verlag, 1997.
[7] C. Szyperski. Universe of composition. Software Development, August 2002.
[8] C. Szyperski, D. Gruntz, and S. Murer. Component Software: Beyond Object-Oriented Programming. Addison-Wesley, second edition, 2002.
[9] G. Alonso et al. Web Services: Concepts, Architectures and Applications. Springer-Verlag, 2004.
[10] S. Ducasse et al. Traits: A mechanism for fine-grained reuse. ACM Trans. Prog. Lang. Syst., 28(2):331–388, 2006.
[11] U. Assman. Invasive Software Composition. Springer Verlag, 2003.
[12] C. Prehofer. Feature-oriented programming: A fresh look at objects. In Proc. ECOOP’97, pages 419–443. Springer-Verlag, 2002.
[13] H. Ossher et al. Specifying subject-oriented composition. Theory. Pract. Object Syst., 2(3):179–202, 1996.
[14] M. Buchi and W. Weck. Compound types for Java. In Proc. OOPSLA 98, pages 362–373. ACM Press, 1998.
[15] J.-G. Schneider and O. Nierstrasz. Components, scripts and glue. In Software Architectures – Advances and Applications, pages 13–25. Springer-Verlag, 1999.
[16] L. Bass, P. Clements, and R. Kazman. Software Architecture in Practice. Addison-Wesley, 2nd edition, 2003.
[17] Kung-Kiu Lau and Tauseef Rana School of Computer Science, The University of Manchester, Manchester M13 9PL, UK, A Taxonomy of Software Composition Mechanisms.
[18] O. Nierstrasz and L. Dami. Component-oriented software technology. In [35], pages 3–28. Prentice-Hall, 1995.
[19] J.K. Ousterhout. Scripting: Higher-level programming for the 21st century. Computer, 31(3):23–30, 1998.
[20] F. DeRemer and H.H. Kron. Programming-in-the-large versus programming-in-the-small. IEEE Trans. Soft. Eng., 2(2):80–86, 1976.
[21] R. Prieto-Diaz and J.M. Neighbors. Module interconnection languages. Journal of System and Software, 6(4):307–334, 1987.
[22] F. Achermann et al. Piccola – a small composition language. In Formal Methods for Distributed Processing – A Survey of Object-Oriented Approaches, pages 403–426. Cambridge University Press, 2001
[23] G.T. Heineman and W.T. Councill, editors. Component-Based Software Engineering: Putting the Pieces Together. Addison-Wesley, 2001.
[24] K.-K. Lau and Z. Wang. Software component models. IEEE Trans. On Soft. Eng., 33(10):709–724, 2007.
[25] M. Broy et al. What characterizes a software component? Software – Concepts and Tools, 19(1):49–56, 1998.
[26] P.C. Clements. A survey of architecture description languages. In 8th Int. Workshop on Soft. Spec.and Design, pages 16–25. ACM, 1996.
[27] N. Medvidovic and R. N. Taylor. A classification and comparison framework for software architecture description languages. IEEE Trans on Soft. Eng., 26(1):70–93, 2000.
[28] G. Kiczales et al. An overview of AspectJ. In Proc. ECOOP 01, pages 327–353. Springer-Verlag, 2001.
[29] N. Carriero and D. Gelernter. Linda in context. Comm. ACM, 32(4):444–458, 1989.
[30] F. Arbab. Reo: a channel-based coordination model for component composition. Math. Struct. in Comp. Sci., 14(3):329–366, 2004.
[31] T. Erl. Service-Oriented Architecture: Concepts, Technology, and Design.Prentice Hall, 2005.
[32] Christian Becker and Kurt Geihs. Quality of service - aspects of distributed programs. In Int`l Workshop on Aspect-Oriented Programming (ICSE 1998), April 1998.
[33] Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Mehmet Aksit and Satoshi Matsuoka, editors, 11th European Conf. Object-Oriented Programming, volume 1241 of LNCS, pages 220–242. Springer Verlag, 1997.
[34] B. Tekinerdogan and M. Aksit. Deriving design aspects from canonical models. In Workshop on Aspect-Oriented Programming (ECOOP 1998) [1].

[35] Krzystof Czarnecki and Ulrich W. Eisenecker. Generative Programming: Methods, Tools, and Applications. Addison-Wesley, Boston, 2000.
[36] John Dempsey and Vinny Cahill. Aspects of system support for distributed computing. In Workshop on Aspect-Oriented Programming (ECOOP 1997), June 1997.

[37] Cristina Videira Lopes. D: A Language Framework for Distributed Programming. PhD thesis, College of Computer Science, Northeastern University, 1997.
[38] H. Ossher and P. Tarr. Operation-level composition: A case in (join) point. In Workshop on Aspect-Oriented Programming (ECOOP 1998) [1].
[39] William Harrison and Harold Ossher. Subject-oriented programming—a critique of pure objects. In Proc. 1993 Conf. Object-Oriented Programming Systems, Languages, and Applications, pages 411–428, Sep 1993.
[40] R. E. Filman and D. P. Friedman. Aspect-oriented programming is quantification and obliviousness. In Workshop on Advanced Separation of Concerns (OOPSLA 2000), October2000.
[41] Kai B¨ollert. On weaving aspects. In Int’l Workshop on Aspect-Oriented Programming (ECOOP 1999), June 1999.
[42] Anurag Mendhekar, Gregor Kiczales, and John Lamping. RG: A case study for aspect-oriented programming. Technical Report SPL-97-009, Palo Alto Research Center, 1997.
[43] K. B¨ollert. Aspect-oriented programming case study: System management application. In Workshop on Aspect-Oriented Programming (ECOOP 1998) [1].
[44] C. Szyperski. Back to universe. Software Development, September 2002.
[45] C. Szyperski. Universe of composition. Software Development, August 2002.
[46] C. Szyperski, D. Gruntz, and S. Murer. Component Software: Beyond Object-Oriented Programming. Addison-Wesley, second edition, 2002.
[47] Jatin Arora, Jagandeep Singh Sidhu and Pavneet Kaur, "Applying Dependency Injection Through AOP Programming to Analyze the Performance of OS", International Journal of Computer Sciences and Engineering, Vol.3, Issue.2, pp.45-50, 2015.
[48] Biswajit Saha, Debaprasad Mukherjee, "Analysis of Applications of Object Orientation to Software Engineering, Data Warehousing and Teaching Methodologies", International Journal of Computer Sciences and Engineering, Vol.5, Issue.9, pp.244-248, 2017.
[49] Maushumi Lahon and Uzzal Sharma, "The Intricacies of Software Component Composition", International Journal of Computer Sciences and Engineering, Vol.03, Issue.01, pp.111-117, 2015.