Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa
Mar 28, 2015
Tools and Approaches for Developing Data- Intensive Web Applications: A survey
By:
Nadi LinlettAnetta KojloErkan Mustafa
Perspectives on Web Development Tools for Web Development Middleware , Search Engines and
Groupware Research Perspectives, Projects in Data-
Intensive Web
Presentation Contexts
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
Perspectives on Web Development
Process Models, Languages, and Notation Reuse Architecture Usability
5 Topics
Process
Prototyping & Verification
Maintenance& Evolution
Requirement Analysis
Conceptualization
Design:Structure
NavigationPresentation
Implementation
The Lifecycle of Web Application
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
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
Tools for Web Development
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
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.
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)
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
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.
Database Publishing Wizard
Visual Basic 5
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.
Front Page 98
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.
Hyperwave
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.
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
Middleware , Search Engines and Groupware
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
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
Research Perspectives, Projects in Data- Intensive Web
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
Source: www.webml.org
W3I3 - WebML
Four Models: Data Model Hypertext Model Presentation Model WebML Process
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.
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.
Source: www.webml.org
WebML – Hypertext Model
Five Main Concepts:
1. Areas and Siteviews
2. Pages
3. Units
4. Operations
5. Links
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.
Source: www.webml.org
WebML – The WebML Process
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
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
The Dexter Model
Developed into:
HDM (Garzotto et al. 1993) RMM (Isakowitz et al. 1995)
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.
RMM - Process
Concentrated on seven activities: Entity relationship design Slice design Navigation design Conversion protocol design Interface design Behaviour design Implementation and testing
In Conclusion
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
Middleware , Search Engines and Groupware a conclusion Now considered to be an integral part to
complete the development of a web implementation
Research a conclusion
General move towards object orientated web sites
New style of database has prompted new research
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
Thank you for listening
Questions?