Skip to main content
Log in

Handling non-canonical software requirements based on Annotated Predicate Calculus

  • Regular Paper
  • Published:
Knowledge and Information Systems Aims and scope Submit manuscript

Abstract

Eliciting requirements for a proposed system inevitably involves the problem of handling undesirable information about customer's needs, including inconsistency, vagueness, redundancy, or incompleteness. We term the requirements statements involved in the undesirable information non-canonical software requirements. In this paper, we propose an approach to handling non-canonical software requirements based on Annotated Predicate Calculus (APC). Informally, by defining a special belief lattice appropriate for representing the stakeholder's belief in requirements statements, we construct a new form of APC to formalize requirements specifications. We then show how the APC can be employed to characterize non-canonical requirements. Finally, we show how the approach can be used to handle non-canonical requirements through a case study.

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

Access this article

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

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Belnap N (1977) A useful four-valued logic. In: Dunn M, Epstein G (eds) Modern uses of multi-valued logics. Reidel Publishing Co., pp 8–37

  2. Bouhoula A (2000) Simultaneous checking of completeness and ground conuence. In: Proceedings of the 15th IEEE international conference on automated software engineering (ASE00), pp 143–153

  3. Bowman H, Steen M, Boiten M, Derrick J (2002) A formal framework for viewpoint consistency. Formal Methods Syst Des 21(2): 111–166

    Article  MATH  Google Scholar 

  4. Chechik M, Devereux B, Easterbrook S (2001) Efficient multiple-valued model checking using lattice representations. In: Proceedings of the international conference on concurrency theory. Aalborg, Denmark, pp 21–24

  5. Davis A (1993) Software requirements: objects, functions, and states. PTR Prentice-Hall, Englewood Cliffs, NJ

    Google Scholar 

  6. Easterbrook S, Chechik M (2001a) 2nd international workshop on living with inconsistency. Softw Eng Notes 26(6): 76–78

    Article  Google Scholar 

  7. Easterbrook S, Chechik M (2001b) A framework for multi-valued reasoning over inconsistent viewpoints. In: Proceedings of international conference on software engineering (ICSE'01), Toronto, Canada, pp 411–420

  8. Easterbrook S, Nuseibeh B (1995) Managing inconsistencies in an evolving specification. In: Proceedings of the second international symposium on requirements engineering (RE95), pp 48–55

  9. Finkelstein A, Gabbay D, Hunter A, Kramer J, Nuseibeh B (1994) Inconsistency handling in multiperspective specifications. IEEE Trans Softw Eng 20(8): 569–578

    Article  Google Scholar 

  10. Ginsberg M (1988) Multivalued logics: a uniform approach to reasoning in AI. Comput Intell 4: 265–316

    Google Scholar 

  11. Hunter A, Nuseibeh B (1998) Managing inconsistent specification. ACM Trans Softw Eng Methodol 7(4): 335–367

    Article  Google Scholar 

  12. Jackson M (1995) Software Requirements and specifications: a lexicon of ractice, principles and prejudices. Addison Wesley, UK

    Google Scholar 

  13. Kaiya H, Horai H, Saeki M (2002) Agora: attributed goal-oriented requirements analysis method. In: Proceedings of the tenth IEEE joint international requirements engineering conference (RE02), pp 13–22

  14. Kifer M, Lozinskii E (1992) A logic for reasoning with inconsistency. J Automat Reason 9(2): 179–215

    Article  MATH  MathSciNet  Google Scholar 

  15. Lamsweerde A, Letier E (2000) Handling obstacles in goal-driven requirements engineering. IEEE Trans Softw Eng 26(10): 978–1005

    Article  Google Scholar 

  16. Leveson N (2000) 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

  17. Liberatore P (2005) Redundancy in logic i: Cnf propositional formulae. Artif Intell 163(2): 203–232

    Article  MathSciNet  Google Scholar 

  18. Matthew S, Leveson G, Heimdahl M, Melhart B (1991) Software requirements analysis for real-time process-control systems. IEEE Trans Softw Eng 17(3): 241–258

    Article  Google Scholar 

  19. Mu K, Jin Z, Lu R, Liu W (2005a) Measuring inconsistency in requirements specifications. In: Godo L (ed) Proceedings of ECSQARU2005. LNCS, vol 3571. Springer-Verlag, Berlin Heidelberg, pp 440–451

  20. Mu K, Jin Z, Lu R (2005b) Inconsistency-based strategy for clarifying vague software requirements. In: Zhang S, Jarvis R (eds) AI2005: Advances in artificial intelligence, The 18th Australian joint conference on artificial intelligence, LNCS, vol 3809. Springer-Verlag, Berlin Heidelberg New York, pp 39–48

  21. Mylopoulos J, Chung L, Yu E (1999) From object-oriented to goal-oriented requirements analysis. Commun ACM 42(1): 31–37

    Article  Google Scholar 

  22. Sheldon F, Kim H, Zhou Z (2001) A case study: validation of guidance control software requirements for completeness, consistency and fault tolerance. In: Proceedings of the 2001 Pacific Rim international symposium on dependable computing (PRDC 2001), pp 311–318

  23. Spanoudakis G, Finkelstein A (1997) Reconciling requirements: a method for managing interference, inconsistency and conflict. Ann Softw Eng 3: 433–457

    Google Scholar 

  24. Spanoudakis G, Zisman A (2001) Inconsistency management in software engineering: survey and open research issues. In: Chang SK (ed) Handbook of software engineering and knowledge engineering. World Scientific, Singapore, pp 329–380

    Article  Google Scholar 

  25. Zowghi D, Gervasi V (2003) On the interplay between consistency, completeness, and correctness in requirements evolution. Inf Softw Technol 45(14): 993–1009

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kedian Mu.

Additional information

Kedian Mu received B.Sc. degree in applied mathematics from Beijing Institute of Technology, Beijing, China, in 1997, M.Sc. degree in probability and mathematical statistics from Beijing Institute of Technology, Beijing, China, in 2000, and Ph.D. in applied mathematics from Peking University, Beijing, China, in 2003. From 2003 to 2005, he was a postdoctoral researcher at Institute of Computing Technology, Chinese Academy of Sciences, China. He is currently an assistant professor at School of Mathematical Sciences, Peking University, Beijing, China. His research interests include uncertain reasoning in artificial intelligence, knowledge engineering and science, and requirements engineering.

Zhi Jin was awarded B.Sc. in computer science from Zhejiang University, Hangzhou, China, in 1984, and studied for her M.Sc. in computer science (expert system) and her Ph.D. in computer science (artificial intelligence) at National Defence University of Technology, Changsha, China. She was awarded Ph.D. in 1992. She is a senior member of China Computer Federation. She is currently a professor at Academy of Mathematics and System Sciences, Chinese Academy of Science. Her research interests include knowledge-based systems, artificial intelligence, requirements engineering, ontology engineering, etc. Her current research focuses on ontology-based requirements elicitation and analysis. She has got about 60 papers published, including co-authoring one book.

Ruqian Lu is a professor of computer science of the Institute of Mathematics, Chinese Academy of Sciences. His research interests include artificial intelligence, knowledge engineering and knowledge based software engineering. He designed the “Tian Ma” software systems that have been widely applied in more than 20 fields, including the national defense and the economy. He has won two first class awards from Chinese Academy of Sciences and a National second class prize from the Ministry of Science and Technology. He has also won the sixth Hua Lookeng Prize for Mathematics.

Yan Peng received B.Sc. degree in software from Jilin University, Changchun, China, in 1992. From June 2002 to December 2005, he studied for his M.E. in software engineering at College of Software Engineering, Graduate School of Chinese Academy of Sciences, Beijing, China. He was awarded M.E degree in 2006. He is currently responsible for CRM (customer relationship management) and BI (business intelligence) project in the BONG. His research interests include customer relationship management, business intelligence, data ming, software engineering and requirements engineering.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Mu, K., Jin, Z., Lu, R. et al. Handling non-canonical software requirements based on Annotated Predicate Calculus. Knowl Inf Syst 11, 85–104 (2007). https://doi.org/10.1007/s10115-006-0021-y

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10115-006-0021-y

Keywords

Navigation