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.
Similar content being viewed by others
References
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.
AOSD (2001), “The Aspect-Oriented Software Development site, ” http://aosd.net/.
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.
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.
Chakravarthy, S. and D. Mishra (1994), “SNOOP: An Expressive Event Specification Language for Active Databases, ” Data and Knowledge Engineering Journal 14, 1, 1–26.
Conallen, J. (1999), Building Web Applications with UML, First Edition, Addison-Wesley, Reading, MA.
Dori, D. (1995), “Object-Process Analysis: Maintaining the Balance Between System Structure and Behavior, ” Journal of Logic and Computation 5, 2, 227–249.
Dori, D. (2002), Object-Process Methodology - A Holistic Systems Paradigm, Springer, in press.
Dori, D. and M. Goodman (1996), “From Object-Process Analysis to Object-Process Design, ” Annals of Software Engineering 2, 25–40.
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.
Fraternali, P. (1999), “Tools and Approaches for Developing Data-Intensive Web Applications: A Survey, ” ACM Computing Surveys 31, 3, 227–263.
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.
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.
Harel, D. (1987), “Statecharts: A Visual Formalism for Complex Systems, ” Science of Computer Programming 8, 231–274.
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.
Isakowitz, T., E.A. Stohr, and P. Balasubramanian (1995), “RMM: A Methodology for Structured Hypermedia Design, ” Communication of the ACM 38, 8, 34–44.
Katz, S. (1993), “A Superimposition Control Construct for Distributed Systems, ” ACM Transactions on Programming Languages and Systems 15, 2, 337–356.
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.
Lange, D. (1996), “An Object-Oriented Design Approach for Developing Hypermedia Information Systems, ” Journal of Organizational Computing 6, 3, 269–293.
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.
Nielsen, J. (1999), “User Interface Directions for the Web, ” Communications of the ACM 42, 1, 65–72.
OPEN (2001), “The OPENWeb Site, ” http://www.open.org.au/.
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.
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.
Perrault, D. (1998), “A Study of Business Rules Concept for Web Application, ” Master Thesis, Faculty of Engineering, Politecnico di Milano, Milano, Italy.
Rational (2001), “Unified Modeling Language Specification - Version 1.3, ” http://www.rational.com/media/uml/resources/documentation/ad99–06–08-ps.zip.
Siau, K. and Q. Cao (2001), “Unified Modeling Language (UML) - A Complexity Analysis, ” Journal of Database Management 12, 1, 26–34.
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.
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.
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.
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.
Warmer, J.B. and A.G. Kleppe (1998), The Object Constraint Language: Precise Modeling with UML, First Edition, Addison-Wesley, Reading, MA.
Author information
Authors and Affiliations
Rights 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
Issue Date:
DOI: https://doi.org/10.1023/A:1016597410642