Cohesive Design of Personalized Web Applications Presented by Yinghua Hu Schwabe, D. Mattos Guimaraes, R. Rossi, G. Pontificia Univ. Catolica do Rio de.

Slides:



Advertisements
Similar presentations
Software Engineering Key construction decisions Design challenges.
Advertisements

TU/e technische universiteit eindhoven Hera: Development of Semantic Web Information Systems Geert-Jan Houben Peter Barna Flavius Frasincar Richard Vdovjak.
TU e technische universiteit eindhoven / department of mathematics and computer science Specification of Adaptive Behavior Using a General- purpose Design.
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Object-Oriented Software Development CS 3331 Fall 2009.
Course: Web System Engineering
Sept-Dec w1d21 Third-Generation Information Architecture CMPT 455/826 - Week 1, Day 2 (based on R. Evernden & E. Evernden)
Introduction To System Analysis and Design
THE OBJECT-ORIENTED DESIGN WORKFLOW Interfaces & Subsystems.
Design Modeling for Web Applications
Structure Motivation A Component-based Document Format
OOHDM Hypermedia Research Work Designing Web-based applications with Object Oriented Hypermedia Design Method OOHDM.
Methodologies for Web Information System Design
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 3: Basing Software Development on Reusable Technology.
An Intelligent System for Dynamic Online Allocation of Information on Demand from the Internet Thamar E. Mora, Rene V. Mayorga Faculty of Engineering,
University of Jyväskylä – Department of Mathematical Information Technology Computer Science Teacher Education ICNEE 2004 Topic Case Driven Approach for.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Distinctions Between Computing Disciplines
Chapter 7: The Object-Oriented Approach to Requirements
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Principles of Object Technology Module 1: Principles of Modeling.
PROGRAMMING LANGUAGES The Study of Programming Languages.
The 2nd International Conference of e-Learning and Distance Education, 21 to 23 February 2011, Riyadh, Saudi Arabia Prof. Dr. Torky Sultan Faculty of Computers.
Recommender Systems on the Web: A Model-Driven Approach Gonzalo Rojas – Francisco Domínguez – Stefano Salvatori Department of Computer Science University.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
UML - Development Process 1 Software Development Process Using UML (2)
Management Information Systems
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
Using MDA in Web Software Architectures Santiago Meliá Cristina Cachero Jaime Gómez Universidad de Alicante Spain.
3231 Software Engineering By Germaine Cheung Hong Kong Computer Institute Lecture 12.
Introduction To System Analysis and Design
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Module 4: Systems Development Chapter 12: (IS) Project Management.
These slides are designed to accompany Web Engineering: A Practitioner’s Approach (The McGraw-Hill Companies, Inc.) by Roger Pressman and David Lowe, copyright.
Personalization Speaker: Ping-Tsun Chang 3/7/2002.
Drexel University CS 451 Software Engineering Winter Yuanfang Cai Room 104, University Crossings
June 05 David A. Gaitros Jean Muhammad Introduction to OOD and UML Dr. Jean Muhammad.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Designing Pervasive Services for Physical Hypermedia Cecilia Challiol, Silvia Gordillo, Gustavo Rossi (LIFIA, Universidad Nacional de La Plata, Argentina)
A new viewpoint for change management in RM-ODP systems Nesrine Yahiaoui 1,2, Bruno Traverson 1, Nicole Lévy 2 1 EDF R&D - 2 UVSQ PRiSM Workshop on ODP.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Rational Unified Process Fundamentals Module 7: Process for e-Business Development Rational Unified Process Fundamentals Module 7: Process for e-Business.
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Introduction to Software Architecture.
CSE 102 Introduction to Computer Engineering What is Computer Engineering?
1 Hypermedia Design Models & Methodologies Dr Gary Wills IAM Research Group © University of Southampton.
Digital Libraries1 David Rashty. Digital Libraries2 “A library is an arsenal of liberty” Anonymous.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Object-Oriented Software Engineering Chapter 1 Software and Software Engineering.
Software Engineering INTRODUCTION TO SOFTWARE DEVELOPMENT.
Incorporating Cooperative Portlets in Web Application Development Nathalie Moreno, José Raúl Romero, Antonio Vallecillo Universidad de Málaga {vergara,jrromero,av}
MODELLING A WEB APPLICATION Dr. Sohaib Ahmed. Modelling Web Applications  provides a better alternative to the ad-hoc development of Web applications.
CYUT ISKM 2004/01/13 1 Fuzzy logic methods in recommender systems Author: Ronald R. Yager Source:Fuzzy set and systems, Vol. 134, 2003, pp Presented.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Introduction to Computing Concepts Note Set 19. Design Creating complex software… ▫ Not done by just one person (or two, or three) ▫ Can’t just sit down.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Module: Software Engineering of Web Applications Dr. Samer Odeh Hanna 1.
Design Engineering 1. Analysis  Design 2 Characteristics of good design 3 The design must implement all of the explicit requirements contained in the.
Reference Architecture for NASA’s Earth Science Data Systems Richard Ullman ES-DSWG-SPG Chair NASA/GSFC Code 586.
CS385T Software Engineering Dr.Doaa Sami
Presentation transcript:

Cohesive Design of Personalized Web Applications Presented by Yinghua Hu Schwabe, D. Mattos Guimaraes, R. Rossi, G. Pontificia Univ. Catolica do Rio de Janeiro; Internet Computing, IEEE, 34-43, Vol. 6, Issue 2, Mar/Apr 2002

Content Introduction Introduction The Software Engineering Approach The Software Engineering Approach OOHDM Design Framework OOHDM Design Framework Mapping OOHDM Designs Mapping OOHDM Designs Personalization Patterns Personalization Patterns Conclusion Conclusion

Introduction Today’s challenge is building customizable Internet applications. Today’s challenge is building customizable Internet applications. –New kinds of personalization have become important with the rise of e-commerce and increasing competition among sophisticated Web sites. Reseachers have paid little attention to integrating all the personalization features into a single design. Reseachers have paid little attention to integrating all the personalization features into a single design. This article describes using the Object-Oriented Hypermedia Design Method (OOHDM) for constructing customized Web applications. This article describes using the Object-Oriented Hypermedia Design Method (OOHDM) for constructing customized Web applications.

The Software Engineering Approach Legacy Web applications are already a reality, possibly heralding a Web software crisis. Legacy Web applications are already a reality, possibly heralding a Web software crisis. Designing complex Web applications requires rigorous software engineering techniques. Designing complex Web applications requires rigorous software engineering techniques. Web applications exhibit features different from conventional software. Web applications exhibit features different from conventional software. New methods required to address Web applications’ particular design dimension. New methods required to address Web applications’ particular design dimension.

OOHDM Design Framework Web application models involve Web application models involve –A conceptual model –A navigational model –An interface model In OOHDM, these models are built using object-oriented primitives with a syntax close to UML. In OOHDM, these models are built using object-oriented primitives with a syntax close to UML.

What does the OOHDM framework provide? For the conceptual model, the OOHDM framework explicitly represents users, roles, and groups, and defines algorithms that implement different business rules for different users; For the conceptual model, the OOHDM framework explicitly represents users, roles, and groups, and defines algorithms that implement different business rules for different users; For the navigational model, it defines completely different applications for each profile, customizes node contents and structure and personalizes links and indexes. For the navigational model, it defines completely different applications for each profile, customizes node contents and structure and personalizes links and indexes. For the interface model, it defines different layouts according to user preferences or selected devices. For the interface model, it defines different layouts according to user preferences or selected devices.

Mapping OOHDM Designs

Personalization Patterns Role-based Personalization Role-based Personalization Link Personalization Link Personalization Structure Personalization Structure Personalization Content Personalization Content Personalization Behavior Personalization Behavior Personalization

Behavior Personalization Suppose we want to provide individualized responses to a particular operation Suppose we want to provide individualized responses to a particular operation Solution Solution –Personalize the application behavior by making the behavior dependent on the user triggering it. OOHDM approach OOHDM approach

Behavior Personalization

Using Patterns to Simplify Design Understanding the personalization patterns to apply simplifies the design enterprise, because we can reuse design experience when dealing with previously solved situations.

Conclusion The authors strongly believe that the key aspect for obtaining evolvable personalized Web applications is to separate design concerns by focusing on architectural and design issues before building the actual application. The authors strongly believe that the key aspect for obtaining evolvable personalized Web applications is to separate design concerns by focusing on architectural and design issues before building the actual application. Most of the design decisions discussed here can be easily applied in other Web design methods. Most of the design decisions discussed here can be easily applied in other Web design methods.