Top Banner
Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa
44

Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Mar 28, 2015

Download

Documents

Kaitlyn Short
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Tools and Approaches for Developing Data- Intensive Web Applications: A survey

By:

Nadi LinlettAnetta KojloErkan Mustafa

Page 2: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Perspectives on Web Development Tools for Web Development Middleware , Search Engines and

Groupware Research Perspectives, Projects in Data-

Intensive Web

Presentation Contexts

Page 3: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Objectives of Developing Data-Intensive Web Applications

Addressing Software Engineering Web Development Applications Classify and Compare current development tools as has

happened in past (e.g. Databases, OOP, Methodologies, Middleware)

Formulate Evaluations Research Perspectives

Page 4: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Perspectives on Web Development

Page 5: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Process Models, Languages, and Notation Reuse Architecture Usability

5 Topics

Page 6: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Process

Prototyping & Verification

Maintenance& Evolution

Requirement Analysis

Conceptualization

Design:Structure

NavigationPresentation

Implementation

The Lifecycle of Web Application

Page 7: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Models, Languages and Notation

Structure Navigation Presentation

ReuseJavaBeans

Components are reusable software programs that can develop and assemble easily to create sophisticated applications.

e.g. Electronic payment facility

Page 8: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Architecture Two-tier Architecture

Application logic and data on server side

Three-tier Architecture Integrate HTTP and client-server protocols

Usability Visual Quality Customization Adaptivity Proactivity

Page 9: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Tools for Web Development

Page 10: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Web Development ToolsHelp to understand the state of the practiceThere are six categories:

1. Visual Editors and Site Managers2. Web-enabled hypermedia authoring tools3. Web-DBPL integrators4. Web from editors, report writers, and database

publishing wizards5. Multiparadigm tools6. Model-driven application generators

Page 11: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

1. Visual Editors and Site Managers

WYSIWYG editorLets the user design sophisticated HTML Pages without programming, and a visual site manager Advanced products (e.g.

NetObject’s Fusion and MS FrontPage)

Added functionalities for dynamic connection to live database data.

Page 12: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

2. Web-Enabled Hypermedia Authoring Tools Sharing same focus but different origin

Authoring Metaphor e.g. Flowchart May require programming Type of database connectivity Type of web connectivity Include export language Offer Interoperability with third-party components (e.g.

Inclusion of Java applets and ActiveX Components)

Page 13: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

3. Web DBPL Integrators

Used by programmers Architecture: Database centered and 3Tier Permits more effective manipulation of

information Exposes different object types E.g. Oracle Trigger

Page 14: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

4. Web From Editors, Report Writers and Database Publishing Wizards

Collects a large number of products

Database export: support is limited to the publication of basic database elements,i.e., tables and views, and is achieved by automatically mapping database content into a network language.

Report writing: more complex readonly applications obtained by defining custom reports, exported to the Web either statically or dynamically.

Microsoft’s Visual InterDev, Visual Basic 5, and Access97, Oracle Developer 2000,

Form based generators and database publishing wizards deliver complete software solutions, including user interface logic.

Page 15: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Database Publishing Wizard

Page 16: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Visual Basic 5

Page 17: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

5. Multipradigm Tools Multiparadigm tools

integrate solutions from the abovementioned categories into a unified development framework.

The most typical configuration is one in which visual HTML editing and site administration are extended with external components, which provide database connectivity.

Examples of such convergent tools are FrontPage98, which includes database objects for connecting to external data sources.

Multiparadigm tools do not introduce novel approaches into Web development, but combine already established features.

Page 18: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Front Page 98

Page 19: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

6.Model-Driven Web Generators Top of the proposed

categories, provide the highest level of automation and lifecycle coverage.

Applying conceptual modeling and code generation techniques to the development of Web applications.

We review Hyperwave Server 4.0, and Oracle’s Web Development Suite.

Hyperwave is an advanced document management environment which permits remote users to browse, annotate, and maintain documents distributed over the Web.

Hyperwave has a very basic, yet powerful, high-level model of a Web application, which is thought of as a set of document collections organized hierarchically.

Page 20: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Hyperwave

Page 21: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

A more database-centric approach is

taken by the Oracle Web Development Suite, which comprises Designer 2000

CASE tool for generating Web applications from bigger entity-relationship diagrams.

Designer 2000 is an environment for

business process and application modeling, integrated with software generators originally designed to target traditional client-server environments, namely Oracle Developer 2000 and Visual Basic.

Page 22: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Hyperwave and Designer 2000 diverge in the underlying

conceptual model, and both exhibit limits in the description of Web applications.

Hyperwave adopts a simplified hypermedia model, which is well suited to represent navigation, but lacks a proper structural model; as a consequence, the information base is reduced to a set of flat documents annotated with metadata.

Conversely, Designer 2000 draws the development abstractions from the database world, and adapts such concepts as entities and relationships to Web modeling by adding to them some navigation and presentation flavor.

Hyperwave v Designer 2000

Page 23: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Middleware , Search Engines and Groupware

Page 24: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Industrial strength data-intensive applications require not only proper design tools but also a solid architecture,

Good performance, availability, scalability, and security. These goals have prompted the extension of the original two-tier HTPP architecture.

The key to multitiered applications is the capability to separate data, interfaces, and application logic, and to distribute each aspect to distinct network nodes.

Such distribution leverages Internet-enabled application protocols like Corba.

Middleware

Page 25: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

The proper design of structure and navigation normally results in Web site with a self-evident organization

Examples of Web development tools that bundle integrated search functions are Hyperwave (which also comes with a separate commercial search engine)

Stand-alone search engines, we mention Verity Search97, Harvest,

OpenText’s LiveLink Search and Spider.

Search engines basically consist of two main components: a user interface and query processor, whereby users can pose queries and obtain a ranked list of pages whose content satisfies the query; and an indexing component (also called spider or crawler) which creates and maintains indexes over the data sources.

Search Engines

Page 26: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Research Perspectives, Projects in Data- Intensive Web

Page 27: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Research Projects

Araneus - Last published in 1999 Autoweb - No further information

published Strudel - No further information published Web Architect – No further information

published. W3I3 - Can be found at www.WebML.org

Page 28: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: www.webml.org

W3I3 - WebML

Four Models: Data Model Hypertext Model Presentation Model WebML Process

Page 29: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: www.webml.org

WebML – Data Model

Relationships – an exampleRelationship roles can be annotated with minimum and

maximum cardinality constraints, respectively denoting the minimum and maximum number of objects of the destination entity to which any object of the source entity can be related.

Page 30: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: www.webml.org

WebML – Hypertext Model

Composition describes which pages compose the hypertext, and which content units make up a page. The pages of the Web site are the containers of information actually delivered to the reader.

Page 31: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: www.webml.org

WebML – Hypertext Model

Five Main Concepts:

1. Areas and Siteviews

2. Pages

3. Units

4. Operations

5. Links

Page 32: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: www.webml.org

WebML - Presentation

Presentation is the orthogonal task of defining the look and feel of pages in a site view. WebML does not include a specific model for expressing presentation at the conceptual level, but leverages standard approaches, more familiar to graphic and communication experts.

Page 33: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: www.webml.org

WebML – The WebML Process

Page 34: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Source: http://jmis.bentley.edu/rmm/What_is_RMM.html

Modelling Notation

Two Ancestors:

Entity Relationship Model – Chen 1976 Database field

Dexter Model – Halasz & Schwarz 1994 Hypermedia

Page 35: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

The Dexter Model

the first of workshop was held in the Dexter Inn in New Hampshire in 1988

Based on three layers: the within-component layer the storage layer the run-time layer

Page 36: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

The Dexter Model

Developed into:

HDM (Garzotto et al. 1993) RMM (Isakowitz et al. 1995)

Page 37: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

RMM

Relationship Management Model

RMM facilitates the design of WWW sites, and their seamless integration with databases and enterprise-wide information systems.

RMM applies best to applications that are large and dynamic, where data is stored in databases, and where hyper-links are computer generated.

RMM has been applied to applications such as: On-Line Conference Proceedings, directories, academic journals, course-ware, and electronic-commerce, among others.

RMM consists of a series (seven) of well-delineated steps to guide in Web Systems design and development.

The design of a WWW application can be succinctly represented with RMM diagrams so that designers, programmers and users have a clear understanding of the scope and structure of the application.

RM-CASE is a software tool currently under construction, that supports RMM design and development.

Page 38: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

RMM - Process

Concentrated on seven activities: Entity relationship design Slice design Navigation design Conversion protocol design Interface design Behaviour design Implementation and testing

Page 39: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

In Conclusion

Page 40: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Perspectives and Tools a Conclusion Considerable overlap – between tools Differences in the level of maturity Plausible choice based on application

requirements The paper shows a trend towards dynamic

web sites

Page 41: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Middleware , Search Engines and Groupware a conclusion Now considered to be an integral part to

complete the development of a web implementation

Page 42: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Research a conclusion

General move towards object orientated web sites

New style of database has prompted new research

Page 43: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

References

1. PIERO FRATERNALI (1999), Tools and Approaches for Developing Data-Intensive Web Applications: A Survey, ACM Computing Surveys, Vol. 31, No. 3, September 1999

2. John Placer (1993), “The promise of multiparadigm languages as pedagogical tools” - ACM Annual Computer Science Conference archive Proceedings of the 1993 ACM conference on Computer science table of contents Indianapolis, Indiana, United States, 1993

3. Hailpem, Brent. "Multiparadigm Languages and Environments", IEEE Software, 3, 1, January 1986

Useful links1. www.webdevelopersjournal.com 2. www.webml.org3. www.netobjects.com

Page 44: Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa.

Thank you for listening

Questions?