From EUP to EUSE What Weve Learned Margaret























- Slides: 23

From EUP to EUSE: What We’ve Learned Margaret Burnett Oregon State University

End-User Software Engineering: Beyond EUP • Today, end users can create programs. – e. g. , macros by demo, spreadsheets, email filtering rules, web authoring tools, graphical languages. . . • But what happens next? – Usually, bugs <many citations here>. – Compounded by overconfidence. • How to help solve this: learning from the end users. -2 -

End-User Software Engineering (cont) • What is EUSE? – Takes into account all of the software lifecycle. • Not just “create new programs”. – Requirements, design, programming, debugging, testing, maintenace, reuse, … -3 -

Interest in EUSE • Recent events – International media interest: NSF press release, ACM Tech. News, CNN. com, CBS. com, PC Magazine, IEEE Software editorial… – CHI’ 04/05/07/08 SIGs, ICSE’ 05 workshop, CHI’ 06 workshop, many papers at recent CHIs, ICSEs, and VL/HCCs, . . . • Here at ICSE’ 08 – This workshop, EUSE keynote! -4 -

What We’ve Learned about EUSE from End Users

Organization of this Topic • Spreadsheet debugging – and testing and code inspection – In light of gender differences • Unwitting end-user programmers • “Witting” end-user programmers • How tools can be more natural for end-user programmers -6 -

Spreadsheet Debugging • Bishop/Mc. Daid, Burnett et al. , Mc. Daid et al. • Via code inspection – Code inspection matters in debugging and spreadsheet debugging • to both males & females, but especially to females -7 -

Eight End-User Spreadsheet Debugging Strategies • Dataflow • Testing • Code Inspection • Specification Checking • Color Following • To-do Listing • Fixing Formulas • Spatial 8 -8 -

Code Inspection – Recommended by spreadsheet auditors. – Why females particularly like it: possibly information processing: • Comprehensive vs. heuristic processing. – In our studies, end-user programmers usually start with code insp, then move on to testing and other approaches if needed. -9 -

Code Inspection by EUPs – Business professionals outperformed business students at debugging. – Inspecting more cells led to more errors corrected. – Inspections focused more on top and left in groups, in bottom-line cells, and in formulas producing numeric outputs. - 10 -

What Else We Know about Male & Female Spreadsheet EUPs – For females: self-efficacy matters in spreadsheet auditing feature usage. • Not so for males. – Males tinker with new features more. • For males, this is sometimes good, sometimes not. • For females, tinkering is always good, but they don’t do it enough. - 11 -

What Else We Know about Spreadsheet EUPs (cont. ) – WYSIWYT Testing (Burnett/Rothermel) is achievable and useful for EUPs, especially males. – Mc. Daid et al. also showing some success with spreadsheet testing. - 12 -

Unwitting vs. Witting Software Development – Costabile et al. , Borggrafe et al. , Brandt et al. – A spectrum of end-user involvement in software. - 13 -

Unwitting Software Developers (cont. ) – Eg, “meta-design” (Fisher et al. , Costabile et al. , Borggrafe et al. ) • Designing/modeling, and/or working hand-in-hand with professional developers. – Eg, “Tailoring”: Some do not realize that they are doing software development. • Costabile et al. report this with medical domain experts • Petre/Blackwell report this with children game players. – Task-motivated (not programming-motivated), goaldirected, learning incrementally as they go. - 14 -

“Witting” EUPs • Segal’s study: – Scientists who explicitly program, but don’t view their software as an outcome or an asset. – Software not valued, not tested, not documented, not shared. • Clarke and Brandt et al. call EUP developers (and others) like this “opportunistic”. - 15 -

Opportunistic Programming • 5 characteristics (Brandt et al. ) – 1. Easier to build from scratch than to understand code libraries. • Happy to use tools new to them, if map well to their task. (Maybe more so with the males? ) – 2. When do reuse, use copy/paste. – 3. Process very iterative, debug/edit tightly interwoven. – 4. Code impermanent. – 5. Debugging challenges: less sophistication, multiple languages. - 16 -

Improving EUPs’ Abilities in Software Development • Teaching Software Engineering to EUPs (Umarji et al. ) – Bioinformatics developers don’t do software engineering (agrees with Segal’s findings). – They do share. They don’t like to “hand off” outside their domain. – Could benefit from education in QA, documentation, reuse. - 17 -

Related Theories and Support – Relates to Attention Investment (Blackwell) • Cost/benefit/risk. – Relates to Minimalist Learning Theory (Carroll/Rosson) • Paradox of “Active User”. – Strategies to support: • Domain-specific languages/closeness of mapping. • Surprise/Explain/Reward (Wilson/Burnett, …) – Connectts Curiosity to Minimalist Learning to Attention Investment. - 18 -

Helping Tools Be More “Natural” • “Natural” end-user software engineering (Myers et al. ) – Approaches/tools based on how end users think. • How do they debug? (led to Whyline) – Studies of people debugging: mostly they ask “why” and “why not”. – Help inform Whyline debugging tool: • for Alice (novices), for Word behavior (EUs), • and now for Java (bringing what learned about EUPs back to professional devs. - 19 -

Natural end-user software engr. (cont. ) • How Do UI Designers Design? – They iterate on appearance (no problem) and behaviors (big problem). • Complex, diverse behavior. – They build software prototypes to communicate design decisions. • Poorly supported by current tools. - 20 -

Natural end-user software engr. (cont. ) • Studies of professional developers too. – Can reveal insights into emerging issues that will affect EUPs soon too. – E. g. , studies of API usability, program comprehension. - 21 -

Conclusion: What we’ve learned • End-user programmers – Are not usually “baby” professional programmers, but do struggle with SE issues. – And have unique problems, different motivations, different langs/tools, gender diffs relevant to EUSE… • EUP studies provide critical info for tools. – And also can reveal new insights that open new avenues for supporting professional devs too. – And sometimes vice versa (apply with caution!) - 22 -

Question • What else do we know about end users that hasn’t come out yet? - 23 -
EUP End User Payment Med Mobitechs nye EUP
Where weve been What weve learned Where were
Dimensional Analysis Units weve got units weve got
Weve been lied to about our Intelligence Weve
Weve been lied to about our Intelligence Weve
Dont worry team Weve got this Weve been
Jonas Maiulis Maironis Kur bga eup Darbo autorius
Forestfipcn Causendfcto Wilr Forestin Eup in Polad Eurpe
Lecture 19 Simple User Interface Toolkits and EUP
JAVNA RAZGRNITEV PIP prostorskih OPPN za obmojeizvedbenih EUP
Abstract Author Name Margaret Gyapong Email margaret gyaponghrughs
Margaret Mahler Autism and Symbiotic Psychosis Margaret Mahler
Margaret Thatcher By Natalie and Jenna Margaret Thatcher
MARGARET THATCHER Margaret Hilda Roberts was born on
MARGARET THATCHER Margaret Hilda Roberts was born on
Fitting Fitting Weve learned how to detect edges
Mechanisms of Orographic Precipitation Enhancement What weve learned
GUSTAR Gustar Weve learned that me gusta means
What weve Learned and Where were going Morgan
Lesson aims Brief recap on what weve learned
Being Successful Under Bundled Payments What Weve Learned
Random Brain Facts Random Brain Facts Weve learned
The UART project Applying what weve learned about