Application software is a set of one or more programs designed to carry out operations for a specific application. Application software cannot run on itself but is dependent on system software to execute. Examples of application software include MS Word, MS Excel, a console game, a library management system, a spreadsheet system etc.
The term is used to distinguish such software from another type of computer program referred to as system software, which manages and integrates a computer's capabilities but does not directly perform tasks that benefit the user. The system software serves the application, which in turn serves the user.
Examples of types of application software may include accounting software, media players, and office suites. Many application programs deal principally with documents. Applications may be bundled with the computer and its system software or published separately, and may be coded as e.g. proprietary, open-source or university projects.
Terminology
In information technology, an application is a computer program designed to help people perform an activity. An application thus differs from an operating system (which runs a computer), a utility (which performs maintenance or general-purpose chores), and a programming tool (with which computer programs are created). Depending on the activity for which it was designed, an application can manipulate text, numbers, graphics, or a combination of these elements. Some application packages focus on a single task, such as word processing; others, called integrated software include several applications.
User-written software tailors systems to meet the user's specific needs. User-written software includes spreadsheet templates, word processor macros, scientific simulations, 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. For example, one of the key questions in the United States v. Microsoft antitrust trial was whether Microsoft's Internet Explorer web browser was part of its Windows operating system or a separable 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 to 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.
Apps and Killer Apps
Some applications are available in versions for several different platforms; others have narrower requirements and are thus called, for example, a Geography application for Windows, an Android application for education, or Linux gaming. Sometimes a new and popular application arises which only runs on one platform, increasing the desirability of that platform. This is called a killer application or killer app.
In recent years, the shortened term "app" (coined in 1981 or earlier) has become popular to refer to applications for mobile devices such as smartphones and tablets, the shortened form matching their typically smaller scope compared to applications on PCs.
Application software classification
There are many different ways to divide up different types of application software, and several are explained here.
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 contentious debate in the computing community regarding web applications replacing native applications for many purposes, especially on mobile devices such as smart phones 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.
Application software can also be seen as being either horizontal or vertical. 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 systems, or accounting, or customer service.
There are many types of application software:
- An application suite consists of multiple applications bundled together. They usually have related functions, features and user interfaces, and may be able to interact with each other, e.g. open each other's files. Business applications often come in suites, e.g. Microsoft Office, LibreOffice and iWork, which bundle together a word processor, a spreadsheet, etc.; but suites exist for other purposes, e.g. graphics or music.
- Enterprise software addresses the needs of an entire organization's processes and data flows, across several departments, often in a large distributed environment. Examples include enterprise resource planning systems, customer relationship management (CRM) systems and supply chain management software. Departmental Software is a sub-type of enterprise software with a focus on smaller organizations and/or groups within a large organization. (Examples include travel expense management and IT Helpdesk.)
- Enterprise infrastructure software provides common capabilities needed to support enterprise software systems. (Examples include databases, email servers, and systems for managing networks and security.)
- Information worker software lets users create and manage information, often for individual projects within a department, in contrast to enterprise management. Examples include time management, resource management, analytical, collaborative and documentation tools. Word processors, spreadsheets, email and blog clients, personal information system, and individual media editors may aid in multiple information worker tasks.
- Content access software is used primarily to access content without editing, but may include software that allows for content editing. Such software addresses the needs of individuals and groups to consume digital entertainment and published digital content. (Examples include media players, web browsers, and help browsers.)
- Educational software is related to content access software, but has the content and/or features adapted for use in by educators or students. For example, it may deliver evaluations (tests), track progress through material, or include collaborative capabilities.
- Simulation software simulates physical or abstract systems for either research, training or entertainment purposes.
- Media development software generates print and electronic media for others to consume, most often in a commercial or educational setting. This includes graphic-art software, desktop publishing software, multimedia development software, HTML editors, digital-animation editors, digital audio and video composition, and many others.
- Product engineering software is used in developing hardware and software products. This includes computer-aided design (CAD), computer-aided engineering (CAE), computer language editing and compiling tools, integrated development environments, and application programmer interfaces.
Applications can also be classified by computing platform such as a particular operating system, 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 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
- Accounting software
- Data management
- Contact management
- Spreadsheet
- Personal database
- Documentation
- Document automation/assembly
- Word processing
- Desktop publishing software
- Diagramming software
- Presentation software
- Blog software
- Enterprise resource planning
- Financial software
- Day trading software
- Banking software
- Clearing systems
- arithmetic software
- Field service management
- Workforce management software
- Project management software
- Calendaring software
- Employee scheduling software
- Workflow software
- Reservation systems
Content access software
- Electronic media software
- Hybrid editor players
- Media players
- Web browser
Entertainment software
- Screen savers
- Video games
- Arcade games
- Console games
- Mobile games
- Personal computer games
Educational software
- Classroom management
- Reference software
- Sales readiness software
- Survey management
Enterprise infrastructure software
- Business workflow software
- Database management system (DBMS) software
- Digital asset management (DAM) software
- Document management software
- Geographic information system (GIS) software
Simulation software
- Computer simulators
- Scientific simulators
- Social simulators
- Battlefield simulators
- Emergency simulators
- Vehicle simulators
- Flight simulators
- Driving simulators
- Simulation games
- Vehicle simulation games
Media development software
- Image organizer
- Media content creating/editing
- 3D computer graphics software
- Animation software
- Graphic art software
- Image editing software
- Raster graphics editor
- Vector graphics editor
- Video editing software
- Sound editing software
- Digital audio editor
- Music sequencer
- Scorewriter
- Hypermedia editing software
- Web development software
- Game development tool
Product engineering software
- Hardware engineering
- Computer-aided engineering
- Computer-aided design (CAD)
- Finite element analysis
- Software engineering
- Computer language editor
- Compiler software
- Integrated development environment
- Game development software
- Debuggers
- License manager