Evaluating a natural language interface for behavioral programming

  • 淳 杉
  • 雄一 小
  • 義幸 古
 et al. 
  • 3

    Readers

    Mendeley users who have this article in their library.
  • N/A

    Citations

    Citations of this article.

Abstract

Most programs today are written not by professional software developers, but by people with expertise in other domains working towards goals for which they need computational support. For example, a teacher might write a grading spreadsheet to save time grading, or an interaction designer might use an interface builder to test some user interface design ideas. Although these end-user programmers may not have the same goals as professional developers, they do face many of the same software engineering challenges, including understanding their requirements, as well as making decisions about design, reuse, integration, testing, and debugging. This article summarizes and classifies research on these activities, defining the area of End-User Software Engineering (EUSE) and related terminology. The article then discusses empirical research about end-user software engineering activities and the technologies designed to support them. The article also addresses several crosscutting issues in the design of EUSE tools, including the roles of risk, reward, and domain complexity, and self-efficacy in the design of EUSE tools and the potential of educating users about software engineering principles.

Author-supplied keywords

  • -cs0
  • Analysis and design
  • Application software
  • Business
  • Business rules
  • C
  • CASE tools
  • CS1
  • Collaboration
  • Computer languages
  • Context modeling
  • Control systems
  • Costs
  • Decision making
  • Decision tables
  • Design
  • Domain experts
  • Empirical evaluation
  • Experimentation
  • Games
  • Grammar
  • Graphical user interfaces
  • Guidelines
  • Human Factors
  • IT systems
  • Insurance
  • Java
  • LabVIE
  • LabVIEW
  • Languages
  • Linguistics
  • Logic programming
  • Materials requirements planning
  • Natural languages
  • OC
  • OCL
  • Object Constraint Language
  • Object oriented programming
  • Object-oriented design
  • Ontologies
  • Pascal
  • Performance analysis
  • Power system modeling
  • Programming
  • Programming profession
  • Reliability
  • Robots
  • Software development management
  • Supporting tool
  • Technical presentations
  • UML
  • UML Model
  • Unified modelling language
  • Visual programming
  • Visualization
  • Web services
  • advanced programming concepts
  • and it can infer
  • and java
  • and state
  • are not necessarily affected
  • aspect oriented programming
  • authoring
  • beginning students in languages
  • behavior controlled by palettes
  • behavioral programming
  • business
  • business application
  • business data processing
  • business logic
  • business managers
  • business model
  • business objectives
  • business process execution language
  • business process re-engineering
  • business processes
  • business rules
  • business rules approaches
  • business rules specification
  • by
  • case tools
  • chains of relationships where
  • clinical monitoring rules
  • cogni
  • cognitive dimensions
  • command languages
  • computer science education
  • context-free grammars
  • controlled by objects which
  • decision tables
  • designer
  • domain expert
  • educational research area
  • eliza
  • empirical evaluation
  • end user programming
  • end-user
  • end-user development
  • end-user programming
  • end-user software engineering
  • essential language for declarative
  • explicit
  • for early introduction of
  • formal grammar
  • formal languages
  • general process
  • health care
  • html wrapper generation
  • human factors
  • human-computer interaction
  • imagery
  • information systems
  • interactive behaviors
  • interactive natural language interface
  • language design
  • language programming
  • like c
  • live sequence charts
  • logo
  • mental model
  • more
  • multilingual solution
  • natural
  • natural business rules understanding
  • natural language
  • natural language interfaces
  • natural language processing
  • natural language programming
  • natural languages
  • natural programming
  • naturalistic programming
  • ontologies (artificial intelligence)
  • ontology based multilingual understanding
  • organisational aspects
  • organization goals
  • philosophical foundations
  • procedural programming
  • program comprehension.
  • program synthesis
  • programming
  • programming by demonstration
  • programming by example
  • programming fundamentals learning
  • programming languages
  • reactive system behavior
  • requirements engineering
  • retention
  • rule-based
  • scratch
  • scratch language also allows
  • soft sys-
  • software developers
  • software development
  • software engineering
  • spreadsheets
  • storytelling
  • such as event-driven
  • survey
  • systems engineering
  • tems methodology
  • the
  • the actions such as
  • tive foundations programming
  • undergraduate students
  • user interface soft-
  • variables
  • visual language
  • visual programming
  • visual programming language
  • web automation
  • web browser
  • world wide web

Get free article suggestions today

Mendeley saves you time finding and organizing research

Sign up here
Already have an account ?Sign in

Find this document

Authors

  • 杉浦 淳

  • 小池 雄一

  • 古関 義幸

  • K.N. Kirsten N. Whitley

  • Laura R. Novick

  • Doug Fisher

Cite this document

Choose a citation style from the tabs below

Save time finding and organizing research with Mendeley

Sign up for free