Skip to main content

Automatic Detection of Incomplete Requirements Using Symbolic Analysis and Evolutionary Computation

  • Conference paper
  • First Online:
Search Based Software Engineering (SSBSE 2017)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10452))

Included in the following conference series:

  • 1004 Accesses

Abstract

The usefulness of a system specification depends on the completeness of the requirements specified. Unfortunately it is difficult to ensure a requirements specification includes all necessary requirements, especially when the system interacts with an unpredictable and often idealized environment. Worse yet, a single completeness counterexample may not clearly indicate the extent that incomplete requirements impacts the system or what range of environmental scenarios are affected. This paper introduces Ares-EC, a design-time approach for detecting incomplete requirements decomposition using a combination of evolutionary computation and symbolic analysis of hierarchical requirements models to detect a set of representative incompleteness counterexamples. We illustrate our approach by applying Ares-EC to a requirements model of an industry-based automotive adaptive cruise control system. Ares-EC is able to apply symbolic analysis and evolutionary computation to automatically detect diverse and representative sets of requirements incompleteness counterexamples at design time.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Ares is the Greek god of war, especially the untamed aspects of war.

References

  1. Alrajeh, D., Kramer, J., van Lamsweerde, A., Russo, A., Uchitel, S.: Generating obstacle conditions for requirements completeness. In: Proceedings of the 34th International Conference on Software Engineering, pp. 705–715 (2012)

    Google Scholar 

  2. Cheng, B.H.C., Atlee, J.M.: Research directions in requirements engineering. In: ICSE 2007 Future of Software Engineering, pp. 285–303 (2007)

    Google Scholar 

  3. Cheng, B.H.C., Sawyer, P., Bencomo, N., Whittle, J.: A goal-based modeling approach to develop requirements of an adaptive system with environmental uncertainty. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 468–483. Springer, Heidelberg (2009). doi:10.1007/978-3-642-04425-0_36

    Chapter  Google Scholar 

  4. Cormen, T.H.: Introduction to Algorithms. MIT press, Cambridge (2009)

    MATH  Google Scholar 

  5. Darimont, R., Van Lamsweerde, A.: Formal refinement patterns for goal-driven requirements elaboration. ACM SIGSOFT Softw. Eng. Notes 21, 179–190 (1996)

    Article  Google Scholar 

  6. de Moura, L., Bjørner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008). doi:10.1007/978-3-540-78800-3_24

    Chapter  Google Scholar 

  7. Deb, K.: Multi-objective Optimization Using Evolutionary Algorithms. Wiley, New York (2005)

    MATH  Google Scholar 

  8. Deb, K., Agrawal, R.B.: Simulated binary crossover for continuous search space. Complex Syst. 9(3), 1–15 (1994)

    MathSciNet  MATH  Google Scholar 

  9. Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans. Evol. Comput. 6(2), 182–197 (2002)

    Article  Google Scholar 

  10. DeVries, B., Cheng, B.H.C.: Automatic detection of incomplete requirements via symbolic analysis. In: 19th International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), Proceedings, Saint-Malo, France, October 2–7, pp. 385–395 (2016)

    Google Scholar 

  11. Eiben, A.E., Smith, J.E., et al.: Introduction to Evolutionary Computing, vol. 53. Springer, Heidelberg (2003). doi:10.1007/978-3-662-05094-1

    Book  MATH  Google Scholar 

  12. Feather, M.S., Fickas, S., Van Lamsweerde, A., Ponsard, C.: Reconciling system requirements and runtime behavior. In: Proceedings of the 9th International Workshop on Software Specification and Design, p. 50 (1998)

    Google Scholar 

  13. Ferrari, A., dell’Orletta, F., Spagnolo, G.O., Gnesi, S.: Measuring and improving the completeness of natural language requirements. In: Salinesi, C., Weerd, I. (eds.) REFSQ 2014. LNCS, vol. 8396, pp. 23–38. Springer, Cham (2014). doi:10.1007/978-3-319-05843-6_3

    Chapter  Google Scholar 

  14. Fickas, S., Feather, M.S.: Requirements monitoring in dynamic environments. In: Proceedings of the Second IEEE International Symposium on Requirements Engineering, pp. 140–147 (1995)

    Google Scholar 

  15. Garlan, D., Cheng, S.W., Huang, A.C., Schmerl, B., Steenkiste, P.: Rainbow: architecture-based self-adaptation with reusable infrastructure. Computer 37(10), 46–54 (2004)

    Article  Google Scholar 

  16. Harman, M., Mansouri, S.A., Zhang, Y.: Search-based software engineering: trends, techniques and applications. ACM Comput. Surv. (CSUR) 45(1), 11 (2012)

    Article  Google Scholar 

  17. Lehman, J., Stanley, K.O.: Abandoning objectives: evolution through the search for novelty alone. Evol. Comput. 19(2), 189–223 (2011)

    Article  Google Scholar 

  18. Leveson, N.: Completeness in formal specification language design for process-control systems. In: Proceedings of the Third Workshop on Formal Methods in Software Practice, pp. 75–87 (2000)

    Google Scholar 

  19. Menzel, I., Mueller, M., Gross, A., Doerr, J.: An experimental comparison regarding the completeness of functional requirements specifications. In: 2010 18th IEEE International Requirements Engineering Conference (RE), pp. 15–24 (2010)

    Google Scholar 

  20. Ramirez, A.J., Cheng, B.H.C.: Automatic derivation of utility functions for monitoring software requirements. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 501–516. Springer, Heidelberg (2011). doi:10.1007/978-3-642-24485-8_37

    Chapter  Google Scholar 

  21. Souyris, J., Wiels, V., Delmas, D., Delseny, H.: Formal verification of avionics software products. In: Cavalcanti, A., Dams, D.R. (eds.) FM 2009. LNCS, vol. 5850, pp. 532–546. Springer, Heidelberg (2009). doi:10.1007/978-3-642-05089-3_34

    Chapter  Google Scholar 

  22. Van Lamsweerde, A., et al.: Requirements Engineering: From System Goals to UML Models to Software Specifications. Wiley, Chichester (2009)

    Google Scholar 

  23. Walsh, W.E., Tesauro, G., Kephart, J.O., Das, R.: Utility functions in autonomic systems. In: International Conference on Autonomic Computing, Proceedings, pp. 70–77 (2004)

    Google Scholar 

  24. Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C.: A language for self-adaptive system requirements. In: International Workshop on Service-Oriented Computing: Consequences for Engineering Requirements (SOCCER 2008), pp. 24–29 (2008)

    Google Scholar 

  25. Whittle, J., Sawyer, P., Bencomo, N., Cheng, B.H.C, Bruel, J.M.: Relax: incorporating uncertainty into the specification of self-adaptive systems. In: 17th IEEE International Requirements Engineering Conference (RE 2009), pp. 79–88 (2009)

    Google Scholar 

  26. Yu, E.S.: Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the Third IEEE International Symposium on Requirements Engineering, pp. 226–235 (1997)

    Google Scholar 

  27. Zenun, M.M., Loureiro, G.: A framework for dependability and completeness in requirements engineering. In: Latin American Symposium on Dependable Computing, pp. 1–4 (2013)

    Google Scholar 

  28. Zhang, Y., Finkelstein, A., Harman, M.: Search based requirements optimisation: existing work and challenges. In: International Working Conference on Requirements Engineering: Foundation for Software Quality, pp. 88–94 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Byron DeVries .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

DeVries, B., Cheng, B.H.C. (2017). Automatic Detection of Incomplete Requirements Using Symbolic Analysis and Evolutionary Computation. In: Menzies, T., Petke, J. (eds) Search Based Software Engineering. SSBSE 2017. Lecture Notes in Computer Science(), vol 10452. Springer, Cham. https://doi.org/10.1007/978-3-319-66299-2_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-66299-2_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-66298-5

  • Online ISBN: 978-3-319-66299-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics