A Survey of Design Pattern Based Web Applications
---
paper_title: Design reuse in hypermedia applications development

paper_content:

In this paper we discuss the use of design patterns for the process of building hypermedia applications. The idea of design patterns has been recently developed, and rapidly spread outside the object-oriented community to a general audience of software developers. By using patterns it is not only possible to document design experience with a very simple and comprehensible format, but also reuse the same experience several times for different applications. We argue that the hypermedia community will take a vital step towards better designs of hypermedia applications and systems by developing a pattern language for that domain.
---
paper_title: A formal description of design patterns using OWL

paper_content:

Design patterns have been used successfully in the last decade to reuse and communicate object-oriented design. However, the documentation of pattern usage is often very poor. This motivates the use of tools which can detect and document design patterns found in software. A couple of approaches have been proposed in recent years. The approach introduced is based on a formal description of design patterns using the Web ontology language OWL. Software artefacts used to define design patterns in a formal and machine processable fashion are represented by uniform resource identifiers (URIs). This yields a description that is open and extensible, and facilitates the sharing of design among software engineers. We discuss the developed software design ontology, and how this approach relates to the meta-modelling architecture of the OMG. In the second part, an effective pattern scanner for the Java language is presented. This scanner is based on the ontology developed in part one and uses reflection and AST analysis to verify constraints. Various applications of this scanner are discussed.
---
paper_title: Ontology Design Patterns for Semantic Web Content

paper_content:

The paper presents a framework for introducing design patterns that facilitate or improve the techniques used during ontology lifecycle. Some distinctions are drawn between kinds of ontology design patterns. Some content-oriented patterns are presented in order to illustrate their utility at different degrees of abstraction, and how they can be specialized or composed. The proposed framework and the initial set of patterns are designed in order to function as a pipeline connecting domain modelling, user requirements, and ontology driven tasks/queries to be executed.
---
paper_title: Transforming legacy Web applications to the MVC architecture

paper_content:

With the rapid changes that occur in the area of Web technologies, the porting and adaptation of existing Web applications into new platforms that take advantage of modern technologies has become an issue of increasing importance. This paper presents a reengineering framework whose target system is an architecture based on the model-view-controller (MVC) design pattern and enabled for the Java/spl trade/ 2 Platform, Enterprise Edition (J2EE). The proposed framework is mainly concerned with the decomposition of a legacy Web application by identifying software components to be transformed into Java objects such as JavaBeans, JavaServer Pages (JSP), and Java Servlet.
---
paper_title: Legacy Migration to Service-Oriented Computing with Mashups

paper_content:

Although service-oriented computing holds great promises, it is still not clear when and how the existing systems will exploit this new computational model. The problem is particularly severe for the software having several years of use. This work provides a roadmap for the migration of legacy software to service-oriented computing by means of right levels of abstraction. The key idea is having integration even at the presentation layer, not only at backend layers such as application or data. This requires re-inventing the popular MASHUP technology of Web 2.0 at the enterprise level. Domain- specific-kits and choreography engine concepts that were originally introduced by the software factory automation approach have been reshaped as another enabling technology towards migrating to the service harmonization platform. The paper also exemplifies the proposed approach on a simple case problem.
---
paper_title: A Method for Integration of Web Applications Based on Information Extraction

paper_content:

Integration of Web services from different Web sites has brought new creativity and functionality to Web applications. These integration technologies, called mashup or mixup, have made a shift in Web service development and created a new generation of widely popular and successful Web services such as Google Maps API and YouTube Data API. However, the integration is limited to the Web sites that provide the open Web service APIs, and currently, most existing Web sites do not provide Web services. In this paper, we present a method to integrate the general Web applications. For this purpose, we propose a Web information extraction method to generate the virtual Web service functions from Web applications at client side. Our implementation shows that the general Web applications can be also integrated easily.
---
paper_title: A Database and Web Application Based on MVC Architecture

paper_content:

MVC architecture has had wide acceptance for corporation software development. It plans to divide the system in three different layers that are in charge of interface control logic and data access, this facilitates the maintenance and evolution of systems according to the independence of the present classes in each layer. With the purpose of illustrating a successful application built under MVC, in this work we introduce different phases of analysis, design and implementation of a database and web application using UML. As central component of the application, it has a database made up by fifteen relations and a user interface supported by seventeen web pages.
---
paper_title: Design reuse in hypermedia applications development

paper_content:

In this paper we discuss the use of design patterns for the process of building hypermedia applications. The idea of design patterns has been recently developed, and rapidly spread outside the object-oriented community to a general audience of software developers. By using patterns it is not only possible to document design experience with a very simple and comprehensible format, but also reuse the same experience several times for different applications. We argue that the hypermedia community will take a vital step towards better designs of hypermedia applications and systems by developing a pattern language for that domain.
---
paper_title: Ontology Design Patterns for Semantic Web Content

paper_content:

The paper presents a framework for introducing design patterns that facilitate or improve the techniques used during ontology lifecycle. Some distinctions are drawn between kinds of ontology design patterns. Some content-oriented patterns are presented in order to illustrate their utility at different degrees of abstraction, and how they can be specialized or composed. The proposed framework and the initial set of patterns are designed in order to function as a pipeline connecting domain modelling, user requirements, and ontology driven tasks/queries to be executed.
---
paper_title: Reengineering Web applications based on cloned pattern analysis

paper_content:

Web applications are subject to continuous and rapid evolution. Often it happens that programmers indiscriminately duplicate Web pages without considering systematic development and maintenance methods. This practice creates code clones that make Web applications hard to maintain and reuse. This paper presents an approach for reengineering Web applications based on clone analysis that aims at identifying and generalizing static and dynamic pages and navigational patterns of a Web application. Clone analysis is also helpful for identifying literals that can be generated from a database. A case study is described which shows how the proposed approach can be used for restructuring the navigational structure of a Web application by removing redundant code.
---
paper_title: Reengineering to the Web: a reference architecture

paper_content:

Reengineering existing (large-scale) applications to the Web is a complex and highly challenging task. This is due to a variety of demanding requirements for interactive Web applications. High performance is usually required, old interfaces still have to be supported, high availability requirements are usual, information has to be provided to multiple channels and in different formats, pages should contain individual layouts across different channels, styles should be imposed over presentation, etc. To achieve these goals a variety of different technologies and concepts have to be well understood, including HTTP protocol handling, persistent stores/databases, various XML standards, authentication, session management, dynamic content creation, presentational abstractions, and flexible legacy system wrapping. In a concrete project, all these components have to be integrated properly and appropriate technologies have to be chosen. On basis of practical and theoretical experience in the problem domain, in this paper, we try to identify the recurring components in reengineering projects to the Web, lay out critical issues and choices, and conceptually integrate the components into a reference architecture.
---

Title: A Survey of Design Pattern Based Web Applications

Section 1: INTRODUCTION
Description 1: This section introduces the challenges faced by web application designers, the role of design patterns in overcoming these challenges, the benefits and threats of pattern-based web applications, and provides an overview of the paper's organization.

Section 2: PATTERN-BASED WEB APPLICATIONS
Description 2: This section discusses the classification of web applications into pattern-based and non-pattern-based, and provides an analysis of cases where patterns are used in web applications, including hypermedia and semantic web applications.

Section 3: Hypermedia
Description 3: This subsection under Section 2 elaborates on the role of hypermedia in pattern-based web applications, using examples such as the CAIBCO System and various navigation patterns.

Section 4: Semantic Web
Description 4: This subsection under Section 2 explains the application of design patterns in the construction of the semantic web, including examples of ontology design patterns and their implications.

Section 5: Architectural Solutions for Web applications
Description 5: This section addresses the use of architectural patterns like PAC and MVC in web applications, discussing their benefits and limitations, as well as strategies for migrating legacy systems to web-based architectures.

Section 6: LIABILITIES DUE TO IMPROPER USAGE OF PATTERNS FOR WEB APPLICATIONS
Description 6: This section explores the negative consequences of improper pattern usage, including issues like tight coupling, inefficiencies, and partitioning problems in pattern-based web applications.

Section 7: RE-ENGINEERING WEB APPLICATIONS
Description 7: This section reviews various re-engineering efforts aimed at addressing the problems caused by the misuse of patterns, including methods for pattern analysis and reference architecture.

Section 8: CONCLUSION AND FUTURE WORK
Description 8: This section summarizes the survey’s findings on pattern-based web applications and outlines potential future work, including the development of architectures for porting web applications to the MVC framework without partition issues.