This article contains instructions, advice, or how-to content .(July 2021) |
End-user computing (EUC) refers to systems in which non-programmers can create working applications. [1] EUC is a group of approaches to computing that aim to better integrate 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. [2] [3]
End-user computing can range in complexity from users simply clicking a series of buttons, to citizen developers [4] writing scripts in a controlled scripting language, to being able to modify and execute code directly.
Examples of end-user computing are systems built using fourth-generation programming languages, such as MAPPER or SQL, or one of the fifth-generation programming languages, such as ICAD.
Factors contributing to the need for further EUC research include knowledge processing, pervasive computing, issues of ontology, interactive visualization, and the like.
Some of the issues related to end-user computing concern software architecture (iconic versus language interfaces, open versus closed,[ clarification needed ] 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.
EUC applications should not be evolved by accident, but there should be a defined EUC strategy.[ citation needed ] Any Application Architecture Strategy / IT Strategy should consider the white spaces in automation (enterprise functionality not automated by ERP / Enterprise Grade Applications). These are the potential areas where EUC can play a major role.[ citation needed ] Then ASSIMPLER parameters[ which? ] should be applied[ by whom? ] 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. [5] )
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.
Types of EUC
End-user computing covers a broad range of user-facing resources, including:
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.
End-user computing operating and business risks may be driven by:
Many companies elect to leverage software to manage their EUC risks. Software can provide many benefits to organizations, including:
Examples of EUC risk software include:
Software testing is the act of checking whether software satisfies expectations.
In computer networking, a thin client, sometimes called slim client or lean client, is a simple (low-performance) computer that has been optimized for establishing a remote connection with a server-based computing environment. They are sometimes known as network computers, or in their simplest form as zero clients. The server does most of the work, which can include launching software programs, performing calculations, and storing data. This contrasts with a rich client or a conventional personal computer; the former is also intended for working in a client–server model but has significant local processing power, while the latter aims to perform its function mostly locally.
Interoperability is a characteristic of a product or system to work with other products or systems. While the term was initially defined for information technology or systems engineering services to allow for information exchange, a broader definition takes into account social, political, and organizational factors that impact system-to-system performance.
In telecommunications, provisioning involves the process of preparing and equipping a network to allow it to provide new services to its users. In National Security/Emergency Preparedness telecommunications services, "provisioning" equates to "initiation" and includes altering the state of an existing priority service or capability.
Desktop publishing (DTP) is the creation of documents using dedicated software on a personal ("desktop") computer. It was first used almost exclusively for print publications, but now it also assists in the creation of various forms of online content. Desktop publishing software can generate page layouts and produce text and image content comparable to the simpler forms of traditional typography and printing. This technology allows individuals, businesses, and other organizations to self-publish a wide variety of content, from menus to magazines to books, without the expense of commercial printing.
The following outline is provided as an overview of and topical guide to software engineering:
An application program is a computer program designed to carry out a specific task other than one relating to the operation of the computer itself, typically to be used by end-users. Word processors, media players, and accounting software are examples. The collective noun "application software" refers to all applications collectively. The other principal classifications of software are system software, relating to the operation of the computer, and utility software ("utilities").
In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive but necessary tasks in a formalized testing process already in place, or perform additional testing that would be difficult to do manually. Test automation is critical for continuous delivery and continuous testing.
A software factory is a structured collection of related software assets that aids in producing computer software applications or software components according to specific, externally defined end-user requirements through an assembly process. A software factory applies manufacturing techniques and principles to software development to mimic the benefits of traditional manufacturing. Software factories are generally involved with outsourced software creation.
Appointment scheduling software or meeting scheduling tools allows businesses and professionals to manage appointments and bookings. This type of software is also known as appointment booking software and online booking software.
Business process interoperability (BPI) is a property referring to the ability of diverse business processes to work together, to so called "inter-operate". It is a state that exists when a business process can meet a specific objective automatically utilizing essential human labor only. Typically, BPI is present when a process conforms to standards that enable it to achieve its objective regardless of ownership, location, make, version or design of the computer systems used.
End-user development (EUD) or end-user programming (EUP) refers to activities and tools that allow end-users – people who are not professional software developers – to program computers. People who are not professional developers can use EUD tools to create or modify software artifacts and complex data objects without significant knowledge of a programming language. In 2005 it was estimated that by 2012 there would be more than 55 million end-user developers in the United States, compared with fewer than 3 million professional programmers. Various EUD approaches exist, and it is an active research topic within the field of computer science and human-computer interaction. Examples include natural language programming, spreadsheets, scripting languages, visual programming, trigger-action programming and programming by example.
Desktop virtualization is a software technology that separates the desktop environment and associated application software from the physical client device that is used to access it.
A standard operating environment (SOE) is a standard implementation of an operating system and its associated software. Associated names and concepts include:
In information systems, applications architecture or application architecture is one of several architecture domains that form the pillars of an enterprise architecture (EA).
Business process management (BPM) is the discipline in which people use various methods to discover, model, analyze, measure, improve, optimize, and automate business processes. Any combination of methods used to manage a company's business processes is BPM. Processes can be structured and repeatable or unstructured and variable. Though not required, enabling technologies are often used with BPM.
Continuous testing is the process of executing automated tests as part of the software delivery pipeline to obtain immediate feedback on the business risks associated with a software release candidate. Continuous testing was originally proposed as a way of reducing waiting time for feedback to developers by introducing development environment-triggered tests as well as more traditional developer/tester-triggered tests.
Continuous delivery (CD) is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software with greater speed and frequency. The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production. A straightforward and repeatable deployment process is important for continuous delivery.
HP CloudSystem is a cloud infrastructure from Hewlett Packard Enterprise (HPE) that combines storage, servers, networking and software.
Infrastructure as code (IaC) is the process of managing and provisioning computer data center resources through machine-readable definition files, rather than physical hardware configuration or interactive configuration tools. The IT infrastructure managed by this process comprises both physical equipment, such as bare-metal servers, as well as virtual machines, and associated configuration resources. The definitions may be in a version control system, rather than maintaining the code through manual processes. The code in the definition files may use either scripts or declarative definitions, but IaC more often employs declarative approaches.
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?