OPM/Web – Object-Process Methodology for Developing Web Applications

Abstract

Web applications can be classified as hybrids between hypermedia and information systems. They have a relatively simple distributed architecture from the user viewpoint, but a complex dynamic architecture from the designer viewpoint. They need to respond to operation by an unlimited number of heterogeneously skilled users, address security and privacy concerns, access heterogeneous, up-to-date information sources, and exhibit dynamic behaviors that involve such processes as code transferring. Common system development methods can model some of these aspects, but none of them is sufficient to specify the large spectrum of Web application concepts and requirements. This paper introduces OPM/Web, an extension to the Object-Process Methodology (OPM) that satisfies the functional, structural and behavioral Web-based information system requirements. The main extensions of OPM/Web are adding properties of links to express requirements, such as those related to encryption; extending the zooming and unfolding facilities to increase modularity; cleanly separating declarations and instances of code to model code transferring; and adding global data integrity and control constraints to express dependence or temporal relations among (physically) separate modules. We present a case study that helps evaluate OPM/Web and compare it to an extension of the Unified Modeling Language (UML) for the Web application domain.

This is a preview of subscription content, access via your institution.

References

  1. Allen, R., R. Douence, and D. Garlan (1998), “Specifying and Analyzing Dynamic Software Architectures, ” In Fundamental Approaches to Software Engineering, Lecture Notes in Computer Science, Vol. 1382, E. Astesiano, Ed., Lisbon, Portugal, Springer, pp. 21–37.

    Google Scholar 

  2. AOSD (2001), “The Aspect-Oriented Software Development site, ” http://aosd.net/.

  3. Baumeister, H., N. Koch, and L. Mandel (1999), “Towards a UML Extension for Hypermedia Design, ” In Proceedings of the 2nd International Conference on the Unified Modeling Language - Beyond the Standard (UML'99), Lecture Notes in Computer Science, Vol. 1723, R. France and B. Rumpe, Eds., Springer, Fort Collins, CO, pp. 614–629.

  4. Ceri, S., P. Fraternali, and A. Bongio (2000), “Web Modeling Language (WebML) A Modeling Language for Designing Web Sites, ” In Proceedings of the 9th World Wide Web Conference (WWW9), Computer Networks, Amsterdam, The Netherlands, pp. 137- 157.

  5. Chakravarthy, S. and D. Mishra (1994), “SNOOP: An Expressive Event Specification Language for Active Databases, ” Data and Knowledge Engineering Journal 14, 1, 1–26.

    Article  Google Scholar 

  6. Conallen, J. (1999), Building Web Applications with UML, First Edition, Addison-Wesley, Reading, MA.

    Google Scholar 

  7. Dori, D. (1995), “Object-Process Analysis: Maintaining the Balance Between System Structure and Behavior, ” Journal of Logic and Computation 5, 2, 227–249.

    Google Scholar 

  8. Dori, D. (2002), Object-Process Methodology - A Holistic Systems Paradigm, Springer, in press.

  9. Dori, D. and M. Goodman (1996), “From Object-Process Analysis to Object-Process Design, ” Annals of Software Engineering 2, 25–40.

    Google Scholar 

  10. Foo, S., P.C. Leong, S.C. Hul, and S. Liu (1999), “Security Considerations in the Delivery of Web-Based Applications: A Case Study, ” Information Management and Computer Security 7, 1, 40–49.

    Article  Google Scholar 

  11. Fraternali, P. (1999), “Tools and Approaches for Developing Data-Intensive Web Applications: A Survey, ” ACM Computing Surveys 31, 3, 227–263.

    Article  Google Scholar 

  12. Garzotto, F. and L. Mainetti (1993), “HDM2: Extending the E- R Approach to Hypermedia Application Design, ” In Proceedings of the 12th International Conference on Entity Relationship Approach (ER'93), R. Elmasri, V. Kouramajian, and B. Thalheim, Eds., Dallas, TX, pp. 178- 189.

  13. Garzotto, F., P. Paolini, and D. Schwabe (1993), “HDM - A Model Based Approach to Hypertext Application Design, ” ACM Transactions on Information Systems 11, 1, 1–26.

    Article  Google Scholar 

  14. Harel, D. (1987), “Statecharts: A Visual Formalism for Complex Systems, ” Science of Computer Programming 8, 231–274.

    Article  Google Scholar 

  15. Henderson-Sellers, B. (1998), “OML: Proposals to Enhance UML, ” In The Unified Modeling Language (UML'98): Beyond the Notation, Mulhouse, France, Lecture Notes in Computer Science, Vol. 1618, J. Bezivin and P.A. Muller, Eds., Springer, pp. 349–364.

  16. Isakowitz, T., E.A. Stohr, and P. Balasubramanian (1995), “RMM: A Methodology for Structured Hypermedia Design, ” Communication of the ACM 38, 8, 34–44.

    Article  Google Scholar 

  17. Katz, S. (1993), “A Superimposition Control Construct for Distributed Systems, ” ACM Transactions on Programming Languages and Systems 15, 2, 337–356.

    Article  Google Scholar 

  18. Kersten, M. and G.C. Murphy (1999), “Atlas: A Case Study in Building a Web-Based Learning Environment Using Aspect-Oriented Programming, ” In Proceedings of the Object-Oriented Programming, Systems, Languages and Applications (OOPSLA'99), ACM SIG-PLAN Notices, Denver, CO, pp. 340–352.

  19. Lange, D. (1996), “An Object-Oriented Design Approach for Developing Hypermedia Information Systems, ” Journal of Organizational Computing 6, 3, 269–293.

    Google Scholar 

  20. Lin, M. and B. Henderson-Sellers (1999), “Adapting the OPEN Methodology for Web Development, ” In Proceedings of the 6th Annual Conference of BCS Information Systems Methodology Specialist Gssgrr.it/en/ssgrr2001/papers/David%20Lowe.pdf.

  21. Nielsen, J. (1999), “User Interface Directions for the Web, ” Communications of the ACM 42, 1, 65–72.

    Article  Google Scholar 

  22. OPEN (2001), “The OPENWeb Site, ” http://www.open.org.au/.

  23. Peleg, M. and D. Dori (1999), “Extending the Object-Process Methodology to Handle Real-Time Systems, ” Journal of Object-Oriented Programming 11, 8, 53–58.

    Google Scholar 

  24. Peleg, M. and D. Dori (2000), “The Model Multiplicity Problem: Experimenting with Real-Time Specification Methods, ” IEEE Transactions on Software Engineering 26, 8, 742–759, http://iew3.technion.ac.il:8080/Home/Users/dori/Model_Multiplicity_Paper.pdf.

    Article  Google Scholar 

  25. Perrault, D. (1998), “A Study of Business Rules Concept for Web Application, ” Master Thesis, Faculty of Engineering, Politecnico di Milano, Milano, Italy.

  26. Rational (2001), “Unified Modeling Language Specification - Version 1.3, ” http://www.rational.com/media/uml/resources/documentation/ad99–06–08-ps.zip.

  27. Siau, K. and Q. Cao (2001), “Unified Modeling Language (UML) - A Complexity Analysis, ” Journal of Database Management 12, 1, 26–34.

    Google Scholar 

  28. Schwabe, D. and G. Rossi (1998), “Developing Hypermedia Applications Using OOHDM, ” In Electronic Proceedings of the 1st Workshop on Hypermedia Development Processes, Methods and Models (Hypertext' 98), ACM, Pittsburg, KS, http://heavenly.nj.nec.com/266278.html.

  29. Schwabe, D., G. Rossi, and S. Barbosa (1996), “Systematic Hypermedia Application Design with OOHDM, ” In Proceedings of the 7th ACM Conference on Hypertext, ACM, Washington DC, pp. 116- 128.

  30. Suzuke, J. and Y. Yamamoto (1999), “Extending UML with Aspects: Aspect Support in the Design Phase, ” In Proceedings of the 3rd Aspect-Oriented Programming (AOP) Workshop at the Europe Conference on Object-Oriented Programming (ECOOP'99), Lisbon, Portugal, Lecture Notes in Computer Science, Vol. 1628, R. Guerraoui, Ed., Springer, pp. 299–300.

  31. Vilain, P., D. Schwabe and C.S. de Souza (2000), “A Diagrammatic Tool for Representing User Interaction in UML, ” In Proceedings of the 3rd International Conference on the Unified Modeling Language - Advancing the Standard (UML'2000), York, UK, Lecture Notes in Computer Science, Vol. 1939, A. Evans, S. Kent and B. Selic, Eds., Springer, pp. 133–147.

  32. Warmer, J.B. and A.G. Kleppe (1998), The Object Constraint Language: Precise Modeling with UML, First Edition, Addison-Wesley, Reading, MA.

    Google Scholar 

Download references

Author information

Affiliations

Authors

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Reinhartz-Berger, I., Dori, D. & Katz, S. OPM/Web – Object-Process Methodology for Developing Web Applications. Annals of Software Engineering 13, 141–161 (2002). https://doi.org/10.1023/A:1016597410642

Download citation

Keywords

  • Unify Modeling Language
  • Privacy Concern
  • Unlimited Number
  • Separate Module
  • Control Constraint