Automatic Generation of Web Interfaces From User Interaction Diagrams Filipe Bianchi Damiani Patrícia Vilain Federal University of Santa Catarina (UFSC)

Slides:



Advertisements
Similar presentations
OWL-S for Amazon Amazon.com publishes a WS to browse its DB and reserve goods –At the time of this experiment Amazon published only the buyer WS –Interaction.
Advertisements

REST - Representational State Transfer
Chapter 11 Designing the User Interface
June 22, 2007 CMPE588 Term Project Presentation Discovery of Composable Web Services Presented by: Vassilya Abdulova.
User Interface Structure Design
© 2010 Bennett, McRobb and Farmer1 Use Case Description Supplementary material to support Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Actors and use cases Use-case diagram Brief notation Prioritization Fully dressed notation Requirements Functional requirements  Use-cases.
Chapter 12: Web Usage Mining - An introduction
Internet Technologies 1 Master of Information System Management Java Server Faces Model/View/Controller Design Pattern for Web Development Slides.
Visual Web Information Extraction With Lixto Robert Baumgartner Sergio Flesca Georg Gottlob.
IS 360 Web Promotion. Slide 2 Overview How to attract visitors.
OOHDM Hypermedia Research Work Designing Web-based applications with Object Oriented Hypermedia Design Method OOHDM.
Reference and Instruction Automated Statistics Gathering and Reporting System Members: Patrick Chen (pyc7) Soo-Yung Cho (sc444) Gregg Herlacher (gah24)
XML Technologies and Applications Rajshekhar Sunderraman Department of Computer Science Georgia State University Atlanta, GA 30302
Apache Struts Technology A MVC Framework for Java Web Applications.
UML exam advice. Minimal, yet sufficient UML course 80% of modeling can be done with 20% of the UML. Which 20% was that again? We’re supposed to be “Use.
Tutorial 11: Connecting to External Data
Presentation 4: IBM Rational Software Architect Example James Martin CpE 691, Spring 2010 February 18, 2010.
Chapter 13: Designing the User Interface
TK2023 Object-Oriented Software Engineering CHAPTER 6 SYSTEM SEQUENCE DIAGRAMS.
Chapter 3 Object-Oriented Analysis of Library Management System(LMS)
UNIT-V The MVC architecture and Struts Framework.
Adding metadata to web pages Please note: this is a temporary test document for use in internal testing only.
Data flow diagrams.
CSCI 6962: Server-side Design and Programming Course Introduction and Overview.
A Scalable Application Architecture for composing News Portals on the Internet Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta Famagusta.
Valma Technical Aspects
Aurora: A Conceptual Model for Web-content Adaptation to Support the Universal Accessibility of Web-based Services Anita W. Huang, Neel Sundaresan Presented.
Tony Nguyen.  Architecture  Advantages  Disadvantages  Setup JSF Environment  JSF & Database  Conclusion  Demo.
K. Jamroendararasame*, T. Matsuzaki, T. Suzuki, and T. Tokuda Department of Computer Science, Tokyo Institute of Technology, JAPAN Two Generators of Secure.
Chapter 16 The World Wide Web. 2 The Web An infrastructure of information combined and the network software used to access it Web page A document that.
Object and component “wiring” standards This presentation reviews the features of software component wiring and the emerging world of XML-based standards.
Chapter 24 - Advanced Web Technologies Introduction Conventional Web Pages Are Static How A Server Stores Static Web pages Fetching Items One At A Time.
Chapter 7 Structuring System Process Requirements
Online Music Store MSE Project Presentation I Presented by: Reshma Sawant Major Professor: Dr. Daniel Andresen.
CSCI 6962: Server-side Design and Programming Support Classes and Shopping Carts.
Project Implementation for COSC 5050 Distributed Database Applications Lab3.
CSCI 6962: Server-side Design and Programming Introduction to Java Server Faces.
Java Server Pages A JSP page is a text-based document that contains two types of text: static template data, which can be expressed in any text-based format,
DSpace UI Alexey Maslov. DSpace in general A digital library tool useful for storage, maintenance, and retrieval of digital documents Two types of interaction:
Mid Morning Discussion Introduction to the IBIS-Q Front-End System ("Module" Emphasis) What is the front end Where does the front end fit in What is a.
Marcel Casado NCAR/RAP WEATHER WARNING TOOL NCAR.
AUTOMATION OF WEB-FORM CREATION - KINNERA ANGADI – MS FINAL DEFENSE GUIDANCE BY – DR. DANIEL ANDRESEN.
 2008 Pearson Education, Inc. All rights reserved Introduction to XHTML.
Java Server Faces Introduction Harshavardhan M. Karkar Project Manager Info-Spectrum India Pvt. Ltd.
FlexElink Winter presentation 26 February 2002 Flexible linking (and formatting) management software Hector Sanchez Universitat Jaume I Ing. Informatica.
1 Overview of XSL. 2 Outline We will use Roger Costello’s tutorial The purpose of this presentation is  To give a quick overview of XSL  To describe.
(c) Addison Wesley Copyright © 2000 by Addison Wesley Version 1.0
XML Grammar and Parser for WSOL Kruti Patel, Vladimir Tosic, Bernard Pagurek Network Management & Artificial Intelligence Lab Department of Systems & Computer.
An approach for Framework Construction and Instantiation Using Pattern Languages Rosana Teresinha Vaccare Braga Paulo Cesar Masiero ICMC-USP: Institute.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
CSCI 6962: Server-side Design and Programming JSF DataTables and Shopping Carts.
1 © 2005 Cisco Systems, Inc. All rights reserved. Session Number Presentation_ID Cisco Confidential Cisco Cross Reference Tool (CCRT) User’s Guide Version.
Training Guide. The Punch Out Catalog System The Punch Out shopping catalog for Corporate Express takes the user directly into the vendor’s website and.
Chapter 9 Web Application Design. Objectives Describe the MVC design pattern as used with Web applications Explain the role and responsibilities of each.
SEESCOASEESCOA SEESCOA Meeting Activities of LUC 9 May 2003.
Copyright © 2007, Oracle. All rights reserved. Managing Items and Item Catalogs.
Apache Struts Technology A MVC Framework for Java Web Applications.
Generating ADL Descriptions ADL Module for Together 6.x Massimo Marino Lawrence Berkeley National Laboratory.
1 Object Oriented Analysis and Design System Events & Contracts.
Use Case Diagrams A Detailed Description. Use Case Diagrams Use case diagrams describe relationships between users and use cases A use case is a (usually.
XML Databases Presented By: Pardeep MT15042 Anurag Goel MT15006.
Business rules.
JRA2: Acceptance Testing senarious
Web Routing Designing an Interface
Software Specification Tools
Chapter 25 - Automated Web Search (Search Engines)
INTAKE OF NEW PORTFOLIO AND INVOICES
Serpil TOK, Zeki BAYRAM. Eastern MediterraneanUniversity Famagusta
WEB SERVICES From Chapter 19, Distributed Systems
Presentation transcript:

Automatic Generation of Web Interfaces From User Interaction Diagrams Filipe Bianchi Damiani Patrícia Vilain Federal University of Santa Catarina (UFSC) - Brazil

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

The requirements gathering is one of the system development steps. Modeling the interaction between the user and the system can help to gather functional requirements. The interaction can be described by  Text (Scenarios, Use Cases, etc)  Diagram (User Interaction Diagrams (UIDs), etc) Can web user interfaces be generated from an interaction model?

The user inputs and outputs of UIDs can be mapped to inputs and outputs of web pages components. ⇒ It is defined a set of rules to map functional requirements represented in UIDs to web pages using JSF. ⇒ It is developed a tool that automatically implements these rules.

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

Diagrammatic notation that represents the exchange of information between a user and a system. Does not reveal specific user interface aspects. UID: Selection of a CD based on a given title

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

Framework for developing web applications using the Java technology. It follows the design pattern MVC (Model-View-Control), separating the business model and the visualization. Each JSF visual component has a direct representation in a HTML component.

Some JSF components relevant to this work: forminputText panelGridoutputLink panelGroupcommandLink columncommandButton dataTableselectManyCheckbox outputTextselectOneRadio outputLabel

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

Map UID elements directly to JSF components. They were based on:  Mapping of UIDs elements to abstract widgets  Possible representations of JSF components to the abstract widgets  Relevant information available in UIDs

UID ElementsJSF Components text outputText data item (system output) if the data item is the source of any transition, it is mapped to a commandLink otherwise, it is mapped to an outputText structure (system output) if the structure is not the source of any transition and does not contain elements, it is mapped to an outputText if the structure is the source of a transition and does not contain elements, it is mapped to a commandLink if the structure contains elements, it is mapped to a panelGrid with an outputLabel. Each element within the structure is mapped according to its type

UID ElementsJSF Components set of data items (system output), set of structures (system output) if the set is not the source of any transition, it is mapped to a dataTable otherwise, its mapping is done as in the mapping of a transition data item (user entry) inputText structure (user entry) panelGrid with an outputLabel. Each element within the structure is mapped according to its type and the resulting JSF components are included into the panelGrid (mapping rules are recursively applied to nested elements) if the structure does not have elements, it is mapped to an inputText with an outputLabel

UID ElementsJSF Components set of data items (user entry) if the set has an upper limit (0..*), it is mapped to an inputText with an outputLabel otherwise, inputText components must be replicated up to the number of required entries set of structures (user entry) if the set has an upper limit and the structure does not contain elements, its mapping is done as in a set of data items if the set has a relatively small upper limit, it is mapped to a dataTable and each element to a column if the set has no upper limit, it is mapped as a single structure selection between two data items (or) selectManyCheckbox

UID ElementsJSF Components selection of a data item (xor) selectOneRadio enumerated user entry if only one item can be chosen, it is mapped to a selectOneRadio if more than one item can be chosen, it is mapped to a selectManyCheckbox interaction state it is mapped to a form. The JSF components that correspond to the elements of the interaction state are added to the form. Note that a single form component can implement more than one interaction state sub-state form

UID ElementsJSF Components transition with the selection of an option if the source is a structure, it is mapped to a commandLink added to the panelGrid obtained from mapping the structure … transition with selection of elements if the source is a set of data items and just one element can be selected, the set is mapped to a dataTable with a column containing commandLinks around the items; … call of another UID, call from another UID, pre-conditions, post-conditions, parameters and notes ignored as there are no matching JSF components

A prototypical tool that automates the UID-to-JSF mapping rules were developed. It reads UID information stored in one or more XML documents and generates JSF pages. It was developed for JSF version 2.0.

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

Set of JSF pages automatically generated by our mapping tool Use Case: Buying a CD from an Advanced Search Description: 1. The user enters some keywords, artist’s name, CD title or record label, and chooses ‘CD’ as the media format. 2. The system returns a set of CDs that match the entries. For each CD listed, the following data are given: CD title, artist’s name, year, recommendation, stock price, stock quantity, price of a new one (from a reseller), and price of a used one (from a reseller). 3. The user selects one CD from the set and the system shows the specific information about that CD, including the CD title, artist’s name, recommendation, stock price, stock quantity, price of a new one, price of a used one and artist’s biography. 4. If the user wants to buy that CD or has interest on it, he or she can instantly proceed with the purchase (one-click ordering), add it to the shopping cart to buy it later or instead simply add it to a wishing list. Use Case: Buying a CD from an Advanced Search Description: 1. The user enters some keywords, artist’s name, CD title or record label, and chooses ‘CD’ as the media format. 2. The system returns a set of CDs that match the entries. For each CD listed, the following data are given: CD title, artist’s name, year, recommendation, stock price, stock quantity, price of a new one (from a reseller), and price of a used one (from a reseller). 3. The user selects one CD from the set and the system shows the specific information about that CD, including the CD title, artist’s name, recommendation, stock price, stock quantity, price of a new one, price of a used one and artist’s biography. 4. If the user wants to buy that CD or has interest on it, he or she can instantly proceed with the purchase (one-click ordering), add it to the shopping cart to buy it later or instead simply add it to a wishing list.

UID corresponding to the use case.

Generated web page corresponding to the initial interaction state user input >> inputText transition with option >> commandLink enumerated user entry >> selectOneRadio 1 2 3

UID corresponding to the use case.

Generated web page corresponding to the second interaction state transition with selection of elements >> commandLink set of structures (system output) >> dataTable 1 2

UID corresponding to the use case.

Generated web page corresponding to the third interaction state structure (system output) >> outputText transition with option >> commandLink 1 2

1. Introduction 2. User Interaction Diagrams 3. Java Server Faces 4. Mapping Rules 5. Example 6. Conclusions

We defined a set of mapping rules for generating JSF pages from UIDs. We developed a prototypical tool that automates the generation of JSF pages by applying those rules. The generated JSF pages help:  Users validate the requirements;  As an initial prototype for the user interfaces. Other works also generate user interfaces using model driven transformations, such as UWE4JSF and OO-Method.

Filipe Bianchi Damiani Patrícia Vilain