Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Fixing state change inconsistency with self regulating particle swarm optimization

  • Methodologies and Application
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

Software has made a profound influence in all walks of life. Developing quality software is a major challenge, and the consistency and completeness of the design has a prime role in the development of quality software. Many a times, the process of consistency checking in industries is manual. Artificial intelligence techniques can replace many of these manual efforts to make the development of software easier and cost-effective. Software developers use state diagrams to represent the dynamic behavior in the design stage. We propose a novel application of self regulating particle swarm optimization (SRPSO) algorithm to ensure consistency of state diagrams during the design phase of software development. Inconsistency management is modeled as an optimization problem. In this work, we detect two types of state change inconsistency, incompatible behavior inconsistency and disconnected model inconsistency. A fitness function is defined to detect inconsistency. We make use of the SRPSO algorithm to resolve inconsistency. Detecting inconsistencies in the early stages of software development enables phase containment of errors and prevents errors from being propagated to the code. The proposed approach generates consistent and complete state diagrams leading to accurate code generation, meeting time deadlines, reducing cost of production and easy system maintenance.

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

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

References

  • Agarwal K, Srivastava G (2010) Towards software test data generation using discrete quantum particle swarm optimization. In: Proceedings of the 3rd India software engineering conference. ACM, pp 65–68

  • Bansal JC, Singh PK, Saraswat M, Verma A, Jadon SS, Abraham A (2011) Inertia weight strategies in particle swarm optimization. In: Third World Congress on nature and biologically inspired computing (NaBIC). IEEE, pp 633–640

  • Bardsiri VK, Jawawi DNA, Hashim SZM, Khatibi E (2013) A PSO-based model to increase the accuracy of software development effort estimation. Softw Qual J 21(3):501–526

    Article  Google Scholar 

  • Blondin J (2009) Particle swarm optimization: a tutorial. http://cs.armstrong.edu/saad/csci8100/pso tutorial.pdf. Accessed 26 Apr 2018

  • Bowman M, Briand LC, Labiche Y (2010) Solving the class responsibility assignment problem in object-oriented analysis with multi-objective genetic algorithms. IEEE Trans Softw Eng 36(6):817–837

    Article  Google Scholar 

  • Boyd J (2017) The Mt. Gox Bitcoin debacle: an update. https://spectrum.ieee.org/tech-talk/computing/networks/the-mt-gox-bitcoin-debacle-an-update. Accessed 07 Mar 2019

  • Briski KA, Chitale P, Hamilton V, Pratt A (2008) Minimizing code defects to improve software quality and lower development costs. Development Solution White Paper IBM

  • Charette RN (2014) Nissan recalls nearly 1 million cars for air bag software fix. https://spectrum.ieee.org/riskfactor/transportation/safety/nissan-recalls-nearly-1-million-cars-for-airbag-software-fix. Accessed 07 Mar 2019

  • Charette RN (2018) The biggest IT failures of 2018. https://spectrum.ieee.org/riskfactor/computing/it/it-failures-2018-all-the-old-familiar-faces#qaTopicThree. Accessed 07 Mar 2019

  • Ding R, Feng X, Li S, Dong H (2012) Automatic generation of software test data based on hybrid particle swarm genetic algorithm. In: 2012 IEEE Symposium on electrical and electronics engineering (EEESYM). IEEE, pp 670–673

  • Diskin Z, Xiong Y, Czarnecki K (2010) Specifying overlaps of heterogeneous models for global consistency checking. In: Proceedings of the first international workshop on model-driven interoperability. ACM

  • Eberhart RC, Shi Y (2000) Comparing inertia weights and constriction factors in particle swarm optimization. In: Proceedings of the 2000 Congress on evolutionary computation, pp 84–88

  • Eberhart RC, Shi Y (2001) Particle swarm optimization: developments, applications and resources. In: Evolutionary computation, proceedings of the 2001 Congress, vol 1, pp 81–86

  • Egyed A (2006) Instant consistency checking for the UML. In: Proceedings of the 28th international conference on software engineering. ACM, pp 381–390

  • Egyed A (2011) Automatically detecting and tracking inconsistencies in software design models. IEEE Trans Softw Eng 37(2):188–204

    Article  Google Scholar 

  • Engels G, Hausmann JH, Heckel R, Sauer S (2002) Testing the consistency of dynamic UML diagrams. In: Proceedings of sixth international conference on integrated design and process technology (IDPT 2002), pp 1–9

  • France R, Rumpe B (2007) Model-driven development of complex software: a research roadmap. In: Future of software engineering. IEEE Computer Society, pp 37–54

  • George R, Samuel P (2016) Particle swarm optimization method based consistency checking in UML class and activity diagrams. In: Innovations in bio-inspired computing and applications. Springer International Publishing, Cham, pp 117–127

  • George R, Samuel P (2018) Fixing class design inconsistencies using self regulating particle swarm optimization. Inf Softw Technol 99:81–92

    Article  Google Scholar 

  • Glavaš G, Fertalj K (2011) Solving the class responsibility assignment problem using metaheuristic approach. J Comput Inf Technol 19(4):275–283

    Google Scholar 

  • Jalote P (2012) An integrated approach to software engineering. Springer, Berlin

    MATH  Google Scholar 

  • Janson S, Middendorf MA (2005) A hierarchical particle swarm optimizer and its adaptive variant. IEEE Trans Syst Man Cybern Part B (Cybern) 35(6):1272–1282

    Article  Google Scholar 

  • Jia YH, Chen WN, Hu XM (2014) A PSO approach for software project planning. In: Proceedings of the companion publication of the 2014 annual conference on genetic and evolutionary computation. ACM, pp 7–8

  • Kessentini M, Sahraoui H, Boukadoum M et al (2012) Search-based model transformation by example. Softw Syst Model 11(2):209–226

    Article  Google Scholar 

  • Khan AH, Porres I (2015) Consistency of UML class, object and statechart diagrams using ontology reasoners. J Vis Lang Comput 26:42–65

    Article  Google Scholar 

  • Lam VSW, Padget J (2005) Consistency checking of sequence diagrams and statechart diagrams using the π-calculus. In: International conference on integrated formal methods. Springer, Berlin

  • Lange CFJ, Chaudron MRV, Muskens J (2006) In practice: UML software architecture and design description. IEEE Softw 23(2):40–46

    Article  Google Scholar 

  • Li A, Zhang Y (2009) Automatic generating all-path test data of a program based on PSO. In: 2009 WRI World Congress on software engineering, vol 4. IEEE, pp 189–193

  • Nugroho A, Chaudron MRV (2008) Managing the quality of UML models in practice. In: Rech J, Bunse C (eds) Model-Driven software development: integrating quality assurance. Idea Group Inc., pp 1–36

  • Nuseibeh B, Easterbrook S, Russo A (2001) Making inconsistency respectable in software development. J Syst Softw 58(2):171–180

    Article  Google Scholar 

  • Oshana R, Kraeling M (2013) Software engineering for embedded systems: methods, practical techniques, and applications. Newnes, London

    Google Scholar 

  • Paige RF, Ostroff JS, Brooke PJ (2003) A test-based agile approach to checking the consistency of class and collaboration diagrams. In: Proceedings of UK software testing research workshop

  • Parejo JA, Ruiz-Cortés A, Lozano S et al (2012) Metaheuristic optimization frameworks: a survey and benchmarking. Soft Comput 16(3):527–561

    Article  Google Scholar 

  • Petre M (2013) UML in practice. In: Proceedings of the 2013 international conference on software engineering. IEEE Press, pp 722–731

  • Poli R (2008) Analysis of the publications on the applications of particle swarm optimisation. J Artif Evol Appl 2008:1–10

    Google Scholar 

  • Przigoda N, Wille R, Drechsler R (2016) Analyzing inconsistencies in UML/OCL models. J Circuits Syst Comput 25(03):1640021-1–1640021-21

    Article  Google Scholar 

  • Saini DK, Sharma Y (2012) Soft computing particle swarm optimization based approach for class responsibility assignment problem. Int J Comput Appl 40(12):19–24

    Google Scholar 

  • Selic B (2003) The pragmatics of model-driven development. IEEE Softw 20(5):19–25

    Article  Google Scholar 

  • Shi Y, Eberhart RC (1999) Empirical study of particle swarm optimization. In: Proceedings of the 1999 Congress on evolutionary computation CEC 99. IEEE, pp 1945–1950

  • Simmonds J, Van Der Straeten R, Jonckers V, Mens T (2004) Maintaining consistency between UML models using description logic. L’OBJET 10(2–3):231–244

    Google Scholar 

  • Spanoudakis G, Zisman A (2001) Inconsistency management in software engineering: Survey and open research issues. In: Handbook of software engineering and knowledge engineering, vol 1: Fundamentals, pp 329–380

  • Tanweer MR, Suresh S, Sundararajan N (2015) Self regulating particle swarm optimization algorithm. Inf Sci 294:182–202

    Article  MathSciNet  Google Scholar 

  • Van Der Straeten R, Mens T, Simmonds J, Jonckers V (2003) Using description logic to maintain consistency between UML models. In: Stevens P, Whittle J, Booch G (eds) UML 2003, LNCS, vol 2863. Springer, Heidelberg, pp 326–340

  • Wang H, Feng T, Zhang J, Zhang K (2005) Consistency check between behaviour models. In: IEEE International symposium on communications and information technology ISCIT 2005, vol 1. IEEE, pp 486–489

  • Windisch A, Wappler S, Wegener J (2007) Applying particle swarm optimization to software testing. In: Proceedings of the 9th annual conference on genetic and evolutionary computation. ACM, pp 1121–1128

  • Yao S, Shatz SM (2006) Consistency checking of UML dynamic models based on petri net techniques. In: 15th International conference on computing, CIC’06. IEEE, pp 289–297

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Renu George.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest regarding the publication of this paper.

Ethical approval

This article does not contain any studies with human participants or animals performed by any of the authors.

Additional information

Communicated by V. Loia.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

George, R., Samuel, P. Fixing state change inconsistency with self regulating particle swarm optimization. Soft Comput 24, 18937–18952 (2020). https://doi.org/10.1007/s00500-020-05124-y

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-020-05124-y

Keywords