Advertisement

The Agile Development of Rule Bases

  • Valentin Zacharias
Chapter

Abstract

Recently, with the large-scale practical use of business rule systems and the interest of the Semantic Web community in rule languages, there is an increasing need for methods and tools supporting the development of rule-based systems. Existing methodologies fail to address the challenges posed by modern development processes in these areas, namely, the increasing number of end-user programmers and the increasing interest in iterative methods. To address these challenges, we propose and discuss the adoption of agile methods for the development of rule-based systems. The main contribution of this paper is three development principles for and changes to the Extreme Programming development process to make it suitable for the development of rule-based systems.

Keywords

Rule Base Anomaly Detection Knowledge Source Business Rule User Story 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. Abrahamsson, P., Salo, O. & Ronkainen, J. (2002)Agile software development methods Review and analysis VTT Finland, Espoo.Google Scholar
  2. ANSI (1992) Life cycle development of knowledge-based systems using DoD-Std 2167A. ANSI/AIAA G-031-1992.Google Scholar
  3. Beck, K. (1999) Embracing change with Extreme Programming. IEEE Computer 32(10), pp. 70–77.Google Scholar
  4. Beck, K. & Andres, C. (2004)Extreme Programming ExplainedAddison Wesley, Boston.Google Scholar
  5. Harrison, W. (July–Aug. 2004) The dangers of end-user programming. IEEE Software 21(4), pp. 5–7. CrossRefMathSciNetGoogle Scholar
  6. Kifer, M. & de Bruijn, J. & Boley, H. & Fensel, D (2005) A realistic architecture for the semantic web.Proceedings of the First International Conference on Rules and Rule Markup Languages for the Semantic Web (RuleML 2005).Google Scholar
  7. Kingston, J. (1992) Pragmatic KADS: A methodological approach to a small knowledge-based systems project. International Journal of Knowledge Engineering 9(4), pp. 171–180.MathSciNetGoogle Scholar
  8. Larman, C. & Basili, V.R. (2003) Iterative and incremental development: A brief history. IEEE Computer 36(6), pp. 47–56.Google Scholar
  9. MacCormack, A. (2001) Product-development practices that work. MIT Sloan Management Review 42(2), pp. 75–84.Google Scholar
  10. Merrit, D. (January 2004) Best practices for rule-based application development. The Architecture Journal 1(1),URL: http://msdn.microsoft.com/en-us/arcjournal/aa480018.aspx.
  11. Miller, L. (1990) A realistic industrial strength life cycle model for knowledge-based systems development and testing. AAAI Workshop Notes: Validation and Verification.Google Scholar
  12. Myers, B., Ko, A. & Burnett, M. (2006) Invited research overview: End-user programming.ACM Conference on Human–Computer Interaction (CHI'06).Google Scholar
  13. Palmer, S.R. & Felsing, J.M. (2002)A Practical Guide to Feature-Driven Development .Prentice Hall, Upper Saddle River, NJGoogle Scholar
  14. Plant, R.T. & Gamble, R. (1997) A multilevel framework for KBS development. International Journal of Human-Computer Studies 46, pp. 523–547.CrossRefGoogle Scholar
  15. Preece, A.D. & Shinghal, R. (1994) Foundation and application of knowledge base verification. International Journal of Intelligent Systems 9(8), pp. 683–701.CrossRefGoogle Scholar
  16. Rossen, M.B., Balling, J. & Nash, H. (2004) Everyday programming: Challenges and opportunities for informal Web development.Proceedings of the 2004 IEEE Symposium on Visual Languages and Human Centric Computing.Google Scholar
  17. Scaffidi, C., Shaw, M. & Myers, B. (2005) Estimating the number of end user programmers InProceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 207–214.Google Scholar
  18. Schreiber, G., Akkermanns, H., Aniewierden, A., de Hoog, A., Shadbolt, N., Van de Velde, W. & Weilinger, B. (1999)Knowledge Engineering and Management: The CommonKADS Methodology. MIT Press, Cambridge, MAGoogle Scholar
  19. Schwaber, K. & Beedle, M. (2002)Agile Software Development with Scrum. Prentice Hall, Upper Saddle River, NJGoogle Scholar
  20. Seer, K. (2005) The business rules awareness survey. Business Rule Journal 6(8),URL: http://www.brcommunity.com/b242.php http://www.brcommunity.com/b242.php.
  21. Stapleton, J. (1997)Dynamic Systems Development Method – The Method in Practice Addison Wesley Longman, Harlow, Essex, UK.Google Scholar
  22. Stokes, M. (ed.) (2001)Managing Engineering Knowledge, MOKA: Methodology for Knowledge Based Engineering Applications. Professional Engineering and Publishing Limited, London, UKGoogle Scholar
  23. Sure, Y. & Studer R. (2002) On-To-Knowledge methodology [Technical report], University of Karlsruhe, Germany.Google Scholar
  24. Weitzel, H.R. & Kerschberg, L. (1989) Developing knowledge-based systems: Reorganizing the system development life cycle. Communications of the ACM 45(11), pp. 16–19.Google Scholar
  25. Yen, J. & Lee, J. (1993) A task based methodology for specifying expert systems. IEEE Intelligent Systems 8(1), pp. 8–15.Google Scholar
  26. Zacharias, V. (2007) Visualizing Rule Bases – The Overall Structure.7th International Conference on Knowledge Management I-Know 2007. Special Track on Knowledge Visualization and Discovery.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2009

Authors and Affiliations

  1. 1.FZI – Research Center for Information Technologies, IPE-WIMUniversity of KarlsruheKarlsruheGermany

Personalised recommendations