Bridging the Gap between Service Oriented Architecture and Design Patterns in Middleware Technology

Abdulmajeed Almuayqil*, Ibrahim Abunadi**
* Arab National Bank, Riyadh, Saudi Arabia.
** College of Computer and Information Sciences, Prince Sultan University, Riyadh, Saudi Arabia.
Periodicity:July - September'2019
DOI : https://doi.org/10.26634/jse.14.1.16503

Abstract

This paper discusses the role of Service Oriented Architecture (SOA) and design patterns in middleware technology with the help of Common Object Request Broker Architecture (CORBA) standard as a sample implementation to improve processes in a real business case. The link between SOA and design patterns in middleware technology has been aided by the development of different software that perform basic functions with ease and precision. Arguably, the effort that is used to develop various machinery is expensive, time consuming, and prone to various errors. However, businesses are working tirelessly to come up with business processes that will enable them to address the various shortcomings experienced during development. This study was based on case study methodology involving sending a questionnaire to 44 respondents working in an US-based Automotive Service Company to substantiate the use of SOA and design patterns in middleware technology. The findings of this research revealed that CORBA is responsible for delivering a reusable product line architecture that is controlled by a group of related applications. Additionally, this study revealed that CORBA simplifies the process of organizational communication. Notably, middleware bridges the gap between processes and design patterns by allowing the integration and standardization of the processes in a way that does not affect the operations of users and processes. Since all the processes pass through middleware such as CORBA, they can be monitored from one system. The case study has shown that middleware can become reusable software, which leverages patterns and frameworks to bridge the gap between functional requirements of applications and the underlying operating systems, network protocol stacks, and databases.

Keywords

Component, Service Oriented Architecture (SOA), Design Patterns, Middleware Technology.

How to Cite this Article?

Almuayqil, A., & Abunadi, I. (2019). Bridging the Gap between Service Oriented Architecture and Design Patterns in Middleware Technology. i-manager's Journal on Software Engineering, 14(1), 53-71. https://doi.org/10.26634/jse.14.1.16503

References

[1]. Acher, M., Cleve, A., Collet, P., Merle, P., Duchien, L., & Lahire, P. (2014). Extraction and evolution of architectural variability models in plugin-based systems. Software & Systems Modeling, 13(4), 1367-1394. https://doi.org/10. 1007/s10270-013-0364-2
[2]. Aiken, B., Strassner, J., Carpenter, B., Foster, I., Lynch, C., Mambretti, J., Moore, R., & Teitelbaum, B. (2000). Network policy and services: A report of a workshop on middleware. ACM SIGBED Review. https://doi.org/10. 17487/RFC2768
[3]. Al-Jaroodi, J., Mohamed, N., & Jawhar, I. (2018). A service-oriented middle ware frame work for manufacturing industry 4.0. ACM SIGBED Review, 15(5), 29-36. https://doi.org/10.1145/3292384.3292389
[4]. Alvaréz, C. A. G., Aguiar, M., Acosta-Pulido, J., Recio, J. P. P., & Prieto, M. A. (2019). Software architecture of the high-level control of FRIDA. Journal of Astronomical Telescopes, Instruments, and Systems, 5(1), 019001. https://doi.org/10.1117/1.JATIS.5.1.019001
[5]. Apel, S., Batory, D., Kästner, C., & Saake, G. (2016). Feature-oriented software product lines: Concepts and Implementation. Springer.
[6]. Badidi, E., De Sousa, C., Lang, B. F., & Burger, G. (2003). AnaBench: A Web/CORBA-based workbench for biomolecular sequence analysis. BMC Bioinformatics, 4(1), 63. https://doi.org/10.1186/1471-2105-4-63
[7]. Balalaie, A., Heydarnoori, A., & Jamshidi, P. (2016). Microservices architecture enables devops: Migration to a cloud-native architecture. IEEE Software, 33(3), 42-52. https://doi.org/10.1109/MS.2016.64
[8]. Bencomo, N., Bennaceur, A., Grace, P., Blair, G., & Issarny, V. (2013). The role of models@run.time in supporting on-the-fly interoperability. Computing, 95(3), 167-190. https://doi.org/10.1007/s00607-012-0224-x
[9]. Benz, M., & Kümmel, S. (2000). Requirements and limits of a real-time transport system for distributed object computing middleware. Integrated Computer-Aided Engineering, 7(4), 297-312. https://doi.org/10.3233/ICA- 2000-7403
[10]. Beránek, M., Feuerlicht, G., & Ková, V. (2017). Developing enterprise applications for cloud: the unicorn application framework. International Conference on Grid, Cloud and Cluster Computing, GCC, 24-30.
[11]. Beynon, M., & Maad, S. (2002). Empirical modelling of real life financial systems: The need for integration of enabling tools and technologies. Journal of Integrated Design and Process Science, 6(1), 43-58.
[12]. Borck, J. (2001). Future of networked apps. Info World, 23(29), 47-48.
[13]. Bowen, T. S. (1997). Vendors to push component wares at Object World. InfoWorld, 19(9), 10-10.
[14]. Brose, G. (2002). Manageable access control for CORBA. Journal of Computer Security, 10(4), 301-337.
[15]. Brown, P. C. (2008). Implementing SOA: Total architecture in practice. Addison-Wesley Professional.
[16]. Calvo, I., Almeida, L., Noguero, A., Pérez, F., & Marcos, M. (2014). A flexible time-triggered service for realtime CORBA. Computer Standards & Interfaces, 36(3), 531-544. https://doi.org/10.1016/j.csi.2013.11.003
[17]. Chitra, A., & Sadasivam, G. S. (2003). Design and implementation of a static bridge between COM and CORBA distributed objects. Journal of Integrated Design and Process Science, 7(4), 25-33.
[18]. Costa, F. M., Blair, G. S., & Coulson, G. (2000). Experiments with an architecture for reflective middleware. Integrated Computer-Aided Engineering, 7(4), 313-325. https://doi.org/10.3233/ICA-2000-7404
[19]. da Cruz, M. A., Rodrigues, J. J. P., Al-Muhtadi, J., Korotaev, V. V., & de Albuquerque, V. H. C. (2018). A reference model for internet of things middleware. IEEE Internet of Things Journal, 5(2), 871-883. https://doi.org/ 10.1109/JIOT.2018.2796561
[20]. Díaz, M., Garrido, D., Llopis, L., & Troya, J. M. (2009). Designing distributed software with RT-CORBA and SDL. Computer Standards & Interfaces, 31(6), 1073-1091. https://doi.org/10.1016/j.csi.2008.09.033
[21]. Do, H. M., Matai, J., Suh, Y. H., Kim, Y. S., Kim, B. K., Kim, H. S., Tamio, T., Lee, J. Y., & Yu, W. (2009). Connection framework of RT-middleware and CAMUS for maintaining ubiquity between two ubiquitous robot spaces. Advanced Robotics, 23(12-13), 1703-1723. https://doi.org/ 10.1163/016918609X12496339936852
[22]. Eide, E., Simister, J. L., Stack, T., & Lepreau, J. (1999). Flexible IDL compilation for complex communication patterns. Scientific Programming, 7(3-4), 275-287. https://doi.org/10.1155/1999/926915
[23]. Fatoohi, R., & Smith, L. (2001). Development and implementation of a distributed-object job-execution environment. Scientific Programming, 9(1), 27-37. https://doi.org/10.1155/2001/827470
[24]. Gorard, S. (2013). Research design: Creating robust approaches for the social sciences. UK: Sage.
[25]. Hasselbring, W. (1999). Design of a communication framework for interoperable information systems. Journal of Integrated Design and Process Science, 3(3), 15-27.
[26]. Heintz, F., & Doherty, P. (2004). DyKnow: An approach to middleware for knowledge processing. Journal of Intelligent & Fuzzy Systems, 15(1), 3-13.
[27]. Heintz, F., & Doherty, P. (2006). A knowledge processing middleware framework and its relation to the JDL data fusion model. Journal of Intelligent & Fuzzy Systems, 17(4), 335-351.
[28]. Jololian, L. (2005). Towards semantic integration of components using a service-based architecture. Journal of Integrated Design and Process Science, 9(3), 1-13.
[29]. Kawsar, F., Nakajima, T., Park, J. H., & Yeo, S. S. (2010). Design and implementation of a framework for building distributed smart object systems. The Journal of Supercomputing, 54(1), 4-28. https://doi.org/10.1007/ s11227-009-0323-4
[30]. Krishna, A., & Schmidt, D. (2003). Real-time CORBA middleware. Middleware for communications. MQ New York. In: Wiley and Sons.
[31]. Lauesen, S. (2004). COTS tenders and integration requirements. 12th IEEE International Requirements Engineering Conference, (pp. 166-175). IEEE. https://doi.org/10.1109/ICRE.2004.1335674
[32]. Li, B., Kalter, W., & Nahrstedt, K. (2000). A hierarchical Quality of Service control architecture for configurable multimedia applications. Journal of High Speed Networks, 9(3, 4), 153-174.
[33]. Liang, J. S., Chao, K.-M., & Ivey, P. (2013). VR-based wheeled mobile robot in application of remote real-time assembly. The International Journal of Advanced Manufacturing Technology, 64(9-12), 1765-1779. https://doi.org/10.1007/s00170-012-4140-1
[34]. Liu, Q., Sun, X., Mahdavian, S. M., & Ding, S. (2009). Establishment of the model for flexible manufacturing system based on CORBA and IDEF 0. The International Journal of Advanced Manufacturing Technology, 42(3-4), 301-311. https://doi.org/10.1007/s00170-008-1600-8
[35]. Lomotey, R. K., Sriramoju, S., & Orji, R. (2019). Machine-to-infrastructure middleware platform for data management in IoT. International Journal of Business Process Integration and Management, 9(2), 90-106. https://doi.org/10.1504/IJBPIM.2019.099874
[36]. Majumdar, S., Shen, E.-K., & Abdul-Fatah, I. (2004). Performance of adaptive CORBA middleware. Journal of parallel and distributed computing, 64(2), 201-218. https://doi.org/10.1016/j.jpdc.2003.11.008
[37]. Mendling, J., Weber, I., Aalst, W. V. D., Brocke, J. V., Cabanillas, C., Daniel, F., & Gal, A. (2018). Blockchains for business process management-challenges and opportunities. ACM Transactions on Management Information Systems (TMIS), 9(1), 4. https://doi.org/10.1145/ 3183367
[38]. Mikačić, I., & Dulčić, Ž. (2012). Implementation of the process approach and business process management concept in croatian shipyards. Management, Knowledge and Learning, (pp. 277-284).
[39]. Mittasch, C., Weise, T., & Hesselmann, M. (2000). Decentralized control structures for distributed workflow applications. Integrated Computer-Aided Engineering, 7(4), 327-341. https://doi.org/10.3233/ICA-2000-7405
[40]. Oh, J.-Y., Park, J.-H., Jung, G.-H., & Kang, S.-J. (2003). CORBA based core middleware architecture supporting seamless interoperability between standard home network middlewares. IEEE Transactions on Consumer Electronics, 49(3), 581-586. https://doi.org/10.1109/TCE.2003.1233776
[41]. Ohara, K., Sugawara, T., Lee, H. J., Tomizawa, T., Do, H. M., Liang, X., …& Onda, H. (2008). Visual mark for robot manipulation and its RT-middleware component. Advanced Robotics, 22(6-7), 633-655. https://doi.org/10. 1163/156855308X305254
[42]. Pahl, C., Hasselbring, W., & Voss, M. (2009). Servicecentric integration architecture for enterprise software systems. Journal of Information Science and Engineering, 25(5), 1321-1336.
[43]. Papazoglou, M. P., & Georgakopoulos, D. (2003). Service-oriented computing. Communications of the ACM, 46(10), 25-28.
[44]. Poggi, A., Rimassa, G., & Turci, P. (2002). What agent middleware can (and should) do for you. Applied Artificial Intelligence, 16(9-10), 677-698. https://doi.org/10.1080/ 08839510290030444
[45]. Pratap, R. M., Hunleth, F., & Cytron, R. (2004). Building fully customisable middleware using an aspect-oriented approach. IEE Proceedings-Software, 151(4), 199-216. https://doi.org/10.1049/ip-sen:20040923
[46]. Ramfos, A., Busse, R., Platis, N., & Fankhauser, P. (1999). An integration framework for CORBA objects. Journal of Integrated Design and Process Science, 3(1), 27-41.
[47]. Rathfelder, C., Klatt, B., Sachs, K., & Kounev, S. (2014). Modeling event-based communication in componentbased software architectures for performance predictions. Software & Systems Modeling, 13(4), 1291-1317. https://doi.org/10.1007/s10270-013-0316-x
[48]. Robinson, W. N. (2006). A requirements monitoring framework for enterprise systems. Requirements engineering, 11(1), 17-41. https://doi.org/10.1007/s00766- 005-0016-3
[49]. Sacks, R., Eastman, C., Lee, G., & Teicholz, P. (2018). BIM handbook: A guide to building information modeling for owners, designers, engineers, contractors, and facility managers: John Wiley & Sons.
[50]. Sadasivam, G. S. (2006). A grid-based approach to paraloading using mirrored corba servers. Journal of Integrated Design and Process Science, 10(3), 79-85.
[51]. Schmidt, H., Poernomo, I., & Reussner, R. (2001). Trustby- contract: Modelling, analysing and predicting behaviour of software architectures. Journal of Integrated Design and Process Science, 5(3), 25-51.
[52]. Schuster, H., Neeb, J., & Schamburger, R. (1999). Using distributed object middleware to implement scalable workflow management systems. Journal of Integrated Design and Process Science, 3(2), 1-19.
[53]. Sheikh, H. R. (2012). Comparing CORBA and webservices in view of a service oriented architecture. International Journal of Computer Applications, 39(6), 47- 55.
[54]. Silverman, B., & Owens, J. M. (1996). Enterprise information infrastructure (EII): Design issues and guidelines. Information and Systems Engineering Journal, 2(1), 19-45.
[55]. Steiner, F. P., Eshkar, U., & Seibert, C. (1998). Automation, integration, and data management for the back end. Solid State Technology, 41(11).
[56]. Stubbings, G., & Polovina, S. (2013). Levering object- oriented knowledge for service-oriented proficiency. Computing, 95(9), 817-835. https://doi.org/10.1007/ s00607-013-0304-6
[57]. Toral, S. L., Barrero, F., Cortés, F., & Gregor, D. (2013). Analysis of embedded CORBA middleware performance on urban distributed transportation equipments. Computer Standards & Interfaces, 35(1), 150-157. https://doi.org/10.1016/j.csi.2012.06.004
[58]. Tsou, M. H., & Buttenfield, B. P. (2002). A dynamic architecture for distributing geographic information services. Transactions in GIS, 6(4), 355-381. https://doi.org/ 10.1111/1467-9671.00118
[59]. Vermesan, O., & Bacquet, J. [Eds.] (2017). Cognitive Hyperconnected Digital Transformation: Internet of Things Intelligence Evolution. Denmark: River Publishers.
[60]. Wang, F. (2000). A distributed geographic information system on the common object request broker architecture (corba). GeoInformatica, 4(1), 89-115. https://doi.org/10. 1023/A:1009832526289
[61]. Zarras, A. (2004). A comparison framework for middleware infrastructures. Journal of Object Technology, 3(5), 103-123.
[62]. Zha, H., van der Aalst, W. M., Wang, J., Wen, L., & Sun, J. (2011). Verifying workflow processes: a transformationbased approach. Software & Systems Modeling, 10(2), 253-264. https://doi.org/10.1007/s10270-010-0149-9
If you have access to this article please login to view the article or kindly login to purchase the article

Purchase Instant Access

Single Article

North Americas,UK,
Middle East,Europe
India Rest of world
USD EUR INR USD-ROW
Pdf 35 35 200 20
Online 35 35 200 15
Pdf & Online 35 35 400 25

Options for accessing this content:
  • If you would like institutional access to this content, please recommend the title to your librarian.
    Library Recommendation Form
  • If you already have i-manager's user account: Login above and proceed to purchase the article.
  • New Users: Please register, then proceed to purchase the article.