UCI Large-Scale Collection of Application Usage Data to Inform Software Development David M. Hilbert David F. Redmiles Information and Computer Science.

Slides:



Advertisements
Similar presentations
Performance Testing - Kanwalpreet Singh.
Advertisements

© 2005 Avaya Inc. All rights reserved. A Client-Side Architecture for Supporting Pervasive Enterprise Communications Amogh Kavimandan, Reinhard Klemm,
Copyright Robust Decisions Inc Decision Management in Product Development Dr. David Ullman President Robust Decisions, Inc.
6/1/2015Ch.31 Defining Enterprise Architecture Bina Ramamurthy.
Effective Coordination of Multiple Intelligent Agents for Command and Control The Robotics Institute Carnegie Mellon University PI: Katia Sycara
INF 123 SW ARCH, DIST SYS & INTEROP LECTURE 11 Prof. Crista Lopes.
1 Adaptive Management Portal April
Increasing Awareness in Distributed Software Development Workspaces Copyright, 1997 © Dale Carnegie & Associates, Inc. X International Workshop on Groupware.
13.1 Revision IMS Information Systems Development Practices.
UCI - Redmiles Practical Lessons Learned While Using Notification Servers To Support Application Awareness David Redmiles Cleidson R. B. De Souza, Santhoshi.
The Bio-Networking Architecture: An Infrastructure of Autonomic Agents in Pervasive Networks Jun Suzuki netresearch.ics.uci.edu/bionet/
Energy Saving Software based on Cloud Computing for Adjustable Processing Environments (ESSCCAPE) The Green Cloud.
Firefox 2 Feature Proposal: Remote User Profiles TeamOne August 3, 2007 TeamOne August 3, 2007.
Essential Software Architecture Chapter Three - Software Quality Attributes Ian Gorton CS590 – Winter 2008.
Chapter 7 design rules.
Business Intelligence Dr. Mahdi Esmaeili 1. Technical Infrastructure Evaluation Hardware Network Middleware Database Management Systems Tools and Standards.
Polaris Financial Technologies Welcomes the members of Hyderabad chapter for the 2nd event on 4 th July 14 held by PACE (The Testing Practice)
By- Jaideep Moses, Ravi Iyer , Ramesh Illikkal and
Software Architecture. Agenda " Why architect? " What is architecture? " What does an architect do? " What principles guide the process of architecting?
Microsoft ® Application Virtualization 4.5 Infrastructure Planning and Design Series.
Robots at Work Dr Gerard McKee Active Robotics Laboratory School of Systems Engineering The University of Reading, UK
A Survey of Mobile Phone Sensing Michael Ruffing CS 495.
Microsoft ® Application Virtualization 4.6 Infrastructure Planning and Design Published: September 2008 Updated: February 2010.
Chapter 6– Artifacts of the process
Rainbow Facilitating Restorative Functionality Within Distributed Autonomic Systems Philip Miseldine, Prof. Taleb-Bendiab Liverpool John Moores University.
Cloud Computing for the Enterprise November 18th, This work is licensed under a Creative Commons.
COnvergence of fixed and Mobile BrOadband access/aggregation networks Work programme topic: ICT Future Networks Type of project: Large scale integrating.
Chapter 13 Starting Design: Logical Architecture and UML Package Diagrams.
1 IBM Software Group ® Mastering Object-Oriented Analysis and Design with UML 2.0 Module 1: Best Practices of Software Engineering.
Principles of User Centred Design Howell Istance.
Virtualization. Virtualization  In computing, virtualization is a broad term that refers to the abstraction of computer resources  It is "a technique.
Cloud Computing 1. Outline  Introduction  Evolution  Cloud architecture  Map reduce operation  Platform 2.
Computer Science Open Research Questions Adversary models –Define/Formalize adversary models Need to incorporate characteristics of new technologies and.
UCI An Approach to Large-Scale Collection of Application Usage Data Over the Internet David M. Hilbert David F. Redmiles Information and Computer Science.
Introduction To System Analysis and Design
Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila.
Lecture 7: Requirements Engineering
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.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
Usability Assessment Methods beyond Testing Chapter 7 Evaluating without users.
1 Computing Challenges for the Square Kilometre Array Mathai Joseph & Harrick Vin Tata Research Development & Design Centre Pune, India CHEP Mumbai 16.
Developer TECH REFRESH 15 Junho 2015 #pttechrefres h Understand your end-users and your app with Application Insights.
UCI Large-Scale Collection of Application Usage Data to Inform Software Development David M. Hilbert Information and Computer Science University of California,
Chapter 6 CASE Tools Software Engineering Chapter 6-- CASE TOOLS
11 CLUSTERING AND AVAILABILITY Chapter 11. Chapter 11: CLUSTERING AND AVAILABILITY2 OVERVIEW  Describe the clustering capabilities of Microsoft Windows.
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.
Digital Libraries1 David Rashty. Digital Libraries2 “A library is an arsenal of liberty” Anonymous.
1 BBN Technologies Quality Objects (QuO): Adaptive Management and Control Middleware for End-to-End QoS Craig Rodrigues, Joseph P. Loyall, Richard E. Schantz.
Johnson Carmichael Kay Kummerfeld Hexel1 Context Evidence and Location Authority the disciplined management of sensor data into context models.
Web Technologies Lecture 13 Introduction to cloud computing.
UCI Expectation-Driven Event Monitoring (EDEM) David Hilbert, David Redmiles
Lecture 21: Component-Based Software Engineering
Windows Azure poDRw_Xi3Aw.
Power Guru: Implementing Smart Power Management on the Android Platform Written by Raef Mchaymech.
Societal-Scale Computing: The eXtremes Scalable, Available Internet Services Information Appliances Client Server Clusters Massive Cluster Gigabit Ethernet.
1 Evaluation of Cooperative Web Caching with Web Polygraph Ping Du and Jaspal Subhlok Department of Computer Science University of Houston presented at.
Cyberinfrastructure Overview of Demos Townsville, AU 28 – 31 March 2006 CREON/GLEON.
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.
TIBCO Business Events Online Training. Introduction to TIBCO BE Tibco Business Events is complex event processing software with a powerful engine enables.
Unit 3 Virtualization.
Platform as a Service (PaaS)
Distributed Cache Technology in Cloud Computing and its Application in the GIS Software Wang Qi Zhu Yitong Peng Cheng
Improving searches through community clustering of information
Consulting Services JobScheduler Architecture Decision Template
Model-Driven Analysis Frameworks for Embedded Systems
The Extensible Tool-chain for Evaluation of Architectural Models
Starting Design: Logical Architecture and UML Package Diagrams
Cloud Computing LegalRun Solutions Why It’s Right for You!
Presentation transcript:

UCI Large-Scale Collection of Application Usage Data to Inform Software Development David M. Hilbert David F. Redmiles Information and Computer Science University of California, Irvine Irvine, California

UCI Incorporate results of review into design Deploy software with expectation agents Report results of usage data and feedback collection Design Design Support - Argo Usage Data and Feedback Collection Support - EDEM Review Group Memory and Awareness - Knowledge Depot Use Usage Data and Feedback Collection Support - EDEM Background

UCI Motivation Expectations influence designs, designs embody expectations Mismatches between expectations and how applications are actually used can lead to breakdowns. Identification and resolution of mismatches can help improve fit between design and use Identifying mismatches entails observing actual use and comparing it against expectations. Our research: techniques to enable large-scale incorporation of usage data and user feedback in development to help uncover mismatches and improve the design-use fit.

UCI The Internet On the positive side –cheap, rapid, large-scale distribution of software for evaluation –simple transport mechanism for usage information and feedback –use and development increasingly becoming concurrent –should make incorporating usage data and user feedback easier On the negative side –reduces opportunities for traditional user testing –increases variety and distribution of users and usage situations –lack of scalable tools and techniques for incorporating usage information and feedback on a large scale

UCI Problems Current approaches suffer from significant limitations –usability testing => scale (size, scope, location, duration) –beta testing => data quality (incentives, knowledge, detail) –monitoring => scale & data quality (abstraction, selection, reduction, context, evolution) The subjective feedback paradox –users not having problems provide feedback => problems –users having problems don’t provide feedback => no problems The impact assessment and resource allocation problem –what is the impact of suspected problems and proposed solutions? –where should development and evaluation effort be focused?

UCI Approach Developers –design applications and identify usage expectations –create agents to collect usage data and user feedback Agents –deployed over the Internet to run on user computers (via HTTP) –perform abstraction, selection, reduction, context-capture as needed to allow actual use to be compared against expectations –report data and feedback to developers (via ) Data and feedback –inform further evolution of expectations, application, and agents

UCI Approach Expectation-Driven Event Monitoring (EDEM)

UCI Usage Scenario (Expectations) A cargo query form

UCI Usage Scenario (Usage Data) Agents monitor use and collect data unobtrusively Agents may post messages (optional)

UCI Usage Scenario (User Feedback) Users may learn more about expectations (optional) Users may provide feedback (optional)

UCI Usage Scenario (Review) Data and feedback stored for later analysis and review

UCI Agent Authoring

UCI Architecture Agent Specs saved w/ URL Development Computer Java Virtual Machine EDEM Active Agents Application UI Components Top Level Window & UI Events Property Queries Property Values HTTP Server Development Computer Agent Specs EDEM Server Collected Data User Computer Java Virtual Machine EDEM Active Agents Application UI Components Top Level Window & UI Events Property Queries Property Values Agent Specs loaded via URL Agent Reports sent via

UCI Reference Architecture System Model of UI & App: Components Events Properties Methods Data Capture Abstraction, Selection, Context, Reduction Data Packaging Data Analysis Data Prep Data Transport Analyst Model of UI & App: Features, Dialogs, Controls, User-Supplied Values, User Tasks Mapping

UCI Instrumentation intertwined w/ app Reference Architecture (Word IV) System Model of UI & App: Components Events Properties Methods Data Capture Abstraction, Selection, Context, Reduction Data Packaging Data Analysis Data Prep Data Transport Analyst Model of UI & App: Features, Dialogs, Controls, User-Supplied Values, User Tasks Mapping

UCI Event monitoring infrastructure TestWizard Database of Office UI Reference Architecture (Office IV) System Model of UI & App: Components Events Properties Methods Data Capture Abstraction, Selection, Context, Reduction Data Packaging Data Analysis Data Prep Data Transport Analyst Model of UI & App: Features, Dialogs, Controls, User-Supplied Values, User Tasks Mapping

UCI Event monitoring infrastructure Expectation Agents Reference Architecture (EDEM) System Model of UI & App: Components Events Properties Methods Data Capture Abstraction, Selection, Context, Reduction Data Packaging Data Analysis Data Prep Data Transport Analyst Model of UI & App: Features, Dialogs, Controls, User-Supplied Values, User Tasks Mapping “Pluggable” Data Abstraction, Selection, Context-Capture, and Reduction

UCI Conclusions Usage expectations –help guide data collection –raise awareness of implications of design decisions Agent architecture –abstraction, selection, reduction in-context and prior to reporting –independent evolution of instrumentation and application Combined –higher quality data (v. beta tests) with less restrictions on evaluation size, scope, location, duration (v. usability tests)

UCI Possible Applications Use of long-term data about user and users’ behavior to support –adaptive UI and application behavior –“smarter” delivery of help/suggestions/assistance Support for monitoring of component-based systems in which –event and state information can be easily “tapped” –low-level data must be related to higher level concepts of interest –available information exceeds that which can practically be collected –data collection needs evolve over time more quickly than application

UCI Future Research Large-scale evaluation of research in practice –maintenance issues, how is data used, cost-benefit analysis Relationships to other requirements-related artifacts –e.g., use cases, cognitive walkthroughs, task analysis Other types of analysis –changes in usage over time –usage involving multiple cooperating users Reuse and adaptability of infrastructure –generalize to support monitoring of arbitrary software components

UCI For More Info