Presentation on theme: "A Comparative Framework for End User Development"— Presentation transcript:
1A Comparative Framework for End User Development Alistair Sutcliffe(Nikolay Mehandjiev, Darren Lee)Department Of ComputationUMISTManchester, UK
2Objectivesto identify the contribution from different strands of EUD research;to expose research issues and indicate a future research agenda;to act as a critical evaluation tool for EUD environments and systems;
3ApproachA literature survey across the spectrum of disciplines associated with End-User Development.RequirementsEngineeringHCI &CognitiveScienceUserCommunitiese.g. BioinformaticsSoftwareEngineeringArtificialIntelligenceInformationSystemsPsychologyof programmingCSCWCritically evaluate research and industrial state of the art, create a review paper
4Framework Dimensions 3 Dimensions Representation The nature of the representationsused in the programming taskbetween computer and end-user.
5Framework 3 Dimensions Representation Scope The nature of the representationsused in the programming taskbetween computer and end-user.ScopeThe breadth of EUD problems anenvironment can support.
6Framework 3 Dimensions Representation Scope System Initiative The nature of the representationsused in the programming taskbetween computer and end-user.ScopeThe breadth of EUD problems anenvironment can support.System InitiativeThe degree to which the user isrequired to directly specify software.
7(Abstract Vs Concrete) Representation(Abstract Vs Concrete)Medium for exchange of information between user and machine.Natural or designed language- text, icons, graphicsNon-linguistic representations- graphics, interactive microwolrds, TUIs, physical artefacts, augmented realityLinguistic representations= abstract syntax + lexicon, text, symbolic, iconic, natural languageModality of communication, audio, speech, visual, hapticDomain and representation interact. e.g. Mathematics Research.Expressed via a language.Irrespective of sensory channels.Language (and attributes) +sensory channel = modality (Bernsen)Non-Linguistic modelsIconic/Visual Programming has syntax and semantics therefore a language.Interesting QuestionVisual Programming arguing visual is inherently natural (concrete) because it visual!, claim that the lack of language (in the textual sense) also makes it more concrete.Origin Of AbstractionGeneralisation – to generalise need to be abstract.False metaphors- Forcing thinking about domain in terms of objects when more natural in terms of flows.Nature of Domain- Highly abstract in real world.
8(Task or Domain Specific Vs General Purpose) Scope(Task or Domain Specific Vs General Purpose)Problem coverage of an EUD tool.General purposeTuring-complete, any task in any domain.Architecture in the sense of Fischer’s DODEs.Modular environment with programmability.Specific Task - DomainHorizontal domains- e.g. finance, training, CAL systemsVertical domains- e.g. ecommerce, bioinformatics, medicineInformation systems tasks, support for tasks in the real worldDimension interaction inevitably occurs. Notably General Purpose and Abstract.Problem coverageProgramming as problem solving.The task the end-user is using the EUD tool to support.Views of GPTuring complete – powerful as mainstream languages a matter of skill and effort on part of programmer.Views of Task and DomainFor a task is user: searching for information OR searching for Biochemical information.
9Scope and domains End user Software system Information systems Sensors & devicesModelledworldControlledworldRealworld
10System Initiative(Active Vs Passive)degree of user responsibility for specifying the solutionPassiveUser driven- language or composable artefactsPossibly supported by a critiquing systemActiveThe machine tracks user behaviour and infers a software solution- assumes an existing artefactSystem intervenes to help design –partial initiativeMachine generates solution from natural language instructions or observes RW and learns- frontiers of AIPassiveTherefore DODEs and derivatives are passive.PBE - Macro recorders.ActiveAutomatic programming/ PBE – inferenceStill the question of declarative programming paradigm at its purist Nik argues that it is possibly active.
11Other issues Social Context of EUD -Collaborative EUD and EUD of CSCW systems-Autocratic Vs Democratic and Individual Vs Group EUD.- Communities of EUD developers, markets for components, scripts, etc2. Communication Model- Sensory channel (Modality)- audio, visual, haptic- Modality + Representation = EUD Paradigm- Usability, User Cognition and Cognitive DimensionsMachine Model- Transparency and Execution Vs Interpretation.- Integration with Software Engineering Paradigms- OO, Agents, etc- Software reuse .legacy integration[This is an additional slide, recommended by Nik to back up the other work we are doing]
12Psychological issues Expressability and complexity Learning or display based cognitionIntuitiveness, affordances, and transparencyUser cost, effort and errors
13Develop or Adapt ?IncreasedLearningand effortTailoring, customisation, personalisation- low effort, limited scopeConfiguration, design by composition- more effort, improved scope but limited by componentsInstruction led design- high effort, good scopeCommunicate requirements + machine designs- low effort, good scope
14DODEsAn architecture for reducing the conceptual distance between the problem-domain and solution artefact.Progamming as construction and design.Views programming as argumentative process between system and user. Critiquing systems support this activity.Model world, editors, interpreter, solution templates, tutors, criticsDODEs can evolve as the end-user becomes more skilled or the domain or task changes.
15AgentSheetsExtends the DODEs concept by as a general purpose environment + language.Introduces true programmability through graphical if-then- else rules and simple message passing.Architecture and domain independent tool for simulation and building executable programmes.Build interactive graphical micro worldOnce a set of agents are implemented it becomes a domain specific tool.Abstraction can be controllable by the end-user.The user can work with predefined agents representing concrete metaphorsor drop down to the more abstract to define new agents as needed.
16TAMBISBioscience databases use multiple query languages from SQL to natural language.Ontology, thesaurus, domain specific lexicon.TAMBIS provides a visual ontology in which queries are built up through navigation of a 2D space representing the biochemistry domain.TAMBIS infers this navigation into the query language program for each of the databases.Visual ontology is produced from textual DL called GRAILTAMBIS uses concrete representations straight from the domain.The scope is highly task and domain specific.The system takes the users requirements and specifies the software that will be executed. Therefore active initiative.
17Using The FrameworkDODEs “Domain-Orientated Design Environments”. Fischer Univ of Colorado.AgentSheets. Repenning Univ of Colorado.TAMBIS “Transparent Access to Multiple Bioinformatics Information”. Goble et al Univ Of ManchesterTAMBIS- Baker Gobel et al. IMG at Manchester working with school of biological science. Task and domain specific EUD tool.
19Position In FrameworkDODEsDomain SpecificPassiveConcrete
20Position In FrameworkAgentSheetsGeneralPassiveConcrete/abstract
21Position In Framework TAMBIS Task and Domain Specific Semi-Active Concrete
22Conclusion Framework based on common themes across research areas. Permits the comparison of tools and theories.It will help to identify trends and areas for future work.
23ChallengesMerging paradigms- NL with interactive worlds, inference to help developmentUser freedom, expression and assistance-where is the trade off ?Device sensor integration, solution power and learnability trade offsSharable composable development worldsEUD or design support environments ?
24Challenges IIEnd user requirements languages- integration of symbolic programming and clarification dialogues (NL research with SE/HCI)Abstraction trade offs- general or domain specific EUD environmentsEscaping from the expert knowledge bottleneck- learning or intelligentacquisition envsEvolutionary computing and EUD- users set parameters for generated solutionsSocio-technical solutions- design for user motivation and reward
25Future work Review framework and research issues Use the framework in a critical review of existing EUD tools and theories.Conduct an industrial survey to identify successful commercial applications of EUD tools and techniques.
26Position In FrameworkJavaGeneral PurposePassiveAbstract