Presentation on theme: "Tools and Approaches for Developing Data- Intensive Web Applications: A survey By: Nadi Linlett Anetta Kojlo Erkan Mustafa."— Presentation transcript:
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
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
Process Models, Languages, and Notation Reuse Architecture Usability 5 Topics
Process Prototyping & Verification Maintenance & Evolution Requirement Analysis Conceptualization Design: Structure Navigation Presentation Implementation The Lifecycle of Web Application
Models, Languages and Notation Structure Navigation Presentation Reuse JavaBeans 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
Web Development Tools Help to understand the state of the practice There are six categories: 1.Visual Editors and Site Managers 2.Web-enabled hypermedia authoring tools 3.Web-DBPL integrators 4.Web from editors, report writers, and database publishing wizards 5.Multiparadigm tools 6.Model-driven application generators
1. Visual Editors and Site Managers WYSIWYG editor Lets the user design sophisticated HTML Pages without programming, and a visual site manager Advanced products (e.g. NetObjects 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. Microsofts 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.
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.
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 Oracles 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.
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
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, OpenTexts 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 example Relationship 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_R MM.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.On-Line Conference Proceedings directoriesacademic journalscourse-wareelectronic-commerce RMM consists of a series (seven) of well-delineated steps to guide in Web Systems design and development.steps 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. RM-CASE
RMM - Process Concentrated on seven activities: Entity relationship design Slice design Navigation design Conversion protocol design Interface design Behaviour design Implementation and testing
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 links 1. www.webdevelopersjournal.com www.webdevelopersjournal.com 2. www.webml.org www.webml.org 3. www.netobjects.com