End-user computing: Difference between revisions

Content deleted Content added
m Correcting spelling: accomodates->accommodates
No edit summary
Tags: Mobile edit Mobile web edit Advanced mobile edit
 
(146 intermediate revisions by 100 users not shown)
Line 1:
{{Short description|Systems in which users can make apps}}
{{cleanupdate|April 13}}
{{howto|date=July 2021}}
'''End User Computing''' (EUC) is a group of approaches to computing that aim at better integrating [[End-user_%28computer_science%29|end users]] into the computing environment or at improving 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.
'''End-user computing''' ('''EUC''') refers to systems in which non-[[programmer]]s can create working [[Application software|application]]s.<ref name="EUC">{{cite conference | url=http://dl.acm.org/citation.cfm?id=1120304 | title=End-user computing | publisher=[[Association for Computing Machinery]] | access-date=30 December 2015 | author=Goodall, Howie | book-title=CHI EA '97 CHI '97 Extended Abstracts on Human Factors in Computing Systems | date = March 1997 | conference=ACM CHI 97 Human Factors in Computing Systems Conference | ___location=Los Angeles, Los Angeles County, California, United States of America | pages=132 | isbn=0-89791-926-2}}</ref> EUC is a group of approaches to computing that aim to better integrate [[user (computing)|end users]] into the computing environment. These approaches attempt to realize the potential for high-end computing to perform problem-solving in a trustworthy manner.<ref>McBride, Neil, "[https://www.dora.dmu.ac.uk/handle/2086/213 Towards User-Oriented control of End-User Computing in Large Organizations]"</ref><ref>Mahmood, Adam, [http://www.idea-group.com/bookseries/details.asp?id=3 Advances in End User Computing Series] {{Webarchive|url=https://web.archive.org/web/20070129022235/http://www.idea-group.com/bookseries/details.asp?id=3 |date=2007-01-29 }} University of Texas, USA, {{ISSN|1537-9310}}</ref>
 
End-user computing can range in complexity from users simply clicking a series of buttons, to citizen developers<ref>{{Cite web|url=https://www.gartner.com/en/information-technology/glossary/citizen-developer|title=Definition of Citizen Developer - Gartner Information Technology Glossary}}</ref> writing scripts in a controlled [[scripting language]], to being able to modify and execute code directly.
A simple example of these two extremes can use the [[SQL]] 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 the case of the first, a computing group would keep these canned routines up to date through the normal development/maintenance methods. For the latter approach, [[SQL]] administration would allow for end-user definition of queries though these 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]] methods which build [[SQL]] on the fly. There may be rules that again dampen effects, however the open-ended environment expects, and accommodates, the long run times (basically, these are unknown [[apriori]]).
 
Examples of end-user computing are systems built using [[fourth-generation programming language]]s, such as [[MAPPER]] or [[SQL]], or one of the [[fifth-generation programming language]]s, such as [[ICAD (software)|ICAD]].
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]] processing, pervasive computing, interactive [[visualization]] (see [[Duck_test|Duck test]]) and [[analysis]] coupling schemes, and the like.
 
==EUC RangesFactors==
Factors contributing to the need for further EUC research include [[knowledge]] processing, [[pervasive computing]], issues of [[upper ontology|ontology]], [[interactive visualization]], and the like.
EUC might work by one type of approach that attempts to integrate the [[human interface]] [[ergonomics|ergonomically]] into a [[user centered design]] system throughout its [[technology lifecycle|life cycle]]. 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]] 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 ([[FAA|commercial flight]], [[nuclear plant]], and the like).
 
Some of the issues related to end-user computing concern [[software architecture]] ([[Graphical user interface|iconic]] versus language interfaces, open versus closed,{{clarify|date=July 2013}} and others). Other issues relate to [[intellectual property]], configuration and maintenance. End-user computing allows more user-input into system affairs that can range from [[personalization]] to full-fledged ownership of a system.
Another approach to EUC allows end users ([[Subject_Matter_Expert|SME]]s, ___domain experts) to control and even perform [[software engineering]] 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 [[Duck_test|behavioral]] (also, see [[Black_box_%28systems%29|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]] ([[scientific method]] of [[peer review]]) in the discipline. Needless to say, this type of computing falls on the more 'open' side of the fence where scientific knowledge is not wrapped within the cloak of IP.
 
==EUC strategy==
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, labled, 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.
EUC applications should not be evolved by accident, but there should be a defined EUC strategy.{{citation needed|date=May 2016}} Any [[Application Architecture]] Strategy / IT Strategy should consider the white spaces in automation (enterprise functionality not automated by [[Enterprise resource planning|ERP]] / [[Enterprise Grade Applications]]). These are the potential areas where EUC can play a major role.{{citation needed|date=May 2016}} Then ASSIMPLER parameters{{which|date=May 2016}} should be applied{{by whom|date=May 2016}} to these white spaces to develop the EUC strategy. (ASSIMPLER stands for availability, scalability, security, interoperability, maintainability, performance, low [[cost of ownership]], extendibility and reliability.<ref>
Compare: {{cite web
|last1= Vanarse|first1= Mandar|title= Business Value Assurance during the transformation journey.
|url= http://www.wipro.com/documents/business-value-assurance-during-the-transformation-journey.pdf
|website= Wipro|publisher= Wipro Limited|access-date= 26 July 2015
| quote = How should the business services be designed in terms of availability, security, scalability, interoperability, maintenance, performance, lower cost, extendibility and reliability (ASSIMPLER) from end consumer perspective?
}}
</ref>)
 
In businesses, an end-user concept gives workers more flexibility, as well as more opportunities for better productivity and creativity. However, EUC will work only when leveraged correctly. That’s why it requires a full-fledged strategy. Any strategy should include all the tools users might need to carry out their tasks and work more productively.
Computing of this type can be labelled [[Black_box_%28systems%29|black box]] where trust will be an essential part, behavioral analysis is the name of the game (see [[Duck_test|Duck test]]), and there is a disparate (and very, very wide) gap between the ___domain and the computer-support [[Ontology_%28computer_science%29|ontologies]].
 
'''Types of EUC'''
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]] 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<!---need to clarify this further, but, for now, read IT/IS-->). '''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_computing|distributed]] and [[Centralized_system|centralized]] 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]] was an example in the [[Knowledge-Based_Engineering|KBE]] 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]], [[C++]], and the like. This type of co-jointness is an example of a ___domain tool augmented with non-trivial extensibility.
 
End-user computing covers a broad range of user-facing resources, including:
==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]]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 [[FLOSS]], where end users 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.
 
* desktop and notebook computers;
Another trend is where users specify, and even develop, rules that may be fairly normal relationships ([[SQL]]) or be hard-core [[Applied_mathematics|numerical processes]] that may require attention being given to serious computational characteristics, such as ill-conditioning, [[Parallel_computing|parallelisms]]. and similar issues of an ongoing nature.
* desktop operating systems and applications;
* scripting languages such as robotic desktop automation or RDA;
* smartphones and wearables;
* mobile, web and cloud applications;
* virtual desktops and applications<ref>{{Cite web|url=https://searchmobilecomputing.techtarget.com/definition/end-user-computing-platform-EUC-platform|title=What is end-user computing (EUC)? - Definition from WhatIs.com|website=SearchMobileComputing|language=en|access-date=2019-12-04}}</ref>
 
==EUC risk drivers==
==Research==
Business owners should understand that every user-controlled app needs to be monitored and supervised. Otherwise, organization risk facing a lot of problems and losses if end-users don’t follow company policy or leave their job. In functions such as finance, accounting and regulated activities, unmanaged EUC may expose the organization to regulatory compliance issues and fines.
The human interface receives continuous attention as emerging interfaces reveal more possibilities and risks. The quest to both internationalize ([[i18n]]) and localize ([[L10n]]) software is hampered by computers designed for the English alphabet, but other major languages, such as [[Chinese language|Chinese]], [[Japanese language|Japanese]], and [[Arabic]], have different requirements.
 
End-user computing operating and business risks may be driven by:
Other studies range from website [[accessibility]] 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 device]]s on the one hand, and how unobtrusively the computer can detect the human's needs on the other.
 
* lack of rigorous testing;
Furthermore, issues related to computing ontologies (example: the [[Language/Action_perspective]] has found success in [[Customer_Relationship_Management|CRM]], etc.) continue to be of interest to EUC.
* lack of version & change control;
* lack of documentation and reliance on end-user who developed it;
* lack of maintenance processes;
* lack of security;
* lack of audit trail;
* overreliance on manual controls.
 
==EUC risk management software==
==Analysis==
Many companies elect to leverage software to manage their EUC risks. Software can provide many benefits to organizations, including:
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]], 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.
 
* automation of risk management activities;
In the sense of serious ___domain computing and given the intertwining of [[computation]] 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.).
* reduction in manual effort required for manual controls;
* version controls for EUC applications;
* change controls for EUC applications.
 
Examples of EUC risk software include:
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#Computational_approaches|scientific method]].
 
* apparity<ref>{{cite web |title=End-user computing risk management solution of the year: Apparity |url=https://www.insuranceerm.com/content/awards/insuranceerm-annual-awards-2023-uk-and-europe/winners/end-user-computing-risk-management-solution-of-the-year-apparity.html |website=InsuranceERM |access-date=2 May 2023}}</ref>
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.
 
==See also==
Examples of End User Computing are [[ICAD]] and [[SQL]]. [[ICAD]] (in the [[Knowledge-Based_Engineering|KBE]] ___domain) stands as a prime example since it is associated with the pervasive use of [[Lisp_programming_language|Lisp]] by [[Engineers]] to accomplish remarkable effects through a long economic cycle.
* [[Decentralized computing]]
 
* [[Defensive computing]]
=== Slogans ===
* [[End-user development]]
* Computing concerns and good End User Computing can be [[Antithesis|antithetically]] related.
* ''[[Journal of Organizational and End User Computing]]''
* Good End User Computing practices might help temper things such as the [[AI Winter]].
* [[Knowledge-based engineering]]
* The computational needs to wed with the [[phenomenal]] (are 'borgs' inevitable?).
* [[Situational application]]
<!--:Note: '''[[Borg]]''', in this sense, may be inspired by science fiction, however the reality of [[Wearable_computing|wearables]] and embedded [[Integrated_circuit|chips]] ought to be considered. Witness, too, the recent article in an [[IEEE]] periodical about the use of embedded circuitry (such as, to regulate release of medication) in [[Psychiatry]] practice. Related discussion will cover [[cognition]], [[perception]], and much more (to be listed).-->
* There is always more than meets the eye (or, [[Graphical_user_interface|GUI]], or any [[User_interface_engineering|interface]], is only part of the [[truth]]).
 
<!-- The reason for this section is unclear to me
==Addiction==
When people use computers to the extent it disrupts their relationships and lifestyle, they are addicted. Common addictions include [[Internet Relay Chat]] and [[mudding]].
::(Note: this is a little strong in that '''gaming''' can be a respected form of [[training]] and [[education]]; [[Augmented_reality|augmented reality]] is getting serious money behind it; ...)
-->
 
== See also ==
* [[Software engineering]]
* [[Usability]]
* [[Usability engineering]]
* [[User (computing)]]
* [[End-user (computer science)]]
* [[Usability]]
* [[User interface]]
* [[ComputerUser-centered systemsdesign]]
 
* [[Scientific method#Computational approaches|Scientific method]]
==References==
* [[Knowledge-Based_Engineering]]
{{Reflist}}
* [[Computer addiction]]
* [[Mobile phones and driving safety]]
* [[Digital persona]]
* [[Luser]]
 
==External links==
* [http://eusesconsortium.org/ EUSES Consortium, a collaboration that researches end -user computing.]
* [https://www.researchgate.net/publication/308778531_RELATIONSHIP_BETWEEN_LEADERSHIP_AND_MORTGAGE_BANKING_END-USER_COMPUTING_EFFICIENCY Relationship Between Leadership and EUC Efficiency]
 
[[Category:SoftwareHuman–computer engineeringinteraction]]