Christian Thum, Michael Schwind, Martin Schader

Similar documents
Web Cloud Architecture

How To Build A Web App

Integrating Web Messaging into the Enterprise Middleware Layer

Mashup Development Seminar

Virtual Team Collaboration Glossary

Step into the Future: HTML5 and its Impact on SSL VPNs

FIVE SIGNS YOU NEED HTML5 WEBSOCKETS

3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19

Concepts of Database Management Seventh Edition. Chapter 9 Database Management Approaches

Cloudbuz at Glance. How to take control of your File Transfers!

What is Middleware? Software that functions as a conversion or translation layer. It is also a consolidator and integrator.

How To Write An Ria Application

How To Develop A Mobile Application On An Android Device

Next Generation Lab. A solution for remote characterization of analog integrated circuits

Better management through process automation.

Google Web Toolkit (GWT) Architectural Impact on Enterprise Web Application

Web Traffic Capture Butler Street, Suite 200 Pittsburgh, PA (412)

BEA AquaLogic Integrator Agile integration for the Enterprise Build, Connect, Re-use

<Insert Picture Here> Oracle Mobile Enterprise Application Platform Overview

Vector Web Mapping Past, Present and Future. Jing Wang MRF Geosystems Corporation

Effective Vector Data Transmission and Visualization Using HTML5

How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm

Sybase Unwired Platform 2.1.x

Introduction to BlackBerry Smartphone Web Development Widgets

Oracle Net Services for Oracle10g. An Oracle White Paper May 2005

QL Integration into Scala and Excel. Martin Dietrich

RIA Technologies Comparison

Integrating Mobile apps with your Enterprise

A Tool for Evaluation and Optimization of Web Application Performance

IBM Rational Web Developer for WebSphere Software Version 6.0

A Monitored Student Testing Application Using Cloud Computing

Enterpise Mobility Lexicon & Terminology

Integrating Siebel CRM 8 with Oracle Applications

Eclipse-based Applications: Java on the Desktop Revisited

Testing & Assuring Mobile End User Experience Before Production. Neotys

Enterprise SM VOLUME 1, SECTION 4.5: WEB CONFERENCING SERVICES (WCS)

Technical Specification. Solutions created by knowledge and needs

Awareness in Computer-Supported Collaborative Modelling. Application to GenMyModel

Modeling for Web-based Image Processing and JImaging System Implemented Using Medium Model

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

Load Testing RIA using WebLOAD. Amir Shoval, VP Product Management

Web Analytics Understand your web visitors without web logs or page tags and keep all your data inside your firewall.

SERVICE ORIENTED ARCHITECTURE

Chapter 6 Essentials of Design and the Design Activities

elivering CRM Success in the Cloud

ios Hybrid Mobile Application Development

Maximizing ROI on Test and Durability

Overview. Stakes. Context. Model-Based Development of Safety-Critical Systems

A standards-based network monitoring system

Outline. CIW Web Design Specialist. Course Content

Software development for the on demand enterprise. Building your business with the IBM Software Development Platform

JavaFX Session Agenda

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology Fall 2007

Developing Fleet and Asset Tracking Solutions with Web Maps

White Paper Delivering Web Services Security: The Entrust Secure Transaction Platform

idashboards FOR SOLUTION PROVIDERS

INUVIKA OPEN VIRTUAL DESKTOP FOUNDATION SERVER

Enterprise Integration Architectures for the Financial Services and Insurance Industries

2012 LABVANTAGE Solutions, Inc. All Rights Reserved.

Interoperable Solutions in Web-based Mapping

Curl Building RIA Beyond AJAX

Titolo del paragrafo. Titolo del documento - Sottotitolo documento The Benefits of Pushing Real-Time Market Data via a Web Infrastructure

Web Design Specialist

Ultimus Adaptive BPM Suite V8

Web Apps The Next Generation

Video Collaboration & Application Sharing Product Overview

Oracle Business Intelligence EE. Prab h akar A lu ri

Easily Managing User Accounts on Your Cloud Servers. How modern IT and ops teams leverage their existing LDAP/Active Directory for their IaaS

Responsiveness. Edith Law & Mike Terry

Guiding Principles for Modeling and Designing Reusable Services

Business Process Management

Practical Application of Service Oriented Architecture

Sabre Red Apps. Developer Toolkit Overview. October 2014

The Information Revolution for the Enterprise

Project Title: Judicial Branch Enterprise Document Management System RFP Number: FIN122210CK Appendix D Technical Features List

Whitepaper. Rich Internet Applications. Frameworks Evaluation. Document reference: TSL-SES-WP0001 Januar

Sentinet for BizTalk Server SENTINET 3.1

IBM WebSphere Business Monitor, Version 6.1

Introduction to IBM Worklight Mobile Platform

Chapter 1 - Web Server Management and Cluster Topology

Load and Performance Load Testing. RadView Software October

Experimenting in the domain of RIA's and Web 2.0

PROVIDING INSIGHT FOR OPERATIONAL SUCCESS

A Path from Windows Desktop to HTML5

Alice. Software as a Service(SaaS) Delivery Platform. innovation is simplicity

Sybase Unwired Platform 2.0

Java Project Management: Agenda

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Study of GML-Based Geographical Data Visualization Strategy

Junos Space for Android: Manage Your Network on the Go

Java Project Management. Java Project Management: Agenda. Extreme Java G

Wealth Management System

An Overview of the SaskTel Hosted Contact Centre Solution Design and Delivery Principles, and Core Architecture

Business Value Reporting and Analytics

Solution Guide. Sybase Mobile Sales for SAP CRM 1.2

What Is the Java TM 2 Platform, Enterprise Edition?

TRUE PERFORMANCE ENGINEERING

tibbr Now, the Information Finds You.

EMC Data Protection Advisor 6.0

Greg Giles, Cisco Systems. Is compression a valid candidate for a standard?

Transcription:

Christian Thum, Michael Schwind, Martin Schader

Agenda Motivation and Research Objectives Design Aspects The SLiM Collaboration Environment Conclusion - 2 -

Motivation: Challenges in Collaborative Software Engineering Software design is an inherently collaborative activity Innovative tools are needed for tackling the challenges of distributed development: Rising number of outsourcing and offshoring projects Increased dynamics in the economic environment and evolving organizational structures Informal collaboration in open source projects Distributed teams with heterogeneous system environments - 3 -

Motivation: Challenges in Collaborative Software Engineering [Sengupta et al. 2006, A Research Agenda for Distributed Software Development] In particular, support for highly synchronous activities like software design has to be significantly enhanced. [...] A shared whiteboard for collaborative elaboration of UML models has to address these challenges to make virtual collaboration around design artifacts truly effective. [Whitehead 2007, Collaboration in Software Engineering: A Roadmap] [There is a] need for tight integration of new and existing web-based and desktop-based environments [and] broader participation in the entire development process. - 4 -

Research Objectives Tool support for the development of a common understanding of a system s design in agile, distributed scenarios The first stage of our research mainly focuses on the technical feasibility of a lightweight tool that runs in unmodified browsers: Lower the technical entry barriers for participating in the modeling process Avoid technical issues impeding clients to be integrated into the collaborative environment Facilitate ad hoc collaboration - 5 -

Design Aspects Traditional approaches to interconnecting developers require the installation, configuration, and maintenance of the same software on all client systems, which is time-consuming and costly. Ad hoc availability and straightforward accessibility Comprehensive web-based development platforms span the entire development process and form the central-infrastructure for coordinating an documenting project activities. Integration into existing web-based platform - 6 -

Design Aspects In many cases, multiple modeling tools have to be used because not all modeling needs are met by a single tool. Interoperability with desktop-based modeling tools Central non-functional requirements crucial for the aptitude of a collaborative UML modeling tool: Flexible access, ad hoc availability, interoperability, integration into existing web-based platforms. - 7 -

Related Work Support for Collaborative Modeling limited fully supported Poseidon CUML NetDraw Cairo CoDesign Pounamu +WebServices Rosetta Gliffy gmodeler eeel SLiM? internet-based web-based browser-based Decreasing System Requirements - 8 - browser-native

SLiM Synchronous Lightweight Modeling Zero-install and on demand availability: web access and a modern browser* are the only requirements Changes to the diagram are visible in realtime. XMI- Export/Import to desktop based modeling tools like Allows multiple users to simultaneously work on the same diagram in a shared environment - 9 - *

The SLiM Collaboration Environment: Architecture Alternatives Client Browser Presentation Layer Client Browser Presentation Layer HTTP Traffic 1. Change Operation 3. Update Local View Changes reflected instantly Shared Object 1. Execute Change Operation Web Server Application Server Application Logic 2. Execute Change Operation Shared Object Thin Client - 10 - HTTP Traffic 2. Replication of Locally Executed Change Operations Web Server Rich Client Application Logic Application Server

The SLiM Collaboration Environment: Diagram Editor Challenge: Visualization of interactive UML elements in the browser 2D Graphics Plug-ins (e.g. Adobe Flash) Java Applets Past solutions Various browser extension mechanisms Browser-native solutions Emulation via HTML Div-Elements HTML 5 Canvas element SVG (Scalable Vector Graphics) and VML (Vector Markup Language) Security concerns Deployment issues Maintenance effort - 11 -

The SLiM Collaboration Environment: Diagram Editor Challenge: Interacting with graphical elements in the browser height height height Event Propagation width JSON Notation: BoundingBox:{left: 10px, top: 10px, width: 60px, height: 180px} 2.3 Connection- Decorator 2.2 Resize- Decorator Position- 2.1 Decorator 2 1 EventSource Graphical Model Element Although SVG and VML generally provide interfaces for event handling, browser support is limited. - 12 -

The SLiM Collaboration Environment: Event-notification via the HTTP protocol Challenge: Notifying clients about remote events The HTTP protocol, which is used as the transport layer for communication, is built upon the request/response paradigm. All communication has to be initiated by the client. Because of this limitation, the HTTP protocol was believed to be not suitable for implementing synchronous collaboration. HTTP is certainly not suited to real-time conversations [Dix 1997, Challenges for Cooperative Work on the Web] - 13 -

The SLiM Collaboration Environment: Collaboration Support Challenge: Notifying clients about remote events real-time communication Plug-ins (e.g. Flash XML Sockets) Java RMI Past solutions Security concerns Firewall issues Maintenance effort Browser-native solutions HTTP Polling Comet HTTP Streaming Long Polling, Callback-Polling - 14 -

The SLiM Collaboration Environment: Comet - Scalable HTTP-based event routing Client Browser UI User Activity Comet Client Client-Side Processing Update 1.3 2.1 3.3 Event 2.2 Update Update Update Connection Initialized Data Transmission Data Transmission Data Transmission Data Transmission Data Transmission Time (t) Server Comet Event Bus 1.2 Event Event 3.2 Event Event Event 1.1 3.1 2.3-15 - Server-Side Processing [based on Russell 2007]

Conclusion Technical feasibility of a lightweight browser-native tool that supports the modeling process in distributed softwareengineering processes was shown By leveraging the benefits of web technologies, tools can be created, which considerably reduce the barriers of engaging in collaborative work In particular, the dependence of the distributed team members on the availability and capability of their IT department is reduced. - 16 -

Future Research Future research will target several important aspects a deeper insight into organizational and UML-related challenges in collaborative scenarios Integration of SLiM with a traceability and versioning system User-Study: SLiM in student team projects Further Information http://www.wifo.uni-mannheim.de/~slim/ - 17 -

Thank you for your attention! Any questions? Feedback is appreciated. - 18 - contact: thum@uni-mannheim.de

References Dix, A.: Challenges for cooperative work on the web: An analytical approach. Computer Supported Cooperative Work (CSCW) 6(2), 135 156 (1997) Russell, A.: Comet: Low latency data for the browser (2006), http://alex.dojotoolkit.org/?p=545 Sengupta, B., Chandra, S., Sinha, V.: A Research Agenda for Distributed Software Development. In: Proceedings of the 28 th International Conference on Software Engineering (ICSE 06), Shanghai, China, pp. 731-740 (2006) Whitehead, J.: Collaboration in software engineering: A roadmap. In: Future of Software Engineering (FOSE 2007), Minneapolis, Minnesota, USA, pp. 214 225 (2007) - 19 -