Advertisement

Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Formal process algebraic modeling, verification, and analysis of an abstract Fuzzy Inference Cloud Service

Abstract

In cloud computing, services play key roles. Services are well defined and autonomous components. Nowadays, the demand of using Fuzzy inference as a service is increasing in the domain of complex and critical systems. In such systems, along with the development of the software, the cost of detecting and fixing software defects increases. Therefore, using formal methods, which provide clear, concise, and mathematical interpretation of the system, is crucial for the design of these Fuzzy systems. To obtain this goal, we introduce the Fuzzy Inference Cloud Service (FICS) and propose a novel discipline for formal modeling of the FICS. The FICS provides the service of Fuzzy inference to the consumers. We also introduce four novel formal verification tests, which allow strict analysis of certain behavioral disciplines in the FICS as follows: (1) Internal consistency, which analyzes the service in a strict and delicate manner; (2) Deadlock freeness; (3) Divergence freeness; and (4) Goal reach ability. The four tests are discussed and the FICS is verified to ensure that it can pass all these tests.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17

References

  1. 1.

    Preve NP (2011) Grid computing: towards a global interconnected infrastructure. Springer, Berlin

  2. 2.

    Galizia A, Quarati A (2012) Job allocation strategies for energy-aware and efficient grid infrastructures. J Syst Softw 85(7):1588–1606

  3. 3.

    Turner KJ, Leai Larry Tan K (2012) Rigorous development of composite grid services. J Netw Comput Appl 35(4):1304–1316

  4. 4.

    Buyya R, Broberg J, Goscinski AM (2011) Computing: principles and paradigms. Wiley, New York. ISBN-13: 978-0470887998

  5. 5.

    Reza H (2006) A methodology for architectural design of concurrent and distributed software systems. J Supercomput 37(3):227–248

  6. 6.

    Dou W, Qi L, Zhang X, Chen J (2013) An evaluation method of outsourcing services for developing an elastic cloud platform. J Supercomput 63(1):1–23

  7. 7.

    Bilogrevic I, Jadliwala M, Kumar P, Singh Walia S, Pierre Hubaux J, Aad I, Niemi V (2011) Meetings through the cloud: privacy-preserving scheduling on mobile devices. J Syst Softw 84(11):1910–1927

  8. 8.

    Li K, Yang LT, Lin X (2011) Advanced topics in cloud computing. J Netw Comput Appl 34(4):1033–1034

  9. 9.

    Espada JP, Martínez OS, Cueva Lovelle JM, Cristina Pelayo G-Bustelo B, Álvarez M, González García A (2011) Modeling architecture for collaborative virtual objects based on services. J Netw Comput Appl 34(5):1634–1647

  10. 10.

    Bartolini C, Bertolino A, Elbaum S, Marchetti E (2011) Bringing white-box testing to service oriented architectures through a service oriented approach. J Syst Softw 84(4):655–668

  11. 11.

    Elish KO, Elish MO (2008) Predicting defect-prone software modules using support vector machines. J Syst Softw 81(5):649–660

  12. 12.

    Laiping Z, Yizhi R, Mingchu L, Kouichi S (2012) Flexible service selection with user-specific QoS support in service-oriented architecture. J Netw Comput Appl 35(3):962–973

  13. 13.

    Al-Jaroodi J, Mohamed N (2012) Service-oriented middleware: a survey. J Netw Comput Appl 35(1):211–220

  14. 14.

    Yaik Ooi B, Yong Chan H, Cheah YN (2012) Dynamic service placement and replication framework to enhance service availability using team formation algorithm. J Syst Softw 85(9):2048–2062

  15. 15.

    Hassan H, Eltoweissy M (2012) CORM: a reference model for future computer networks. J Netw Comput Appl 35(2):668–680

  16. 16.

    Sadik S, Rahman A, Ali A, Ahmad HF, Suguri H (2010) Modeling high assurance agent-based Earthquake Management System using formal techniques. J Supercomput 52(2):97–118

  17. 17.

    Mohammad M, Alagar V (2011) A formal approach for the specification and verification of trustworthy component-based systems. J Syst Softw 84(1):77–104

  18. 18.

    Bayley I, Zhu H (2010) Formal specification of the variants and behavioural features of design patterns. J Syst Softw 83(2):209–221

  19. 19.

    Mattiello-Francisco F, Martins E, Rosa Cavalli A, Toshiro Yano E (2012) InRob: an approach for testing interoperability and robustness of real-time embedded software. J Syst Softw 85(1):3–15

  20. 20.

    Glykas M, Valiris G (1999) Formal methods in object oriented business modeling. J Syst Softw 48(1):4–27

  21. 21.

    van der Aalst WMP, van Hee KM, van der Toorn RA (2002) Component-based software architectures: a framework based on inheritance of behavior. Sci Comput Program, 42(2–3)

  22. 22.

    Arbab F (2004) Reo: a channel-based coordination model for component composition. Math Struct Comput Sci

  23. 23.

    Bondavalli A, Dal Cin M, Latella D, Majzik I, Pataricza A, Savoia G (2001) Dependability analysis in the early phases of UML based system design. Int J Comput Syst Sci Eng 16(5):265–275

  24. 24.

    Latella D, Majzik I, Massink M (1999) Automatic verification of a behavioral subset of UML statechart diagrams using the SPIN model-checker. Form Asp Comput, 637–664

  25. 25.

    Mitchell B (2008) Characterizing communication channel deadlocks in sequence diagrams. IEEE Trans Softw Eng 34(3):305–320

  26. 26.

    Bucur D, Kwiatowska MZ (2010) Software verification for TinyOS. In: Proceedings of 9th ACM/IEEE international conference on information processing in sensor networks

  27. 27.

    Cordeiro L, Fischer B, Chen H, Marques-Silva J (2009) Semiformal verification of embedded software in medical devices considering stringent hardware constraints. In: Proceedings of the 2009 international conference on embedded software and systems, pp 396–403

  28. 28.

    Abawajy JH (2009) Adaptive hierarchical scheduling policy for enterprise grid computing systems. J Netw Comput Appl 32(3):770–779

  29. 29.

    Baig ZA (2012) Multi-agent systems for protecting critical infrastructures: a survey. J Netw Comput Appl 35(3):1151–1161

  30. 30.

    Sadri Y, Khanmohamadi S (2010) An intelligent scheduling system using fuzzy logic. J Supercomput (December)

  31. 31.

    Sharma D (2011) Designing and modeling fuzzy control Systems. Int J Comput Appl 16(1)

  32. 32.

    Kurd Z, Kelly TP (2004) Using fuzzy self-organising maps for safety critical systems. In: Computer safety, reliability, and security. Lecture notes in computer science, vol 3219. Springer, Berlin, pp 17–30

  33. 33.

    Singamsetty P, Panchumarthy S (2012) Automatic fuzzy parameter selection in dynamic fuzzy voter for safety critical systems. Int J Fuzzy Syst Appl 2(2):68–90

  34. 34.

    Ebrahimnejad A (2012) Cost efficiency measures with trapezoidal fuzzy numbers in data envelopment analysis based on ranking functions: application in insurance organization and hospital. Int J Fuzzy Syst Appl 2(3):51–68

  35. 35.

    Jinturkar AM, Deshmukh SS (2013) Sustainable development by rural energy resources allocation in India: a fuzzy goal programming approach. Int J Energy Optim Eng 2(1):37–49

  36. 36.

    Ebrahimipour V, Haeri A, Sheikhalishahi M, Asadzadeh SM (2012) Application of multi-objective particle swarm optimization to solve a fuzzy multi-objective reliability redundancy allocation problem. J Saf Eng 1(2):26–38

  37. 37.

    Hoare CAR (1981) The emperor’s old clothes. Commun ACM 24(2):75–83

  38. 38.

    Hoare CAR (2004) Communicating sequential processes. Prentice Hall, Englewood Cliffs

  39. 39.

    Bergstra JA, Klop JW (1984) Process algebra for synchronous communication. Inf Control 60(1/3):109–137

  40. 40.

    Milner R (1989) Communication and concurrency. Prentice Hall, Englewood Cliffs

  41. 41.

    Baeten JCM, Van Beek DA, Rooda JE (2007) Process algebra for dynamic system modeling. In: CRC handbook of dynamic system modeling. CRC Press, Boca Raton, pp 1–21

  42. 42.

    Baeten JCM, Klop JW (2011) Typography in process algebra, the Traveling Science Man. Liber amicorum, Nov. 2011, pp 127–138

  43. 43.

    Haxthausen AE, Peleska J (2007) A domain-oriented model-based approach for construction and verification of railway control systems. In: Formal methods and hybrid real-time systems. Lecture notes in computer science, vol 4700. Springer, Berlin, pp 320–348

  44. 44.

    Buth B, Kouvaras M, Peleska J, Shi H (1997) Deadlock analysis for a fault-tolerant system. In: Lecture notes in computer science, vol 1349. Springer, Berlin, pp 60–75

  45. 45.

    Buth B, Peleska J, Shi H (1998) Combining methods for the livelock analysis of a fault-tolerant system. In: AMAST’98. Lecture notes in computer science, vol 1548. Springer, Berlin, pp 124–139.

  46. 46.

    Ryan P, Schneider S, Goldsmith M, Lowe G, Roscoe B (2001) The modeling and analysis of security protocols: the CSP approach. Addison-Wesley, Reading

  47. 47.

    Hoare T (2006) Why ever CSP? Electron Notes Theor Comput Sci 162:209–215

  48. 48.

    Roscoe AW, Gardiner PHB, Goldsmith MH, Hulance JR, Jackson DM, Scattergood JB (1995) Hierarchical compression for model-checking CSP or how to check 1020 dining philosophers for deadlock. In: Tools and algorithms for the construction and analysis of systems, vol 1019, pp 133–152

  49. 49.

    Allen R, Garlan D (1997) A formal basis for architectural connection. ACM Trans Softw Eng Methodol, July

  50. 50.

    Ribeiro OR, Fernandes JM, Pinto LF (2005) Model checking embedded systems with PROMELA. In: Proceedings of 12th IEEE international conference and workshops on the engineering of computer-based systems

  51. 51.

    Hooman J, Kugler H, Ober I (2008) Supporting UML-based development of embedded systems by formal techniques. Softw Syst Model

  52. 52.

    Xie F, Browne JC (2003) Verified systems by composition from verified components. In: Proceedings of joint conference ESEC/FSE

  53. 53.

    Ziadi T, Helou L, Jezequel JM (2004) Revisiting state chart synthesis with an algebraic approach. In: Proceedings of 26th international conference on software engineering

  54. 54.

    Adamek J, Plasil F (2005) Component composition errors and update atomicity: static analysis. J Softw Maint Evol Res Pract, September

  55. 55.

    Campbell L, Cheng B, McUmber W, Stirewalt REK (2002) Automatically detecting and visualizing errors in UML diagrams. Requir Eng (7), 264–287

  56. 56.

    Cheesman J, Daniels J (2000) UML components—a simple process for specifying component-based software. Addison-Wesley Longman, Amsterdam

  57. 57.

    Giese H et al (2003) Towards the composition verification of real-time UML designs. In: Proceedings of the 9th European software engineering conference/11th ACM SIGSOFT symposium on foundations of software engineering

  58. 58.

    Goessler G, Graf S, Majster-Cederbaum M, Martens M, Sifakis J (2007) An approach to modeling and verification of component based systems. In: SOFSEM 2007. Lecture notes in computer science, vol 4362. Springer, Berlin, pp 295–308

  59. 59.

    Babamir SM (2012) Constructing formal rules to verify message communication in distributed systems. J Supercomput 59(3):1396–1418

  60. 60.

    Vrba Z (2009) Implementation and performance aspects of Kahn process networks. Ph.D. thesis

  61. 61.

    Parks TM (1995) Bounded scheduling of process networks. Ph.D. dissertation, Berkeley, CA, USA

  62. 62.

    Kahn G (1974) The semantics of a simple language for parallel programming. Inf Process 74

  63. 63.

    Kim M, Kim Y, Kim H (2011) A comparative study of software model checkers as unit testing tools: an industrial case study. IEEE Trans Softw Eng 37(2)

  64. 64.

    Aldrich J, Chambers C, Notkin D (2002) ArchJava: connecting software architecture to implementation. In: Proceedings of ICSE’02: 24th international conference on software engineering

  65. 65.

    Chi Huang T (2011) Universal connection architecture for interactive applications to achieve distributed computing. J Netw Comput Appl 34(1):232–251

  66. 66.

    Ubayashi N, Nomura J, Tamai T (2010) Archface: a contract place where architectural design and code meet together. In: Proceedings of the 32nd international conference on software engineering. ACM, New York, pp 75–84

  67. 67.

    Choi Y, Bunse C (2011) Design verification in model-based controller development using an abstract component. Softw Syst Model 10(1):91–115

  68. 68.

    Baresi L, Ghezzi C, Mottola Loupe L (2010) Verifying publish-subscribe architecture with a magnifying lens. IEEE Trans Softw Eng 37(2):228–246

  69. 69.

    Choi Y, Kim M (2012) Controlled composition and abstraction for bottom-up integration and verification of abstract components. Inf Softw Technol 54(1):119–136

  70. 70.

    Pelliccione P, Tivoli M, Bucchiarone A, Polini A (2008) An architectural approach to the correct and automatic assembly of evolving component-based systems. J Syst Softw 81(12):2237–2251

  71. 71.

    Pelliccione P, Inveradi P, Muccini H (2009) CHARMY: a framework for designing and verifying architectural specifications. IEEE Trans Softw Eng 35(3):325–346

  72. 72.

    Cassou D, Bruneau J, Consel C, Balland E (2011) Towards a tool-based development methodology for pervasive computing applications. IEEE Trans Softw Eng

  73. 73.

    Cassou D (2011) Leveraging software architectures to guide and verify the development of sense/compute/control applications. In: Proceedings of FutureSOC’11: 6th HPI symposium on future trends in service-oriented computing. Hasso-Plattner Institute, Potsdam, Germany, June 2011

  74. 74.

    Guney K (2009) Comparison of Mamdani and Sugeno fuzzy inference system models for resonant frequency calculation of rectangular microstrip antennas. Prog Electromagn Res B 12:81–104

  75. 75.

    Jones C (2000) Software assessments, benchmarks and best practices. Addison-Wesley Professional, Reading. ISBN 978-0-201-48542-4

  76. 76.

    Formal Systems (Europe) Ltd. Failures, Divergencies and Refinement. http://www.fsel.com/documentation/fdr2/fdr2manual.pdf. Last visit: January 2013

  77. 77.

    Sun J, Liu Y, Dong JS (2009) PAT: towards flexible verification under fairness. In: Proceedings of the 20th international conference on computer-aided verification (CAV 2009). Lecture notes in computer science, vol 5643. Springer, Berlin

Download references

Author information

Correspondence to Ali Rezaee.

Appendix

Appendix

For the benefit of readers, the authors summarize in Table 4 the key symbols of the CSP and their definitions used in this paper.

Table 4 The CSP notation

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Rezaee, A., Rahmani, A.M., Movaghar, A. et al. Formal process algebraic modeling, verification, and analysis of an abstract Fuzzy Inference Cloud Service. J Supercomput 67, 345–383 (2014). https://doi.org/10.1007/s11227-013-1005-9

Download citation

Keywords

  • Cloud computing
  • Fuzzy Inference System
  • Formal verification
  • Service oriented systems
  • Process algebra