Platform-Independent UI Models: Extraction from UI Prototypes and rendering as W3C Web Components

Similar documents
A Model-Driven JSON Editor

Guided Research: Intelligent Contextual Task Support for Mails

Towards an EA View Template Marketplace

Creating Software Architecture Documentation for MediaWiki Software Master s Thesis Final Presentation , Uliana Bakhtina

Creating a Software Architecture Documentation for MediaWiki Software Master s Thesis Kick-Off Presentation , Uliana Bakhtina

A prototypical tool to discover architecture changes based on multiple monitoring data sources for a distributed system

Technical Analysis of Established Blockchain Systems

Development of a Social Extension for Real-Time Communication in CAD Software

Implementing a Web Client for Social Content and Task Management Master s Thesis Final Presentation , Björn Michelsen

Computer Support for the Analysis and Improvement of the Readability of IT-related Texts

Master thesis: Automatic Extraction of Design Decision Relationships from a Task Management System

Design and Implementation of a Bikesharing Service as part of an open Mobility-Ecosystem Master Thesis - Final Presentation Weidner, Lucas

Software Engineering for Business Information Systems (sebis) Department of Informatics Technische Universität München, Germany. wwwmatthes.in.tum.

Final Presentation Master s Thesis: Identification of Programming Patterns in Solidity

Web Components. Reactive Architecture for the Front End. Steven Skelton. Reactive Programming Toronto December 3, 2014

Master Project Software Engineering: Team-based Development WS 2010/11

Software Engineering for Business Information Systems (sebis) Department of Informatics Technische Universität München, Germany. wwwmatthes.in.tum.

This course is designed for web developers that want to learn HTML5, CSS3, JavaScript and jquery.

Founder & CEO

JavaScript Programming

1. Setup a root folder for the website 2. Create a wireframe 3. Add content 4. Create hyperlinks between pages and to external websites

Using Natural Language Processing and Machine Learning to Assist First-Level Customer Support for Contract Management

Todd toddreifsteck

REST-based Data Integration Services for Software Engineering Domain

Etanova Enterprise Solutions

Learn Web Development CodersTrust Polska course outline. Hello CodersTrust! Unit 1. HTML Structuring the Web Prerequisites Learning pathway.

Creating an Online Catalogue Search for CD Collection with AJAX, XML, and PHP Using a Relational Database Server on WAMP/LAMP Server

Interactive XML Visualization - using XSLT 2.0 on the Browser. Phil Fearon - Saxonica

Financial. AngularJS. AngularJS.

Financial. AngularJS. AngularJS. Download Full Version :

HTML5 MOCK TEST HTML5 MOCK TEST I

Graphical Interaction

A Library and Proxy for SPDY

HTML5 Evolution and Development. Matt Spencer UI & Browser Marketing Manager

Call: SharePoint 2013 Course Content:35-40hours Course Outline

Modern and Responsive Mobile-enabled Web Applications

Introduction to Sencha Ext JS

Social Content and Model Management using SocioCortex Thinking and working together

State of jquery Fall John Resig

"Charting the Course... Comprehensive Angular. Course Summary

Mobile LREC. Dimension: Mobile: 640 (W) x 500 (H) pixels (for News app now, available on mytv SUPER app since Jan 2018)

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Web Performance in

,

A JavaScript Framework for Presentations and Animations on Computer Science

Migrating Legacy.com. Migrating a top 50 most visited site in the U.S. onto Drupal Legacy.com. Case Study

grabattention The jquery Plug-in

CREATE SASSY WEB PARTS. Developer Guide to SASS usage in SPFx

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

Executive Summary. Performance Report for: The web should be fast. How does this affect me?

OSSI TAMMI CASE STUDY ON MOBILE OPTIMIZATION OF A WEB APPLICATION. Master of Science thesis

Browsers form the Web's user interface, with web versions of everything graphical. Browsers Tag Soup HTML Development

Visual HTML5. Human Information Interaction for Knowledge Extraction, Interaction, Utilization, Decision making HI-I-KEIUD

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group

Executive Summary. Performance Report for: The web should be fast. Top 1 Priority Issues. How does this affect me?

Full Stack Developer with Java

Chrome Extension Security Architecture

Index LICENSED PRODUCT NOT FOR RESALE

Delivery Options: Attend face-to-face in the classroom or remote-live attendance.

ECPR Methods Summer School: Automated Collection of Web and Social Data. github.com/pablobarbera/ecpr-sc103

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Full Stack boot camp

Microsoft SharePoint Designer 2010

Stamp Builder. Documentation. v1.0.0

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

Standard 1 The student will author web pages using the HyperText Markup Language (HTML)

WHAT IS WEBKIT? COPYRIGHTED MATERIAL SMASHING WEBKIT CHAPTER 1

Adobe RoboHelp (2019 release)

Feed Your Inner Data Scientist JAVASCRIPT TOOLS FOR DATA VISUALIZATION AND ANALYSIS

style type="text/css".wpb_animate_when_almost_visible { opacity: 1; }/style

Content Visualization Issues

AJAX Workshop. Karen A. Coombs University of Houston Libraries Jason A. Clark Montana State University Libraries

Decision Making Information from Your Mobile Device with Today's Rockwell Software

ThingLink User Guide. Andy Chen Eric Ouyang Giovanni Tenorio Ashton Yon

The Scope of This Book... xxii A Quick Note About Browsers and Platforms... xxii The Appendices and Further Resources...xxiii

Outline. AJAX for Libraries. Jason A. Clark Head of Digital Access and Web Services Montana State University Libraries

CHOOSING THE RIGHT HTML5 FRAMEWORK To Build Your Mobile Web Application

PHP & My SQL Duration-4-6 Months

Knowledge-based pattern recognition and visualization of error logs of time-based engine sensor data: Requirements engineering and tool-support

Paythru Remote Fields

Adapt Learning: Adapt Framework Concept and Vision

HTML version of slides:

Control Center Release Notes

Software. Full Stack Web Development Intensive, Fall Lecture Topics. Class Sessions. Grading

Executive Summary. Performance Report for: The web should be fast. Top 4 Priority Issues

Bachelor s Thesis: Conceptualization and Implementation of a Rule-based Workbench for Textual Pattern Annotation

Control Center Release Notes

JavaScript: the language of browser interactions. Claudia Hauff TI1506: Web and Database Technology

Lecture Notes on CASE-Tools: Together

Deep Dive on How ArcGIS API for JavaScript Widgets Were Built

Untitled Developers. Herbie Duah. John Loudon. Michael Ortega. Luke Sanchez. Capstone Team Project: MSI Web 2.0. Design Document Ver. 1.

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Some businesses have changed in a major way because of new technology

HTML: Introduction CISC 282. September 11, What is HTML?

LOS RIOS. ICT Accessibility Program. Status Report March 1, Community College District

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

OU Mashup V2. Display Page

SharePoint 2013 End User Level II

Copyright 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley. Chapter 7 XML

Transcription:

Platform-Independent UI Models: Extraction from UI Prototypes and rendering as W3C Web Components Marvin Aulenbacher, 19.06.2017, Munich Chair of Software Engineering for Business Information Systems (sebis) Faculty of Informatics Technische Universität München wwwmatthes.in.tum.de

Outline 1. Introduction 2. Idea 3. Proposed Process 4. Simple Example 5. Timeline 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 2

Context Web Application Development Big Companies Design Companies Start-Ups Small Companies 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 3

Domain Description Prototype driven development in web application development Requirements Prototype Prototype Customer Designer Developer User How should the UI look like? Creates low-fidelity Prototype Creates high-fidelity Prototype Refactoring? 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 4

Problem Communication Issue between Designer and Developer Designer Developer Do not share common domain specific language 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 5

The Idea - Support the developer by generating web components from an UI prototype - Standardize in- and output file formats(svg, JSON) - Use view models as domain specific language 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 6

Research Questions Which design tools do designers use and why? (2 Tools) How should the architecture of a supporting process for the generation of web components be structured? How useful is the automation process based on three basic use cases for prototype driven development? 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 7

View Model Generation Extraction Process SVG View Model 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 8

UI View Model 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 9

UI-Design Tools Features: Easy prototype design Pitch an idea Power of visual communication Proof of concept Instant feedback Support prototype driven development 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 10

Component Based Frameworks Allow high reusability can be extended and modified split responsibilites vertically W3C - Web Components Custom Elements HTML Templates Shadow DOM 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 11

Proposed Process 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 12

Workflow (JS Modules) 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 13

Data HTML SVG raw Json Platform Independent Model Virtual DOM CSS W3C Web Components 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 14

Simple Example 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 15

Simple Example Parsed SVG View Model 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 16

Simple Example View Model Web Component 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 17

Next Steps Render Components in Shadow DOM Create new rules and modify existing ones Complete proposed process Work on use cases 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 18

Timeline Timeline Apr. 17 Mai. 17 Jun. 17 Jul. 17 Aug. 17 Sep. 17 Okt. 17 Tool Analysis Implementation Evaluation Use Cases Writing Concept & Design 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 19

B. Sc. Information Systems Marvin Aulenbacher Technische Universität München Faculty of Informatics Chair of Software Engineering for Business Information Systems Boltzmannstraße 3 85748 Garching bei München Tel +49.89.289. Fax +49.89.289.17136 marvin.aulenbacher@tum.de wwwmatthes.in.tum.de 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis20

Backup Marvin Aulenbacher, 19.06.2017, Munich Chair of Software Engineering for Business Information Systems (sebis) Faculty of Informatics Technische Universität München wwwmatthes.in.tum.de

Component UML View Model 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 22

W3C Components - Specification for platform independent web components - Consist of several seperate technologies - Reusable user interface widgets - Part of browser environment(no external libraries needed) 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 23

Custom Elements - create new HTML tags (customelement.define(name,component, options:{})) - Modify existing HTML tags - Extend HTML tags (e.g. Button) - life cycle behaviours(connected, disconnected) - Can have own scripted behaviour and CSS styling 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 24

HTML Templates - client-side content - Is not rendered when page is loaded, has to be activated - Parser only validates content of template - High reusability 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 25

Shadow DOM Two differences to normal DOM 1. How it is created and used 2. How it behaves in relation to the rest of the page This enables: - Tree-scoping - Details of the implementation are hidden. - Shadow root contains implementation details and are rendered into a single tree - Shadow dom must be attached to an existing element 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 26

Browser Support - Backward compability via polyfills - Custom Elements supported by modern browsers - Early version support of Shadom Dom and Custom Elements in Chrome, Opera, Firefox - Edge has not started to implement Shadow Dom nor Custom Elements 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 27

Why SVG? Pro Con 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 28

Why JSON? Pro Con 171906 Marvin Aulenbacher Master Thesis Kick Off Presentation sebis 29