Skip to main content
Log in

A requirements monitoring framework for enterprise systems

  • Original article
  • Published:
Requirements Engineering Aims and scope Submit manuscript

Abstract

Requirements compliant software is becoming a necessity. Fewer and fewer organizations will run their critical transactions on software that has no visible relationship to its requirements. Businesses wish to see their software being consistent with their policies. Moreover, partnership agreements are pressuring less mature organizations to improve their systems. Businesses that rely on web services, for example, are vulnerable to the problems of their web service providers. While electronic commerce has increased the speed of on-line transactions, the technology for monitoring requirements compliance—especially for transactions—has lagged behind. To address the requirements monitoring problem for enterprise information systems, we integrate techniques for requirements analysis and software execution monitoring. Our framework assists analysts in the development of requirements monitors for enterprise services. The deployed system raises alerts when services succeed or fail to satisfy their specified requirements, thereby making software requirements visible. The framework usage is demonstrated with an analysis of ebXML marketplace specifications. An analyst applies goal analysis to discover potential service obstacles, and then derives requirements monitors and a distributed monitoring system. Once deployed, the monitoring system provides alerts when obstacles occur. A summary of the framework implementation is presented, along with analysis of two monitor component implementations. We conclude that the approach implemented in the framework, called ReqMon, provides real-time feedback on requirements satisfaction, and thereby provides visibility into requirements compliance of enterprise information systems.

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.

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

Similar content being viewed by others

Notes

  1. Letier and van Lamsweerde provide tactics for determining responsibility assignment when it is not specified [46].

  2. The analysis of the converse obstacle “confirmation despite bad credit” is very similar.

References

  1. Andrews JH (1998) Testing using log file analysis: tools, methods and issues. In: Proceedings of the 1998 international conference on automated software engineering (ASE’98). Honolulu, Hawaii

  2. Andrews JH, Zhang Y (2000) Broad-spectrum studies of log file analysis. In: Proceedings of the 22nd international conference on software engineering (ICSE 2000). Limerick, Ireland

  3. Antón AI (1996) Goal-based requirements analysis. In: Proceedings of the 2nd IEEE international conference on requirements engineering (ICRE ’96). Colorado Springs, Colorado, pp 136–144

  4. Antón AI, Potts C (1998) The use of goals to surface requirements for evolving systems. In: Proceedings of the international conference on software engineering (ICSE ’98). Kyoto, Japan, pp 157–166

  5. Antón AI, Earp JB (2001) Strategies for developing policies and requirements for secure e-commerce systems. In: Ghoshpp AK (ed) Recent advances in e-commerce security and privacy. Kluwer Academic Publishers, Dordrecht, pp 29–46

    Google Scholar 

  6. Antón AI, Earp JB Potts C, Alspaugh TA (2001) The role of policy and privacy values in requirements engineering. In: Proceedings of the IEEE 5th international symposium on requirements engineering (RE’01). Toronto, Canada, pp 138–145

  7. Antón AI, Earp JB, Potts C, Alspaugh TA (2001) The role of policy and privacy values in requirements engineering. In: Proceedings of the IEEE 5th international symposium on requirements engineering (RE’01). Toronto, Canada, pp 138–145

  8. Antón AI, Earp JB, Reese A (2002) Analyzing web site privacy requirements using a privacy goal taxonomy. In: Proceedings of the 10th anniversary IEEE joint requirements engineering conference (RE’02). Essen, Germany, pp 605–612

  9. The Apache Project (2003) “log4j,” Apache software foundation http://jakarta.apache.org/log4j/docs/index.html

  10. CapeScience (2003) “Using nettool,” Cape clear software http://www.capescience.com/articles/using_nettool/

  11. Chen M-S, Han J, Yu PS (1997) Data mining: an overview from database perspective. IEEE Trans Knowl Data Eng 8(6):866–883

    Article  Google Scholar 

  12. Chodrow SE, Gouda MG (1992) The sentry system. In: Proceedings of the SRDS11, 11th symposium on reliabile distributed systems. Houston, USA

  13. Chung L, Nixon BA, Yu E, Mylopoulos J (1999) Non-functional requirements in software engineering. Kluwer Publishing, Dordrecht

    Google Scholar 

  14. Cohen G, Chase J, Kaminsky D (1998) Automatic program transformation with JOIE. In: Proceedings of the 1998 USENIX annual technical symposium

  15. Correia J, Schroder N (2002) BAM: a composite market view. Gartner Inc.

  16. Dardenne A, van Lamsweerde A, Fickas S (1993) Goal-directed requirements acquisition. Sci Comput Prog 20:3–50

    Article  MATH  Google Scholar 

  17. De Pauw W, Kimelman D, Vlissides JV (1997) Isualizing object-oriented software execution. In: Stasko JT, Domingue JB, Brown MH, Price BA (eds) Software visualization. MIT Press, Cambridge, MA

    Google Scholar 

  18. Dwyer MB, Avrunin GS, Corbett JC (1999) Patterns in property specifications for finite-state verification. In: Proceedings of the 21st international conference on software engineering. Pages, Los Angeles, pp 411–420

  19. Easterbrook S, Callahan J (1998) Formal methods for verification and validation of partial specifications: a case study. J Sys Software 40(3):199–210

    Article  Google Scholar 

  20. ebXML (2001) “ebXML e-commerce patterns v1.0,” business process team, ebXML http://www.ebXML.org/specs/bpPATT.pdf, http://www.ebXML.org/specs/bpPATT.pdf

  21. Eisenhauer G, Bustamante F, Schwan K (2001) Event services in high performance systems. Cluster Comput: J Netw Software Tools Appl 4(3):243–252

    Google Scholar 

  22. Feather MS (1997) FLEA: formal language for expressing assumptions language description

  23. Feather MS (1998) Rapid application of lightweight formal methods for consistency analyses. IEEE Trans Software Eng 24(11)

  24. Feather MS, Fickas S, van Lamsweerde A, Ponsard C (1998) Reconciling system requirements and runtime behavior.In: Proceedings of the international workshop on software specification and design (IWSSD’98), Isobe

  25. Fickas S, Feather MS (1995) Requirements monitoring in dynamic environments. In: Proceedings of the 2nd international symposium on requirements engineering. York, England, pp 140–147

  26. Foster I, Kesselman C,Tuecke S (2001) The anatomy of the grid: enabling scalable virtual organizations. Int J. Supercomputer Appl 15(3)

  27. Frankel DS (2003) Model driven architecture: applying mda to enterprise computing. Wiley , New York

    Google Scholar 

  28. Christopher D, Gill, Levine DL, O’Ryan C, Schmidt DC (1999) Distributed object visualization for sensor-driven systems. In: Proceedings of the 18th IEEE/AIAA digital avionics systems conference (DASC). St. Louis, MO

  29. Girgensohn A, Shipman RDF (1994) Agent-based support for communication between developers and users in software design. In: Proceedings of the 9th knowledge-based software engineering (KBSE-94) conference. Monterey, CA, pp 22–29

  30. The Globus Project (2003) “The globus toolkit 3.0” Globus Project, The http://www.globus.org/toolkit

  31. Hall RJ (2002) Open modeling in multi-stakeholder distributed systems: requirements engineering for the 21st century. In: Proceedings of the 1st workshop on the state of the art in automated software engineering

  32. Han J, Fu Y (1999) Discovery of multiple-level association rules from large databases. IEEE Trans Knowl Data Eng 11(5)

  33. Heimbold D, Luckham D (1985) Debugging Ada tasking programs. IEEE Software 2(2):47–57

    Article  Google Scholar 

  34. Hellinger M, Fingerhut S (2002) Business activity monitoring: eai meets data warehousing. Business Integration J http://www.bijonline.com/Article.asp?ArticleID=563&DepartmentId=1

  35. Hilbert DM, Redmiles DF (1998) Agents for collecting application usage data over the internet. In: Proceedings of the 2nd international conference on autonomous agents (Agents’98)

  36. Hoffman T (2004) Sarbanes-Oxley sparks forensics apps interest. Computerworld 38(13):14

    Google Scholar 

  37. Jaffe MS, Leveson NG, Heimdahl MPE, Melhart BE (1991) Software requirements analysis for real-time process-control systems. IEEE Trans Software Eng 17(3):241–258

    Article  Google Scholar 

  38. Jain AK, Murty MN, Flynn PJ (1999) Data clustering: a review. ACM Comput Surveys 31(3):264–323

    Article  Google Scholar 

  39. Jeffery C, Zhou W, Templer K, Brazell M (1998) A lightweight architecture for program execution monitoring. In: Proceedings of the 1998 ACM SIGPLAN-SIGSOFT workshop on program analysis for software tools and engineering. Montreal, Quebec, Canada

  40. Koymans R (1992) Specifying message passing and time-critical systems with temporal logic, LNCS 651. Springer-Verlag, Berllin

    Google Scholar 

  41. Kunz T, Black J,Taylor D, Basten T (1997) Poet: target-system-independent visualizations of complex distributed-application executions. Comput J40(8):499–512

    Article  Google Scholar 

  42. Lee, HB, Zorn BG (1997) BIT: a tool for instrumenting java bytecodes. In: Proceedings of USENIX symposium on internet technologies and systems, pp 73–82

  43. Lee I, Ben-Abdallah H, Kannan S, Kim M, Sokolsky, O, Viswanathan M (1998) A monitoring and checking framework for run-time correctness assurance. In: Proceedings of the 1998 Korea-U.S. technical conference on strategic technologies. Vienna, VA

  44. Lee W, Stolfo S, Mok K (2000) Adaptive intrusion detection: a data mining approach. Journal Artificial Intelligence Review. Kluwer Academic Publishers, Dordrecht, 14:533–67

  45. Lee W, Stolfo S, Mok K (1999) Algorithms for mining system audit data. In: Lin TY, Cercone N (eds) Data retrieval and data mining. Kluwer Academic Publishers, Dordrecht

    Google Scholar 

  46. Letier E, van Lamsweerde A (2002) Agent-based tactics for goal-oriented requirements elaboration. In: Proceedings ICSE’2002—24th international conference on software engineering. Orlando, FL

  47. Leveson N (1995) Safeware, system safety and computers. Addison-Wesley, Reading, MA

    Google Scholar 

  48. Leveson NG (1995) Safeware: system safety and computers. Addison-Wesley Pub. Co. Inc, Reading, MA

    Google Scholar 

  49. Lin K-J (1995) Issues on real-time systems programming: language, compiler, and object orientation. In: Advances in real-time systems, Prentice-Hall Inc., Englewood cliffs, NJ, pp 335–351

  50. Manna Z, Prueli A (1992) The temporal logic of reactive and concurrent systems. Springer-Verlag, Berlin

    Google Scholar 

  51. Marquardt T (2003) ASP.NET performance monitoring, and when to alert administrators. Microsoft Corporation http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/monitor_perf.asp

  52. Microsoft (2002) Using Microsoft Operations Manager 2000 to Monitor BizTalk Server 2002. Microsoft Corporation http://www.microsoft.com/technet/prodtechnol/biztalk/biztalk2002/maintain/btswpmom.mspx August 1 2002.http://www.microsoft.com/technet/prodtechnol/biztalk/biztalk2002/maintain/btswpmom.mspx

  53. Microsoft (2003) Enterprise Instrumentation Framework (EIF). Microsoft Corp. http://msdn.microsoft.com/vstudio/productinfo/enterprise/eif/ http://msdn.microsoft.com/vstudio/productinfo/enterprise/eif/

  54. Sun Microsystems (2001) Enterprise JavaBeans specification, Version 2.0. Sun Microsystems

  55. Sun Microsystems (2003) Jini distributed event specification. http://www.sun.com/ jini/specs

  56. Moe J, Carr D (2002) Using execution trace data to improve distributed systems. Software Pract Experience 32(9):889–906

    Article  MATH  Google Scholar 

  57. Mok AK, Liu G (1997) Efficient run-time monitoring of timing constraints. In: Proceedings of IEEE real-time technology and applications symposium

  58. Mok AK, Liu G (1997) Early detection of timing constraint violation at runtime. Proceedings of real-time systems symposium, RTSS’97

  59. Oechsle R, Gronz O, Schüler M (2002) Visusniff: a tool for the visualization of network traffic. In: Proceedings of ACM 2nd program visualization workshop. Porvoo, Finland

  60. O’Malley TO, Richardson DJ, Dillon LK (1996) Efficient specication-based oracles for critical systems. In: Proceedings of the california software symposium

  61. OMG (1999) CORBA components: joint revised submission. Object Management Group

  62. OMG (2003) OMG model driven architecture http://www.omg.org/mda

  63. The Open Group (2002)Application response measurement—–RM. Open Group, Enterprise Management Forumhttp://www.opengroup.org/management/arm.htm

  64. The Open Group (2003)CORBA. Systems management: event management service. x/open document. The Open Group Number: P437, http://www.opengroup.org/onlinepubs/008356299/

  65. Peters DK, Parnas DK (1984) Using test oracles generated from program documentation. In: Proceedings of the international symposium on software testing and analysis

  66. Platt DS (2002) Introducing microsoft. NET, 2nd edn. Microsoft Press, Redmond, WA

    Google Scholar 

  67. Potts C (1995) Using schematic scenarios to understand user needs. Proceedings of DIS’95–ACM Symposium on designing interactive systems: processes, practices and techniques

  68. PushToTest (2003) TestMaker. PushToTest http://www.pushtotest.com/ptt

  69. Qiao S, Zhang H (1999) An automatic log analyzer for parallel programs. In: Proceedings of the international conference on parallel and distributed processing techniques and applications. Las Vegas, Nevada, pp 1371–1376

  70. Robinson WN (1989) Integrating multiple specifications using domain goals. In: Proceedings of the 5th international workshop on software specification and design, pp 219–226 (Also available as CIS-TR-89-03 from the University of Oregon)

  71. Robinson WN (2002) Monitoring software requirements using instrumented code. In: IEEE Proceedings of the 35th annual hawaii international conference on systems sciences, Hawaii, http://localhost/wnr/publications/HICSS-Instrument-02.pdf

  72. Robinson WN (2003) Monitoring web service requirements.In: Proceedings of the 11th IEEE international conference on requirements engineering. Monterey Bay, CA, pp 65–74, http://www.cis.gsu.edu/∼wrobinson/papers

  73. Robinson WN, Pawlowski S (1998) Surfacing root requirements interactions from inquiry cycle requirements. In: Proceedings of the 3rd IEEE international conference on requirements engineering (ICRE’98). Colorado Springs, CO, pp 82–89, http://localhost/wnr/publications/ICRE-Surface-98.pdf

  74. Robinson WN, Pawlowski S, Volkov V (2003) Requirements interaction management. ACM Comput Surveys (CSUR) 35(2):132–190, http://localhost/wnr/publications/CSUR-RIM-03.pdf

    Google Scholar 

  75. Robinson WN, Volkov S (1997) A meta-model for restructuring stakeholder requirements. In: Proceedings of ICSE19—19th international conference on software engineering. Boston, pp 140–149, http://localhost/wnr/publications/ICSE-GoalModel-98.pdf

  76. Rosenblum DS (1996) Formal methods and testing: why the state-of-the-art is not the state-of-the-practice (Issta ’96/fmsp ’96 panel summary). ACM sigsoft software engineering notes, vol. 21(4), pp 64–66

  77. Sankar S, Mandal M (1993) Concurrent runtime monitoring of formally specified programs. I. IEEE Comput 26(3):32–41

    Google Scholar 

  78. Freshwater Software (2003) SiteScope. Mecury interactive company http://www.freshwater.com/SiteScope.htm

  79. Sommerville I, Sawyer P (1997) Requirements engineering: a good practice guide. Wiley, Chichester England New York

    MATH  Google Scholar 

  80. Stelling P, Foster I, Kesselman C, Lee C, von Laszewski G (1998) A fault detection service for wide area distributed computations. In: Proceedings of the 7th IEEE symposium on high performance distributed computing, pp 268–278

  81. Tai K-C, Carver RH, Obaid EE (1991) Debugging concurrent Ada programs by deterministic execution. IEEE Trans Software Eng 17(1):45–63

    Article  Google Scholar 

  82. Thompson JP (1998) Web-based enterprise management architecture. Commun Mag IEEE 36(3):80–86

    Article  Google Scholar 

  83. Tierney B, Gunter D (2002) NetLogger: a toolkit for distributed system performance tuning and debugging. Lawrence Berkeley National Laboratory LBNL Tech Report LBNL-51276

  84. The Time-Rover Corp (2003) Time rover. Time-Rover Corp http://www.time-rover.com

  85. Tunstall C, Cole, G (2003) Developing WMI solutions: a guide to windows management instrumentation. Addison Wesley Professional, Reading, MA

  86. van Lamsweerde A, Darimont R, Massonet P (1995) Goal-directed elaboration of requirements for a meeting scheduler: problems and lessons learnt. In: Proceedings of the IEEE 2nd international symposium on requirements engineering, pp 194–203

  87. van Lamsweerde A, Letier E (2000) Handling obstacles in goal-oriented requirements engineering. IEEE Trans Software Eng 26:978–1005

    Article  Google Scholar 

Download references

Acknowledgements

The author would like to thank the anonymous reviewers and members of IFIP 2.9 Requirement Engineering Working Group. The feedback, provided at the IFIP 2.9 Workshops 2001 and 2002, was instrumental in the development of this work. Special thanks go to Martin Feather, Steve Fickas, and Axel van Lamsweerde for their comments on this work. Of course, any errors found herein are the sole responsibility of the author.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to William N. Robinson.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Robinson, W.N. A requirements monitoring framework for enterprise systems. Requirements Eng 11, 17–41 (2006). https://doi.org/10.1007/s00766-005-0016-3

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00766-005-0016-3

Keywords

Navigation