IT Infrastructure Chap 4
IT Infrastructure Chap 4
CONTEMPORARY SOFTWARE
PLATFORM TRENDS
INTRODUCTION
• Java developers can create small applet programs that can be embedded in Web
pages and downloaded to run on a Web browser. A Web browser is an easy-to-use
software tool with a graphical user interface for displaying Web pages and for
accessing the Web and other Internet resources.
• Microsoft’s Internet Explorer, Mozilla Firefox, and Google Chrome browser are
examples. At the enterprise level, Java is being used for more complex e-commerce
and e-business applications that require communication with an organization’s back-
end transaction processing systems.
ENTERPRISE APPLICATION INTEGRATION (EAI) SOFTWARE VERSUS TRADITIONAL INTEGRATION
HTML and HTML5
• HTML (Hypertext Markup Language) is a page description language for specifying how
text, graphics, video, and sound are placed on a Web page and for creating dynamic links
to other Web pages and objects. Using these links, a user need only point at a highlighted
keyword or graphic, click on it, and immediately be transported to another document.
• HTML was originally designed to create and link static documents composed largely of
text. Today, however, the Web is much more social and interactive, and many Web pages
have multimedia elements—images, audio, and video. Third-party plug-in applications
like Flash, Silverlight, and Java have been required to integrate these rich media with Web
pages. However, these add-ons require additional programming and put strains on
computer processing. This is one reason Apple dropped support for Flash on its mobile
devices. The next evolution of HTML, called HTML5, solves this problem by making it
possible to embed images, audio, video, and other elements directly into a document
without processor-intensive add-ons.
• HTML5 will also make it easier for Web pages to function across different display devices,
including mobile devices as well as desktops, and it will support the storage of data
offline for apps that run over the Web. Web pages will execute more quickly, and look
like smartphone apps.
• Although HTML5 is still under development, elements are already being used in a
number of Internet tools, including Apple’s Safari browsers, Google Chrome, and recent
versions of the Firefox Web browser. Google’s Gmail and Google Reader have adopted
parts of the HTML5 standard as well. Web sites listed as “iPad ready” are making
extensive use of HTML5 including CNN, The New York Times, and CBS.
WEB SERVICES AND SERVICE-ORIENTED ARCHITECTURE
• Web services communicate through XML messages over standard Web protocols,
such as:
• SOAP (Simple Object Access Protocol) is a set of rules for structuring messages that
enables applications to pass data and instructions to one another.
• WSDL (Web Services Description Language) is a common framework for describing
the tasks performed by a Web service and the commands and data it will accept so
that it can be used by other applications.
• UDDI (Universal Description, Discovery, and Integration) enables a Web service to be
listed in a directory of Web services so that it can be easily located
WEB SERVICES
The foundation technology for Web services is XML, which stands for Extensible
Markup Language. This language was developed in 1996 by the World Wide Web
Consortium (W3C, the international body that oversees the development of the Web)
as a more powerful and flexible markup language than hypertext markup language
(HTML) for Web pages. Whereas HTML is limited to describing how data should be
presented in the form of Web pages, XML can perform presentation, communication,
and storage of data. In XML, a number is not simply a number; the XML tag specifies
whether the number represents a price, a date, or a ZIP code.
By tagging selected elements of the content of documents for their meanings, XML
makes it possible for computers to manipulate and interpret their data automatically
and perform operations on the data without human intervention.
Web browsers and computer programs, such as order processing or enterprise
resource planning (ERP) software, can follow programmed rules for applying and
displaying the data. XML provides a standard format for data exchange, enabling Web
services to pass data from one process to another.
Web services communicate through XML messages over standard Web protocols.
Companies discover and locate Web services through a directory much as they would
locate services in the Yellow Pages of a telephone book. Using Web protocols, a
software application can connect freely to other applications without custom
programming for each different application with which it wants to communicate.
Everyone shares the same standards.
SERVICE ORIENTED ARCHITECTURE (SOA )
• The collection of Web services that are used to build a firm’s software systems
constitutes which is known as a service-oriented architecture.
• A service oriented architecture (SOA) is 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 reuse these services in other combinations to assemble other
applications as needed.
EXAMPLES OF XML :
Subcompact <AUTOMOBILETYPE=”Subcompact”>
4passenger <PASSENGERUNIT=”PASS”>4</PASSENGER>
$16,800 <PRICE CURRENCY=”USD”>$16,800</PRICE>
WEB SERVICES EXAMPLE
• Virtually all major software vendors provide tools and entire platforms for building
and integrating software applications using Web services. IBM includes Web service
tools in its Web Sphere e-business software platform, and Microsoft has incorporated
Web services tools in its Microsoft .NET platform.
• Dollar Rent A Car’s systems use Web services for its online booking system with
Southwest Airlines’ Web site. Although both companies’ systems are based on
different technology platforms, a person booking a flight on Southwest.com can
reserve a car from Dollar without leaving the airline’s Web site. Instead of struggling
to get Dollar’s reservation system to share data with Southwest’s information systems,
Dollar used Microsoft .NET Web services technology as an intermediary. Reservations
from Southwest are translated into Web services protocols, which are then translated
into formats that can be understood by Dollar’s computers.
• Other car rental companies have linked their information systems to airline
companies’ Web sites before. But without Web services, these connections had to be
built one at a time. Web services provide a standard way for Dollar’s computers to
“talk” to other companies’ information systems without having to build special links to
each one. Dollar is now expanding its use of Web services to link directly to the
systems of a small tour operator and a large travel reservation system as well as a
wireless Web site for cell phones and smartphones. It does not have to write new
software code for each new partner’s information systems or each new wireless
device
HOW DOLLAR RENT A CAR USES WEB SERVICES
• Dollar Rent A Car uses Web services to provide a standard intermediate layer
of software to “talk” to other companies’ information systems. Dollar Rent A
Car can use this set of Web services to link to other companies’ information
systems without having to build a separate link to each firm’s systems.
SOFTWARE OUTSOURCING AND CLOUD SERVICES
• Today, many business firms continue to operate legacy systems that
continue to meet a business need and that would be extremely costly to
replace. But they will purchase or rent most of their new software
applications from external sources.
• There are three external sources for software: software packages from a
commercial software vendor, outsourcing custom application
development to an external vendor, (which may or may not be offshore),
and cloud-based software services and tools.
Software Packages and Enterprise Software
• A software package is a prewritten commercially available set of software
programs that eliminates the need for a firm to write its own software
programs for certain functions, such as payroll processing or order
handling.
• Enterprise application software vendors such as SAP and Oracle-
PeopleSoft have developed powerful software packages that can support
the primary business processes of a firm worldwide from warehousing,
customer relationship management, and supply chain management, to
finance and human resources.
• Although traditionally businesses developed unique software themselves,
today most new software is purchased from external sources. There are
three external sources for software:
• Commercial software packages
• Software services from an application service provider (ASP)
• Outsourcing application development to an outside software firm
CHANGING SOURCES OF FIRM SOFTWARE
Software Outsourcing
• In outsourcing, a firm contracts custom software development or
maintenance to outside firms, frequently firms operating in low-wage
areas of the world. With the growing sophistication and experience of
offshore firms, more and more new-program development is outsourced.
• Three external sources for software outsourcing are: software packages
from a commercial vendor software services from an application service
provider outsourcing custom application development to an outside
software firm Software Packages and Enterprise Software Rather than
design, write, test, and maintain legacy systems, many organizations
choose to purchase software programs from other companies that
specialize in certain programs.
• Application Service Providers (ASPs) the fact that their services are Web-
based, thus making the user's files accessible from virtually any computer
connected to the Internet.
Cloud-Based Software Services and Tools
• Cloud-based software and the data it uses are hosted on powerful servers in
massive data centers, and can be accessed with an Internet connection and
standard Web browser. In addition to free or low-cost tools for individuals and
small businesses provided by Google or Yahoo, enterprise software and other
complex business functions are available as services from the major commercial
software vendors.
• Instead of buying and installing software programs, subscribing companies rent
the same functions from these services, with users paying either on a
subscription or per-transaction basis. Services for delivering and providing access
to software remotely as a Web-based service are now referred to as software as
a service (SaaS).
• A leading example is Salesforce.com, which provides on-demand software
services for customer relationship management. In order to manage their
relationship with an outsourcer or technology service provider, firms need a
contract that includes a service level agreement (SLA).
• The SLA is a formal contract between customers and their service providers that
defines the specific responsibilities of the service provider and the level of service
expected by the customer. SLAs typically specify the nature and level of services
provided, criteria for performance measurement, support options, provisions
for security and disaster recovery, hardware and software ownership and
upgrades, customer support, billing, and conditions for terminating the
Mashups and Apps
• The software you use for both personal and business tasks may consist of large
self-contained programs, or it may be composed of interchangeable components
that integrate freely with other applications on the Internet.
• Web Mashups combine the capabilities of two or more online applications to
create a kind of hybrid that provides more customer value than the original
sources alone. For instance, Zip Realty uses Google Maps and data provided by
online real estate database Zillow.com to display a complete list of multiple
listing service (MLS) real estate listings for any zip code specified by the user.
Amazon uses mashup technologies to aggregate product descriptions with partner
sites and user profiles.
• Apps are small pieces of software that run on the Internet, on your computer, or
on your mobile phone or tablet and are generally delivered over the Internet.
Google refers to its online services as apps, including the Google Apps suite of
desktop productivity tools. But when we talk about apps today, most of the
attention goes to the apps that have been developed for the mobile digital
platform. It is these apps that turn smartphones and other mobile handheld
devices into general-purpose computing tools.