1 Year of Progress on Topes Christopher Scaffidi Brad Myers, Mary Shaw Carnegie Mellon University.

Slides:



Advertisements
Similar presentations
1 End User Software Engineering Mary Shaw Carnegie Mellon University.
Advertisements

Debugging in End- User Software Engineering summarized by Andrew Ko Toward Sharing Reasoning to Improve Fault Localization in Spreadsheets Joey Lawrance,
Anne Etheridge Economic and Social Data Service IASSIST May 2006 METADATA MANAGEMENT THE FORGOTTEN WORLD OF THE BACK OFFICE.
Introduction Lesson 1 Microsoft Office 2010 and the Internet
The Application of Machine Translation in CADAL Huang Chen, Chen Haiying Zhejiang University Libraries, Hangzhou, China
Programming Paradigms and languages
Copyright © 2008 Pearson Prentice Hall. All rights reserved Copyright © 2008 Prentice-Hall. All rights reserved. Committed to Shaping the Next.
With Microsoft Access 2010© 2011 Pearson Education, Inc. Publishing as Prentice Hall1 PowerPoint Presentation to Accompany GO! with Microsoft ® Access.
Challenges, Motivations, and Success Factors in the Creation of Hurricane Katrina "Person Locator" Web Sites Christopher Scaffidi, Brad Myers, Mary Shaw.
Gild Project: Jan 8/2003 CSc 115/160 (S01) Gild: Groupware enabled Integrated Learning and Development for Java.
University of Leeds Department of Chemistry The New MCM Website Stephen Pascoe, Louise Whitehouse and Andrew Rickard.
E Pluribus Unum for end-user programming Christopher Scaffidi EUSES 2009.
Server-Side vs. Client-Side Scripting Languages
Carving up the Space of End User Programming EUSES, Lincoln, NE, Oct ‘05.
Fast, Accurate Creation of Data Validation Formats by End-User Developers Christopher Scaffidi Brad Myers, Mary Shaw Carnegie Mellon University.
Topes: Reusable Abstractions for Validating Data Christopher Scaffidi Brad Myers, Mary Shaw Carnegie Mellon University.
Estimating the Numbers of End Users and End User Programmers Christopher Scaffidi Brad Myers Mary Shaw Carnegie Mellon University EUSES Consortium VL/HCC.
Unsupervised Inference of Data Formats in Human-Readable Notation Christopher Scaffidi Carnegie Mellon University.
Introduction to the EUSES Web Macro Scenario Corpus Allen Cypher, Sebastian Elbaum, Andhy Koesnandar, Brad Myers, Christopher Scaffidi.
1 st WEUSE Lessons Learned Sebastian Elbaum. Motivation End-user programmers create large amounts of software in the form of spreadsheets, web authoring.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development.
Topes: Enabling End-User Programmers to Validate and Reformat Data Christopher Scaffidi Committee: Mary Shaw (chair)Institute for Software Research, Carnegie.
Scenario-Based Requirements for Web Macro Tools Christopher Scaffidi, Allen Cypher, Sebastian Elbaum, Andhy Koesnandar, Brad Myers.
Dimensions Characterizing Programming Feature Usage by Information Workers Christopher Scaffidi, Andrew Ko, Brad Myers, Mary Shaw Carnegie Mellon University.
A Lightweight Model for End Users’ Data: Progress and Future Work Christopher Scaffidi Carnegie Mellon University.
Topes: Enabling End-User Programmers to Validate and Reformat Data Christopher Scaffidi Key collaborators: Brad Myers, Mary Shaw Carnegie Mellon University.
Topes: Enabling End-User Programmers to Validate and Reformat Data Christopher Scaffidi Carnegie Mellon University.
Senior Project Database: Design and Usability Evaluation Stephanie Cheng Rachelle Hom Ronald Mg Hoang Bao CSC 484 – Winter 2005.
Tool Support for Data Validation by End-User Programmers Christopher Scaffidi Brad Myers, Mary Shaw Carnegie Mellon University.
Toped: Enabling End-User Programmers to Validate Data Chris Scaffidi, Brad Myers, Mary Shaw, Carnegie Mellon University, School of Computer Science,
Accommodating Data Heterogeneity in ULS Systems Christopher Scaffidi Mary Shaw Carnegie Mellon University.
A Lightweight Model for End Users’ Domain-Specific Data Christopher Scaffidi Carnegie Mellon University VL/HCC Graduate Consortium 2006.
Developing an approach for Learning Design Players Patrick McAndrew, Rob Nadolski & Alex Little Open University UK and Open University NL Paper available.
A Data Model and Development Environment to Help End-User Programmers Validate and Reuse Data Christopher Scaffidi Thesis Proposal, May 8, 2007 Committee.
A Data Model to Help End User Programmers Manipulate and Validate Data Christopher Scaffidi Carnegie Mellon University ISRI SSSG Oct 2006.
Damir Kalpić Jasna Hamzabegović University of Zagreb University of Bihać Faculty of Electrical Engineering Pedagogical Faculty and Computing Department.
INTRODUCTION TO ADB’s MANAGEMENT ACTION RECORD SYSTEM (MARS) and LESSONS DATABASE A Presentation by Jocelyn G. Tubadeza for the African Development Bank.
Definitions Collaboration – working together on team projects and sharing information, often through ad-hoc processes, to accomplish project goals. Document.
User Centered Design April 1-3, 2009 Joshua Ganderson Laura Baalman Jay Trimble.
Web Content Management Systems. Lecture Contents Web Content Management Systems Non-technical users manage content Workflow management system Different.
Create with SharePoint 2010 Jen Dodd Sr. Solutions Consultant
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
The SEASR project and its Meandre infrastructure are sponsored by The Andrew W. Mellon Foundation SEASR Overview Loretta Auvil and Bernie Acs National.
6/1/2001 Supplementing Aleph Reports Using The Crystal Reports Web Component Server Presented by Bob Gerrity Head.
Joel Bapaga on Web Design Strategies Technologies Commercial Value.
My Redneck Brother's Tire Size, and Other Unrelated Topes Christopher Scaffidi Carnegie Mellon University.
Digging for diamonds: Identifying valuable web automation programs in repositories Jarrod Jackson 1, Chris Scaffidi 2, Katie Stolee 2 1 Oregon State University.
No application is an island: Using topes to transform strings during data transfer Atipol Asavametha, Prashanth Ayyavu, Christopher Scaffidi School of.
Topes: Meeting the Challenges of User Input Validation Christopher Scaffidi Key collaborators: Brad Myers, Mary Shaw Carnegie Mellon University.
Usability Issues Documentation J. Apostolakis for Geant4 16 January 2009.
Development of metadata in the National Statistical Institute of Spain Work Session on Statistical Metadata Genève, 6-8 May-2013 Ana Isabel Sánchez-Luengo.
University of Illinois at Urbana-Champaign A Unified Platform for Archival Description and Access Christopher J. Prom, Christopher A. Rishel, Scott W.
Planning a Group Policy Management and Implementation Strategy Lesson 10.
Placement Consultants Software Project team members: Jambukia Shweta(09it040) Komal Makadiya(09it055) Nilisha Jain(09it057)
Intelligently Creating and Recommending Reusable Reformatting Rules Christopher Scaffidi Brad Myers, Mary Shaw Carnegie Mellon University.
BLACK BOX TESTING K.KARTHIKEYAN. Black box testing technique Random testing Equivalence and partitioning testing Boundary value analysis State transition.
Software Prototyping Rapid software development to validate requirements.
Intermacs Form Download Excel Tutorial Pivot Tables, Graphic Tools, Macros By: Devin Koehl.
Predicting Reuse of End-User Web Macro Scripts Chris Scaffidi 1  2, Chris Bogart 2, Margaret Burnett 2, Allen Cypher 3, Brad Myers 1, Mary Shaw 1 1 Carnegie.
Assessing current print periodical usage for collection development Gracemary Smulewitz Distributed Technical Services Rutgers University Libraries.
Collaborative Query Previews in Digital Libraries Lin Fu, Dion Goh, Schubert Foo Division of Information Studies School of Communication and Information.
A Data Model to Support End-User Software Engineering Christopher Scaffidi Carnegie Mellon University.
CoScripter and Topes: Putting Data into Usable Formats Christopher Scaffidi Carnegie Mellon University With Allen Cypher and Jimmy Lin IBM Almaden.
CS491B Software Design Lab Project Report Yuet-Chi Lee California State University, Los Angeles.
Nithyamoorthy S Core Mind Technologies
A Data Model to Help End Users Shape Effective Software
敦群數位科技有限公司(vanGene Digital Inc.) 游家德(Jade Yu.)
E Pluribus Unum for end-user programming
Presentation transcript:

1 Year of Progress on Topes Christopher Scaffidi Brad Myers, Mary Shaw Carnegie Mellon University

2 Our prior work: Studies of end-user programmers (EUPs) Contextual Inquiry: –3 administrative assistants, 4 managers, and 3 webmasters/graphic designers Survey –Over 800 Information Week readers Interviews –6 creators of Hurricane Katrina “person locator” web sites past studies ● recent work ● future work

3 How can EUPs validate web forms if they do not know JavaScript or regexps? Is the input valid? “EDSH 225” Is the input nearly valid? “EDXH 225” Does it just need reformatting? “Smith 225” Or is it obviously invalid? “ ” past studies ● recent work ● future work

4 An example spreadsheet from Microsoft (similar to one of our user’s spreadsheets) The second column is “supposed” to contain first names, but some initials have snuck in. past studies ● recent work ● future work

5 Data may be Inconveniently Formatted Consider all the ways that we write dates. Reformatting may be necessary when reusing a date from one web site to fill out a form in another web site. past studies ● recent work ● future work

6 Underlying problem: abstraction mismatch Tools support strings, integers, floats, sometimes dates. Problem domain involves higher-level categories of data: –University names“ Carnegie Mellon”, “CMU” –Person names“ Scaffidi, Christopher”, “Chris Scaffidi” –CMU phone numbers“ ”, “x8-1234” –CMU room numbers“ WeH 4623”, “Wean 4623” These data categories are: –Human-readable –Short (~ 1 input field) –Multi-format –Sometimes ambiguous / fuzzy (non-binary scale of validity) –Often particular to certain groups of people past studies ● recent work ● future work

7Topes Tope = an abstraction implementation for a kind of data –Greek word for “place,” because each corresponds to a data category with a natural place in the problem domain Topes in practice: 1.EUPs create new topes by using the basic tope editor (or by writing topes in another language, such as JavaScript) 2.EUPs publish topes on repositories. 3.Other EUs & EUPs download topes to their local cache. 4.Tool plug-ins let EUs & EUPs browse their local cache and associate topes with variables and input fields. 5.Plug-ins get topes from local cache and use them to recognize, transform, and equivalence-test data. past studies ● recent work ● future work

8 Example tope Notional representation An example tope for CMU room numbers –3 isa functions, 4 trf functions –Functions can be omitted if desired Formal building name & room number Elliot Dunlap Smith Hall 225 Building abbreviation & room number EDSH 225 Colloquial building name & room number Smith 225 past studies ● recent work ● future work

9 Example in our prototype format editor: CMU Campus Phone Number Features: Format inference Format/part names Soft constraints “isa” generation Testing features Format reusability EUP tool integration (Similar UI style for implementing trfs) past studies ● recent work ● future work

10 Validation by associating a tope with a textbox Invalid inputs cause a targeted message to appear. Inputs that violate an always or never constraint cannot be submitted to the server. Inputs that violate an often constraint cause a warning, which the application user can override. past studies ● recent work ● future work

11 Evaluations to date Usability: –Controlled experiment shows that our format editor enables EUPs to validate data quickly and accurately Expressiveness: –We have implemented formats for dozens of kinds of data (1) EUSES spreadsheet corpus (2) logs of EUPs’ web browsing Usefulness: –We have integrated topes with tools for creating web applications, databases, spreadsheets, and web macros. past studies ● recent work ● future work

12 Collaborations to date: Integrating topes with web macro tools Integrating topes with Robofox Sebastian Elbaum & Andhy UNL –Assertions on what the clipboard should contain at runtime Integrating topes with Koala aka CoScripter Allen Cypher & Jimmy IBM –Selecting a transformation to be executed at runtime past studies ● recent work ● future work

13 Future development work Implement enhancements to the basic editor (Q4 2007) –UI improvements; behind the scenes: new meta-data fields Implement repository system (Q1 2008) –Plug-ins will have a list of “known” repository servers –EUPs will be able to publish topes into repository servers –Repositories will provide various search features Search by example Search by contextual keywords Search by collaborative filtering Search by tope reliability And of course, search by (non-unique) name past studies ● recent work ● future work

14 Future collaboration opportunities Upcoming evaluation: field test (Q2 2008) –Sample: University denizens (this can include you) –Tasks: install our tools and use them for several weeks –Measures: logs of usage, satisfaction surveys –Comparison: normal way of doing work –Our IRB authorized us to share our data with EUSES Additional integration (Excel & Forms/3? phpClick?) –Our system will be available to download as a software library –We aim to support quick, painless integration of topes with your tools. –How would you like to use topes? past studies ● recent work ● future work

15 Thank You… …to EUSES for the opportunity to present …to many people for helpful suggestions …to NSF and EUSES for funding (ITR and CCF ) Marwan Abi-AntounMargaret BurnettMartin ErwigAndy KoMary Beth Rosson Robin AbrahamOwen ChengGeorge FairbanksThomas LaTozaMary Shaw Matt BassCiera ChristopherThomas GreenAlon LavieJeff Stylos Nels BeckmanMichael CoblenzJosh GrossHenry LiebermanDean Sutherland Kevin BierhoffAllen CypherGreg HartmanLarry MaccheroneSteve Tanimoto Alan BlackwellUri DekelJim HerbslebBrad MyersSusan Wiedenbeck Barry BoehmSebastian ElbaumJohn HoskingJohn Pane