Interaction Design, User Interfaces, And The Future Of .

Transcription

Constantine &Lockwood, Ltd.Interaction Design, User Interfaces,and the Future of Model-DrivenDesign and DevelopmentProf. Larry Constantine, IDSA, ACM FellowDepartment of Mathematics and EngineeringUniversity of Madeira1

Constantine &Lockwood, Ltd.2

Constantine &Lockwood, Ltd.No Conspiracy, But No Accident The place and role of users, usability, anduser interfaces in software development. The place and role ofprogrammers insoftware development.3

Constantine &Lockwood, Ltd.Do Users and the Context of Use Matter? Inside the cockpit ofthe Airbus 320 Video gamesanyone?“Congratulations“Congratulations totoourour pilot,pilot, newlynewlypromotedpromoted toto Captain!”Captain!”4

Constantine &Lockwood, Ltd.Why Design for Use A product can be a success without being useful. But usefulness and usability pay. Simpler documentation,lower support costs. Faster learning, lower training costs. Fewer errors, better data integrity. Improved efficiency, dependability. Increased customer and end-user satisfaction.Design for use is analternative tocompeting bycommodity pricing orthrough feature bloat.5

Constantine &Lockwood, Ltd.In the BeginningDeus ex machina Technology at the center. User-friendly design.UI and usability as after-the-fact decoration.6

Constantine &Lockwood, Ltd.Advances in Computing IBM 1401AutocoderProgress– machine language– assembly language– high-level languages– 3GLs– 4GLs– application generators– executable models7

Constantine &Lockwood, Ltd.1986. What has Changed, Ed? Excelerator(Index Technology)SameSame old,old, samesame old.old. ButButnownow it’sit’s ing. AndAnd CASE.CASE.JustJust prettypretty pictures.pictures.GoodGood marketing.marketing. TheTherealreal stuffstuff isis databasedatabaseandand codecode generation!generation!8

Constantine &Lockwood, Ltd.Why Models? Building models is easier than building the real thing. Models capture, carry, and organize understanding about aproblem or possible solutions. Models permit exploration of problem and solution spaces. Models can be validated against objective criteria. Models can be tested and evaluated.MODEL-DRIVEN PROCESSES: provide an “audit trail” of assumptions, of evolvingunderstanding, and basis of solutions. facilitate tracing results back to requirements. enable reasoned derivation of successful solutions.9

Constantine &Lockwood, Ltd.Some Holes in the StoryDATABASEDESIGNINPUT-OUPUTDESIGN10

Constantine &Lockwood, Ltd.11

Constantine &Lockwood, Ltd.Where are the Users?Even the gurus don’t get it!In 21 classic, respected books –INDEX TOTAL % ofENTRIES* PAGES PAGES UML and the unified process(9 books, 1997-2003; 3175pp) 12.7 Use cases(6 books, 1997-2003; 1913pp) 18.7 XP and agile development(6 books, 2000-2002; 1868pp) 2.567(2.1%)47(2.5%)8(0.4%)3 books have only 1 mention;3 have nothing at all to say!* users, user interfaces, usability, GUI, end users, 12

Constantine &Lockwood, Ltd.Models Matter Models should be suited to the design task. UML can be used to model user interface designand interface architecture, but Some design modeling is better than none at all. But big, clumsy, complicated models tend to lead to 13

Constantine &Lockwood, Ltd.Model-Driven Everything model-driven user interfaces?model-driven engineeringexecutable modelsmodel-driven architecturemodel-driven developmentmodel-driven designmodels in analysis and design14

Constantine &Lockwood, Ltd.Model-Generated User Interfaces Some processes can target alternatedeployment: Web, desktop, smartphone, Some even attempt integrated “beautification.”Pederiva et al., “The Beautification Process in ModelDriven Engineering of User Interfaces” Interact 200715

Constantine &Lockwood, Ltd.And the results? Real-world app generated by OlivaNovaNowNow “beautified.”“beautified.”Pederiva et al., “The Beautification Process in ModelDriven Engineering of User Interfaces” Interact 2007 16

Constantine &Lockwood, Ltd.Getting Better, Getting Worse To avoid “analysis paralysis,” agile development rejectsntothoughtful, thorough design. No BDUF!Big Design Up Fr Users can be shortchanged in “customer-centric” focuson features, delivered value, customer satisfaction.“GUI-intensive“GUI-intensive projectsprojects areareproblematicalforXP(andproblematical for XP (andprobablyprobably forfor manymany —Ron JeffriesJeffries“[Usability]“[Usability] isis notnot aa ‘weak‘weak point’point’[oftheagilemethods],it[of the agile methods], it isis ananabsence.”absence.”—Alistair—Alistair CockburnCockburn But, things may be getting better – Jeff Patton, agile-usability@yahoogroups.com– Scott Ambler, Agile Modeling– Cutter Agile Management “The Usability Challenge”17

Constantine &Lockwood, Ltd.Still, . . . User-centered design is no guarantee either. User experience design is often misguided becauseuser performance is what is truly important. Industrial design does no better than softwareengineering.“It“It probablyprobably wonwon aa prize!”prize!”—Donald—Donald NormanNorman“Focus“Focus uponupon humanshumansdetractsdetracts fromfrom supportsupport forforthethe activitiesactivities themselves.”themselves.”—Donald—Donald NormanNorman* www.jnd.org18

Constantine &Lockwood, Ltd.If Only Things Were SimpleManagement fantasy The new programmer – The new designer –Everyone’s fantasy CODE The new user –DRAW?19

Constantine &Lockwood, Ltd.Points of Departure Study process and UI problems (1991-1992). Use cases promising but early results disappointing.Keys simplification not elaboration abstraction not realism intentions not interaction Essential use cases and basic process (1993). Widely used and practiced: Siemens, McKesson, Nortel,Navy, Lockheed, Gartner, DaimlerChrysler, IBM, Full spectrum of problems: e-commerce, automation,healthcare, finance, banking, insurance, education,embedded systems, CAD/CAM, office products, Integrated with varied processes: OOSE (Ahlqvist,1996), RUP/USDP, XP, agile modeling, 20

Constantine &Lockwood, Ltd.Unified Modeling? For data modeling you wantappropriate models by skilleddata modelers. For process modeling youwant appropriate models byskilled process modelers. For interaction modeling youwant appropriate models byskilled interaction designers. Different models and different skills are neededfor different parts of the modeling process!* A. Chanda, E. Allen, Rice University21

Constantine &Lockwood, Ltd.Much is Asked Focus shifted from users and user experience tohuman activity and user performance. Model-driven inquiry grounded in systematic modelsof human activity. Human Activity Modeling “With dynamic“With dynamic Model-based process for user interface andextensions!”extensions!”interaction design. Usage-centered Design Models tailored to the needs ofinteraction design and designers. Models based in powerfulabstractions and separationof concerns.Canonical Abstract Prototypes Tools supporting flexible, seamless problem solvingwith all models interconnected.* Nóbrega, University of Madeira22

Constantine &Lockwood, Ltd.Human Activity Modeling Based in activity theory, models human activity:“loosely ordered collection of flexibly adaptive actionshaving distinct but disparate goals contributing to ashared or common purpose.” Simple notation, small numberof concepts systematizingactivity theory, linked with UML. Captures and organizes aspects of activitycontext most salient and relevant to interactiondesign in support of real user requirements.“Business“Business processprocessmodelingmodeling donedone right!”right!”-- NunoNuno NunesNunes23

Constantine &Lockwood, Ltd.Anatomy of an Abstractionabstract UI componentswith standardized usercentered semanticsCAPs and dCAPs: formalizedabstract wireframe schematics.content,function,layout andorganizationSupports separation of concerns.dynamic relationshipsAnd they are “executable”!*among UI components* Nóbrega, University of Madeira24

Constantine &Lockwood, Ltd.Prescription for Progress Models to capture, hold, and organizeunderstanding of problems and solutions. Focus on user performance, human activity. Tools to support, not take over human activity. Fix and finish UML (notations suited for humanactivity and user interaction modeling). Use people for what people are best at:creative exploration, analysis, invention,and design!OR “Hello.“Hello. AreAre youyoulisteninglistening OMG?”OMG?”25

Constantine &Lockwood, Ltd.Thank you.www.LabUSE.orgLConstantine@UMa.pt26

interaction design. Models tailored to the needs of interaction design and designers. Models based in powerful abstractions and separation of concerns. Tools supporting flexible, seamless problem solving with all models interconnected. Usage-centered Design Canonical Abst