About Software - Software
A machine language consists of groups of binary values signifying processor instructions that change the state of the computer from its preceding state.
All major software companies, such as Microsoft, Novell and Sun Microsystems, have their own software testing departments with the specific goal of just testing.
Application software usually runs on an underlying software operating systems such as Linux or Microsoft Windows.
Applications are usually independent programs from the operating system, though they are often tailored for specific platforms.
As more and more programs enter the realm of firmware, and the hardware itself becomes smaller, cheaper and faster as predicted by Moore's law, elements of computing first considered to be software, join the ranks of hardware.
As noted in different section, software is usually created on top of existing software and the application programming interface (API) that the underlying software provides like GTK+, JavaBeans or Swing.
At the lowest level, executable code consists of machine language instructions specific to an individual processor.
Companies like Sun Microsystems, Novell, and Microsoft provide their own APIs so that many applications are written using their software libraries that usually have numerous APIs in them.
Computer hardware companies not only bundled their software, they also placed demands on the location of the hardware in a refrigerated space called a computer room.
Data General refused to license their software (which was hard to do, since it was on the books as a free asset), and claimed their "bundling rights".
Depending on how competently the user-written software has been integrated into default application packages, many users may not be aware of the distinction between the original packages, and what has been added by co-workers.
Each instruction causes the computer to carry out an operation – moving data, carrying out a computation, or altering the control flow of instructions.
Few in the industry believed that anyone would profit from it other than IBM (through free publicity).
For instance, JavaBeans library is used for designing enterprise applications, Windows Forms library is used for designing graphical user interface (GUI) applications like Microsoft Word, and Windows Communication Foundation is used for designing web services.
For instance, NASA has extremely rigorous software testing procedures for many operating systems and communication functions.
For instance, an email sent from a Microsoft Outlook should be readable from Yahoo! Mail and vice versa.
For instance, design and creation of Microsoft Word software will take much more time than designing and developing Microsoft Notepad because of the difference in functionalities in each one.
For instance, if a user is designing a Microsoft Windows desktop application, he/she might use the .
However, software testing rarely – if ever – eliminates every bug; some programmers say that "every program has at least one more bug" (Lubarsky's Law).
If software is faulty (buggy), it can delete a person's work, crash the computer and do other unexpected things.
In computer science and software engineering, software is all information processed by computer system, programs and data.
In other words, software is a set of programs, procedures, algorithms and its documentation concerned with the operation of a data processing system.
In the case of Software development, this moment is generally agreed to be the publication in the 1980s of the specifications for the IBM Personal Computer published by IBM employee Philip Don Estridge.
It is a broad category, and encompasses software of many kinds, including the internet browser being used to display this page.
It is a set of programs that allows the computer to perform a specific data processing job for the user.
It is usually written in high-level programming languages that are easier and more efficient for humans to use (closer to natural language) than machine language.
Its purpose is to unburden the application software programmer from the often complex details of the particular computer being used, including such accessories as communications devices, printers, device readers, displays and keyboards, and also to partition the computer's resources such as memory and processor time in a safe and stable manner.
Just like the Auto industry, the Software industry has grown from a few visionaries operating out of their garage with prototypes.
Most companies had their software on the books for 0 dollars, unable to claim it as an asset (this is similar to financing of popular music in those days).
Most hardware companies today have more software programmers on the payroll than hardware designers, since software tools have automated many tasks of Printed circuit board engineers.
Operating systems include many standard Software libraries, and applications are often distributed with their own libraries.
Other software comes with a free software license, granting the recipient the rights to modify and redistribute the software.
People who use modern general purpose computers (as opposed to embedded systems, analog computers and supercomputers) usually see three layers of software performing a variety of tasks: platform, application, and user software.
Program software performs the function of the program it implements, either by directly providing instructions to the computer hardware or by serving as input to another piece of software.
Programming tools are intended to assist a programmer in writing computer programs, and they may be combined in an integrated development environment (IDE) to more easily manage all of these functions.
Programs are an ordered sequence of instructions for changing the state of the computer in a particular sequence.
Software (or firmware) is also used in video games and for the configurable parts of the logic systems of automobiles, televisions, and other consumer electronics.
Software can be quite a profitable industry: Bill Gates, the founder of Microsoft was the richest person in the world in 2009 largely by selling the Microsoft Windows and Microsoft Office software products.
Software can be tested through unit testing, regression testing and other methods, which are done manually, or most commonly, automatically, since the amount of code to be tested can be quite large.
Software may also be written in an assembly language, essentially, a mnemonic representation of a machine language using a natural language alphabet.
Software refers to one or more computer programs and data held in the storage of the computer for some reasons.
Software standard organizations like the W3C, IETF develop software standards so that most software can interoperate through standards such as XML, HTML, HTTP or FTP.
Software thus encompasses a wide array of products that may be developed using different techniques such as ordinary programming languages, scripting languages, microcode, or an FPGA configuration.
Some software comes with the license when purchased off the shelf, or an OEM license when bundled with hardware.
Sometimes applications are bundled with the computer, but that does not change the fact that they run as independent applications.
Sometimes it involves moving data between memory and registers which enable high-speed data access in the CPU.
Sometimes the term includes data that has not traditionally been associated with computers, such as film, tapes, and records.
Steve Jobs and Bill Gates were the Henry Ford and Louis Chevrolet of their times, who capitalized on ideas already commonly known before they started in the business.
The Supreme Court let a 9th circuit decision stand, and Data General was eventually forced into licensing the Operating System software because it was ruled that restricting the license to only DG hardware was an illegal tying arrangement.
The controversy over software patents is about specific algorithms or techniques that the software contains, which may not be duplicated by others and considered intellectual property and copyright infringement depending on the severity.
The term usually refers to relatively simple programs such as compilers, debuggers, interpreters, linkers, and text editors, that can be combined together to accomplish a task, much as one might use multiple hand tools to fix a physical object.
This involves passing instructions from the application software, through the system software, to the hardware which ultimately receives the instruction as machine code.
Unable to sustain the loss from lawyer's fees, Data General ended up being taken over by EMC Corporation.
Underlying computer programming concepts like quicksort, hashtable, array, and binary tree can be useful to creating software.
When Data General introduced the Data General Nova, a company called Digidyne wanted to use its RDOS operating system on its own hardware clone.
When a customer bought a minicomputer, at that time the smallest computer on the market, the computer did not come with Pre-installed software, but needed to be installed by engineers employed by the OEM.
Without clear documentation, software can be hard to use—especially if it is very specialized and relatively complex like Photoshop or AutoCAD.
A layer structure showing where the operating system software and application software are situated while running on a typical desktop computer
A person who creates software is called a programmer, software engineer, software developer, or "code monkey", terms that all have a similar meaning.
Application software: Application software or Applications are what most people think of when they think of software.
Computer software has special economic characteristics that make its design, creation, and distribution different from most other economic goods.
Computer software has to be "loaded" into the computer's storage (such as the hard drive or memory).
Computer software is so called to distinguish it from computer hardware, which encompasses the physical interconnections and devices required to store and execute (or run) the software.
Computer software, or just software, is a collection of computer programs and related data that provides the instructions for telling a computer what to do and how to do it.
Developer documentation may also exist, either with the code as comments and/or as separate files, detailing how the programs works and can be modified.
Most software has software documentation so that the end user can understand the program, what it does, and how to use it.
Other well-known large software companies include Novell, SAP, Symantec, Adobe Systems, and Corel, while small companies often provide innovation.
Platform software: Platform includes the firmware, device drivers, an operating system, and typically a graphical user interface which, in total, allow a user to interact with the computer and its peripherals (associated equipment).
Practical computer systems divide software systems into three major classes: system software, programming software and application software, although the distinction is arbitrary, and often blurred.
Programming software include tools in the form of programs or applications that software developers use to create, debug, maintain, or otherwise support other programs and applications.
Show() to close or open the application and write the additional operations him/herself that it need to have.
Since software can be designed using many different programming languages and in many different operating systems and operating environments, software standard is needed so that different software can understand and exchange information between each other.
Software can be patented in some but not all countries; however, software patents can be controversial in the software industry with many people holding different views about it.
Software includes all the various forms and roles that digitally stored data may have and play in a computer (or similar system), regardless of whether the data is used as code for a CPU, or other interpreter, or whether it represents other kinds of information.
Software is usually designed and created (coded/written/programmed) in integrated development environments (IDE) like Eclipse, Emacs and Microsoft Visual Studio that can simplify the process and compile the program.
Software quality is very important, especially for commercial and system software like Microsoft Office, Microsoft Windows and Linux.
System software is computer software designed to operate the computer hardware to provide basic functionality and to provide a platform for running application software.
System software is responsible for managing a variety of independent hardware components, so that they can work together harmoniously.
The first theory about software was proposed by Alan Turing in his 1935 essay Computable numbers with an application to the Entscheidungsproblem (Decision problem).
The history of computer software is most often traced back to the first software bug in 1946.
The software's license gives the user the right to use the software in the licensed environment.
The types of software include web pages developed in languages and frameworks like HTML, PHP, Perl, JSP, ASP.
There are many successful companies today that sell only software products, though there are still many common software licensing problems due to the complexity of designs and poor documentation, leading to patent trolls.
Until that time, software was bundled with the hardware by Original equipment manufacturers (OEMs) such as Data General, Digital Equipment and IBM.
With open software specifications and the possibility of software licensing, new opportunities arose for software tools that then became the de facto standard, such as DOS for operating systems, but also various proprietary word processing and spreadsheet programs.