Computer Hardware and Software Contents
F. SOFTWARE PLATFORM TRENDS
The main trends in contemporary software platforms are:
Open source software
Java
Enterprise integration software
Web services and service-oriented architecture
Apps (Mobile)
Software outsourcing
Page 54 Open-Source Software
Open-source software is computer software for which the source code and certain other rights normally reserved for copyright holders are provided under a software license that meets the Open-Source definition or that is in the public domain. Open-source software is produced and maintained by a global community of programmers and is downloadable for free. Users can use, change, and improve the software, and redistribute it in modified or unmodified forms. It is very often developed in a public, collaborative manner.
Linux is a powerful, resilient open-source operating system that can run on multiple hardware platforms and is used widely to run Web servers. Linux is virtually free, meaning expensive operating licenses are practically eliminated. Support is available through the open-source Linux community. Other help is increasingly becoming more available as more companies migrate towards this software.
Java
Java is a programming language that delivers only the software functionality needed for a particular task. With Java, the programmer writes small programs called applets that can run on another machine on a network. With Java, programmers write programs that can execute on a variety of operating systems and environments. Further, any program could be a series of applets that are distributed over networks as they are needed and as they are upgraded.
Java is important because of the dramatic growth of Web applications. Java is an operating system that can run on multiple hardware platforms and is used widely to run Web servers. It provides a standard format for data exchange and for Web page descriptions.
Enterprise integration software
Software for enterprise integration is needed by firms, who need to integrate existing legacy systems with newer information systems and technologies. Replacing isolated systems that cannot communicate with enterprise software is one solution. However, many companies cannot simply discard essential legacy applications. Some integration can be achieved by middleware, which is software that creates an interface or bridge between two different systems. Firms increasingly purchase enterprise application integration (EAI) software that enables multiple systems to exchange data through a single software hub.
EAI software uses special middleware that creates a common platform, which enables many different applications to communicate with each other. EAI requires much less programming and development than traditional point-to-point integration (See Figure 5.3).
Page 55
Figure 5.3: Enterprise application integration versus point to point integration.
Web Services and Service-Oriented Architecture WEB SERVICES
Web services refer to a set of loosely coupled software components that exchange information with each other using standard Web communication standards and languages.
Some of the characteristics of Web services include:
They can exchange information between two different systems regardless of the operating systems or programming languages on which the systems are based.
They can be fused to build open standard Web-based applications linking systems of two different organisations.
They can be used to create applications that link disparate systems within a single company.
They are not tied to anyone operating system or programming language.
Different applications can use them to communicate with each other in a standard way without time-consuming custom coding.
The foundation technology of web services is XML – this is discussed below.
MARKUP LANGUAGES
Hypertext Markup Language (HTML) is a page description language for specifying how text, graphics, video and sound are placed in a Web page document.
Extensible Markup Language (XML) provides a standard format for data exchange, enabling Web services to pass data from one process to another. It was developed in 1996 by the World Wide Web Consortium as a more flexible markup language than HTML. While
Page 56
XML can perform presentation, communications, and storage of data. The tag in XML is able to specify the type of data – for example it can specify if the piece of data is a price, a date or a customer id etc.
By tagging selected elements of the content of a document with their meaning XML makes it possible for computers to automatically manipulate and interpret the data and perform operations on the data without human intervention.
XHTML (Extensible Hypertext Markup Language) combines HTML language with the XML language to create a more powerful language for building more useful Web pages.
Four software standards and communication protocols provide easy access to data and information via Web services in the first layer:
XML (eXtensible Markup Language): describes data in Web pages and databases
SOAP (Simple Object Access Protocol): allows applications to pass data and
XBRL is a language for the electronic communication of business and financial data, which is revolutionising business reporting around the world. It provides major benefits in the preparation, analysis and communication of business information. It offers cost savings, greater efficiency and improved accuracy and reliability to all those involved in supplying or using financial data.
XBRL stands for eXtensible Business Reporting Language. It is one of a family of "XML"
languages which is becoming a standard means of communicating information between businesses and on the internet.
The idea behind XBRL, eXtensible Business Reporting Language, is simple. Instead of treating financial information as a block of text - as in a standard internet page or a printed document - it provides an identifying tag for each individual item of data that is computer readable. For example, company net profit has its own unique tag.
The introduction of XBRL tags enables automated processing of business information by computer software, cutting out laborious and costly processes of manual re-entry and comparison. Computers can treat XBRL data "intelligently": they can recognise the information in a XBRL document, select it, analyse it, store it, exchange it with other computers and present it automatically in a variety of ways for users. XBRL greatly increases the speed of handling of financial data, reduces the chance of error and permits automatic checking of information.
Companies can use XBRL to save costs and streamline their processes for collecting and reporting financial information. Consumers of financial data, including investors, analysts, financial institutions and regulators, can receive, find, compare and analyse data much more rapidly and efficiently than if it is in XBRL format.
Page 57 International Incorporated) of approximately 600 organisations including; companies, regulators, government agencies, infomediaries and software vendors.
XBRL International is supported by its jurisdictions—independent bodies, generally organised on a country specific basis — that work to promote the adoption of XBRL and the development of taxonomies that define the information requirements of their particular domains. XBRL is being adopted around the world in order to migrate business information process from paper-based and legacy electronic proprietary formats more fully onto Internet oriented processes (both for external and internal reporting processes).
SERVICE –ORIENTED ARCHITECTURE
A service-oriented architecture is a set of self-contained services that communicate with each other to create a working software application. Business tasks are accomplished by executing a series of these services. Software developers are able to reuse these services in other combinations to create other applications when needed.
Apps (Mobile)
Apps are Small pieces of software that run on the Internet, on your computer, or on your cell phone. The most popular apps are available for the iPhone, BlackBerry, Android and Windows smartphones and tablet computers. They are generally delivered over the Internet.
Software Outsourcing
Today most business firms continue to operate their legacy systems that continue to meet a business need that would be very costly to replace. However they will purchase most of their new software applications from external sources. There are three main external sources of software:
Software Packages from Software Vendor: A software package is a prewritten commercially available set of software programs that eliminates the need for the business to write its own software for certain functions such as payroll processing and order handling.
Software as a Service (SaaS) is a model of software deployment whereby a provider licenses an application to customers for use as a service on demand. SaaS software vendors (such as SalesForce.com) may host the application on their own web servers or upload the application to the consumer device, disabling it after use or after the necessities and reduce hiring costs (e.g. using onsip.com for a business telephone system rather than hiring an IT/systems specialist to install a phone system.)
Page 58
Application Service Provider (ASP): An ASP is a business that delivers and manages applications and computer services from remote computer centres to multiple users using the Internet or private network. Instead of buying and installing the software programs, subscribing companies can rent the same functions from the ASP. Users pay for the use of this software either on a subscription or per-transaction basis.
Outsourcing: This is where a firm contract out custom software development or maintenance of existing legacy programs to outside firms, frequently to firms who operate in low-wage areas of the world (outsourcing is described in detail in Chapter 12).