Welcome to SoftwarePedia™ -- The Software Encyclopedia
Computer Software News Links:
Get "Gone": Mediasans Announces Launch of New Project Management Mobile App
1 Jul 2016 at 12:17pm
LOS ANGELES, July 1, 2016 /PRNewswire/ -- Los Angeles-based creative studio Mediasans has shared details of its freshly launched project management...
GTCR and Scott Happ Complete Acquisition of Optimal Blue
1 Jul 2016 at 11:39am
CHICAGO, July 1, 2016 /PRNewswire/ -- GTCR, a leading private equity firm, announced today that it completed the acquisition of Optimal Blue Holdin...
Over $50 Million Dollar Judgment Entered in Akamai's Favor in Patent Dispute ...
1 Jul 2016 at 11:29am
CAMBRIDGE, Mass., July 1, 2016 /PRNewswire/ -- Akamai Technologies, Inc. (NASDAQ: AKAM), the global leader in Content Delivery Network (CDN) servic...
Mi9 Retail Adds Technology Marketing Veteran to Leadership Team
1 Jul 2016 at 11:00am
MIAMI, July 1, 2016 /PRNewswire/ -- Mi9 Retail, a premier provider of merchandising, business intelligence and customer-centric store solutions, is...
Mobility is About People, Not Just Devices
1 Jul 2016 at 10:42am
PARIS, July 1, 2016 /PRNewswire/ -- SY Lau, Senior Executive Vice President of Tencent and President of Online Media Group (OMG), said at the Viva...
Hiperwall President And CEO Jeff Greenberg Resigns
1 Jul 2016 at 9:55am
IRVINE, Calif., July 1, 2016 /PRNewswire/ -- Hiperwall, Inc., announced today the resignation of the company's President and CEO Jeff Greenberg. C...
Powered by PediaNetwork®
Provide consumers with faster, easier access to the information, products and services they want.
We search the major search engines and remove the duplicates, the advertising sites, the pop-up ads, and anything that might harm your computer. Then we include all the related products and services in this easy-to-remember place where you spend less time searching, and more time finding what you want.
Computer Software: (from Wikipedia)
The term "Software" is sometimes used in a broader context to describe any electronic media content which embodies expressions of ideas such as film, tapes, records, etc.
Computer software is a general term used to describe a collection of computer programs, procedures and documentation that perform some task on a computer system. The term includes application software such as word processors which perform productive tasks for users, system software such as operating systems, which interface with hardware to provide the necessary services for application software, and middleware which controls and co-ordinates distributed systems.
Relationship to Computer Hardware:
Computer software is so called to contrast with computer hardware, which encompasses the physical interconnections and devices required to store and execute (or run) the software. In computers, software is loaded into RAM and executed in the central processing unit. At the lowest level, software consists of a machine language specific to an individual processor. A machine language consists of groups of binary values signifying processor instructions which change the state of the computer from its preceding state. Software is an ordered sequence of instructions for changing the state of the computer hardware in a particular sequence. 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. High-level languages are compiled or interpreted into machine language object code. Software may also be written in an assembly language, essentially, a mnemonic representation of a machine language using a natural language alphabet. Assembly language must be assembled into object code via an assembler.
The term "software" was first used in this sense by John W. Tukey in 1958. In computer science and software engineering, computer software is all computer programs. The theory that is the basis for most modern software was first proposed by Alan Turing in his 1935 essay Computable numbers with an application to the Entscheidungsproblem.
Types of Software:
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.
1. System Software helps run the computer hardware and computer system. It includes operating systems, device drivers, diagnostic tools, servers, windowing systems, utilities and more. The purpose of systems software is to insulate the applications programmer as much as possible from the details of the particular computer complex being used, especially memory and other hardware features, and such as accessory devices as communications, printers, readers, displays, keyboards, etc.
2. Programming Software usually provides tools to assist a programmer in writing computer programs and software using different programming languages in a more convenient way. The tools include text editors, compilers, interpreters, linkers, debuggers, and so on. An Integrated development environment (IDE) merges those tools into a software bundle, and a programmer may not need to type multiple commands for compiling, interpreter, debugging, tracing, and etc., because the IDE usually has an advanced graphical user interface, or GUI.
3. Application Software allows end users to accomplish one or more specific (non-computer related) tasks. Typical applications include industrial automation, business software, educational software, medical software, databases, and computer games. Businesses are probably the biggest users of application software, but almost every field of human activity now uses some form of application software.
1. Freeware - Copyrighted computer software which is made available for use free of charge, for an unlimited time, as opposed to shareware where the user is required to pay (e.g. after some trial period or for additional functionality). Authors of freeware often want to "give something to the community", but also want credit for their software and to retain control of its future development. Sometimes when programmers decide to stop developing a freeware product, they will give the source code to another programmer or release the product's source code to the public as free software.
2. Shareware - A marketing method for computer software. Shareware software is typically obtained free of charge, either by downloading from the Internet or on magazine cover-disks. A user tries out the program, and thus shareware has also been known as "try before you buy". A shareware program is accompanied by a request for payment, and the software's distribution license often requires such a payment.
3. Open Source - describes the principles and methodologies to promote open access to the production and design process for various goods, products, resources and technical conclusions or advice. The term is most commonly applied to the source code of software that is made available to the general public with either relaxed or non-existent intellectual property restrictions. This allows users to create user-generated software content through either incremental individual effort, or collaboration.
4. Commercial Software - Computer software sold for commercial purposes or that serves commercial purposes. Commercial software is most often proprietary software, but free software is also used as commercial software. All or parts of software packages and services that support commerce are increasingly made available as free software, including products from Red Hat, Apple Computer, Sun Microsystems, and Google. The Microsoft Corporation uses "commercial software", rather than "proprietary software", to describe their business model.
Program and Library:
A program may not be sufficiently complete for execution by a computer. In particular, it may require additional software from a software library in order to be complete. Such a library may include software components used by stand-alone programs, but which cannot work on their own. Thus, programs may include standard routines that are common to many programs, extracted from these libraries. Libraries may also include 'stand-alone' programs which are activated by some computer event and/or perform some function (e.g., of computer 'housekeeping') but do not return data to their calling program. Libraries may be called by one to many other programs; programs may call zero to many other programs.
1. 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). Platform software often comes bundled with the computer. On a PC you will usually have the ability to change the platform software.
2. Application Software, or Applications, are what most people think of when they think of software. Typical examples include office suites and video games. Application software is often purchased separately from computer hardware. Sometimes applications are bundled with the computer, but that does not change the fact that they run as independent applications. Applications are almost always independent programs from the operating system, though they are often tailored for specific platforms. Most users think of compilers, databases, and other "system software" as applications.
3. User-Written Software tailors systems to meet the users specific needs. User software include spreadsheet templates, word processor macros, scientific simulations, and scripts for graphics and animations. Even email filters are a kind of user software. Users create this software themselves and often overlook how important it is. Depending on how competently the user-written software has been integrated into purchased application packages, many users may not be aware of the distinction between the purchased packages, and what has been added by fellow co-workers.
(Often shortened to programming or coding) is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs. This source code is written in a programming language. The code may be a modification of an existing source or something completely new. The purpose of programming is to create a program that exhibits a certain desired behavior (customization). The process of writing source codes requires expertise in many different subjects, including knowledge of the application domain, specialized algorithms, and formal logic.
Within software engineering, programming (the implementation) is regarded as one phase in a software development process.
There is an ongoing debate on the extent to which the writing of programs is an art, a craft or an engineering discipline. Good programming is generally considered to be the measured application of all three, with the goal of producing an efficient and maintainable software solution (the criteria for "efficient" and "maintainable" vary considerably). The discipline differs from many other technical professions in that programmers generally do not need to be licensed or pass any standardized (or governmentally regulated) certification tests in order to call themselves "programmers" or even "software engineers".
Another ongoing debate is the extent to which the programming language used in writing programs affects the form that the final program takes. This debate is analogous to that surrounding the Sapir-Whorf hypothesis in linguistics.
The Operation of Loading the Software:
Computer software has to be "loaded" into the computer's storage (such as a hard drive, memory, or RAM). Once the software is loaded, the computer is able to execute the software. Computers operate by executing the computer program. This involves passing instructions from the application software, through the system software, to the hardware which ultimately receives the instruction as machine code. Each instruction causes the computer to carry out an operation -- moving data, carrying out a computation, or altering the control flow of instructions.
Data movement is typically from one place in memory to another. Sometimes it involves moving data between memory and registers which enable high-speed data access in the CPU. Moving data, especially large amounts of it, can be costly. So, this is sometimes avoided by using "pointers" to data instead. Computations include simple operations such as incrementing the value of a variable data element. More complex computations may involve many operations and data elements together.
Instructions may be performed sequentially, conditionally, or iteratively. Sequential instructions are those operations that are performed one after another. Conditional instructions are performed such that different sets of instructions execute depending on the value(s) of some data. In some languages this is known as an "if" statement. Iterative instructions are performed repetitively and may depend on some data value. This is sometimes called a "loop." Often, one instruction may "call" another set of instructions that are defined in some other program or module. When more than one computer processor is used, instructions may be executed simultaneously.
A simple example of the way software operates is what happens when a user selects an entry such as "Copy" from a menu. In this case, a conditional instruction is executed to copy text from data in a 'document' area residing in memory, perhaps to an intermediate storage area known as a 'clipboard' data area. If a different menu entry such as "Paste" is chosen, the software may execute the instructions to copy the text from the clipboard data area to a specific location in the same or another document in memory.
Depending on the application, even the example above could become complicated. The field of software engineering endeavors to manage the complexity of how software operates. This is especially true for software that operates in the context of a large or powerful computer system.
Currently, almost the only limitations on the use of computer software in applications is the ingenuity of the designer/programmer. Consequently, large areas of activities (such as playing grand master level chess) formerly assumed to be incapable of software simulation are now routinely programmed. The only area that has so far proved reasonably secure from software simulation is the realm of human art— especially, pleasing music and literature.
Kinds of software by operation: computer program as executable, source code or script, configuration.
Quality and Reliability:
Considers the errors, faults, and failures related to the creation and operation of software.
Software license gives the user the right to use the software in the licensed environment, some software comes with the license when purchased off the shelf, or an OEM license when bundled with hardware. Other software comes with a free software licence, granting the recipient the rights to modify and redistribute the software. Software can also be in the form of freeware or shareware. See also License Management.
The Software Industry:
Comprises businesses involved in the development, maintenance and publication of computer software. The software industry started in the mid-1970's at the time of the personal computer revolution. The industry also includes software services, such as training and consultancy. The largest and most profitable of software companies are located in the United States. As of 2006, the client software industry is dominated by Microsoft. Software Magazine's 500 list in 2005 shows the total amount of revenue brought in by software companies per locale, with the highest being California due to Silicon Valley and the amount of Fortune 500 software companies residing in that area.
There are mainly two types of businesses in the software industry; those developing proprietary software such as Microsoft, and those developing open source software. Developing proprietary software is costly and involves software licensing and the need to protect the software from cracking and piracy.
The main financial return on open source comes from selling services, such as training and support, rather than the software itself. Many contributors to open source software (especially those developing software tools) also feel that there is a significant long-term return in the form of improved resources and capabilities within the software industry. Despite doing much business in properietary software, some companies like Sun Microsystems and IBM participate in developing free and open source software to deter from monopolies and take a portion of their market share. Netscape's actions are an example of this, and thus Firefox has become more popular.
If you have information or links that you would like included in SoftwarePedia™, please email us at: