The software industry is on the cusp of its period of greatest change since inception as a distinct business forty years ago when IBM first unbundled programs from processors in 1969. Fuelled by the Internet and impelled by a Darwinian constant to innovate in a competitive world, these twin drivers of change have been turbo-charged in the last year by the onset of adverse economic conditions and a consequent business imperative to achieve efficiencies and reduce costs.
The Internet and the need to innovate, achieve efficiencies and reduce costs are behind the two areas currently of greatest development in the software world – its long march via ASP, SaaS and the Cloud to full service-based computing; and the shift from backwater to mainstream of community, or Free/Open Source, software.
This is the first of five Short Lines client alerts we’ll be publishing in the second half of 2009 - themed from the legal perspective around these enormous changes and what they mean for lawyers advising their business clients. Focusing in each case on the legal issues they raise, we’ll be looking at:
More perhaps than any other area of practice, software is made impenetrable by its jargon. As an aide-memoire to help make our world more accessible and for clarity, brevity and avoiding the need to repeat terms, we’ve put together in the following few pages a short, basic glossary of some of the key terms we’ll be referring to in the upcoming software Short Lines.
“API” |
Application Programming Interface - a description (normally consisting of a set of routines, data structures, and protocols) of the messaging and language format that enables communication between the computer program that the API relates to and another program. Example: POSIX (Portable Operating System Interface for Unix) is the API enabling applications to communicate with Unix-variant (and other) operating systems |
“ASP” |
Application Service Provider - the first stage of service-based computing (where the others are SaaS, Cloud Computing and Utility Computing), enabled by the advent of faster modems and routers from the mid 1990s onwards. ASP substituted software on servers at the customer’s computer room with software on servers at the ASP supplier’s centrally managed (‘one to many’) data centre, plus Internet access and an HTML web interface at the client PC. Properly viewed as ‘Hosted Application Management’, ASP has benefited from bigger bandwidth but still relies (at the start of the relationship) on significant configuration/installation services and (throughout) on support services, typically supplied separately |
“Application” |
A program that performs specific tasks required by end users. Applications include media players, database programs, word processors, etc. An application can be described as ‘sitting on’ the Operating System’s software as it cannot run without the services provided by the Operating System and system utilities |
“B2B” |
Business to Business - transactions conducted between two or more businesses |
“B2C” |
Business to Consumer - the supply of services, information, and products from a business to a consumer |
“BI” |
Business Intelligence - a broad category of applications and technologies that allow companies to gather, consolidate, store, and analyse data for the purpose of making business decisions |
“BPA” |
Business Process Automation - the integration of enterprise applications to minimise manual processes, improve operational efficiencies and reduce risks |
“BPM” |
Business Process Management - the use of appropriate tools and techniques to design, analyse and manage the operation of business processes and the exchange of business information, with a view to improving the efficiency of those processes |
“BPO” |
Business Process Outsourcing - the contracting out of particular business functions (for example, HR or accounts) to a third party service provider |
“Bit” |
Binary Digit - a single digit number in the base-two (binary) system; the smallest unit of information in the binary system |
“Byte” |
A unit of storage or data capacity which consists of eight Bits |
“CMS” |
Content Management System - a system that manages internal corporate documentation and information, website content, and collaborative content through which users can access, create, modify, or remove content |
“Chrome” |
A free web browser developed by Google using FOSS |
“Churn” |
The number of customers leaving a subscription service during a particular period of time |
“Cloud Computing” |
The third stage of service-based computing (where the others are ASP, SaaS, and Utility Computing). The ‘cloud’ is the traditional metaphor for the Internet, and cloud computing is the mass market availability through the Internet of the whole range of scalable computer technology-enabled resources provided as a service. Examples: MySpace, searching for flights online. The release of Google’s web browser Chrome and Microsoft’s Windows Azure (Windows in the Cloud) look like a major inflection point along the trajectory from software as a licence to utility computing |
“Compiler” |
Systems software that translates a program written in a human-readable programming language into machine code that a computer can execute |
“Copyleft” |
Copyleft is a condition of certain FOSS Licenses (the GPL being the best known) that the same freedoms be preserved in the licenses for derived works issued to third parties |
“CPU” |
Central Processing Unit - the microchip that executes the main instructions in a computer |
“CRM” |
Customer Relationship Management - a set of techniques aimed at improving interaction with customers and increasing customer satisfaction and loyalty; includes the development and use of technology, integration, and processes that collect and distribute data throughout an enterprise, enabling better management of its customers |
“DOS” |
Disk Operating System - the earliest Operating System for PCs |
“Driver” |
The driver translates between the electrical signals transmitted to and from the hardware sub-systems and the languages of the Operating System and Applications |
“EAS” |
Enterprise Application Software - Applications that perform business functions and improve the productivity and efficiency of an enterprise |
“EDI” |
Electronic Data Interchange - the computer to computer transmission of business data in a standard format |
“EII” |
Enterprise Information Integration - an integration technology that pulls and combines data from multiple sources in real time and presents that data as if it were in one database, allowing users to have a comprehensive view of customer, product and employee information |
“ERP” |
Enterprise Resource Planning - an information system designed to integrate and automate an enterprise’s internal business processes; it manages inventory, resources, and business processes across departments within the enterprise |
“Executable” |
Software in machine code form |
“FOSS” |
Free/Open Source Software - computer software for which the human-readable source code is made available under a copyright licence that meets the Open Source Definition, including permission for users to use, change, and improve the software, and to redistribute it in modified or unmodified form without payment and providing access to the source code. Examples of FOSS include the GNU Linux operating system, Firefox browser and Apache webserver |
“FSF” |
Free Software Foundation - a non-profit corporation founded to support the FOSS movement; it aims to promote the universal freedom to distribute and modify computer software |
“FTP” |
File Transfer Protocol - a set of rules or protocol defining how files are moved between computers over a network |
“Free Software” |
See FOSS |
“Freeware” |
Software that is available for download, use and distribution at no cost or for an optional donation. Freeware is often made available in a binary-only, proprietary form, therefore making it different to Free Software |
“GNU” |
(Short for the recursive - ‘GNU’s not Unix’) a computer operating system composed entirely of FOSS |
“GNU Project” |
A free-software, mass collaboration project, which initiated GNU |
“GPL” |
General Public Licence - the most popular and well-known FOSS licence, written by the GNU Project and managed by the FSF |
“GPU” |
Graphics Processing Unit - a specialised microchip that performs graphics processing, thus taking some of the load off the CPU |
“GUI” |
Graphical User Interface - a type of user interface which allows people to interact with electronic devices by selecting and moving graphical icons and visual indicators, as opposed to relying on text-based interfaces, typed command or text navigation |
“Grid Computing” |
Effectively a form of distributed computing where a virtual (i.e. non-physical and temporary) ‘super’ computer, composed of a cluster of computers acting in concert but located in different networks, performs large tasks through the use of software that allocates the work and tasks to be carried out by each computer |
“HTML” |
Hypertext Markup Language - the first widely available language for creating (largely static) Internet content using HTTP, etc. |
“HTTP” |
Hypertext Transfer Protocol - the communication protocol defining how web pages are transmitted over the Internet |
“Hypervisor” |
In the context of Virtualisation, this is software which allows the creation or supervision of multiple virtual operating systems running simultaneously on the same computer |
“IE” |
Internet Explorer - a web browser program published by Microsoft |
“Internet” |
the logical global network of interconnected networks enabling Protocol compliant communication of data in digitised form |
“IP” |
Internet Protocol - one of the communication protocols used for addressing data to be sent across the Internet |
“ISP” |
Internet Service Provider - an organisation that provides Internet access to users |
“Kernel” |
Modern Operating Systems are typically built in layers, with each layer adding new capabilities. The foundation on which the rest of the operating system sits is typically called a kernel. The kernel will determine the order in which processing time is allocated to each program and how much time is needed |
“LAN” |
Local Area Network - a computer network covering a local area, such as an office building or a home |
“LGPL” |
Lesser General Public License - a FOSS licence created by the FSF for Libraries which permits them to be used with proprietary programs |
“Library” |
A collection of code stored in one or more files, which can be reused for other programs. The code stored in a library may be general purpose and used by many different programs (for example, a maths library might include programs for calculating cube roots, converting fractions to integers and other mathematical functions) or they may be designed with some specific function in mind such as rendering three-dimensional graphics on a particular graphics card |
“MIS” |
Management Information System - the general term used to describe the computer systems within an organisation that provide information about its business operations |
“Machine Code” |
The instructions for a computer written in a language it can understand. Essentially it is just simply a stream of numbers and so it is almost impossible for humans to write directly in machine code. Instead, human programmers use a programming language which is translated into machine code by a compiler |
“Metadata” |
Data about other data – i.e high level information describing the context, content and structure of other digitised data |
“NGN” |
Next Generation Networking - an umbrella term for key evolutions in voice and data networks where multiple networks are migrated to a single IP network |
“NIC” |
Network Interface Card - a computer circuit board or card that is inserted into a computer, enabling the computer to be connected to a network |
“OASIS” |
Organisation for the Advancement of Structured Information Standards – a global consortium driving the adoption of standard specifications in web services, e-commerce and other IT fields |
“Operating System” or “OS” |
The infrastructure software component of a computer system, responsible for the management and coordination of activities and the sharing of the limited resources of the computer. The OS acts as a host for applications that are run on the machine |
“On Demand Computing” |
See SaaS |
“OSD” |
The Open Source Definition is the criteria used by the OSI to determine whether or not a software licence can be considered FOSS |
“OSI” |
The Open Source Initiative, an organisation dedicated to promoting FOSS, founded in February 1998 |
“OSS” |
See FOSS |
“PDA” |
Personal Digital Assistant - a small mobile hand-held device that provides computing and information storage and retrieval capabilities for personal or business use |
“Protocol” |
A set of rules which enables messages to be transmitted, data to be exchanged, communication to take place between different Programs, etc – see FTP, HTTP, TCP/IP, etc. |
“RAM” |
Random Access Memory - a type of computer memory or storage which provides temporary read and write storage and which loses its data when its power source is removed (versus hard disks, which offer semi-permanent storage) |
“SaaS” |
Software as a Service, the second stage of service-based computing (where the others are ASP, Cloud Computing and Utility Computing). SaaS is an Internet-based, ‘built for the web’, ‘web ready’, ‘one to many’ model for secure, centralised software delivery. SaaS benefits from faster and more extensive development and feature updating. It is typically priced on a periodical, per seat/ user basis, scaled according to service features, resilience level and storage space. The generic nature of the SaaS model makes it inherently scalable and adaptable to different lines of business (like CRM, HR/payroll and Accounts) and market segments (consumer and small/medium business, in addition to larger organisations). In accessing software in this way, a customer does not need to buy/license, install or run the software on its own computers and so eliminates the need to maintain or update the software. Example: Salesforce.com with its market leading SaaS/cloud computing CRM service |
“SAN” |
Storage Area Network - an architecture that allows shared storage devices to appear like directly attached drivers |
“SoA” |
Software Oriented Architecture - software systems built (architected) around associating (orienting) the business processes (services) in the customer’s requirement with the particular services and processes performed by the software utilised. SOA has three essential elements: |
“SOE” |
Standard Operating Environment - the deployment of a standard Operating System and Application set up for multiple computers within an organisation |
“SQL” |
Structured Query Language - a programming language for getting information from and managing databases |
“SSO” |
Single Sign On - an authentication process that permits a user to enter one set of login details in order to access multiple independent systems |
“Schema” |
A model for describing the structure of information. In a relational database, the schema describes how the data is organised into tables |
“Software”, “Program” or “Code” |
A set of instructions that tells a computer exactly what to do, as distinct from the physical device itself. The computer will follow these instructions and perform a function, e.g. display something on screen or manipulate some data. The different terms usually denote the size of the instructions – code is used as the smallest unit of size, program is used for a larger set of instructions and software used to describe a collection of programs |
“Stored Procedures” |
A subroutine (group of instructions to perform a specific task) stored in a database and executed by a database management system |
“System Software” |
Software that interacts with the computer at a very basic and fundamental level. It includes Operating Systems, Compilers, and utilities for managing the computer’s resources |
“TCP/IP” |
Transmission Control Protocol/Internet Protocol – the communication Protocol (or more properly, two protocols, TCP and IP being technically separate) used for transporting data sent over the Internet |
“USB” |
Universal Serial Bus - a plug-and-play interface between a computer and add-on devices, such as media players, keyboards, telephones, digital cameras, scanners, flash drives, joysticks and printers |
“Utility Computing” |
The fourth stage of service-based computing (the others being ASP, SaaS and Utility Computing) - the aggregation and packaging up of different computing resources (input, processing, storage, programming, output, communications, etc) for supply on a metered basis, like electricity or another utility |
“VAN” |
Value-Added Network - a service providing data transport between businesses to facilitate EDI or other integration services |
“VoIP” |
Voice over Internet Protocol - the transmission using IP of voice or fax calls as digital data packets over the Internet or private data networks |
“VPN” |
Virtual Private Network - a private network which allows users to share private information within a public infrastructure, usually involving encryption of data traffic between users. The network is described as ‘virtual’ because the network connection links are established on an as needed not on a permanent basis |
“Virtualisation” |
The technique of using software to run one or more operating systems on a host computer, including Operating Systems not written specifically for that hardware (platform virtualisation) or to reach the computing resources that ordinary software cannot reach by aggregating a large number of individual computing resources into a smaller number of more powerful resources (resource virtualisation) |
“WAN” |
Wide Area Network - a communications network that connects a group of computers distributed over a large geographic area |
“XML” |
Extensible Markup Language – the second generation widely used language for creating Internet content based on use of Schemas. XML enables content to be created that is much more interactive than HTML. |
Kemp Little LLP Solicitors, Cheapside House, 138 Cheapside, London, EC2V 6BJ
Tel: +44 (0) 20 7600 8080 Fax: +44 (0) 20 7600 7878
© 2007 Kemp Little LLP An Embado.com solution