Notification Oriented and Object Oriented Paradigms Comparison via Sale System

Abstract

This paper presents a new programming paradigm named Notification-Oriented Paradigm (NOP) and analyses the performance aspects of NOP programs by means of an experiment. NOP provides a new manner to conceive, structure, and execute software, which would allow causal-knowledge organization and decoupling better than standard solutions based upon current paradigms. These paradigms are essentially Imperative Paradigm (IP) and Declarative Paradigm (DP). In short, DP solutions are considered easier to use than IP solutions due to the concept of high-level programming. However, they are considered slower in execution and lesser flexible in development. Anyway, both paradigms present similar drawbacks such as redundant causal-evaluation and strongly coupled entities, which decrease software performance and processing distribution feasibility. These problems exist due to an orientation to a monolithic inference mechanism based on sequential evaluation searching on passive computational entities. NOP proposes another way to structure software and make its inferences, which is based on small, collaborative, and decoupled computational entities whose interaction happens through precise notifications. This paper presents a quantitative comparison between two equivalent implementations of a sale system, one developed according to the principles of Object-Oriented Paradigm (OOP/IP) in C++ and other developed according to the principles of NOP based on a NOP framework in C++. The results showed that NOP implementation obtained quite equivalent results with respect to OOP implementation. This happened because the NOP framework uses considerable expensive data-structures over C++. Thus, it is necessary a new compiler to NOP in order to actually use its potentiality.

Share and Cite:

J. Simão, D. Belmonte, A. Ronszcka, R. Linhares, G. Valença, R. Banaszewski, J. Fabro, C. Tacla, P. Stadzisz and M. Batista, "Notification Oriented and Object Oriented Paradigms Comparison via Sale System," Journal of Software Engineering and Applications, Vol. 5 No. 9, 2012, pp. 695-710. doi: 10.4236/jsea.2012.59083.

Conflicts of Interest

The authors declare no conflicts of interest.

References

[1] J. M. Simao, J. M. Simao, R. F. Banaszewski, C. A. Tacla and P. C. Stadzisz, “Notification Oriented Paradigm (NOP) and Imperative Paradigm: A Comparative Study,” Journal of Software Engineering and Applications, Vol. 5 No. 6, 2012, pp. 402-416. doi:10.4236/jsea.2012.56047
[2] R. W. Keyes, “The Technical Impact of Moore’s Law,” IEEE Solid-State Circuits Society Newsletter, Vol. 20, No. 3, 2006, pp. 25-27.
[3] E. S. Raymond, “The Art of UNIX Programming,” Addison-Wesley, Boston, 2003.
[4] J. M. Simao and P. C. Stadzisz, “Inference Based on Notifications: A Holonic Meta-Model Applied to Control Issues,” IEEE Transactions on Systems, Man and Cybernetics, Part A: Systems and Humans, Vol. 9, No. 1, 2009, pp. 238-250.
[5] W. Wolf, “High-Performance Embedded Computing: Architectures, Applications, and Methodologies,” Morgan Kaufmann, Burlington, 2007.
[6] S. Oliveira and D. Stewart, “Writing Scientific Software: A Guided to Good Style,” Cambridge University Press, Cambridge, 2006. doi:10.1017/CBO9780511617973
[7] C. Hughes and T. Hughes, “Parallel and Distributed Programming Using C++,” Addison-Wesley, Boston, 2003.
[8] J. M. Simao and P. C. Stadzisz, “Notification Oriented Paradigm (NOP)—A Notification Oriented Technique to Software Composition and Execution,” Patent Pending Submitted to INPI/Brazil in 2008 and UTFPR Innovation Agency, 2007.
[9] R. F. Banaszewski, P. C. Stadzisz, C. A. Tacla and J. M Simao, “Notification Oriented Paradigm (NOP): A Software Development Approach Based on Artificial Intelligence Concepts,” VI Congress of Logic Applied to the Technology—LAPTEC, Santos, 21-23 November 2007, p. 216.
[10] R. F. Banaszewski, “Notification Oriented Paradigm: Advances and Comparisons,” Master’s Thesis, Graduate School in Electrical Engineering and Industrial Computer Science (CPGEI) at the Federal University of Technology—Paraná (UTFPR). Curitiba, 2009. http://arquivos.cpgei.ct.utfpr.edu.br/Ano_2009/dissertacoes/Dissertacao_500_2009.pdf
[11] M. Herlihy and N. Shavit, “The Art of Multiprocessor Programming,” Morgan Kaufmann, Burlington, 2008.
[12] D. Harel, H. Lacover, A. Naamad, A. Pnueli, M. Politi, R. Sherman, A. Shtulltrauting and M. Trakhtenbrot, “Statemate: A Working Environment for the Development of Complex Reactive Systems,” IEEE Transactions on Software Engineering, Vol. 16, No. 4, 1990, pp. 403-416. doi:10.1109/32.54292
[13] D. Sevilla, J. M. Garcia and A. Gómez. “Using AOP to Automatically Provide Distribution, Fault Tolerance, and Load Balancing to the CORBA-LC Component Model,” In: C. Bischof, M. Bucker, P. Gibbon, G. R. Joubert, T. Lippert, B. Mohr and F. Peters, Eds., Parallel Computing: Architectures, Algorithms and Applications, NIC Series, John von Neumann Institute for Computing, Jülich, Vol. 38, 2007, pp. 347-354.
[14] W. M. Johnston, J. R. P. Hanna and R. J. Millar, “Advance in Dataflow Programming Languages,” Journal ACM Computing Surveys, Vol. 36, No. 1, pp. 1-34, 2004. doi:10.1145/1013208.1013209
[15] G. Coulouris, J. Dollimore and T. Kindberg, “Distributed Systems—Concepts and Designs,” Addison-Wesley, Boston, 2001.
[16] W. A. Gruver, “Distributed Intelligence Systems: A New Paradigm for System Integration,” Proceedings of the IEEE International Conference on Information Reuse and Integration, Las Vegas, 13-15 August 2007, pp. 14-15. doi:10.1109/IRI.2007.4296581
[17] J.-L. Gaudiot and A. Sohn, “Data-Driven Parallel Production Systems,” IEEE Transactions on Software Engineering, Vol. 16. No. 3, 1990, pp. 281-293. doi:10.1109/32.48936
[18] P. Banerjee, J. A. Chandy, M. Gupta, E. W. Hodges IV, J. G. Holm and A. Lain, “The Paradigm Compiler for Distributed Memory Multicomputer,” IEEE Computer, Vol. 28, No. 10, 1995, pp. 37-47. doi:10.1109/2.467577
[19] P. V. Roy and S. Haridi, “Concepts, Techniques, and Models of Computer Programming,” MIT Press, Cambridge, Massachusetts, 2004.
[20] S. Kaisler, “Software Paradigm, Wiley-Interscience,” 1st Edition, John Wiley & Sons, New York, 2005.
[21] M. Gabbrielli and S. Martini, “Programming Languages: Principles and Paradigms. Series: Undergraduate Topics in Computer Science,” 1st Edition, Springer/Dordrecht Heidelberg, London/New York, 2010.
[22] J. G. Brookshear, “Computer Science: An Overview,” Addison-Wesley, Boston, 2006.
[23] A. M. K. Cheng and J.-R. Chen, “Response Time Analysis of OPS5 Production Systems,” IEEE Transactions on Knowledge and Data Engineering, Vol. 12, No. 3, 2000, pp. 391-409. doi:10.1109/69.846292
[24] J. A. Kang and A. M. K. Cheng, “Shortening Matching Time in OPS5 Production Systems,” IEEE Transaction on Software Engineering, Vol. 30, No. 7, 2004, pp. 448-457. doi:10.1109/TSE.2004.32
[25] C. L. Forgy, “RETE: A Fast Algorithm for the Many Pattern/Many Object Pattern Match Problem,” Artificial Intelligence, Vol. 19, No. 1, 1982, pp. 17-37. doi:10.1016/0004-3702(82)90020-0
[26] P.-Y. Lee and A. M. Cheng, “HAL: A Faster Match Algorithm,” IEEE Transaction on Knowledge and Data Engineering, Vol. 14, No. 5, 2002, pp. 1047-1058. doi:10.1109/TKDE.2002.1033773
[27] M. L. Scott, “Programming Language Pragmatics,” 2nd Edition, Morgan Kaufmann Publishers Inc., San Francisco, 2000.
[28] J. M. Simao, “A Contribution to the Development of a HMS Simulation Tool and Proposition of a Meta-Model for Holonic Control,” Ph.D. Thesis, Federal University of Technology, Paraná; Henri Poincaré University, Nancy, 2005. http://tel.archives-ouvertes.fr/docs/00/08/30/42/PDF/ThesisJeanMSimaoBrazil.pdf
[29] J. M. Simao, C. A. Tacla and P. C. Stadzisz, “Holonic Control Meta-Model,” IEEE Transaction on System, Man & Cybernetics, Part A, Vol. 39, No. 5, 2009, pp. 1126-1139.
[30] L. V. B. Wiecheteck, “Software Design Method using Notification Oriented Paradigm—NOP,” Master’s Thesis, Graduate School in Electrical Engineering and Industrial Computer Science (CPGEI) at the Federal University of Technology—Paraná (UTFPR), Curitiba, 2011.
[31] R. R. Linhares, A. F. Ronszcka, G. Z. Valen?a, M. V. Batista, C. R. Erig Lima, F. A. Witt, P. C. Stadzisz and J. M. Simao, “Comparison between Object Oriented Paradigm and Notification Oriented Paradigm under the Context of Telephonic System Simulator,” Internacional Congress of Computation and Telecomunications, Lima, October 2011.
[32] M. V. Batista, R. F. Banaszewski, A. F. Ronszcka, G. Z. Valen?a, R. R. Linhares, P. C. Stadzisz, C. A. Tacla and J. M. Simao, “A Comparison between Notification Oriented Paradigm (NOP) and Object Oriented Paradigm (OOP) Carried out by Means of the Implementation of a Sale System,” Internacional Congress of Computation and Telecomunications, Lima, October 2011.
[33] A. F. Ronszcka, D. L. Belmonte, G. Z. Valen?a, M. V. Batista, R. R. Linhares, C. A. Tacla, P. C. Stadzisz and J. M. Simao, “Qualitative and Quantitative Comparisons between Object Oriented Paradigm and Notification Oriented Paradigm Based on Play Simulator,” International Congress of Computation and Telecomunications, Lima, October 2011.
[34] G. Z. Valen?a, R. F. Banaszewski, A. F. Ronszcka, M. V. Batista, R. R. Linhares, J. A. Fabro, P. C. Stadzisz and J. M. Simao, “NOP Framework, Advances and Comparisons,” Symposium of Applied Computing, Passo Fundo, 2011.
[35] L. V. B. Wiecheteck, P. C. Stadzisz and J. M. Simao, “A UML Profile to the Notification Oriented Paradigm (NOP),” Internacional Congress of Computation and Telecomunications, Lima, October 2011.
[36] B. D. Wachter, T. Massart and C. Meuter, “dSL: An Environment with Automatic Code Distribution for Industrial Control Systems,” Proceedings of the 7th International Conference on Principles of Distributed Systems, La Martinique, 10-13 December 2003, pp. 132-145.
[37] A. R. Pimentel and P. C. Stadzisz, “Application of the Independence Axiom on the Design of Object-Oriented Software Using the Axiomatic Design Theory,” Journal of Integrated Design & Process Science, Vol. 10, No. 1, 2006, pp. 57-69.
[38] S. Ahmed, “CORBA Programming Unleashed,” Sams Publisher, Indianapolis, 1998.
[39] D. Reilly and M. Reilly, “Java Network Programming and Distributed Computing,” Addison-Wesley, Boston, 2002.
[40] E. Tilevich and Y. Smaragdakis, “J-Orchestra: Automatic Java Application Partitioning,” Proceeding of the 16th European Conference on Object-Oriented Programming, Springer-Verlag, London, 2002. pp. 178-204.
[41] M. Díaz, D. Garrido, S. Romero, B. Rubio, E. Soler and J. M. Troya, “A Component-Based Nuclear Power Plant Simulator Kernel: Research Articles,” Concurrency and Computation: Practice and Experience, Vol. 19, No. 5, 2007, pp. 593-607. doi:10.1002/cpe.1075
[42] S. M. Deen, “Agent-Based Manufacturing: Advances in the Holonic Approach,” Springer, Berlin, 2003.
[43] H. Tianfield, “A New Framework of Holonic Self-Organization for Multi-Agent Systems,” IEEE International Conference on Systems, Man and Cybernetics, Montreal, 7-10 October, 2007.
[44] V. Kumar, N. Leonard and A. S. Morse, “Cooperative Control,” Springer-Verlag, New York, 2005.
[45] S. Loke, “Context-Aware Pervasive Systems: Architectures for a New Breed of Applications,” 1st Edition, Auerbach Publications, Boca Raton, 2006.
[46] A. S. Tanenbaum, M. van Steen, “Distributed Systems: Principles and Paradigms,” Prentice Hall, Upper Saddle River, 2002.
[47] I. Sommerville, “Software Engineering,” 8th Edition, Addison-Wesley, Boston, 2004.
[48] C. E. Barros Paes and C. M. Hirata, “RUP Extension for the Software Performance,” 32nd Annual IEEE International Computer Software and Applications, Turku, 28 July 2008, pp. 732-738
[49] G. R Watson, C. E. Rasmussen and B. R. Tibbitts, “An Integrated Approach to Improving the Parallel Application Development Process,” IEEE International Symposium on Parallel & Distributed Processing, Rome, 23-29 May 2009, pp. 1-8.
[50] J. Giarratano and G. Riley, “Expert Systems: Principles and Practice,” PWS Publishing, Boston, 1993.
[51] S. Russel and P. Norvig, “Artificial Intelligence: A modern Approach,” Prentice-Hall, Englewood Cliffs, 2003.
[52] D. P. Miranker, “TREAT: A Better Match Algorithm for AI Production System,” Sixth National Conference on Artificial Intelligence—AAAI’87, Seattle, 13-17 July 1987, pp. 42-47.
[53] D. P. Miranker and B. Lofaso, “The Organization and Performance of a Treat-Based Production System Compiler,” IEEE Transactions on Knowledge and Data Engineering, Vol. 3, No. 1, 1991, pp. 3-10. doi:10.1109/69.75882
[54] D. P. Miranker, D. A. Brant, B. Lofaso and D. Gadbois, “On the Performance of Lazy Matching in Production System,” 8th National Conference on Artificial Intelligence AAAI, Boston, 29 July-3 August 1990, pp. 685-692.
[55] D. Watt, “Programming Language Design Concepts,” J. W. & Sons, Baltimore, 2004.
[56] T. Faison, “Event-Based Programming: Taking Events to the Limit,” Apress, New York, 2006.
[57] S. M. Tuttle and C. F. Eick, “Suggesting Causes of Faults in Data-Driven Rule-Based Systems,” Proceedings of the IEEE 4th International Conference on Tools with Artificial Intelligence, Arlington, 10-13 November 1992, pp. 413-416. doi:10.1109/TAI.1992.246438

Copyright © 2024 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.