Fact-checked by Grok 2 weeks ago

End-user development

End-user development (EUD) is a set of methods, techniques, and tools that enable users of software systems, acting as non-professional software developers, to create, modify, or extend software artifacts to meet their specific needs. This paradigm shifts the focus in human-computer interaction from mere ease of use to ease of development, empowering domain experts—such as biologists, teachers, or business analysts—who possess specialized knowledge but lack formal programming training to adapt technology flexibly. By bridging the gap between professional and everyday user requirements, EUD promotes tailorability and in dynamic environments. The concept of EUD emerged in the late alongside the rise of personal computing, with early influences from visual programming and tailorability research in human-computer interaction. Pioneering tools like Apple's in the 1980s allowed users to build interactive applications through card-based metaphors, while programming-by-demonstration techniques, such as the system, enabled inference of code from user demonstrations. The term gained formal recognition in the early through initiatives like the EUD-Net and the 2006 edited volume End User Development, which synthesized multidisciplinary approaches from , , and usability studies. By the 2010s, EUD had expanded with technologies, exemplified by platforms like for and App Inventor for creation. Key principles of EUD emphasize and , including a low threshold for entry—using intuitive interfaces like visual blocks or prompts—and a high ceiling for advanced without steep learning curves. Systems support incremental development, where users start with simple configurations and progressively add complexity, often through metaphors such as puzzles or manipulation. Cooperative aspects allow shared adaptation in teams, fostering meta-design where creators build in flexibility for future end users. These principles address the disparity between professional developers and end users; for instance, in 2012, the had fewer than 3 million professional programmers but over 55 million workers using tools like spreadsheets and databases. In contemporary contexts, EUD has evolved to encompass no-code and low-code platforms, particularly for and (IoT) applications, democratizing access to advanced technologies. Recent developments include AI-assisted EUD, where supports users in composing intelligent agents or customizing smart environments through wizard-based or component-based paradigms, with applications in , , and personalized IoT ecosystems. A 2023 systematic review of 22 studies highlighted trends toward lay-user tools for AI model creation, though challenges remain in supporting collaboration and expert-level customization. This progression underscores EUD's role in empowering diverse users to innovate amid rapidly changing technological landscapes.

Definition and History

Definition

End-user development (EUD) refers to a set of methods, techniques, and tools that enable users of software systems—who are typically non-professional software developers—to create, modify, or extend software artifacts in order to address specific needs within their domain of expertise. This approach empowers individuals with limited programming experience, such as domain experts in fields like , or , to tailor applications without relying solely on professional programmers, thereby bridging the gap between rapidly evolving user requirements and the constraints of traditional . At its core, EUD emphasizes flexibility and modifiability throughout the software lifecycle, shifting the from designing systems that are merely easy to use to those that are easy to develop and adapt during ongoing use. It originated as a response to the limitations of , where developers often lack deep , leading to delays in accommodating user changes; EUD tools thus prioritize low thresholds for entry, intuitive interfaces, and support for iterative to foster end-user agency. Seminal work in the field, such as that by Lieberman et al., highlights EUD's role in enabling non-programmers to engage in software creation across diverse contexts, from personal computing to collaborative environments. EUD is distinct from related concepts like end-user programming (EUP), which focuses narrowly on programming techniques such as visual scripting or macros, whereas EUD encompasses the broader , including design, extension, and maintenance. It also differs from by allowing continuous user involvement post-deployment, often through meta-design principles that embed adaptability into the system from the outset. Recent reconsiderations of EUD definitions emphasize its integration into modern programming practices, moving beyond a strict with to focus on the nature of tasks and platforms that support non-expert innovation.

Historical Development

The roots of end-user development (EUD) trace back to the late 1970s with the advent of personal computers, which democratized computing and allowed non-professionals to customize software for their needs. The release of VisiCalc in 1979 marked a pivotal moment, as the first electronic spreadsheet enabled business users to perform complex calculations and automate tasks without traditional programming skills, effectively turning end-users into inadvertent programmers. This innovation, developed by Dan Bricklin and Bob Frankston, fueled the adoption of microcomputers in offices and highlighted the potential for domain-specific tools to empower users. By the early 1980s, subsequent spreadsheets like Lotus 1-2-3 (1983) and Microsoft Excel (1985) further entrenched these practices, with macros and scripting features allowing users to extend functionality iteratively. In the and , EUD evolved through graphical interfaces and hypermedia systems that lowered barriers to creation. Apple's , introduced in 1987 by , provided a visual programming environment where users could build interactive applications, such as databases and presentations, using stacks of cards and simple scripting in . This tool exemplified "programming by demonstration," influencing later and underscoring end-users' ability to tailor software in use. Concurrently, the term "end-user programming" gained traction through empirical studies of and usage in workplaces. Bonnie Nardi's 1993 book, A Small Matter of Programming, analyzed these activities, arguing that end-users routinely programmed to meet practical needs but faced challenges in reliability and scalability, laying foundational insights for the field. The 2000s saw EUD emerge as a distinct research paradigm, formalized through workshops and comprehensive reviews. Henry Lieberman's 2003 CHI workshop on "Perspectives on End User Development" and his co-edited 2006 book End User Development defined EUD as methods enabling non-professionals to create or adapt software, emphasizing psychological and social dimensions. This period also quantified the scale: Scaffidi et al. (2005) estimated 55 million end-user programmers in the U.S. by 2012, far outnumbering professionals, based on surveys of tool usage across domains like spreadsheets and databases. Building on this, Ko et al.'s 2011 survey, "The State of the Art in End-User Software Engineering," synthesized over two decades of work, highlighting shifts toward testing, debugging, and reuse in diverse contexts like web and mobile applications, while identifying gaps in end-user support tools. These contributions established EUD's focus on empowering users amid growing software complexity.

Core Concepts

End-Users vs. Professional Developers

End-user development (EUD) refers to the creation, modification, or extension of software by individuals who are not software developers, often using specialized tools to address domain-specific needs without formal programming training. In contrast, developers are trained IT specialists who build software as their primary occupation, typically employing rigorous methodologies to produce scalable, maintainable systems for broad audiences. This distinction arises from differing roles: end-users act opportunistically within their professional domains (e.g., scientists analyzing data or teachers automating grading), while professionals focus on comprehensive system design and integration. The motivations of end-users and professional developers diverge significantly. End-users engage in development to solve immediate, personal, or task-oriented problems, prioritizing functionality over long-term quality or , such as customizing spreadsheets for . Professional developers, however, are driven by organizational requirements, user demands, and commercial viability, often working in teams to ensure software reliability and compliance with standards. As a result, end-user efforts emphasize and iteration within constrained timeframes, whereas professionals invest in upfront planning and documentation to mitigate risks in complex environments. Skills and expertise further highlight these differences. End-users typically possess deep but limited proficiency, relying on intuitive tools like visual builders or macros that abstract away low-level code. Professionals, by comparison, master programming languages, algorithms, and practices such as and automated testing, enabling them to handle intricate architectures and edge cases. This gap leads end-users to adopt ad-hoc, implicit strategies—such as trial-and-error —while professionals apply systematic approaches, including formal and peer reviews. Challenges in EUD stem from end-users' resource limitations and overconfidence in their creations, often resulting in untested applications prone to errors or vulnerabilities. Professionals face their own hurdles, including bridging communication gaps with non-technical stakeholders and maintaining systems, but benefit from institutional support and tools tailored for scale. Despite these variances, both groups encounter common issues like requirements evolution and maintenance, underscoring the need for EUD tools that borrow from professional practices without overwhelming users.
AspectEnd-UsersProfessional Developers
Primary FocusDomain-specific, immediate tasks (e.g., data analysis in spreadsheets)Scalable, maintainable systems for multiple users
Development ApproachOpportunistic, visual/declarative toolsSystematic, code-based with testing frameworks
Key RisksPoor quality, security flaws due to inexperienceIntegration complexity, evolving requirements
BenefitsEmpowerment, reduced IT dependencyHigh reliability, team collaboration

Types of End-User Development

End-user development (EUD) encompasses a range of activities where non-professional software users create, modify, or extend software artifacts to meet specific needs. From a perspective, EUD activities can be broadly classified into two primary categories: parameterization or customization, often referred to as tailoring, and end-user programming. These categories reflect varying levels of user involvement, from selecting predefined options to constructing new functionalities, enabling end users to adapt systems without relying on professional developers. Tailoring, or parameterization/customization, involves users configuring existing applications by choosing among predefined behaviors, presentations, or mechanisms. This type of EUD is typically the for non-experts, as it requires minimal technical knowledge and focuses on associating parameters with data to guide program execution. Common examples include setting up formulas for financial calculations, defining filters to sort incoming messages, or annotating data entries to track processes. Adaptive systems may further support tailoring by automatically adjusting interfaces based on observed user behavior, though this remains limited to developer-provided options. Tailoring empowers users in domains like office productivity, where quick adjustments enhance usability without altering core code. End-user programming represents a more advanced form of EUD, where users actively create or modify software artifacts beyond predefined settings. This category emphasizes programming to achieve task outcomes rather than building reusable code, often prioritizing personal or domain-specific goals over principles. Techniques include visual programming environments, macro recording in applications like , scripting languages for , and programming by example, where systems infer rules from user demonstrations. For instance, a teacher might program a grade-tracking tool using a , or a could develop scripts in . End-user programming supports diverse domains, from and web mashups to healthcare analytics, by providing a "gentle slope" from simple customizations to complex creations. Closely related to end-user programming is end-user software engineering (EUSE), which integrates systematic practices like testing, , and debugging into EUD workflows to address quality concerns. Unlike traditional end-user programming, which focuses primarily on functionality for immediate tasks, EUSE emphasizes disciplined activities to mitigate errors, though it adapts these to users' opportunistic styles rather than imposing professional rigor. Tools for EUSE include testers like WYSIWYT (What You See Is What You Test) and web macro debuggers such as CoScripter, which help users identify faults in personalized applications. This type is particularly relevant in high-stakes environments, such as or scientific simulations, where unaddressed bugs can lead to significant consequences. Overall, EUSE bridges the gap between ad-hoc EUD and by embedding into user-driven processes. Other classifications of EUD focus on project types, such as developing enquiries and reports using query tools, reformatting data presentations with graphing software, building computational worksheets in spreadsheets, or creating database applications with form builders. These practical categories highlight how EUD manifests in everyday tasks, like generating bank depositor reports or analyzing market trends. Across all types, EUD prioritizes accessibility, enabling end users in fields like business, education, and research to innovate without formal training.

Tools and Platforms

Low-Code and No-Code Platforms

Low-code and no-code platforms represent a significant in end-user development (EUD), enabling non-professional developers to create, modify, or extend software artifacts with minimal or no traditional coding. Low-code development (LCD) encompasses approaches, technologies, and tools that facilitate by reducing the amount of hand-written code through visual interfaces, model-driven architectures, and pre-built components. In contrast, no-code platforms extend this paradigm further by eliminating coding entirely, relying on drag-and-drop functionalities, templates, and declarative configurations to allow users—often termed "citizen developers"—to build applications without advanced programming knowledge. These platforms align closely with EUD principles, as they empower domain experts, such as business analysts or educators, to tailor software to specific needs, bridging the gap between end-users and professional IT teams. The integration of low-code and no-code tools in EUD originated from broader trends in visual programming and domain-specific languages, gaining prominence in the with the rise of cloud-based services. Forrester Research coined the term "low-code development platforms" (LCDPs) in 2014 to describe tools designed for business-oriented staff to develop applications independently of IT specialists. No-code platforms emerged as a subset, emphasizing accessibility for complete novices; for instance, platforms like Teachable Machine allow users to train models via simple web interfaces without scripting. Common applications span , web and mobile apps, and , with surveys indicating that LCDPs support domains like user interfaces and databases through visual abstractions and . Examples include Mendix for enterprise applications, Power Apps for workflow automation, and for full-lifecycle development, each evaluated for their alignment with citizen development goals via metrics like required IT competencies. These platforms enhance EUD by democratizing software creation, reducing development time, and fostering in non-technical contexts, such as for spatial via tools like . However, challenges persist, including limitations in handling complex logic or , which may necessitate approaches combining no-code interfaces with selective low-code elements. Empirical assessments, such as the CD Score framework, quantify platform suitability by measuring the IT skills demanded across , development, and deployment phases, revealing that tools like AppSheet score highly for end-user accessibility in data modeling and . Overall, low-code and no-code platforms have transformed EUD from niche practices to mainstream strategies, with adoption driven by their ability to accelerate prototyping and empower diverse user groups in sectors like healthcare and . As of 2025, forecasts that 70% of new enterprise applications will utilize low-code or no-code technologies, underscoring their mainstream adoption.

Domain-Specific and Visual Tools

Domain-specific tools in end-user development are specialized software environments designed to empower non-professional users within particular application domains, allowing them to create, modify, or extend functionality without requiring general-purpose programming expertise. These tools often incorporate domain-oriented notations, such as formulas or templates, that align closely with users' professional tasks, facilitating tasks like or . A seminal example is the , pioneered by in 1979 and popularized through tools like and , which treat cells as programmable units for and computation using functional expressions. Such tools democratize software creation by embedding programming constructs directly into familiar interfaces, enabling end-users like financial analysts to automate repetitive calculations while minimizing syntax errors common in traditional coding. Other domain-specific examples include web macro tools like CoScripter, which allows users to record and replay browser interactions for task automation, such as form filling or data extraction, through a step-by-step demonstration process. In engineering contexts, tools like LabVIEW provide graphical data-flow programming for instrument control and simulation, where users connect virtual modules via drag-and-drop to model physical systems, reducing the need for textual code. Research highlights that these tools enhance productivity by leveraging users' domain knowledge, though challenges like error-proneness in formula dependencies persist, as evidenced by studies on spreadsheet reliability. Visual tools complement domain-specific approaches by emphasizing graphical interfaces over textual code, enabling end-users to construct applications through intuitive elements like icons, blocks, or diagrams that represent program logic spatially. This paradigm draws on human visual cognition to lower , often using metaphors such as flowcharts or card stacks to depict and data relationships. A foundational example is , introduced by Apple in 1987, which employed a stack-of-cards interface for building hypermedia applications, augmented by the for simple interactivity. More modern instances include , developed by the in 2007, where users snap together colored blocks to program animations and games, promoting among novices without syntax barriers. Influential research, such as that from the EUSES consortium (2003–2007), underscores the role of visual tools in improving end-user by integrating debugging aids and gentle learning curves, as seen in environments like Agentsheets for rule-based simulations. These tools have proven effective in domains like and prototyping, where visual feedback accelerates iteration, though scalability issues arise in complex scenarios due to "high viscosity" in editing large graphs. Overall, domain-specific and visual tools represent core enablers of end-user development, shifting focus from code-centric paradigms to user-centric customization.

Examples and Applications

Traditional Examples

One of the earliest and most influential traditional examples of end-user development is the , pioneered by in 1979, which allowed non-programmers, particularly in business and finance, to perform complex calculations and through a grid-based interface with formulas referencing cells. This tool democratized computational tasks by enabling users to create what are essentially functional programs without traditional coding syntax, as formulas automatically recalculated based on dependencies. Subsequent spreadsheets like and extended this capability, incorporating macro languages such as (VBA), which permitted end-users to automate repetitive tasks like or report generation. For instance, accountants could develop custom scripts to tabulate financial data, highlighting spreadsheets as a domain where end-users invest time in programming-like activities to address domain-specific needs. Another seminal example is Apple , released in 1987, which provided a card-stack for building hypermedia applications, allowing end-users to create interactive presentations, educational tools, and simple databases using a visual editor and the straightforward scripting language. Users could link cards with buttons and scripts to handle events like navigation or , making it accessible for teachers to develop choose-your-own-adventure style lessons or for hobbyists to games without deep programming expertise. HyperCard's design emphasized immediate feedback and incremental development, influencing later visual authoring tools and exemplifying how end-user development could extend beyond data manipulation to multimedia creation. In database management, traditional end-user development emerged through tools like (1980s) and (1992), where users constructed queries and forms using graphical interfaces or simple query languages, such as Query-By-Example (QBE), to retrieve and manipulate data without writing full SQL code. For example, business analysts could design relational databases for inventory tracking by dragging fields into visual queries, automating reports that integrated data from multiple tables. These systems supported fourth-generation languages (4GLs) that abstracted low-level programming, enabling end-users in administrative roles to build custom applications for tasks like . Additionally, rule-based systems in , such as email filters in tools like Eudora or , represented a lightweight form of end-user development by allowing users to specify conditional logic for sorting or archiving messages. This approach, rooted in early expert systems, empowered office workers to customize workflows, with rules acting as if-then scripts that processed incoming data streams efficiently.

Modern Case Studies

In recent years, end-user development (EUD) has increasingly incorporated () to empower non-experts in creating customized applications, particularly in domains like data visualization, , and . A 2025 exploratory in a large company examined AI-supported EUD for and visualization practices. Researchers conducted semi-structured interviews with eight key informants, including IT engineers and managers, identifying three user profiles: basic (limited technical skills, reliant on spreadsheets), intermediate (proficient in BI tools like Tableau), and advanced (capable of custom scripting). They developed a prototype using and GPT-4o, allowing queries to generate visualizations from sales data, such as order values by product category and country. Testing with three users across profiles revealed improved efficiency—basic users completed tasks 40% faster with guidance prompts—while highlighting needs for (e.g., voice input) and user control over AI outputs to build trust. Design guidelines emphasized customization and error-handling to address varying skill levels, demonstrating AI's potential to democratize data viz in organizational settings. Another modern application appears in educational contexts, where AI-adaptable tools facilitate EUD for personalized learning. A 2025 study presented two case studies contrasting specialized language models (SLMs) and large language models (LLMs) for language education. The first, EssayCritic, involved upper secondary school teachers in Sweden using a locally trained SLM for English as a foreign language (EFL) essay feedback. Over four weeks, two teachers annotated student texts to train the model with decision trees and lexical resources like WordNet, enabling automated critique and praise on grammar and structure. Findings showed it reduced teacher workload by providing consistent, domain-specific feedback but struggled with adaptability due to data management challenges and limited flexibility for broader topics. The second case, SchoolGPT, deployed an LLM-based chatbot (using GPT-3.5/4.0 mini) across six lower secondary schools for Spanish learning. Three end-users (advisors and a teacher) refined prompts over six months to focus on grammar and cultural nuances, fostering student agency through interactive dialogues. Results indicated versatility in supporting personalized, student-centered activities, though issues like response inconsistency and potential biases required ongoing EUD iterations. Both cases underscored AI's role in enhancing teaching efficiency while stressing the need for institutional EUD practices to align models with educational goals. In robotics, EUD tools leveraging LLMs have enabled non-experts to program complex tasks, bridging gaps in interdisciplinary fields like life sciences. The 2024 Alchemist system, an end-to-end platform for application development, was evaluated in an exploratory study with ten participants: five novice life science researchers and five expert graduate students. Participants programmed a toy version of an media preparation task using interfaces integrated with RViz for and a library of varying levels (e.g., high-level "pour " vs. low-level motion commands). Novices favored step-by-step prompting to generate and debug , completing the task in an average of 25 minutes with 3.2 errors, compared to experts' 15 minutes and 1.1 errors using general descriptions. (SUS) scores averaged 56 for novices and 68.5 for experts, indicating moderate , with positive feedback on reducing programming barriers for lab . Limitations included LLM-induced errors in and perception, addressed via verification modules. This case illustrates EUD's expansion into hardware domains, promoting collaboration between domain experts and AI to accelerate scientific workflows. These examples highlight a trend toward AI-augmented EUD, where tools like LLMs lower entry barriers while requiring careful design for reliability and user empowerment. Studies have demonstrated reductions in development time and for end-users, such as 40% faster task completion in data visualization for basic users, fostering without deep coding expertise, though challenges in error correction and ethical alignment persist.

Economic Considerations

Cost-Benefit Analysis

End-user development (EUD) involves trade-offs between upfront investments in user training and tool adoption and long-term gains in and . Costs primarily arise from learning the , configuring systems, developing applications, and errors, which can demotivate users if not managed effectively. Benefits, however, include reduced dependence on IT support, faster adaptation to specific needs, and enhanced user satisfaction through tailored software. A socio-economic modeling approach evaluates these by comparing total costs—such as learning time and error correction—against benefits like improved application fit and time savings over the tool's lifecycle. In domain-specific EUD tools, costs are often lower due to shorter learning curves, enabling quicker returns through targeted functionality, whereas general-purpose tools demand higher initial effort but offer broader flexibility. For instance, low-code platforms associated with EUD emphasize minimal technical skills requirements as the primary benefit, supported by 18 studies, followed by shortened development times (7 studies) and reduced costs (4 studies). These platforms lower barriers for non-professionals, potentially cutting maintenance expenses by empowering end-users to handle updates independently. A on introducing a () at the illustrates these dynamics. Pre-CMS, costs totaled 13 on a 1-5 scale across learning, development, and , with benefits at 17 due to high flexibility. Post-implementation, costs remained at 13, but benefits dropped to 9, attributed to low (2/5) and functionality fit (3/5), leading to user resistance without adequate training. Conversely, in healthcare applications, EUD strategies reduced service times by 17 seconds per task, boosting and support while decreasing IT backlog. Overall, successful EUD adoption hinges on minimizing early errors and providing graded training to sustain motivation, as "The user satisfaction supplied by a general application will be inversely proportional to product complexity and variability in the user population."

Return on Investment Models

Return on investment (ROI) models in end-user development (EUD) assess the economic value of empowering non-professional users to create and adapt software, focusing on balancing upfront costs against long-term gains in and flexibility. These models typically incorporate cost-benefit analyses that account for initial investments in tool design and user training, offset by reduced reliance on professional developers and faster adaptation to changing needs. A foundational approach is the cost-benefit outlined by Sutcliffe, which evaluates EUD by quantifying costs such as learning curves, efforts, application time, and overheads, against benefits including tailored applications that align closely with requirements and minimize rework. In a of a , this framework demonstrated that while learning costs can be substantial for novices, the benefits from customized outputs often yield positive net value over time, particularly in dynamic environments. The attention model, introduced by Blackwell, provides a cognitive for ROI assessment by modeling how end-users decide to allocate mental effort toward programming tasks. Users weigh perceived benefits (e.g., task ), expected payoffs (e.g., time savings), costs (e.g., learning effort), and risks (e.g., errors from incomplete ) to determine investment viability. Applied to tools like macros or visual programming interfaces, this model explains adoption patterns and guides tool design to lower perceived barriers, thereby enhancing overall ROI through higher user engagement. For instance, in inventory management scenarios, users might forgo complex scripting if risks outweigh payoffs, but simplified interfaces can tip the balance toward productive use. Economically, Wulf and Jarke highlight that EUD improves IT investment returns by decentralizing software appropriation—the process of adapting systems post-deployment—which traditionally accounts for up to 10 times the initial development costs. EUD tools with flexible, evolvable architectures increase these upfront expenses but drastically cut adaptation overheads, leading to greater organizational productivity; empirical studies confirm this shift resolves aspects of the IT productivity paradox by enabling emergent, user-driven changes. These models emphasize iterative evaluation, prioritizing tools that minimize cognitive and economic risks to sustain long-term value. For instance, as of 2025, companies like have reported a 253% ROI from low-code , achieving full in under 7 months.

Collaborative Aspects

End-User Collaborations

End-user collaborations in end-user development (EUD) involve non-professional users working collectively to , adapt, and evolve software systems, often leveraging shared tools and mechanisms to address , evolving requirements that efforts cannot fully handle. This collaborative approach shifts from isolated to participatory creation, enabling users to contribute as co-designers and foster a of participation where stakeholders actively share knowledge and artifacts. Seminal frameworks like meta- emphasize "design for designers," providing open structures that support ongoing through user-driven modifications and interactions. A key enabler of these collaborations is the integration of with communities of practice (), where end-users engage in legitimate peripheral participation to learn and contribute incrementally. Drawing from CoP theory, such environments allow newcomers to observe and assist experienced users, gradually building expertise through mutual support mechanisms like forums, wikis, and shared repositories. For instance, social networking features in EUD tools facilitate mutual help in and artifact refinement, reducing errors and promoting best practices among end-user programmers working on spreadsheets or mashups. This approach combines lightweight methods with collaborative platforms to enhance program quality without requiring professional expertise. Representative examples illustrate these dynamics. In pair collaboration for end-user , users adopt a driver-observer model on tools like the Forms/3 environment, where one executes tasks while the other provides strategic , leading to higher detection rates (up to 100% testedness in high-performing pairs) and systematic evaluation compared to solo efforts. Meta-design applications, such as the Envisionment and Discovery Collaboratory (), enable urban planners to collaboratively simulate and refine designs using interfaces, supporting shared understanding and iterative adaptations. Similarly, platforms like SketchUp's 3D Warehouse allow global users to share, modify, and reuse millions of models (as of ), fostering creative collaborations through evolutionary growth and reseeding of artifacts. Projects like CloudTeams further integrate end-users into cycles via collaborative tools, providing early to bridge user-developer gaps and ensure usable outcomes. These practices highlight how end-user collaborations enhance , ownership, and sustainability in EUD by distributing design responsibilities across diverse participants.

Community-Driven Practices

Community-driven practices in end-user development (EUD) emphasize collective creation, adaptation, and sharing of software artifacts by non-professional users within communities, often leveraging collaborative tools to evolve systems beyond initial designs. These practices draw from (CSCW) principles, where end-users engage in mutual tailoring—modifying software to fit evolving group needs—facilitated by shared representations and application units that bridge domain expertise and technical implementation. For instance, in organizational settings, "super users" emerge as local experts who tailor groupware like systems, training others and disseminating modifications through community repositories, thereby sustaining long-term adaptability without relying solely on professional developers. A key framework supporting these practices is meta-design, which extends EUD by providing "underdesigned" systems that empower users as co-creators, fostering cultures of participation through ongoing evolution of artifacts. Meta-design principles, such as (initial open structures), evolutionary growth (user-driven expansions), and reseeding (formal integration of improvements), enable communities to collaboratively refine tools, addressing under-design boundaries that limit individual efforts. In practice, this manifests in platforms like the Community Network, where over a million end-users share customizations via wikis and forums, or SketchUp's 3D Warehouse, where users upload, modify, and reuse models in a global repository, driving collective innovation in design tasks. Such practices also appear in community computing initiatives, where resource-constrained groups, like non-profits, use EUD tools for autonomous . For example, the Spring Creek Watershed Community employed wiki-like interfaces and systems (e.g., /) to collaboratively redesign their site, involving coordinators, staff, and volunteers in iterative adaptations that balanced local needs with minimal external support. These efforts highlight tensions between and expertise dependency, resolved through conceptual scaffolds like design scenarios that guide community . Overall, community-driven EUD promotes sustainability by distributing development across users, enhancing and in diverse domains.

Challenges and Criticisms

Technical and Security Limitations

End-user development (EUD) often results in software artifacts with reduced technical quality due to the limited programming expertise of non-professional developers. Studies indicate that end-users frequently lack familiarity with structured development methods, leading to high error rates in common EUD activities such as spreadsheet modeling. For instance, empirical research has found that approximately 44% of end-user spreadsheets contain at least one error, meaning that most substantial spreadsheets contain at least one error, with logical and mechanical mistakes being prevalent. These errors can propagate through formulas and linkages, amplifying risks in financial and operational applications, as evidenced by cases where spreadsheet miscalculations led to losses exceeding $250,000 in project costing or billion-dollar reporting discrepancies. Scalability and complexity represent further technical hurdles in EUD. As customization demands increase, the inherent flexibility of EUD tools creates a with usability and reliability, often resulting in overly complex systems that end-users struggle to maintain or debug. In domains like intelligent environments or applications, end-users may inadvertently introduce inefficiencies or incorrect rule inferences when programming by example or , limiting the applicability of EUD to simpler tasks. Additionally, with existing systems poses challenges, as end-user creations may not adhere to standards, leading to issues and bottlenecks. Security limitations in EUD stem primarily from end-users' inadequate of best practices, fostering vulnerabilities that developers are trained to mitigate. Research highlights that EUD artifacts, such as custom spreadsheets or configurations, often bypass or access controls, exposing sensitive like price lists or to unauthorized access. For example, downloading unencrypted enterprise to personal devices without safeguards increases breach risks, a common oversight in organizational settings. A 2006 survey of end-users showed low comprehension of features in tools like Windows XP and Office applications, with usability issues preventing effective configuration of protections like firewalls or permissions. In smart home contexts, EUD exacerbates privacy and security concerns through sparse threat modeling and ad hoc mitigations. End-users, lacking technical sophistication, often fail to anticipate risks such as hacking or data leakage from interconnected devices, leading to tensions in multi-user environments where one resident's configurations compromise others' . Recent as of 2024 underscores ongoing challenges in no-code and low-code platforms, where vulnerabilities in and configurations persist due to limited user expertise in threat assessment. Overall, these limitations underscore the need for enhanced tool support and training to balance EUD's with robust safeguards, as unchecked development can introduce systemic risks including increased exposure to cyberattacks.

Quality and Sustainability Issues

End-user development (EUD) often results in software artifacts with significant quality issues, primarily due to the lack of formal training and systematic engineering practices among non-professional developers. Studies indicate that up to 94% of spreadsheets in professional contexts contain at least one error, leading to substantial financial and operational risks; for instance, undetected errors have caused multimillion-dollar losses in industries like oil and finance. In visual programming environments like Scratch, common code smells—such as oversized scripts and mismatched broadcast signals—affect up to 44% of projects, complicating readability and correctness. These issues stem from end-users' prioritization of immediate functionality over rigorous testing and debugging, with overconfidence exacerbating undetected faults; empirical data shows incorrect value judgments in spreadsheets ranging from 5% to 23%. Testing and debugging in EUD remain underdeveloped, as end-users rarely apply comprehensive strategies like definition-use coverage, which could reduce errors but require integration into intuitive tools. For example, the WYSIWYT (What You See Is What You Test) methodology for spreadsheets uses visual cues, such as red borders for untested cells, to encourage systematic testing, yet adoption is low without motivational aids like surprise-explain-reward mechanisms. tools, such as Whyline for visual languages like , enable question-based inquiry into program behavior, cutting debugging time by up to eightfold in controlled studies with users. However, a systematic of 165 EUD/EUP/EUSE studies from 2000–2017 reveals that only 5% focus explicitly on end-user (EUSE) techniques for , with most research confined to spreadsheets and lacking broader validation across domains. Sustainability challenges in EUD arise from the long-term maintenance and evolution of artifacts, which were often intended as short-term solutions but persist and require unplanned updates. End-user programs frequently evolve opportunistically without formal requirements or design processes, leading to inconsistent structures that hinder refactoring; for instance, shared web macros in tools like CoScripter demand ad-hoc adaptations to changing interfaces, increasing maintenance costs. In spreadsheets, performance bottlenecks—such as execution times exceeding 10 hours for Monte Carlo simulations—compound sustainability issues, though parallelization on high-performance computing can reduce runtimes by up to 52 times in case studies. Children's programming in Scratch exhibits persistent misconceptions (e.g., 56% misunderstanding sequential execution), affecting artifact longevity and scalability to professional tools. Overall, the scarcity of domain-specific EUSE support—evident in only 82% of studies using formal experiments with small samples (average 30 users)—limits sustainable practices, underscoring the need for hybrid design-use phase tools.

Future Directions

AI-Assisted Development

AI-assisted development represents a pivotal advancement in end-user development (EUD), enabling non-expert users to create, customize, and adapt software applications through intelligent tools that interpret , automate , and provide contextual guidance. This approach leverages (AI) techniques, such as large models (LLMs) and interfaces, to bridge the gap between user intent and technical implementation, transforming EUD from rule-based scripting to conversational and generative processes. By democratizing access to AI capabilities, it empowers domain specialists—like educators, healthcare workers, or owners—to build tailored solutions without formal programming training, fostering innovation in areas such as personalized tools and IoT automations. Key mechanisms include no-code/low-code platforms augmented with AI, where users describe requirements in plain language, and systems generate code or configurations accordingly. For instance, LLMs like facilitate end-user tasks such as website creation or robot programming by translating natural language prompts into executable outputs, with studies showing novices completing programming exercises 15% faster when assisted. Component-based tools, such as Teachable Machine, allow users to train neural networks via drag-and-drop interfaces or simple data uploads, enabling customization of AI models for specific needs like image recognition without algorithmic expertise. Wizard-of-Oz style interfaces further simplify model training by guiding users through iterative feedback loops, as seen in platforms for development. These methods prioritize human-centered AI (HCAI), emphasizing user agency and ethical in AI-infused systems. Despite these benefits, AI-assisted EUD faces challenges related to reliability and usability. LLMs can produce hallucinations—plausible but incorrect outputs—necessitating built-in verification mechanisms like simulators or block-based previews to build user trust, which often declines with unpredictable results. Systematic reviews highlight a of on full AI creation (only 2 out of 22 studies), with most efforts focused on customization, and limited support for collaborative scenarios among end-users. Additionally, users must develop prompting skills to elicit accurate responses, and ethical concerns arise around amplification if end-users inadvertently propagate flawed training data. Looking ahead, AI-assisted EUD is poised to integrate with emerging paradigms like intelligence augmentation (IA), where AI acts as a collaborative partner to enhance human creativity rather than replace it. Future developments may emphasize hybrid interfaces combining natural language with visual elements for better control, alongside standards for explainable AI to ensure transparency in end-user decisions. As of 2025, ongoing research, including the International Symposium on End-User Development (IS-EUD 2025), continues to advance these areas. This trajectory promises broader adoption in domains like smart environments and personalized analytics, provided ongoing research addresses verification overhead and interdisciplinary collaboration.

Integration with Emerging Technologies

End-user development (EUD) has increasingly integrated with to empower non-expert users in creating, customizing, and adapting complex systems, thereby democratizing access to advanced computational capabilities. This integration addresses the limitations of traditional programming by providing intuitive interfaces, such as visual tools and interactions, that allow end-users to tailor technologies like (AI), the (IoT), and (XR) to specific needs without deep technical knowledge. Such synergies enhance personalization, efficiency, and innovation, though they also introduce challenges like barriers and ethical considerations in user-driven adaptations. In the realm of AI, EUD facilitates the creation and modification of AI-based systems by non-technical users, enabling personalization that reduces biases inherent in expert-designed models and improves system utility for diverse applications. For instance, tools like Teachable Machine allow users to train models for image classification through simple web-based interfaces, while platforms such as provide graphical workflows for data analytics, bridging the gap between end-users and AI development. This approach promises greater democratization of AI, as seen in symbiotic frameworks that combine AI's adaptive (e.g., recommender systems) with EUD's adaptable (e.g., meta-design environments like ), fostering human-centered innovation. However, pitfalls include filter bubbles from over-reliance on AI adaptations and participation overload in EUD processes, necessitating design guidelines that balance with user . For IoT ecosystems, EUD enables end-users to program interconnected devices through high-level abstractions, such as trigger-action rules or semantic models, allowing customization of smart environments without coding expertise. Approaches like EUPont introduce technology-independent representations that adapt applications to contextual changes, improving correctness and efficiency in tasks like , as demonstrated in user studies where participants created applications faster and with fewer errors compared to low-level tools. Semiotic engineering frames further support this by emphasizing human-centered configuration of IoT behaviors, such as adjusting smart lighting based on user preferences, thus making complex device interactions accessible and intuitive. These integrations highlight EUD's role in mitigating IoT's rigidity, though they require robust interfaces to handle device heterogeneity. Integration with XR technologies, including (VR) and (AR), leverages EUD to support immersive content creation directly within virtual environments, reducing the need for traditional development pipelines. Tools like VREUD enable web-based authoring of interactive VR scenes, where users specify objects, interactions, and tasks visually, facilitating for applications like educational simulations. EUD approaches, such as those using conversational agents with , , and inputs, assist in building AR scenarios (e.g., smart home automations) and VR experiences (e.g., museum exhibitions), allowing end-users to define rules and verify in real-time. This enhances for non-designers in fields like and , though challenges persist in ensuring seamless multimodal interactions across diverse XR hardware.

References

  1. [1]
    End-User Development: An Emerging Paradigm - SpringerLink
    A new paradigm, based on a multidisciplinary approach involving several types of expertise, such as software engineering, human-computer interaction, CSCW.
  2. [2]
    End User Development: Survey of an Emerging Field for ...
    Jun 10, 2013 · End-User Development (EUD) can be defined as a set of methods, techniques, and tools that allow users of software systems, who are acting as non ...
  3. [3]
    End User Development | SpringerLink
    The present book is an effort to make many important aspects of the international discussion on End-User Development (EUD) available to a broader audience.
  4. [4]
    [2304.09863] End-User Development for Artificial Intelligence - arXiv
    Apr 14, 2023 · This paper presents a systematic literature review that aims to shed the light on the current landscape of EUD for AI systems.
  5. [5]
    End-user development for democratising artificial intelligence
    Aug 19, 2022 · It aims at proposing approaches to empower end users to develop and adapt systems at a level of complexity that is adequate to their expertise, ...
  6. [6]
    (PDF) End-user development for personalizing applications, things ...
    End-User Development (EUD) is a growing research field aiming to provide people without programming experience with concepts, methods and tools to allow ...
  7. [7]
    Reconsidering End-User Development Definitions - SpringerLink
    Jun 24, 2021 · They define EUD as “a set of methods, techniques, and tools that allow users of software systems, who are acting as non-professional software ...
  8. [8]
  9. [9]
    End-User Development
    Summary of each segment:
  10. [10]
    30-plus years of HyperCard, the missing link to the Web - Ars Technica
    May 25, 2019 · As late as August 2002, there were probably 10,000 HyperCard developers. Three years after its initial episode on the software, the Computer ...
  11. [11]
    The forgotten software that inspired our modern world - BBC
    Jul 23, 2019 · However, computing has changed since HyperCard's heyday in the 1990s (it stopped being updated in 1998 and stopped being sold by Apple in 2004).
  12. [12]
    A Small Matter of Programming - MIT Press
    A Small Matter of Programming asks why it has been so difficult for end users to command programming power and explores the problems of end user-driven ...
  13. [13]
  14. [14]
    The state of the art in end-user software engineering
    This article summarizes and classifies research on these activities, defining the area of End-User Software Engineering (EUSE) and related terminology.Abstract · Information · Publication HistoryMissing: seminal | Show results with:seminal
  15. [15]
  16. [16]
    [PDF] The State of the Art in End-User Software Engineering - MIT Media Lab
    We start by proposing definitions of programming, end-user programming, and end-user software engineering, focusing on differences in intents and priorities ...Missing: seminal | Show results with:seminal
  17. [17]
    [PDF] END-USER DEVELOPMENT: AN EMERGING PARADIGM
    Users provide example interactions and the system infers a routine from them (Lieberman 2001). Incremental programming. This is close to traditional programming ...
  18. [18]
    [PDF] End Users Development and Evaluation of Systems - Peter Lo
    Types of End-User Development Projects –. Enquiries and Reports. ▫ The application systems already exist and the users learn to use special enquiry software ...
  19. [19]
    [PDF] Low-Code Development and End-User Development - CEUR-WS
    “End-user development can be defined as a set of methods, techniques, and tools that allow users of software systems, who are acting as non-professional ...
  20. [20]
    What Is No Code? | IBM
    No-code is a software development approach that enables users to create applications and automate business processes without writing code.
  21. [21]
    Evaluating low-code development platforms with the CD score - Scientific Reports
    ### Summary of Evaluation of Low-Code Platforms, Key Findings, and Relation to End-User Development
  22. [22]
    None
    ### Summary of Systematic Literature Review on End-User Development (EUD) for AI
  23. [23]
    [PDF] End-User Programming - CMU School of Computer Science
    ▫ Some “Domain-Specific Languages” (DSL) ... Flash, Visual Basic, Javascript, spreadsheets, etc., but ... Examples of Visual Programming. ▫ Flowcharts and ...
  24. [24]
    End-user training: an empirical study comparing on-line practice ...
    Hypercard is a hybrid program which contains an integrated set of text and graphics tools along with an end-user programming language, HypertalkTM, which ...
  25. [25]
    AI-Supported EUD for Data Visualization: An Exploratory Case Study
    As recently noted in [1], knowledge-intensive work practices can be supported by better end-user development (EUD) tools, but this is not sufficient. What ...
  26. [26]
    [PDF] Two Case Studies of Adapting Language Models for Education
    Jun 16, 2025 · Our research shows that adaptable AI systems can help educators improve teaching methods and facilitate language learning with EUD, but there ...
  27. [27]
    [PDF] Alchemist: LLM-Aided End-User Development of Robot Applications
    Mar 14, 2024 · Alchemist: LLM-Aided End-User Development of Robot Applications. HRI '24, March 11–14, 2024, Boulder, CO, USA rectify these errors e ectively ...
  28. [28]
    None
    ### Summary of "Evaluating the Costs and Benefits of End-User Development"
  29. [29]
    Organizational Strategies for End-User Development—A Systematic ...
    EUD is defined as a set of methods, techniques and tools that allow for nonprofessional users to act at some point of the life cycle of a software, such as ...
  30. [30]
    Evaluating the costs and benefits of end-user development
    This paper describes a cost benefit modelling approach to introducing EUD technology. Costs are incurred in configuring and learning the technology then in ...
  31. [31]
    [PDF] Contributions, Costs and prospects for End User Development
    End-user development (EUD) has been a Holy Grail of software tool developers since James. Martin launched 4th generation computing environments in the early ...
  32. [32]
  33. [33]
    Applying attention investment to end-user programming - IEEE Xplore
    Attention investment is a model to help the designers of end-user programmable systems understand the cognitive drivers for users deciding how to interact ...
  34. [34]
    [PDF] The Economics of End-User Development - wineme.uni-siegen.de
    Volker Wulf (wagner@fb5.uni-siegen.de) is an associate professor at the University of Siegen and a senior researcher at Fraunhofer Insti- tute for Applied ...
  35. [35]
    [PDF] The State of the Art in End-User Software Engineering
    Because end-user programming is a role, one person can be both an end-user ... end-user development environments. 4.1. Attention Investment. The first ...
  36. [36]
    Meta-design: a manifesto for end-user development
    End-user development (EUD) activities range from customization to component configuration and programming. Office software, such as the ubiquitous ...
  37. [37]
    [PDF] End-User Development and Meta-Design: Foundations for Cultures ...
    Meta-design does work when users are part of the participatory design effort in establishing a meta-design framework, including support for intrinsic and ...
  38. [38]
    [PDF] Situated Learning - Legitimate Peripheral Participation - wendy norris
    "Legitimate peripheral participation" provides a way to speak about the relations between newcom ers and old-timers, and about activities, identities, artifacts ...
  39. [39]
    Supporting the cooperation of end-user programmers through social ...
    This paper discusses how insights from Communities of Practice research may be implemented using mechanisms from recent developments in social software. From ...<|control11|><|separator|>
  40. [40]
    [PDF] Pair Collaboration in End-User Debugging
    Pair collaboration has precedents in the field of software development. It has been used by professional programmers in the Extreme Programming develop- ment ...
  41. [41]
    Involving End Users into Collaborative Software Development: The Showcase of CloudTeams
    ### Summary of End-User Involvement in Collaborative Software Development (CloudTeams)
  42. [42]
    The Mediating Role of Multiple Representations and Application Units
    Tailoring as Collaboration: The Mediating Role of Multiple Representations and Application Units. Published: March 2000. Volume 9, pages 75–100, (2000); Cite ...
  43. [43]
    Supporting End User Development in Community Computing
    End user development (EUD) is about exercising greater control by non-developers and non-programmers over technology, such as enabling the design of computer- ...<|control11|><|separator|>
  44. [44]
  45. [45]
    Meta-Design: a Manifesto For End-User Development
    Sep 1, 2004 · To evolve, EUD development needs technologies that foster collaboration between communities of end-user designers and users and managers ...
  46. [46]
  47. [47]
    Chances and Limits of End-User Development: A Conceptual Model
    Aug 9, 2025 · This paper looks at what seems to be a recent trend in (agile) software development: End- User Development (EUD). EUD can be seen both as ...<|control11|><|separator|>
  48. [48]
    (PDF) End User Development and Information Security Culture
    Aug 7, 2025 · End user development has grown in strength during the last decades. The advantages and disadvantages of this phenomenon have been debated over.
  49. [49]
  50. [50]
    [PDF] End User Security and Privacy Concerns with Smart Homes - USENIX
    Jul 12, 2017 · challenges in the home [37], and privacy issues with using ... In Proceedings of International Symposium on. End User Development (IS-EUD), 2015.
  51. [51]
    [PDF] Challenges of End-user Programmers - TU Delft Research Portal
    [28] Blackwell, A. F. (2017). End-user developers - what are they like? New Perspectives in End-User Development, pages 121–135.
  52. [52]
    [PDF] a Systematic Mapping Study - Ricerca UniBa
    Maceli, M. G. (2017). Tools of the Trade: A Survey of Technologies in End-User Development Literature. In S. Barbosa, P. Markopoulos, F. Paternò ...
  53. [53]
    [PDF] Exploring the Role of End Users in Performing EUD with Large ...
    A first definition of End-User Development (EUD) was proposed in 2006 by the related European. Network of Excellence conceiving it as “a set of methods ...<|control11|><|separator|>
  54. [54]
    (PDF) End-User Development for Artificial Intelligence: A Systematic ...
    Aug 7, 2025 · End-User Development for Artificial Intelligence: A Systematic Literature Review ... Domain-Specific Tools. ACM. Transactions on Computer ...
  55. [55]
  56. [56]
    [PDF] Differentiating and Integrating AI and EUD
    Jun 16, 2023 · The framework presented in the paper identifies the promises and pitfalls of Artificial Intelligence (AI) and End-User Development (EUD).
  57. [57]
    A High-Level Approach Towards End User Development in the IoT
    The aim of this ``high-level' representation is to allow end-users to create abstract IoT applications that adapt to different contextual situations. We ...
  58. [58]
    A high-level semantic approach to End-User Development in the ...
    We introduce EUPont, a high-level semantic model for EUD in the IoT. EUPont allows the creation of high-level IoT applications, able to adapt to different ...
  59. [59]
  60. [60]
    End-user development for interactive web-based virtual reality scenes
    We provide an open-source web-based End-User Development (EUD) tool, called VREUD, that supports the rapid construction and execution of interactive VR scenes.
  61. [61]
    [PDF] End-User Development for eXtended Reality using a multimodal ...
    Jun 4, 2024 · In the latter, users build XR experiences directly within the virtual environment, allowing them to check interaction usability and user ...<|control11|><|separator|>