ENGINEERING WEB APPLICATIONS USING ROLES
Keywords:
Web application, engineering, modeling, role, collaborating objectsAbstract
Although role modeling is a topic that has been treated over years in the object-oriented community, its use in the life cycle of Web Engineering, and particularly in object-oriented Web design methods, has been seldom discussed and used yet. In this paper, we introduce roles in the modeling and design armory of existing Web engineering methods and show how it improves their expressive power and help to solve design problems that appear frequently in Web applications. We first survey the state of the art of Web engineering modeling approaches. A simple example is used to point out some situations in classic Web engineering modeling where it is not possible to express that objects or nodes should change their properties (attributes or behaviors) according to the collaborating subject (the objects which send them messages or the nodes which are linked to them). Next, we introduce the object-oriented role concept and discuss how it has been used so far in the software engineering community and how it can be useful for Web engineering modeling. Existing methods (like UWE and OOHDM) are used as an example to show how to introduce roles during the Web engineering process. We compare our approach with others and conclude with some further research we are pursuing.
Downloads
References
Allert . H., Dolog, P., Nejdl, W., Siberski, W., and Steimann, F., Role-oriented Models for Hypermedia
Construction – Conceptual Modeling for the Semantic Web -. Technical Report, Univ. Hannover (2003).
Aroyo, L., De Bra, P., Chepegin, V., Semantic Web-based Adaptive Hypermedia, WWW2004 Workshop
Application Design, Development and Implementation Issues in the Semantic Web (May 2004).
Assman, U., Role-Based Design. A Concept for understanding Design Patterns and Frameworks. Available
at http://www.ida.liu.se/~TDDB84/slides/7-role-based-design.pdf, (viewed Nov. 2004).
Bäumer, D., Riehle, D., Siberski, W., and Wulf, M., The Role Object Pattern. In Proceedings of Pattern
Languages of Program Design (PloP) (1997) Available at
http://jerry.cs.uiuc.edu/~plop/plop97/Proceedings/riehle.pdf
Bernstein, M., Patterns of Hypertext. In Proceedings of the 9th ACM International Conference on
Hypertext and Hypermedia (Hypertext ’98), Pittsburgh, USA (1998), 20-24.
Cachero, C., Koch, N, Gomez, J., and Pastor, O., Conceptual Navigation Analysis: A device and Platform
Independent Navigation Specification. In Schwabe D., Pastor O., Rossi G., and Olsina L. (Eds.) Proc. of
Second International Workshop on Web-Oriented Software Technology (IWWOST02) (2002) 21-32.
Ceri, P., Fraternali, P., and Bongio, A., Web Modeling Language (WebML), A Modeling Language for
Designing Web Sites. Computer Networks and ISDN Systems, 33(1-6), June (2000) 137-157.
Chen, P. P., The Entity-Relationship Model - Toward a Unified View of Data. ACM Trans. Database Syst.
(1) (1976) 9-36.
Dahchour, M., Pirotte, A., and Zimanyi, E., A Role Model and its Metaclass Implementation, Information
Systems 29 (2004) 235–270.
Depke, R., Engels, G., and Küster, J. M., On the Integration of Roles in the UML. Technical Report No.
, University of Paderborn, August 2000.
De Troyer, O., Audience-driven web design", In Information modeling in the new millennium, Matt Rossi
& Keng Siau (Eds.), Publ. IDEA GroupPublishing (2001).
De Troyer, O., Casteleyn, S., Plessers, P, “Using ORM to Model Web Systems”. In Proceedings of
Workshop on Object-Role Modeling 2005. Springer Verlag LNCS 3763, pp 700-709, 2005.
Dolog, P. and Bieliko, M., Navigational Modeling in Adaptive Hypermedia. In Proc. of Int. Conference on
Adaptive Hypermedia (AH 2002), Malaga Spain, May 29-31,. Paul De Bra, Peter Brusilovsky, Ricardo
Conejo (Eds.). LNCS 2347, Springer Verlag (2002) 586-591.
Fowler, M., UML Distilled. Addison Wesley (1997).
Gamma, E., Helm, R., Johnson, and R., Vlissides, J., Design Patterns: Elements of reusable Object-
Oriented Software. Addison Wesley, Reading (1995).
Gomez, J., Cachero, C., and Pastor, O., Conceptual Modeling of Device Independent Web Applications.
IEEE Multimedia 8(2) (2001) 26-39.
Gordillo, S., Rossi, G., and Schwabe, D., Separation of Structural Concerns in Physical Hypermedia
Models, In Proceedings of CAiSE 2005, LNCS, Springer (2005) 446-459.
Gordillo, S., Rossi, G., Laurini, R., and Schwabe, D., Decoupling Geographic from Conceptual
Information in Physical Hypermedia Models. DEXA Workshops 2005, 443-447.
Gottlob, G., Schrefl, M., and Böckl, B., Extending Object-Oriented Systems with Roles, ACM TOIS,
Vol.14 (3) (1996) 268-296.
Gronbaek, K., Kristensen, J., and Eriksen, M., Physical Hypermedia, Organizing Collections of Mixed
Physical and Digital Material. Proceedings of the 14th. ACM International Conference of Hypertext and
Hypermedia (Hypertext 2003), ACM Press, 10-19.
Guell, N., Vilain, P., and Schwabe, D., Modeling Interactions and Navigation in Web Applications. In
Proceedings of the International Workshop on Conceptual Modelling and the Web (2000) 115-127.
Halpin, T., UML Data Models from an ORM Perspective: Part Five, Journal of conceptual modeling, Issue
(Oct. 1998).
Hinz, M. and Kappel, G., UML & Work (in German), dpunkt Verlag (1999).
Jodlowski, A., Habel, P., Jacek, P., and Subieta, K., Extending OO Metamodels towards Dynamic Object
Roles. On The Move to Meaningful Internet Systems 2003, CoopIS: DOA and ODBASE, Catania, Sicily,
Italy (Nov. 2003) Proceedings. LNCS 2888, Springer (2003), 1032-1047.
Journal of Web Engineering, Vol 12(4), Special Issue on Adaptive and Intelligent Web-based Educational
(2004).
King, P., Nanard, M., Nanard, J., and Rossi, G., A Structural Computing Model for Dynamic Servicebased
Systems. Symposium MetaInformatics, LNCS 2994 (2003).
Koch, N., Kraus, A., and Hennicker R., The Authoring Process of UML-based Web Engineering
Approach. In Proceedings of the 1st International Workshop on Web-Oriented Software Construction
(IWWOST 02), Valencia, Spain (2001) 105-119.
Koch, N. and Kraus, A., Towards a Common Metamodel for the Development of Web Applications. In 3rd
International Conference on Web Engineering (ICWE 2003) Cueva, J., Gonzalez, B., Joyanes, L., Labra,
J., and Paule, M. (Eds) LNCS 2722, ©Springer Verlag (July 2003) 497-506.
Krasner, G., and Pope, S., A Cookbook for Using Model-View-Controller User Interface Paradigm in
Smalltalk-80", Journal of Object Oriented Programming, August/September (1988) 26-49.
Kristensen, B.B. and Osterbye, K., Roles, Conceptual Abstraction Theory and practical Language Issues.
Theory and Practice of Object Systems, 2(3) (1996) 143-160.
Mosse, F., Modeling Roles. A Practical Set of Analysis Patterns. Available at
http://www.objectdiscovery.com/papers/roles/
Nanard, M., Nanard, J., and Kahn, P., Pushing Reuse in Hypermedia Applications. Golden Rules, Design
Patterns and Constructive Templates. In Proceedings of the 9 th. ACM International Conference on
Hypertext and Hypermedia (Hypertext ’98), Pittsburgh, USA (1998) 11-20.
Nanard J., Nanard M., and King P., A Hypermedia-based Model for Integrating Open Services and
Metadata. 14th. International ACM Conference Hypertext’2003, ACM Press (2003) 128-137.
Object Management Group, The UML 1.5 Specification. In http://www.omg.org/uml/
Pastor, O., Fons, J., and Pelechano, V., OOWS: A Method to Develop Web Applications from Web-
Oriented Conceptual Models, Third International Workshop on Web-Oriented Software Technologies,
Pernici, P., Objects with Roles. Proceedings of the ACM-IEEE Conference on Office Information Systems
(1990) 205-215.
Reenskaug, T. M. H., Working with objects. The OOram Software Engineering Method. Manning/Prentice
Hall (1996).
Riehle, D., Describing and Composing Patterns using Role Diagrams. In Proc. Ubilab Conference I (1996)
-152.
Riehle, D. Composite Design Patterns. In Proc. OOPSLA’97 (1997) 218-228.
Riehle, D., Role Model Based Framework Design and Integration. In Proceedings of the 1998 Conference
on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’98). ACM Press
(1998) 117-131.
Rossi, G., Schwabe, D., and Lyardet, F., Improving Web Information Systems with Navigational Patterns.
Computer Networks 31, Elsevier (1999) 1667-1678.
Rossi, G and Schwabe, D., Abstraction and Reuse Mechanisms in Web Applications Models. In Proc.s of
the International Workshop on Conceptual Modelling and the Web (2000).
Schwabe, D and Rossi, G., An Object-Oriented Approach to Web-Based Application Design. Theory and
Practice of Object Systems (TAPOS), Vol 4 (1998) 207-225.
Schwabe, D. and Rossi, G., Web Application Models are more than Conceptual Models. In Proceedings of
the International Workshop on Conceptual Modelling and the Web (1999).
Schwabe, D., Rossi, G., Conference Review System in OOHDM. In Proceedings of the International
Workshop on Web Oriented Software Technology, Valencia, Spain (2001) Available at
http://www.dsic.upv.es/~west2001/iwwost01/
Sowa, J., Conceptual Structures: Information Processing in Mind and Machine. Addison Wesley (1984).
Steimann, F., On the Representation of Roles in Object-Oriented and Conceptual modeling. Data and
Knowledge Engineering 35 (2000) 83-106.
Steimann, F., A radical revision of UML’s Role Concept. In Proc. of the Unified Modeling Language
Conference 2000, LNCS, Springer (2000) 194-209.
Steimann, F., Role=Interface: A Merger of Concepts. Journal of Object-Oriented Programming, Oct./Nov.
(2001) 23-32.
Steinman, F., Domain Models are Aspect Free. In Proceedings of MoDELS 2005, LNCS, Springer Verlag
(2005) 171-185.
UWA consortium, The UWA Approach to Modeling Ubiquitous Web Applications, in Proceedings of the
IST Mobile & Wireless Telecommunications Summit, Thessaloniki (Greece) (2002).