Application software

Last updated

An application program (software application, or application, or app for short) is a computer program designed to carry out a specific task other than one relating to the operation of the computer itself, [1] typically to be used by end-users. [2] Word processors, media players, and accounting software are examples. The collective noun "application software" refers to all applications collectively. [3] The other principal classifications of software are system software, relating to the operation of the computer, and utility software ("utilities").

Contents

Applications may be bundled with the computer and its system software or published separately and may be coded as proprietary, open-source, or projects. [4] When referring to applications for mobile devices such as phones, the term "app" is more commonly used.

Terminology

In information technology, an application (app), an application program, or application software is a computer program designed to help people perform an activity. Depending on the activity for which it was designed, an application can manipulate text, numbers, audio, graphics, and a combination of these elements. Some application packages focus on a single task, such as word processing; others called integrated software include several applications. [5]

User-written software tailors systems to meet the user's specific needs. User-written software includes spreadsheet templates, word processor macros, scientific simulations, audio, graphics, and animation scripts. Even email filters are a kind of user software. Users create this software themselves and often overlook how important it is.

The delineation between system software such as operating systems and application software is not exact, however, and is occasionally the object of controversy. [6] For example, one of the key questions in the United States v. Microsoft Corp. antitrust trial was whether Microsoft's Internet Explorer web browser was part of its Windows operating system or a separate piece of application software. As another example, the GNU/Linux naming controversy is, in part, due to disagreement about the relationship between the Linux kernel and the operating systems built over this kernel. In some types of embedded systems, the application software and the operating system software may be indistinguishable from the user, as in the case of software used to control a VCR, DVD player, or microwave oven. The above definitions may exclude some applications that may exist on some computers in large organizations. For an alternative definition of an app: see Application Portfolio Management.

Metonymy

The word "application" used as an adjective is not restricted to the "of or on application software" meaning. [6] For example, concepts such as application programming interface (API), application server, application virtualization, application lifecycle management and portable application apply to all computer programs alike, not just application software.

Apps and killer apps

Some applications are available in versions for several different platforms; others only work on one and are thus called, for example, a geography application for Microsoft Windows , or an Android application for education, or a Linux game. Sometimes a new and popular application arises that only runs on one platform, increasing the desirability of that platform. This is called a killer application or killer app, coined in the late 1980s. [7] [8] For example, VisiCalc was the first modern spreadsheet software for the Apple II and helped sell the then-new personal computers into offices. For Blackberry it was their email software.

The shortened term "app" (coined in 1981 or earlier [9] ) became popular, with the 2008 introduction of the iOS App Store, to refer to applications for mobile devices such as smartphones and tablets. Later, with the 2010 introduction of the Mac App Store and the 2011 introduction of the Windows Store, the term was extended in popular use to include desktop applications.

Classification

There are many different and alternative ways to classify application software.

From the legal point of view, application software is mainly classified with a black-box approach, about the rights of its end-users or subscribers (with eventual intermediate and tiered subscription levels).

Software applications are also classified with respect to the programming language in which the source code is written or executed, and concerning their purpose and outputs.

By property and use rights

Application software is usually distinguished into two main classes: closed source vs open source software applications, and free or proprietary software applications.

Proprietary software is placed under the exclusive copyright, and a software license grants limited usage rights. The open-closed principle states that software may be "open only for extension, but not for modification". Such applications can only get add-ons from third parties.

Free and open-source software (FOSS) shall be run, distributed, sold, or extended for any purpose, and -being open- shall be modified or reversed in the same way.

FOSS software applications released under a free license may be perpetual and also royalty-free. Perhaps, the owner, the holder or third-party enforcer of any right (copyright, trademark, patent, or ius in re aliena ) are entitled to add exceptions, limitations, time decays or expiring dates to the license terms of use.

Public-domain software is a type of FOSS which is royalty-free and - openly or reservedly- can be run, distributed, modified, reversed, republished, or created in derivative works without any copyright attribution and therefore revocation. It can even be sold, but without transferring the public domain property to other single subjects. Public-domain SW can be released under a (un)licensing legal statement, which enforces those terms and conditions for an indefinite duration (for a lifetime, or forever).

By coding language

Since the development and near-universal adoption of the web, an important distinction that has emerged, has been between web applications written with HTML, JavaScript and other web-native technologies and typically requiring one to be online and running a web browser and the more traditional native applications written in whatever languages are available for one's particular type of computer. There has been a contentious debate in the computing community regarding web applications replacing native applications for many purposes, especially on mobile devices such as smartphones and tablets. Web apps have indeed greatly increased in popularity for some uses, but the advantages of applications make them unlikely to disappear soon, if ever. Furthermore, the two can be complementary, and even integrated. [10] [11] [12] [13]

By purpose and output

Application software can also be seen as being either horizontal or vertical. [14] [15] Horizontal applications are more popular and widespread, because they are general purpose, for example word processors or databases. Vertical applications are niche products, designed for a particular type of industry or business, or department within an organization. Integrated suites of software will try to handle every specific aspect possible of, for example, manufacturing or banking worker, accounting, or customer service.

There are many types of application software: [16]

By platform

Applications can also be classified by computing platforms such as a desktop application for a particular operating system, [18] delivery network such as in cloud computing and Web 2.0 applications, or delivery devices such as mobile apps for mobile devices.

The operating system itself can be considered application software when performing simple calculating, measuring, rendering, and word processing tasks not used to control hardware via a command-line interface or graphical user interface. This does not include application software bundled within operating systems such as a software calculator or text editor.

Information worker software

Entertainment software

Educational software

Enterprise infrastructure software

Simulation software

Media development software

Product engineering software

Software engineering

See also

Related Research Articles

<span class="mw-page-title-main">Personal digital assistant</span> Multi-purpose mobile device

A personal digital assistant (PDA) is a multi-purpose mobile device which functions as a personal information manager. Following a boom in the 1990s and 2000s, PDA's were mostly displaced by the widespread adoption of more highly capable smartphones, in particular those based on iOS and Android in the late 2000's, and thus saw a rapid decline.

<span class="mw-page-title-main">Website</span> Set of related web pages served from a single domain

A website is one or more web pages and related content that is identified by a common domain name and published on at least one web server. Websites are typically dedicated to a particular topic or purpose, such as news, education, commerce, entertainment, or social media. Hyperlinking between web pages guides the navigation of the site, which often starts with a home page. The most-visited sites are Google, YouTube, and Facebook.

In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.

<span class="mw-page-title-main">Mobile computing</span> Human–computer interaction in which a computer is expected to be transported during normal usage

Mobile computing is human–computer interaction in which a computer is expected to be transported during normal usage and allow for transmission of data, which can include voice and video transmissions. Mobile computing involves mobile communication, mobile hardware, and mobile software. Communication issues include ad hoc networks and infrastructure networks as well as communication properties, protocols, data formats, and concrete technologies. Hardware includes mobile devices or device components. Mobile software deals with the characteristics and requirements of mobile applications.

A Rich Internet Application is a web application that has many of the characteristics of desktop application software. The concept is closely related to a single-page application, and may allow the user interactive features such as drag and drop, background menu, WYSIWYG editing, etc. The concept was first introduced in 2002 by Macromedia to describe Macromedia Flash MX product. Throughout the 2000s, the term was generalized to describe browser-based applications developed with other competing browser plugin technologies including Java applets, Microsoft Silverlight.

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.

Mobile app development is the act or process by which a mobile app is developed for one or more mobile devices, which can include personal digital assistants (PDA), enterprise digital assistants (EDA), or mobile phones. Such software applications are specifically designed to run on mobile devices, taking numerous hardware constraints into consideration. Common constraints include CPU architecture and speeds, available memory (RAM), limited data storage capacities, and considerable variation in displays and input methods. These applications can be pre-installed on phones during manufacturing or delivered as web applications, using server-side or client-side processing to provide an "application-like" experience within a web browser.

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.

An online office suite, online productivity suite or cloud office suite is an office suite offered in the form of a web application, accessed online using a web browser. This allows people to work together worldwide and at any time, thereby leading to web-based collaboration and virtual teamwork. Some online office suites can be installed either on-premise or online and some are offered only as online as a software as a service. Some versions can be free of charge, some have a subscription fee. Some online office suites can run as progressive web applications which no longer require an online connection to function. Online office suites exist as both open-source and proprietary software.

Mobile device management (MDM) is the administration of mobile devices, such as smartphones, tablet computers, and laptops. MDM is usually implemented with the use of a third-party product that has management features for particular vendors of mobile devices. Though closely related to Enterprise Mobility Management and Unified Endpoint Management, MDM differs slightly from both: unlike MDM, EMM includes mobile information management, BYOD, mobile application management and mobile content management, whereas UEM provides device management for endpoints like desktops, printers, IoT devices, and wearables as well.

<span class="mw-page-title-main">Personal computer</span> Computer intended for use by an individual person

A personal computer, often referred to as a PC, is a computer designed for individual use. It is typically used for tasks such as word processing, internet browsing, email, multimedia playback, and gaming. Personal computers are intended to be operated directly by an end user, rather than by a computer expert or technician. Unlike large, costly minicomputers and mainframes, time-sharing by many people at the same time is not used with personal computers. The term home computer has also been used, primarily in the late 1970s and 1980s. The advent of personal computers and the concurrent Digital Revolution have significantly affected the lives of people.

A software widget is a relatively simple and easy-to-use software application or component made for one or more different software platforms.

The following outline is provided as an overview of and topical guide to software:

Mobile Business Intelligence is defined as “Mobile BI is a system comprising both technical and organizational elements that present historical and/or real-time information to its users for analysis on mobile devices such as smartphones and tablets, to enable effective decision-making and management support, for the overall purpose of increasing firm performance.”. Business intelligence (BI) refers to computer-based techniques used in spotting, digging-out, and analyzing business data, such as sales revenue by products and/or departments or associated costs and incomes.

Productivity software is application software used for producing information. Its names arose from it increasing productivity, especially of individual office workers, from typists to knowledge workers, although its scope is now wider than that. Office suites, which brought word processing, spreadsheet, and relational database programs to the desktop in the 1980s, are the core example of productivity software. They revolutionized the office with the magnitude of the productivity increase they brought as compared with the pre-1980s office environments of typewriters, paper filing, and handwritten lists and ledgers. In the United States, some 78% of "middle-skill" occupations now require the use of productivity software. In the 2010s, productivity software had become even more consumerized than it already was, as computing became ever more integrated into daily personal life.

A mobile application or app is a computer program or software application designed to run on a mobile device such as a phone, tablet, or watch. Mobile applications often stand in contrast to desktop applications which are designed to run on desktop computers, and web applications which run in mobile web browsers rather than directly on the mobile device.

Mobile procurement is mobile business software that helps organizations streamline their procurement process from a mobile device. Features of mobile procurement software include mobile purchase order creation, on-demand notifications, and real-time analytics. What makes mobile procurement successful is the ability to leverage software-side servers to move data along. The key benefit for organizations using mobile procurement systems is the ability to track business operations using any ordinary mobile device.

References

  1. "application software" . Oxford English Dictionary (Online ed.). Oxford University Press.(Subscription or participating institution membership required.)
  2. R. Shirey (August 2007). Internet Security Glossary, Version 2. Network Working Group. doi: 10.17487/RFC4949 . RFC 4949.Informational.
  3. "Application software". PC Magazine . Ziff Davis.
  4. Ryan, Thorne (2013-03-14). "Caffeine and computer screens: student programmers endure weekend long appathon". The Arbiter. Archived from the original on 2016-07-09. Retrieved 2015-10-12.
  5. Ceruzzi, Paul E. (2000). A History of Modern Computing. Cambridge, Massachusetts: MIT Press. ISBN   0-262-03255-4.
  6. 1 2 Ulrich, William (August 31, 2006). "Application Package Software: The Promise Vs. Reality". Cutter Consortium. Cutter Benchmark Review. Archived from the original on 2 February 2016. Retrieved 2023-01-12.
  7. Dvorak, John (1989-07-01). "Looking to OS/2 for the next killer app is barking up the wrong tree. Here's where they really come from". PC Magazine . Ziff Davis . Retrieved 2023-03-25.
  8. "killer app". dictionary.com. Retrieved 2023-03-26. Origin of killer app 1985–1990
  9. Thom Holwerda (24 June 2011). "The History of 'App' and the Demise of the Programmer". osnews.com. Retrieved 2023-01-12.
  10. Gassée, Jean-Louis (2012-09-17). "The Silly Web vs. Native Apps Debate". Archived from the original on 2016-04-15. Retrieved 2013-07-14.
  11. Frechette, Casey (2013-04-11). "What journalists need to know about the difference between Web apps and native apps". Poynter. Retrieved 2017-01-04.
  12. Valums, Andrew (2010-02-10). "Web apps vs desktop apps". valums.com. Archived from the original on 2013-04-02. Retrieved 2013-07-14.
  13. "Web Application Development Services Company UK | Custom Web App Development Agency". www.bespokesoftwaredevelopment.com. Retrieved 2024-01-29.
  14. "What Is a Horizontal Application?".
  15. "What Are Horizontal Services?". Archived from the original on 2013-10-31.
  16. "What is Application Software & Its Types | eduCBA". eduCBA. 2015-12-21. Retrieved 2017-03-24.
  17. Campbell-Kelly, Martin; Aspray, William (1996). Computer: A History of the Information Machine. New York: Basic Books. ISBN   0-465-02990-6.
  18. "Definition of desktop application". PCMAG. Retrieved 2022-01-07.