The “software” term was first used in 198 by John W. Tukey and was proposed by Alan Turing in an essay of his named “Computable Numbers” in 1935. The academic discipline of studying software is known as Software engineering or Computer Science engineering. Software is a collection of simple programs which are designed or programmed to serve some definite operations.
These software make our work easier by different applications. The three distinct entities involved are the programmer who develops the software, the hardware which works as an interface between the user and the software and the end user himself. There can be different types of software according to the end user’s use.
The different types of software may include the System Software like Windows, Linux, Macintosh operating systems. Further, the System Software can be classified as device drivers, servers, utilities and operating systems. This helps in coordinating between the computer hardware i.e. the input devices – keyboard, mouse, output devices – monitor, printers, with the central processing unit which computes.
The operating systems are those which actually governs the working of the computer. Another type of software is the Programming software which usually assists a programmer for programming purposes and makes it easy to write the programs in a convenient and easier way, these may include the compilers, interpreters, debuggers, linkers and the text editors.
The Application software are those which provide different application support to the end user, like word processors from Microsoft Word, Open Office, ERP software etc. The application software are dependent on a system software or operating system without which it cannot work on a computer. The mobile software is also a kind of application software which is being run as mobile applications, and is beneficial to the mobile user to perform various operations.
Typical applications may include industrial automation, business, telecommunications (including internet and other internet related operations), video games, educational, databases, medical, mathematical, molecular modeling, decision making, simulation, and spread sheet etc. In a nutshell these make our daily work easier in a wide range of topics.
Software architecture is the architecture of the software in application, then documentation of a software involves the information about the working of the software and the content, which is useful to the end user for its use. Libraries are supporting files which provide functions and their functionalities which may be included in another application. The operating system contains many libraries for standard software.
As software are designed by different companies there needs to be a standard which may point out the distinguishing factor and differentiate among the software manufacturer, thus different standards are being maintained by the software makers. It is very important in case of information interchange as the software standard indicates the sender or the receiver. Computer software are to be saved or stored in the storage or computer memory, then executed or run. The execution refers to the information or passage of instructions from within the software, done with the help of the system software which converts the instruction to machine codes and delivers to the hardware. Each instruction refers the computer to perform certain operations like, computation, data movement, control flow alterations etc.
Software licenses are being provided to the software to have an anti pirated environment and ensure use of original software. Software comes in OEM licenses, freeware or free license or shareware. Software downloads are quite common today, there are many websites offering this facility to download different software according to the users requirements, this is where the concept of licenses come in place. The freeware or shareware versions are available to download which are absolutely free, whereas you can also purchase licensed software and download. The freeware provides the user the right to re-use and modify the same.
The world is covered with a number of software companies in this industry, with the most profitable Microsoft with its owner Bill Gates being the richest person of 2009.