The following outline is provided as an overview of and topical guide to software:
Software - collection of computer programs and related data that provides the instructions for telling a computer what to do and how to do it. Software refers to one or more computer programs and data held in the storage of the computer for some purposes. In other words, software is a set of programs, procedures, algorithms and its documentation concerned with the operation of a data processing system. The term was coined to contrast to the old term hardware (meaning physical devices). In contrast to hardware, software "cannot be touched". Software is also sometimes used in a more narrow sense, meaning application software only. Sometimes the term includes data that has not traditionally been associated with computers, such as film, tapes, and records.
What type of thing is software?
Software can be described as all of the following:
Types of software
- Application software - end-user applications of computers such as word processors or video games, and ERP software for groups of users.
- Middleware controls and co-ordinates distributed systems.
- Programming languages - define the syntax and semantics of computer programs. For example, many mature banking applications were written in the language COBOL, invented in 1959. Newer applications are often written in more modern languages.
- System software - provides the basic functions for computer usage and helps run the computer hardware and system. It includes a combination of the following:
- Teachware - any special breed of software or other means of product dedicated to education purposes in software engineering and beyond in general education.
- Testware - any software for testing hardware or software.
- Firmware - low-level software often stored on electrically programmable memory devices. Firmware is given its name because it is treated like hardware and run ("executed") by other software programs. Firmware often is not accessible for change by other entities but the developers' enterprises.
- Shrinkware is the older name given to consumer-purchased software, because it was often sold in retail stores in a shrink wrapped box.
- Device drivers - control parts of computers such as disk drives, printers, CD drives, or computer monitors.
- Programming tools - assist a programmer in writing computer programs, and software using various programming languages in a more convenient way. The tools include:
History of software
- Software development (outline) - development of a software product, which entails computer programming (process of writing and maintaining the source code), but also encompasses a planned and structured process from the conception of the desired software to its final manifestation. Therefore, software development may include research, new development, prototyping, modification, reuse, re-engineering, maintenance, or any other activities that result in software products.
Software distribution -
||This section is empty. You can help by adding to it. (July 2012)
Persons influential in software