End-user computing
Encyclopedia
In computing
Computing
Computing is usually defined as the activity of using and improving computer hardware and software. It is the computer-specific part of information technology...

, End User Computing (EUC) refer to systems in which non-programmers can create working application
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...

s. EUC is a group of approaches to computing that aim at better integrating end users
User (computing)
A user is an agent, either a human agent or software agent, who uses a computer or network service. A user often has a user account and is identified by a username , screen name , nickname , or handle, which is derived from the identical Citizen's Band radio term.Users are...

 into the computing environment. These approaches attempt to realize the potential for high-end computing to perform in a trustworthy manner in problem solving of the highest order.

The EUC Ranges section describes two types of approaches that are at different ends of a spectrum. A simple example of these two extremes can use the SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....

 context.
The first approach would have canned queries and reports that for the most part would be invoked with buttons and/or simple commands. In this approach, a computing group would keep these canned routines up to date through the normal development/maintenance methods.

For the second approach, SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....

 administration would allow for end-user involvement at several levels including administration itself. Users would also define queries though the supporting mechanism may be constrained in order to reduce the likelihood of run-away conditions that would have negative influence on other users. We see this already in some business intelligence
Business intelligence
Business intelligence mainly refers to computer-based techniques used in identifying, extracting, and analyzing business data, such as sales revenue by products and/or departments, or by associated costs and incomes....

 methods which build SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....

, including new databases, on the fly. Rules might help dampen effects that can occur with the open-ended environment. The process would expect, and accommodate, the possibility of long run times, inconclusive results and such. These types of unknowns are undecidable
Undecidable
Undecidable may refer to:In mathematics and logic* Undecidable problem - a decision problem which no algorithm can decide* "Undecidable" is sometimes used as a synonym of "independent", where a formula in mathematical logic is independent of a logical theory if neither that formula nor its negation...

 'before the fact'; the need to do 'after the fact'
A Posteriori
Apart from the album, some additional remixes were released exclusively through the iTunes Store. They are:*"Eppur si muove"  – 6:39*"Dreaming of Andromeda" Apart from the album, some additional remixes were released exclusively through the iTunes Store. They are:*"Eppur si muove" (Tocadisco...

 evaluation of results is a prime factor of many higher-order computational situations but cannot (will not) be tolerated by an end user in the normal production mode.


Between these two extremes view of EUC there are many combinations. Some of the factors contributing to the need for further EUC research are knowledge
Knowledge
Knowledge is a familiarity with someone or something unknown, which can include information, facts, descriptions, or skills acquired through experience or education. It can refer to the theoretical or practical understanding of a subject...

 processing, pervasive computing, issues of ontology
Upper ontology (computer science)
In information science, an upper ontology is an ontology which describes very general concepts that are the same across all knowledge domains. The most important function of an upper ontology is to support very broad semantic interoperability between a large number of ontologies accessible...

, interactive visualization
Interactive visualization
Interactive visualization is a branch of graphic visualization in computer science that involves studying how humans interact with computers to create graphic illustrations of information and how this process can be made more efficient....

, and the like.

EUC Ranges

EUC might work by one type of approach that attempts to integrate the human interface ergonomically
Ergonomics
Ergonomics is the study of designing equipment and devices that fit the human body, its movements, and its cognitive abilities.The International Ergonomics Association defines ergonomics as follows:...

 into a user centered design system throughout its life cycle
Technology lifecycle
Most new technologies follow a similar technology maturity lifecycle describing the technological maturity of a product. This is not similar to a product life cycle, but applies to an entire technology, or a generation of a technology....

. In this sense, EUC's goal is to allow unskilled staff to use expensive and highly skilled knowledge in their jobs, by putting the knowledge
Knowledge
Knowledge is a familiarity with someone or something unknown, which can include information, facts, descriptions, or skills acquired through experience or education. It can refer to the theoretical or practical understanding of a subject...

 and expertise into the computer and teaching the end user how to access it. At the same time, this approach is used when highly critical tasks are supported by computational systems (commercial flight, nuclear plant, and the like).

Another approach to EUC allows end users (SMEs
Subject Matter Expert
A subject matter expert or domain expert is a person who is an expert in a particular area or topic. When spoken, sometimes the acronym "SME" is spelled out and other times voiced as a word ....

, domain experts) to control and even perform software engineering
Software engineering
Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...

 and development. In this case, it can be argued that this type of approach results mainly from deficiencies in computing that could be overcome with better tools and environments. But, high-end roles for the computer in non-trivial domains necessitate (at least, for now) a more full interchange (bandwidth for conversation) that is situational and subject to near exhaustive scrutiny (there are limits influencing how far we can go (bringing up, the necessity for a behavioral
Duck test
The duck test is a humorous term for a form of inductive reasoning. This is its usual expression:The test implies that a person can identify an unknown subject by observing that subject's habitual characteristics...

 (also, see black box below) framework)). Such cannot be filled by a pre-defined system in today's world. In a sense, the computer needs to have the same credentials as does a cohort
Cohort (statistics)
In statistics and demography, a cohort is a group of subjects who have shared a particular time together during a particular time span . Cohorts may be tracked over extended periods in a cohort study. The cohort can be modified by censoring, i.e...

 (scientific method
Scientific method
Scientific method refers to a body of techniques for investigating phenomena, acquiring new knowledge, or correcting and integrating previous knowledge. To be termed scientific, a method of inquiry must be based on gathering empirical and measurable evidence subject to specific principles of...

 of peer review
Peer review
Peer review is a process of self-regulation by a profession or a process of evaluation involving qualified individuals within the relevant field. Peer review methods are employed to maintain standards, improve performance and provide credibility...

) in the discipline. This type of computing falls on the more 'open' side of the fence where scientific knowledge is not wrapped within the cloak of IP.

In the first type of approach of EUC described above, it appears easier to teach factory workers, for example, how to read dials, push buttons, pull levers, and log results than to teach them the manufacturing process and mathematical models. The current computing trend is to simulate a console with similar dials, sliders, levers, and switches, which the end user is taught to use. To further reduce end user training, computer consoles all contain components which are shaped, labeled, coloured, and function similarly. EUC developers assume that once the end user knows what and how a particular lever works, they will quickly identify it when it appears in a new console. This means that once staff learns one console, they will be able to operate all consoles. Admittedly each console will have new components, but training is limited to those, not the whole console. This approach requires more than just Pavlovian responses as the console content will have meaning that is of use and power to the particular computing domain. That is, there may be training that reduces the time between sensor reading and action (such as the situation for a pilot of a commercial plane) however, the meaning behind the reading will include other sensor settings as well as whole context that may be fairly involved.

Computing of this type can be labelled black box where trust will be an essential part, behavioral analysis is the name of the game (see Duck test
Duck test
The duck test is a humorous term for a form of inductive reasoning. This is its usual expression:The test implies that a person can identify an unknown subject by observing that subject's habitual characteristics...

), and there is a disparate (and very, very wide) gap between the domain and the computer-support ontologies
Ontology (computer science)
In computer science and information science, an ontology formally represents knowledge as a set of concepts within a domain, and the relationships between those concepts. It can be used to reason about the entities within that domain and may be used to describe the domain.In theory, an ontology is...

.

In the other type of EUC described above, it has been argued that a (teaching programming and computing concepts to a domain expert (say, one of the sciences or engineering
Engineering
Engineering is the discipline, art, skill and profession of acquiring and applying scientific, mathematical, economic, social, and practical knowledge, in order to design and build structures, machines, devices, systems, materials and processes that safely realize improvements to the lives of...

 disciplines) and letting the expert develop rules (this type of action can be subsumed under the topic of business rules)) is easier than b (teaching the intricacies of a complex discipline to a computer worker). b is the normal approach of the IT-driven situation. a has been the reality since day one of computing in many disciplines. One may further argue that resolving issues of a and b is not unlike the interplay between distributed
Distributed computing
Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...

 and centralized
Centralized system
In telecommunications, a centralized, or centralised system, is one in which most communications are routed through one or more major central hubs. Such a system allows certain functions to be concentrated in the system's hubs, freeing up resources in the peripheral units...

 processing (which is an age-old concern in computing). In this sense of EUC, there may be computer scientists supporting decisions about architecture, process, and GUI. However, in many cases, the end user owns the software components. One thrust related to this sense of EUC is a focus on providing better languages to the user. ICAD
ICAD
ICAD was a Knowledge-Based Engineering system that was based upon the Lisp programming language...

 was an example in the KBE
Knowledge-based engineering
Knowledge-based engineering is a discipline with roots in computer-aided design and knowledge-based systems but has several definitions and roles depending upon the context. An early role was support tool for a design engineer generally within the context of product design...

 context. Of late, this discipline has moved to a co-joint architecture that features advanced interactive domain visualization coupled with a complicated API accessed via VBA
VBA
VBA can mean:* Virtual backup appliance, a virtual machine used to back up other virtual machines* Visual Basic for Applications, the application edition of Microsoft's Visual Basic programming language...

, C++
C++
C++ is a statically typed, free-form, multi-paradigm, compiled, general-purpose programming language. It is regarded as an intermediate-level language, as it comprises a combination of both high-level and low-level language features. It was developed by Bjarne Stroustrup starting in 1979 at Bell...

, and the like. This type of co-jointness is an example of a domain tool augmented with non-trivial extensibility.

Trend

The historical view regarding end users is being eroded by the internet and wireless communication, where the traditional end user is able to actively contribute and add value to the computer system. wiki
Wiki
A wiki is a website that allows the creation and editing of any number of interlinked web pages via a web browser using a simplified markup language or a WYSIWYG text editor. Wikis are typically powered by wiki software and are often used collaboratively by multiple users. Examples include...

s are one example where end users provide the content and free the webmaster to manage the site. Another example within the computer field is free software
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

, where end users can engage in all aspects of software development, from feature requests, through testing and reviews, to usability, documentation, and distribution. Music, pictures, and documents are remixed and edited to satisfy personal taste and demand. The consequence is that many countries and industries have been slow or unwilling to adjust to this emerging society, but some have seen the potential and are exploring economic possibilities.

Another trend is where users specify, and even develop, rules that may be fairly normal relationships (SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....

) or be hard-core numerical processes
Applied mathematics
Applied mathematics is a branch of mathematics that concerns itself with mathematical methods that are typically used in science, engineering, business, and industry. Thus, "applied mathematics" is a mathematical science with specialized knowledge...

 that may require attention being given to serious computational characteristics, such as ill-conditioning, parallelisms
Parallel computing
Parallel computing is a form of computation in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved concurrently . There are several different forms of parallel computing: bit-level,...

. and similar issues of an ongoing nature.

Research

The human interface receives continuous attention as emerging interfaces reveal more possibilities and risks. The quest to both internationalize (i18n) and localize (L10n
L10n
For L10n or L10N , see:* Language localisation* Internationalization and localization...

) software is hampered by computers designed for the English alphabet, but other major languages, such as Chinese
Chinese language
The Chinese language is a language or language family consisting of varieties which are mutually intelligible to varying degrees. Originally the indigenous languages spoken by the Han Chinese in China, it forms one of the branches of Sino-Tibetan family of languages...

, Japanese
Japanese language
is a language spoken by over 130 million people in Japan and in Japanese emigrant communities. It is a member of the Japonic language family, which has a number of proposed relationships with other languages, none of which has gained wide acceptance among historical linguists .Japanese is an...

, and Arabic, have different requirements.

Other studies range from website accessibility
Accessibility
Accessibility is a general term used to describe the degree to which a product, device, service, or environment is available to as many people as possible. Accessibility can be viewed as the "ability to access" and benefit from some system or entity...

 to pervasive computing, with the focus ranging from the human to the computer. The issue centres around how much the human can safely and reliably adjust to the computer's I/O devices on the one hand, and how unobtrusively the computer can detect the human's needs on the other.

Furthermore, issues related to computing ontologies (example: the Language/Action perspective
Language/action perspective
Language/Action Perspective is based upon the notion as proposed by Terry Winograd that "expert behavior requires an exquisite sensitivity to context" and that such sensitivity is more in the realm of the human than in that of the artificial....

 has found success in CRM
Customer relationship management
Customer relationship management is a widely implemented strategy for managing a company’s interactions with customers, clients and sales prospects. It involves using technology to organize, automate, and synchronize business processes—principally sales activities, but also those for marketing,...

, etc.) continue to be of interest to EUC.

Analysis

The concepts related to the end user cover a wide range (novice user to intellectual borg—see Slogan 2), hence End User Computing can have a range of forms and values. Most early computer systems were tightly controlled by an IT department; 'users' were just that. However, at any point in the evolution of computer systems through time, there was serious work in several domains that required user development. The dynamics of the power struggles between centralized and decentralized computing have been a fact; this was partially due to the emergence of the mid-sized computers (VAX
VAX
VAX was an instruction set architecture developed by Digital Equipment Corporation in the mid-1970s. A 32-bit complex instruction set computer ISA, it was designed to extend or replace DEC's various Programmed Data Processor ISAs...

, etc.). Then, the advent of the personal workstation opened up the door, so to speak, since it allowed a more pervasive type of computation to emerge. The recent advent of 'web' services has extended the issues to a more broad scope.

In the sense of serious domain computing and given the intertwining of computation
Computation
Computation is defined as any type of calculation. Also defined as use of computer technology in Information processing.Computation is a process following a well-defined model understood and expressed in an algorithm, protocol, network topology, etc...

 into all advanced disciplines, any tool (inclusive of any type of capability related to a domain/discipline) that is provided by a computer becomes part of the discipline (methodology, etc.).

As such, the issue arises about how open the tool is to scrutiny. Some disciplines require more understanding of the tool set than do others. That is, tools that are operational in scope require less understanding than those that are ontological. As an example of the latter type of influence on disciplines, consider the impact that the computer has had on the scientific method.

Some of the issues related to End User Computing concern architecture (iconic versus language interface, open versus closed, and others). These continue to be studied. Other issues relate to IP, configuration, maintenance, ... End User Computing allows more user input into system affairs that can range from personalization to full-fledged ownership of the system.

Examples of End User Computing are systems built using the 4GLs
Fourth-generation programming language
A fourth-generation programming language is a programming language or programming environment designed with a specific purpose in mind, such as the development of commercial business software. In the history of computer science, the 4GL followed the 3GL in an upward trend toward higher...

, such as MAPPER or SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....

, or one of the 5GLs
Fifth-generation programming language
A fifth-generation programming language is a programming language based around solving problems using constraints given to the program, rather than using an algorithm written by a programmer...

, such as ICAD
ICAD
ICAD was a Knowledge-Based Engineering system that was based upon the Lisp programming language...

. ICAD
ICAD
ICAD was a Knowledge-Based Engineering system that was based upon the Lisp programming language...

 (in the KBE
Knowledge-based engineering
Knowledge-based engineering is a discipline with roots in computer-aided design and knowledge-based systems but has several definitions and roles depending upon the context. An early role was support tool for a design engineer generally within the context of product design...

 domain) stands as a prime example since it is associated with the pervasive use of Lisp
Lisp programming language
Lisp is a family of computer programming languages with a long history and a distinctive, fully parenthesized syntax. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today; only Fortran is older...

 (one of the 3GLs
Third-generation programming language
A third-generation programming language is a refinement of a second-generation programming language. The second generation of programming languages brought logical structure to software. The third generation brought refinements to make the languages more programmer-friendly...

) by Engineers to accomplish remarkable effects through a long economic cycle.

Slogans

  • Computing concerns and good End User Computing can be antithetically
    Antithesis
    Antithesis is a counter-proposition and denotes a direct contrast to the original proposition...

     related.
  • Good End User Computing practices might help temper things such as the AI Winter
    AI winter
    In the history of artificial intelligence, an AI winter is a period of reduced funding and interest in artificial intelligence research. The process of hype, disappointment and funding cuts are common in many emerging technologies , but the problem has been particularly acute for AI...

    .
  • The computational needs to wed with the phenomenal (are 'borgs' inevitable?).

  • There is always more than meets the eye (or, GUI
    Graphical user interface
    In computing, a graphical user interface is a type of user interface that allows users to interact with electronic devices with images rather than text commands. GUIs can be used in computers, hand-held devices such as MP3 players, portable media players or gaming devices, household appliances and...

    , or any interface, is only part of the truth).

See also

  • Software engineering
    Software engineering
    Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software...

  • Usability engineering
    Usability engineering
    Usability engineering is a field that is concerned generally with human-computer interaction and specifically with making human-computer interfaces that have high usability or user friendliness...

  • User (computing)
    User (computing)
    A user is an agent, either a human agent or software agent, who uses a computer or network service. A user often has a user account and is identified by a username , screen name , nickname , or handle, which is derived from the identical Citizen's Band radio term.Users are...

  • End-user (computer science)
  • Situational application
    Situational application
    In computing, a situational application is "good enough" software created for a narrow group of users with a unique set of needs. The application typically has a short life span, and is often created within the group where it is used, sometimes by the users themselves...

  • End user development
    End user development
    End-user development is a research topic within the field of computer science and human-computer interaction, describing activities or techniques that allow end-users to program computers...

  • Usability
    Usability
    Usability is the ease of use and learnability of a human-made object. The object of use can be a software application, website, book, tool, machine, process, or anything a human interacts with. A usability study may be conducted as a primary job function by a usability analyst or as a secondary job...

  • User-centered design
    User-centered design
    In broad terms, user-centered design or pervasive usability is a design philosophy and a process in which the needs, wants, and limitations of end users of a product are given extensive attention at each stage of the design process...

  • User interface
    User interface
    The user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...

  • Computer systems
  • Scientific method
  • Knowledge-Based Engineering
    Knowledge-based engineering
    Knowledge-based engineering is a discipline with roots in computer-aided design and knowledge-based systems but has several definitions and roles depending upon the context. An early role was support tool for a design engineer generally within the context of product design...

  • Computer addiction
    Computer addiction
    Computer addiction is a loosely used term for the excessive use of computers to the extent that it interferes with daily life. Excessive use may explain problems in social interaction, mood, personality, work ethic, relationships, thought processes, or sleep deprivation.The Diagnostic and...

  • Digital persona
  • Luser
    Luser
    In Internet slang, a luser is a painfully annoying, stupid, or irritating computer user.It is a portmanteau of "loser" and "user"....

  • Defensive computing
    Defensive computing
    Defensive computing is a form of practice for computer users to help reduce the risk of computing problems, by avoiding dangerous computing practices. The primary goal of this method of computing is to be able to anticipate and prepare for potentially problematic situations prior to their...

  • Decentralized computing
    Decentralized computing
    Decentralized computing is the allocation of resources, both hardware and software, to each individual workstation, or office location. In contrast, centralized computing exists when the majority of functions are carried out, or obtained from a remote centralized location. Decentralized computing...


External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK