Savvy Manager's Guide

Web Services, Service-Oriented Architectures, and Cloud Computing: The Savvy Manager's Guide

Web Services, Service-Oriented Architectures, and Cloud Computing: The Savvy Manager's Guide (Second Edition)

One of the toughest jobs for managers today is keeping up with the rapid changes in technology. An important change in technology is that the future of software will involve service-oriented architectures with some form of cloud computing. More and more services are available on the Internet. Nearly every day, we can discover new opportunities to connect these services together to create service-oriented architectures (SOAs). These SOAs will require less custom software in organizations, but will likely demand more creativity in the selection and assembly of services. This is a natural evolution of software technology and will be explained in this book.

This is a guide for the savvy manager who wants to capitalize on the wave of change that is occurring with Web services, service-oriented architecture, and—more recently—cloud computing. The changes wrought by these technologies will require both a basic grasp of the technologies and an effective way to deal with how these changes will affect the people who build and use the systems in our organizations. This book covers both issues. Managers at all levels of all organizations must be aware of both the changes that we are now seeing and ways to deal with issues created by those changes.

The intent of this book is to give you an opportunity to consider some ideas and advice that just might make it easier for your organization to realize the potential benefits in Web services, service-oriented architectures, and cloud computing. No crystal ball exists to tell us the services that will be available tomorrow. Undoubtedly, there will many innovative services that we cannot envision at this time. For that reason, this book presents a straightforward approach that will help you get your organization ready to take advantage of a service-oriented architecture—in whatever form it takes.

This is a nontechnical book on a technical subject. It assumes no prior knowledge of the technology. It is written with a high-level view at the beginning of the book. As the book progresses, technical details are introduced and explained. You can stop reading at any point once you have enough understanding for your use.

Published by Morgan Kaufmann Publishers
ISBN 978-0123983572
Preview book on Google Books

Business Opportunities Addressed

The technologies and concepts described in this book can:

  • Expand your information technology options
  • Make your information technology systems more flexible and responsive
  • Reduce development time
  • Reduce maintenance costs

This book will explain why these promises can be fulfilled. Read through to the end of Part II to see why this technology will eliminate most technology barriers to integrating our systems. Part III discusses why the biggest challenge for managers is handling the people issues related to this change. That part of the book also provides tips on how to make development easier.

Structure of this Book

Part I (Chapters 1 through 4) begins with a high-level story of how a person on a business trip interacts with a service-oriented architecture based on Web services and cloud computing. Each of these technologies is then explained in more detail. As Part I progresses, technical details are added to the story in a "peeling of the onion" approach.

Part II (Chapters 5 through 7) deals with the technical forces driving the adoption of Web services, service-oriented architectures, and cloud computing. Change in any organization can be challenging. This part looks at the forces that help or hinder the technical aspects of change using a technique called force field analysis. Force field analysis is applied to various integration techniques related to Web services, service-oriented architecture, and cloud computing.

Part III (Chapters 8 through 10) focuses on the people involved in the change. People worry about the future of their jobs and worry about learning new tools and technologies. An organization must address these issues and concerns to achieve success. This part uses the force field analysis introduced in Part II. Here the analysis deals with managing the human aspect of the change that occurs with the adoption of a service-oriented architecture with cloud computing and provides tips on how to make development easier. The last chapter in this part introduces an incremental SOA analysis technique that aims to improve the project selection process in a way that also improves the chance of success for the selected project.

Part IV (Chapters 11 through 14) shifts to getting started with Web services, service-oriented architectures, and cloud computing. Chapter 11 provides three basic experiments that use Web services and then uses the story of the business trip in Part I to address more advanced uses of Web services. It ends with a vision of what Web services might mean for the future. Chapter 12 provides design concepts and considerations along with staffing and change issues to take into account when establishing a service-oriented architecture. It illustrates how properly designed service interfaces can make it easier for an organization to respond to the chaos of modern business. It ends with discussion of SOA governance. Chapter 13 discusses a way to evaluate external services and the systems and hardware related to cloud computing that support those services. Chapter 14 summarizes the Web services, service-oriented architectures, and cloud computing related to the business trip described in Part I.

Part IV (Chapters 15 and 16) is a reference section. It lists various semantic vocabularies and provides a quick reference guide for the terminology used in this book.

Published by Morgan Kaufmann Publishers
ISBN 978-0123983572
Preview book on Google Books

Contents

Introduction

Part I
Overview of Web Services, Service-Oriented Architecture, and Cloud Computing

Chapter 1
A Business Trip in the Not-Too-Distant Future

  • The Business Trip
  • Summary

Chapter 2
Information Technology Used for the BusinessTrip

  • Keeping Track of Detailed Customer Data
  • Using Virtual Personal Assistants
    • Managing C. R.'s Business Trip
    • Augmenting C. R.'s Experiences
  • Commoditizing Services
  • Viewing All Services the Same Way
  • Summary

Chapter 3
Service-Oriented Architectures and Web Services

  • Service-Oriented Architecture Overview
    • Services
    • Connections
    • The Architecture in SOA
  • Web Services Explained
    • History of Web Services Specification
    • Web Services Specifications
    • The Opportunity and Importance of Standardized Semantic Vocabularies
  • Service-Oriented Architecture Explained
    • Relationship of Web Services and SOA
    • Identification and Design of Services
    • Service-Oriented Architecture
  • Summary

Chapter 4
Cloud Computing

  • Blurring of Internal and External Services
  • Organizations of Any Size Can Use a Service-Oriented Architecture with Cloud Computing
  • The Cloud
  • Types of Clouds
  • Categories of Cloud Providers
  • Summary

Part II
Technical Forces Driving the Adoption of Web Services, Service-Oriented Architectures, and Cloud Computing

Chapter 5
Technical Forces Driving the Adoption of Web Services

  • Force Field Analysis Overview
  • Adopting Standard Data Element Definitions
  • Adopting a Standard Communications Protocol
  • Adopting Web Services
  • Summary

Chapter 6
Technical Forces Driving the Adoption of SOA

  • Adopting Standard, Enterprise-Wide Software
  • Adopting an Object Request Broker
  • Adopting an Enterprise Data Warehouse
  • Adopting an Enterprise Service Bus
    • Message Routers
    • Adapters
  • Adopting a Service-Oriented Architecture
  • Summary

Chapter 7
Technical Forces Driving the Adoption of Cloud Computing

  • Adopting Software as a Service
  • Adopting Platform as a Service
  • Adopting Service-Oriented Architecture with Cloud Computing
  • Summary
Published by Morgan Kaufmann Publishers
ISBN 978-0123983572
Preview book on Google Books

Part III: Managing Change Needed for Web Services, Service-Oriented Architectures, and Cloud Computing

Chapter 8
Change Issues

  • Change
  • Technical Change Issues Diminishing
  • Resistance to Change
  • Forms of Resistance
    • Lack of Training/Understanding
    • Power of Internal "Expert"
    • Inertia?Why Change"
    • Feeling that Jobs May be Threatened
    • Not Invented Here
    • Our Problems are Special
    • Loss of Familiarity, Competence, and Control
  • Suggestions for Addressing Resistance to Change
    • Selecting the Right People
    • Use a Second Set of Eyes
    • Really Listen
    • Communicate at Many Levels
    • Seek Appropriate Avenues to Involve People
    • Get Resistance Out in the Open
    • Ask for Participation and Form Partnerships
  • Some Resistance Scenarios
    • But It's So Complicated!
    • Guerilla Tactics
    • More Guerilla Tactics
    • The Elephant in the Room
  • Worksheet for Resistance Issues and Suggestions
  • Consolidated Analysis for Adopting a Service-Oriented Architecture with Cloud Computing
  • Summary

Chapter 9
Tips for Managing Change Issues During Development

  • Design as Little as Possible
    • Buy a System or Use One or More Existing Services
    • Buy a Model or Adopt a Semantic Vocabulary
  • Write as Little Code as Possible
  • Reduce Project Scope
  • Use a Methodology
  • Use a Second Set of Eyes
  • Use Small Teams
  • Summary

Chapter 10
Managing Change with Incremental SOA Analysis

  • Tools
    • Force Field Analysis
    • Worksheet for Resistance Issues and Suggestions
    • Decomposition Matrix
  • Five Principles for the Incremental SOA Analysis
  • Incremental SOA Analysis
    • Business Process Analysis Lane
    • Candidate Project Analysis Lane
    • Deployment Selection Lane
    • Select a Project with the Best Chance of Success
    • Deployment Lane
    • Vocabulary Management Lane
  • Summary

Part IV: Getting Started with Web Services, Service-Oriented Architectures, and Cloud Computing

Chapter 11
Getting Started with Web Services

  • All Web Services Connections Look the Same
  • The Impact of Web Services
  • Use of Web Services will Likely Spur Innovation
  • Start by Experimenting with Web Services
    • Use an External Service
    • Develop an Internal Service
    • Exchange Data Between Existing Systems
    • Use an ESB
    • Staffing Issues
    • Likely Change Issues
  • Adapt Existing Systems to Use Web Services
    • Enterprise Database Warehouse
    • Connect Components to Web Services
    • Additional Systems
    • Staffing Issues
    • Likely Change Issues
  • Vision of the Future
  • Summary

Chapter 12
Getting Started with Service-Oriented Architectures

  • Establish a Service-Oriented Architecture
    • Design Considerations
    • Staffing Issues
    • Likely Change Issues
  • What If Things are Not Going as Planned?
    • The Data Warehouse was Growing Much Faster than Expected
    • The Response Time of the Services Provided by an Internal System was Inadequate
    • Putting it All Together
  • Services and Service-Oriented Architectures
  • SOA Governance
  • Summary

Chapter 13
Getting Started with Cloud Computing

  • Expand your Internal SOA to Include External Services
    • Staffing Issues
    • Likely Change Issues
  • Governance Considerations
    • Legal Issues
    • Business Issues
    • Technical Issues
  • Data Center Considerations
    • Availability Issues
    • Disaster Recovery Issues
  • Examples of Technical Issues Related to Availability
    • Failover Options for Messaging and Databases
    • Database Availability Options
    • Replication Options for Messaging and Databases
  • Cloud Brokers
  • Should You be Your Own Cloud Provider?
  • Summary

Chapter 14
Revisiting the Business Trip in the Not-Too-Distant Future

  • Services for C. R.'s Business Trip
  • The Future for C. R.'s Organization
  • Summary
Published by Morgan Kaufmann Publishers
ISBN 978-0123983572
Preview book on Google Books

Part V
Reference Guide

Chapter 15
Semantic Vocabularies

  • Common Semantic Vocabularies
    • Address XML
    • Computing Environment XML
    • Content Syndication XML
    • Customer Information XML
    • Electronic Data Interchange (EDI) XML
    • Geospatial XML
    • Human XML
    • Localization XML
    • Math XML
    • Open Applications Group Integration Specification (OAGIS)
    • Open Office XML
    • Topic maps XML
    • Trade XML
    • Translation XML
    • Universal Business Language (UBL)
    • Universal Data Element Framework (UDEF)
  • Specific Semantic Vocabularies
    • Accounting XML
    • Advertising XML
    • Astronomy XML
    • Building XML
    • Chemistry XML
    • Construction XML
    • Education XML
    • Finance XML
    • Food XML
    • Government XML
    • Healthcare XML
    • Human Resources (HR) XML
    • Instruments XML
    • Insurance XML
    • Legal XML
    • Manufacturing XML
    • News XML
    • Oil and Gas XML
    • Photo XML
    • Physics XML
    • Publishing XM
    • Real Estate XML
    • Telecommunications XML
    • Travel XML

Chapter 16
Terminology

  • Adapters
  • Agents
  • Application programming interface (API)
  • Analytics
  • Application server
  • Atomic service
  • Big data
  • Business Intelligence (BI)
  • Business Process Execution Language (BPEL)
  • Business Process Modeling Notation (BPMN)
  • Business Process Query Language (BPQL)
  • Business Process Specification Schema (BPSS)
  • Caching
  • Cloud
  • Collaboration Protocol Profile/Agreement (CPP/A)
  • Community Cloud
  • Composite Service
  • CORBA
  • Data Cleansing
  • Data Warehouse
  • DCOM
  • ebXML Registry
  • Electronic Data Interchange (EDI)
  • Enterprise Service Bus (ESB)
  • eXtensible Access Control Markup Language (XACML)
  • eXtensible rights Markup Language (XrML)
  • Extensible Stylesheets Language (XSL)
  • Extract, Transform, and Load (ETL)
  • Failover
  • HTTP
  • Hybrid Cloud
  • Infrastructure as a Service (IaaS)
  • Internet Inter-ORB Protocol (IIOP)
  • Java API for XML Parsing (JAXP)
  • JSON
  • Load Leveling
  • Loosely Coupled
  • Mapping
  • Mashups
  • Message Router
  • Meta-Object Facility (MOF)
  • Middleware
  • Model Driven Architecture (MDA)
  • .NET
  • NoSQL database management system
  • Object Request Broker (ORB)
  • OMG Interface Definition Language (IDL)
  • Partner Interface Process (PIP)
  • Platform as a Service (PaaS)
  • Public Cloud
  • Registry
  • REgular LAnguage description for XML (RELAX)
  • RELAX NG
  • Replication
  • Representational State Transfer (REST)
  • Resource Description Framework (RDF)
  • RosettaNet Implementation Framework (RNIF)
  • Security Assertion Markup Language (SAML)
  • Schematron
  • Service
  • Service Provisioning Markup Language (SPML)
  • Service-Oriented Architecture
  • SOAP
  • Software as a Service (SaaS)
  • Tree Regular Expressions for XML (TREX)
  • Unified Modeling Language (UML)
  • Uniform Resource Identifier (URI)
  • Universal Data Model
  • Universal Description, Discovery, and Integration (UDDI)
  • Virtual Private Cloud
  • Web Distributed Data Exchange (WDDX)
  • Web Service Endpoint Definition (WSEL)
  • Web Services Component Model
  • Web Services Conversation Language (WSCL)
  • Web Services Description Language (WSDL)
  • Web Services Experience Language (WSXL)
  • Web Services Flow Language (WSFL)
  • Web Services for Interactive Applications (WSIA)
  • Web Services for Report Portals (WSRP)
  • Web Services User Interface (WSUI)
  • Workflow
  • XLANG
  • XML Common Biometric Format (XCBF)
  • XML Encryption
  • XML Key Management Specification (XKMS)
  • XML Linking Language (XLink)
  • XML Namespaces
  • XML Path Language (XPath)
  • XML Pointer Language (XPointer)
  • XML Protocol (XMLP)
  • XML Schema
  • XML Signature
  • XSL Formatting Objects (XSL-FO)
  • XSL Transformations (XSLT)
  • XQuery

Bibliography

Index

Published by Morgan Kaufmann Publishers
ISBN 978-0123983572
Preview book on Google Books