Developing Applications with WebML Lecture 7 Dr. Mohammad Ahmad

Slides:



Advertisements
Similar presentations
Three-Step Database Design
Advertisements

TU/e technische universiteit eindhoven Hera: Development of Semantic Web Information Systems Geert-Jan Houben Peter Barna Flavius Frasincar Richard Vdovjak.
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Unified Modeling Language
Model-driven design of Web applications Piero Fraternali, Marco Brambilla 9 novembre 2002
TU/e technische universiteit eindhoven Hypermedia Presentation Adaptation on the Semantic Web Flavius Frasincar Geert-Jan Houben
© Copyright 2008 STI - INNSBRUCK Web Engineering Developing Applications with WebML Lecture IV – 28 th October 2008 Federico M. Facca.
Methodologies for Web Information System Design
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy.
Lecture Fourteen Methodology - Conceptual Database Design
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
CS 290C: Formal Models for Web Software Lecture 6: Model Driven Development for Web Software with WebML Instructor: Tevfik Bultan.
Dreamweaver 8 Concepts and Techniques Introduction Web Site Development and Macromedia Dreamweaver 8.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Methods For Web Page Design 6. Methods Why use one? What it covers –Possibly all stages Feasibility Analysis Design Implementation Testing –Maybe just.
Conceptual Modeling Issues in Web Applications enhanced with Web services Sara Comai, Politecnico di Milano In collaboration with:
1 © Copyright 2015 Ioan Toma, Srdjan Komazec, Nelia Lassiera Web Engineering Developing Applications with WebML.
User Interface Elements of User Interface Group View.
Methodology - Conceptual Database Design Transparencies
Methodology Conceptual Databases Design
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
Database Management System Prepared by Dr. Ahmed El-Ragal Reviewed & Presented By Mr. Mahmoud Rafeek Alfarra College Of Science & Technology Khan younis.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
MULTIMEDIA DEFINITION OF MULTIMEDIA
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Introduction to Web Authoring Bill Hart-Davidson AIM: billhd30 Session 10
Methodology - Conceptual Database Design
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
2007. Software Engineering Laboratory, School of Computer Science S E Web-Harvest Web-Harvest: Open Source Web Data Extraction tool 이재정 Software Engineering.
UML Diagrams: The Static Model Class Diagrams. The Static Model Define the static structure of the logical model Represent classes, class hierarchies.
+ Information Systems and Databases 2.2 Organisation.
Class Diagrams. Terms and Concepts A class diagram is a diagram that shows a set of classes, interfaces, and collaborations and their relationships.
introductionwhyexamples What is a Web site? A web site is: a presentation tool; a way to communicate; a learning tool; a teaching tool; a marketing important.
© Copyright 2008 STI - INNSBRUCK Web Engineering Web Application Modeling Lecture III – 21 st October 2008 Federico M. Facca.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Modeling with UML – Class Diagrams
Unit - 3 OBJECT ORIENTED DESIGN PROCESS AND AXIOMS
Methodology Conceptual Databases Design
UML Diagrams: Class Diagrams The Static Analysis Model
Web Site Development and Macromedia Dreamweaver 8
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Building Trustworthy Semantic Webs
Object-Oriented Analysis and Design
Methodology Conceptual Database Design
CX Introduction to Web Programming
APPLICATION OF DESIGN PATTERNS FOR HARDWARE DESIGN
Slide Set to accompany Web Engineering: A Practitioner’s Approach
Web Development A Visual-Spatial Approach
Chapter 4 Relational Databases
Abstract descriptions of systems whose requirements are being analysed
Conceptual data modeling
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Prepared for Md. Zakir Hossain Lecturer, CSE, DUET Prepared by Miton Chandra Datta
CS 174: Server-Side Web Programming February 12 Class Meeting
System And Application Software
UML Diagrams: The Static Model Class Diagrams
Domain Class Diagram Chapter 4 Part 2 pp
Software Engineering Lecture #11.
Introduction to UML.
Object-Oriented Knowledge Representation
Analysis models and design models
Metadata Framework as the basis for Metadata-driven Architecture
Methodology Conceptual Databases Design
Model-Driven Semantic Web Application Development
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Stumpf and Teague Object-Oriented Systems Analysis and Design with UML
Lecture 23 CS 507.
UML Design for an Automated Registration System
Software Architecture & Design
Presentation transcript:

Developing Applications with WebML Lecture 7 Dr. Mohammad Ahmad Web Engineering Developing Applications with WebML Lecture 7 Dr. Mohammad Ahmad

Overview Introduction What is WebML? Slides Material from: webml.org

Why WebML? INTRODUCTION

WebML purpose WebML aims at providing a structured approach to the design of Data-intensive Web sites A set of integrated Models should help designers in high-quality Web sites production All the facets of Web design should be addressed Use of old or uncoherent methodologies becomes deprecated

Target: data intensive Web sites Target of WebML Target: data intensive Web sites large amount of data interfaces directed to general public exploratory browsing-oriented personalized (1 to 1) volatile content, structure, navigation, presentation WebML is not the right approach for: Small Web sites (Homepages, …) Static Web sites

What is WEBML?

The WebML models WebML: a conceptual language for high-level design of data-intensive web sites Models: Structure: data organization Derivation: redundant data definition Composition: definition of site pages as set of subpages and elementary publishing units Navigation: definition of links between pages and between units Presentation: positioning of the units in the page and definition of graphical appearance

Preview of WebML concepts Site = Structure + Composition + Navigation + Presentation entities, relationships units, pages, links site views styles navigation + composition structure user models presentation

Compatible with Entity-Relationship and UML class diagrams Structure Model (1) Q: what are the objects published in the site and how they are related? A: Entity: an object type in the application domain Attribute: scalar property of an entity Relationship: A connection between entities IS-A hierarchy: classification and grouping Compatible with Entity-Relationship and UML class diagrams

Simplified Entity-Relationship model Structure Model (2) Simplified Entity-Relationship model Binary relationships between entities IS-A hierarchies Simple typed attributes in entities Derivation model can be applied for redundant data Book Author Genre BestSeller

Derivation Model Redundant data can be easily specified using a WebML-OQL (Object Query Language). E.g.: Author.BooksNumber = count(self.Author2Book) BestSeller := Book where Book.Sales > 50,000 Book Author BestSeller

Hypertext Model Q1: what information is published in the hypertext nodes? Q2: how are the hypertext nodes connected? Q3: how is the hypertext divided into pages served to the user? A1: content units (Composition) A2: links (Navigation) A3: pages (Composition)

Composition: examples of Content Units description DATAUNIT To publish information about A SINGLE object (e.g. AuthorDetail) To publish a list of objects (e.g. IndexOfAuthors) content INDEXUNIT content

Composition: examples of Content Units rendering DATAUNIT Author first name:XXX last name:YYY photo: Author INDEXUNIT Index of Authors S. Ceri P. Fraternali O.Versand Author

Navigation Model: Links AuthorID is transported entity: author Book [ author2book ] Semantics of a link: Moving from one place to another Transporting information from one place to another (navigation context) Activating a computation (side effect)

A Page is a structured container of units and links Composition: Pages A Page is a structured container of units and links Possibly structured in and/or sub-pages Abstraction of screen, frame, card, deck... Permits one to cluster related information for more efficient communication E.g.: index of authors and the selected author are shown together in the same page Author Author

Types of links Contextual links Non-contextual links Voyages Books Between units Context transported Non-contextual links Between pages No context transported Voyages Books

Write access: WebML operations Some predefined operations are provided Customized operation can be defined E.g.:delete of an Author Create Op. X Author Delete

Siteviews A Siteview is a set of pages that the user can experience as a whole Web site Different site views can be defined for different devices and different groups of users Thus, access control and multi-devices delivery is achieved

Things to keep in mind (or summary) WebML is Domain Specific Language (DSL) Is not UML or MDA But … WebML is about Model Driven Design and Development Focus on data intensive Web applications Automatic code generation of Web applications One model for each layer Content Navigation Presentation Tool Support!