UCI Expectation-Driven Event Monitoring (EDEM) David Hilbert, David Redmiles

Slides:



Advertisements
Similar presentations
2 Introduction A central issue in supporting interoperability is achieving type compatibility. Type compatibility allows (a) entities developed by various.
Advertisements

Performance Testing - Kanwalpreet Singh.
Technology Drivers Traditional HPC application drivers – OS noise, resource monitoring and management, memory footprint – Complexity of resources to be.
ONE STOP THE TOTAL SERVICE SOLUTION FOR REMOTE DEVICE MANAGMENT.
Programming Paradigms and languages
WP 2 Usability Attributes Affected by Software Architecture Deliverable D2 – Usability Patterns Presenter: Robert Chatley - ICSTM.
What is Software Design?. Systems Development Life- Cycle Planning Analysis Design Implementation Design.
1/10 POSDATA Team EVR:MAKING USE Hou, Kyu Cho, Eun Young Jeung, Min Ho Jung,Hee Joon.
Alternate Software Development Methodologies
Supplement Creating Forms. Objectives Show how forms are used How to create the Form element HTML elements used for creating input fields.
MotoHawk Training Model-Based Design of Embedded Systems.
6/1/2015Ch.31 Defining Enterprise Architecture Bina Ramamurthy.
PZ13B Programming Language design and Implementation -4th Edition Copyright©Prentice Hall, PZ13B - Client server computing Programming Language.
Web Database Programming Input Validation. User Input on the Web Web browser built-in mechanisms –HTML Forms HTTP POST method –Hyperlinks HTTP GET method.
UCI - Redmiles Practical Lessons Learned While Using Notification Servers To Support Application Awareness David Redmiles Cleidson R. B. De Souza, Santhoshi.
Satzinger, Jackson, and Burd Object-Orieneted Analysis & Design
Event Based Implicit Invocation By Ajay Mansata. INTRODUCTION An Architectural style defines a family of systems. An Architectural style defines a family.
User Centered Design Lecture # 5 Gabriel Spitz.
VLBI Remote Control System Gonzalo Remedi and Sergio Sobarzo.
INTRUSION DETECTION SYSTEMS Tristan Walters Rayce West.
Process-oriented System Automation Executable Process Modeling & Process Automation.
1 © 2006 Cisco Systems, Inc. All rights reserved. Session Number Presentation_ID Using the Cisco Technical Support & Documentation Website for Security.
LÊ QU Ố C HUY ID: QLU OUTLINE  What is data mining ?  Major issues in data mining 2.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Chapter 9 Elements of Systems Design
9 Closing the Project Teaching Strategies
1 Autonomic Computing An Introduction Guenter Kickinger.
.NET Validation Controls MacDonald Ch. 8 MIS 324 MIS 324 Professor Sandvig Professor Sandvig.
XForms: A case study Rajiv Shivane & Pavitar Singh.
Application Training — Lead Management System. Slide 2 Module Agenda Module Break-upDuration (minutes) Lesson 1: Introduction to Lead Management System10.
Tutorial 11 Using and Writing Visual Basic for Applications Code
Chapter Intranet Agents. Chapter Background Intranet: an internal corporate network based on Internet technology. Typically, an intranet can.
Web Programming: Client/Server Applications Server sends the web pages to the client. –built into Visual Studio for development purposes Client displays.
Component Architecture (CORBA – RMI) -Shalini Pradhan.
UCI An Approach to Large-Scale Collection of Application Usage Data Over the Internet David M. Hilbert David F. Redmiles Information and Computer Science.
Event Management & ITIL V3
Fundamentals of Information Systems, Third Edition2 Principles and Learning Objectives Artificial intelligence systems form a broad and diverse set of.
Managing the Oracle Application Server with Oracle Enterprise Manager 10g.
UCI Agents for Collecting Application Usage Data Over the Internet David M. Hilbert David F. Redmiles Information and Computer Science University of California,
UCI Knowledge Management for Software Design David F. Redmiles David M. Hilbert, Jason Robbins, Michael Kantor, Shilpa Shukla Information and Computer.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
AUC Technologies Projects Consulting, Development, Mentoring, and Training Company ASP.NET Validation Control Presented By : Muhammad Atif Hussain Deputy.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Chapter 3: Software Project Management Metrics
37 Copyright © 2007, Oracle. All rights reserved. Module 37: Executing Workflow Processes Siebel 8.0 Essentials.
UCI Large-Scale Collection of Application Usage Data to Inform Software Development David M. Hilbert Information and Computer Science University of California,
Introduction to JavaScript CS101 Introduction to Computing.
Design and Implementation of a Rationale-Based Analysis Tool (RAT) Diploma thesis from Timo Wolf Design and Realization of a Tool for Linking Source Code.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 4: Events Programming with Alice and Java First Edition by John Lewis.
©SoftMooreSlide 1 Introduction to HTML: Forms ©SoftMooreSlide 2 Forms Forms provide a simple mechanism for collecting user data and submitting it to.
The SQL Applications Documentation Tool for Dublin City Council.
Jorke Odolphi Product Technology Specialist WebCentral Using Microsoft Operations Manager To Monitor And Maintain Your Farm.
State Machines & User Interfaces Author:Brian O’Byrne Presented By: Dongkai Hu.
SAGE Nick Beard Vice President, IDX Systems Corp..
UCI Large-Scale Collection of Application Usage Data to Inform Software Development David M. Hilbert David F. Redmiles Information and Computer Science.
A focus group is actually gathering of people who are customers or users representatives for a product to gain its feedback. The feedback can be collected.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
SSIS 2012: The Quiet Revolution Presented by Bryan Cafferky Business Intelligence Consultant BPC Global Solutions LLC
TIBCO Business Events Online Training. Introduction to TIBCO BE Tibco Business Events is complex event processing software with a powerful engine enables.
Client/Server Technology
SQL Database Management
David Hatten Developer, UrbanCode 17 October 2013
JavaScript, Sixth Edition
User-centred system design process
Group Decision Support Systems
Unit 27 - Web Server Scripting
Usability Techniques Lecture 13.
Versatile workflow management Tool
Beyond User Participation: A Model of Learning and Negotiation During Systems Development The Workshop on "Redefining the Organizational Roles of Information.
Presentation transcript:

UCI Expectation-Driven Event Monitoring (EDEM) David Hilbert, David Redmiles

UCI Expectation-Driven Event Monitoring (EDEM) Complex Systems Evolve from Use but Use Information is Difficult and Expensive to Collect –Requirements of end users and their work environments are difficult to anticipate. –Rapid and distributed deployment of systems (e.g., over the internet) reduces the opportunities for traditional user testing while increasing the variety of use situations and number of end users. Expectation-Driven Event Monitoring enables Developers to Easily and Cheaply Benefit from Use Information –Developers identify usability expectations, create agents to monitor user interactions, agents are deployed with applications. –Agents detect mismatches in expected versus actual systems use. –Agents monitor use passively or allow users to provide feedback. Need Solution

UCI Agents in Evolutionary Design

UCI Expectation Agents Approach Comparison of “actual use” with “expected use”: –Designers’ expectations are represented in agents –Agents observe users’ actions and recognize mismatches with the designers’ expectations –After a mismatch, an agent interacts with the user and returns the situation and the users comments to the developers –Agents may also allow authorized, unobtrusive observation of users. –Agents free developers from constantly observing users interacting with prototypes and therefore more users can be involved

UCI EDEM Approach

UCI Travel Voucher Scenario The end user violates the expectation that the ZIP field is entered before the City or State:

UCI Notification Action Agents may post messages to inform users of expectation violations; users may respond:

UCI End User Response The user suggests a potential design improvement; feedback is reported to developers:

UCI Repository for Review Users’ responses and other and documents are categorized for devlopers’ reviews:

UCI Unobtrusive Agent Monitoring Agents may monitor user patterns without intruding on their tasks:

UCI Developers Define Expectations Developer defines an agent to “fire” whenever a user edits the Street or City fields while the ZIP field is empty:

UCI Selecting Events Developer expresses interest in detecting when a user begins editing the Street field:

UCI Agent Global Properties Agents can be loaded automatically via URL and results sent to developers via

UCI How are agents represented and triggered? Agents are represented as instances of a Java class w/ the following members: (1) An EventPattern and list of Events (2) A ConditionPattern and list of Conditions (3) A set of Actions to perform Agents are triggered in the following way: (1) If the EventPattern occurs, then the ConditionPattern is checked. (2) If the ConditionPattern is true, then the Actions are performed.

UCI Event Patterns An EventPattern is one of the following: (1) "A or B or... " (2) "A and B and... " (3) "A then B then... " (4) "(A and B) with no interleaving C" (5) "(A then B) with no interleaving C" Where variables A,B,C are filled in by specifying: (1) a Component from the UI plus an Awt or EDEM event on that component (e.g. "TextField1:LOST_EDIT" which occurs when TextField1 is edited and then input focus shifts and editing begins in another component) (2) another Agent (e.g. "AddressDone" which occurs when another agent detects that the address section has been completed)

UCI Condition Patterns A ConditionPattern is one of the following: (1) "A or B or... " (2) "A and B and... " Where variables A,B are filled in by specifying: (1) a Component from the UI and some expression involving its properties (e.g. "TextField1:value='Married'" or "Button1:count>100") (2) another Agent and some expression involving its properties (e.g. "AddressStarted:enabled=true" or "AddressDone:count>1")

UCI EDEM Architecture EDEM server monitoring other instances of EDEM Event Repository (Oracle, Sybase, Knowledge Depot) EDEM monitoring an Applet (server machine) (auxiliary server machine) (client machines)

UCI Integration with Different Software Technologies Event Monitoring, Software Process, and Perpetual Testing Design Requirements, Rationale, and Organizational Memory Design Environments

UCI Critics: Opportunities for DR Use & Capture

UCI Summary Conclusions Software evolves with feedback Usability feedback is needed to reduce training costs, organizational costs, and risk of error. Expectation Agents reduce cost of and increase the amount of usability feedback. Agent reports combine with other sources of rationale in an organizational memory. Expectation Agents help integrate design, usage, and rationale.