Pages: pp. 62-74
In the inaugural issue of the IEEE Transactions on Services Computing (TSC), I used “SOA,” "service-oriented consulting methodologies," and "services delivery platform and methodology" as examples to introduce the multi-level structure of the body of knowledge areas of Services Computing. Since body of knowledge areas can help the readers, authors, reviewers, editors, and community members at large to get a landscape view of the emerging Services Computing discipline, I would like to take this opportunity to introduce the structure and relationships of the details of the newly published TSC taxonomy . TSC uses those key knowledge areas as the foundation to create a disciplined approach to organizing paper submissions, reviewers, and editors.
In order to have a comprehensive introduction to all the identified knowledge areas, I will extract and reorganize some contents from , . Just to recap from , the 14 main knowledge areas of the Services Computing discipline included in the TSC taxonomy  can be categorized into the following four categories: Category 1 is about Services and Services Systems, which includes Principle of Services (M1) and Services Lifecycle (M2); Category 2 is about Services Technologies, which includes Web Services (M3), Service-Oriented Architecture (M4), Services Relationships (M5), Services Composition (M6), and Business Process Management & Integration (M7); Category 3 is about Services Consulting and Delivery, which includes Business Grid and Cloud Computing (M8), Enterprise Modeling and Management (M9), Service-Oriented Consulting Methodology (M10), and Services Delivery Platform and Methodology (M11); and Category 4 is about Services Solutioning and Management, which includes Application Services and Standards (M12), Security, Privacy, and Trust in Services Computing (M13), and Services Management (M14).
In this category, key concepts on services and lifecycle are introduced. From a modeling perspective, a dynamic view of services has been put into the context of systems.
1.1 Principle of Services (M.1)
The first-level knowledge area, Principle of Services (M.1), includes general topics that cover subareas such as Services Systems, Services Models, Services Technologies, Services Architectures, and Optimization of Services Systems. " Services represent a type of relationships-based interactions (activities) between at least one service provider and one service consumer to achieve a certain business goal or solution objective"  . In the area of Services Computing, Services Systems are mainly implemented by IT-based software systems that realize a certain business service. In general, each system has at least one input and at least one output. In order to make a system dynamic, a feedback control framework can be used to take sensors’ inputs, process the collected information, and take actions to achieve its business objectives. Services Models cover all aspects of mathematical modeling and model-driven developments. Traditional system modeling approaches can be applied to services systems through enhancements or customization. New service-oriented technologies are covered in the area of Services Technologies. The typical service-oriented technologies include Service Oriented Architecture, Web services, and Grid and Cloud Computing, which will be addressed in Category 2. Services Architectures are related to any architectural aspects at both business and IT levels. The connection between business architecture and IT architecture is one of the major focus areas of Services Computing.
1.2 Services Lifecycle (M.2)
Services Lifecycle (M.2) includes general topics, Key Factors in Services Lifecycle, and Service-Oriented Business Models. The general topics of services lifecycle cover the following six phases: Consulting and Strategic Planning, Services Engagement, Services Delivery, Services Operation, Services Billing, and Services Management. In general, Consulting and Strategic Planning is the first step to get socialized with clients and help identify pain points and strategic directions through consulting services. For example, a decision of outsourcing part of the business operations to a third party could be made in this phase. Once the client would like to start building a solution to address the identified challenges, a Services Engagement process will get started to get the memory of understanding or contract signed. The Services Delivery phase is responsible for analyzing the captured business requirements, designing a solution, and then delivering the solution for the client by working with its assigned team. Once the service is delivered to client, the client will move to the Services Operation phase to deliver services to its own customers on a daily basis. The operation process could be done by the client or a dedicated service operation team from other companies. In order to get the reward from delivering a service, Services Billing is a very important step to charge the usage of services based on some pricing strategies. When regular monitoring requests or exceptions happen, Services Management is a critical phase to make sure the deployed service can be consumed based on the original service level agreements. It is noted again, each phase of the services lifecycle can be performed by one or multiple parties.
The second key knowledge area under the umbrella of services lifecycle is the Key Factors in Services Lifecycle, which covers Data and Information, Processes, People, Resources, Financial Factors, Knowledge and Skills, as well as Innovation and Technology. Data and Information represent the inputs, outputs, and dynamics of services systems. Processes are a set of activities for achieving certain business objectives. In general, processes are repeatable for others to follow. People are central to a services system. People can drive a services delivery process or part of a delivery process that leverages people’s decisions. Resources are physical resources, such as an office building, IT resources, such as a data server, information resources, such as electronic documents and presentation files, or abstract resources, such as time. Financial Factors are obviously important in terms of cost, unit price, and profit. Knowledge and Skills can directly influence the productivity and quality of services delivery in the current labor-intensive services businesses. In the services modernization stage, people’s knowledge and skills can be captured and realized in reusable software systems to become secret weapons for the practitioners in the services industry. Innovation and Technology are the driving forces of growing and modernizing services business. New technologies can bring more opportunities for business model innovation.
The third key knowledge area of services lifecycle is Service-Oriented Business Models. The innovation of business models can help grow a business from a profit perspective. Service-oriented componentization technology and reuse-based composition and assembly can help create and realize new business models in a more efficient and effective manner. Actually, creating or adopting a new business model may be easy. But, the execution of a business model for the best performance is hard. In the area of Service-Oriented Business Models, Services Modernization, Software as a Service, and Services as Software are three major approaches. Services Modernization is used to transform the operations of a services business to be enabled or automated by the latest information technology. One example of services modernization is to streamline the supply chain management for retail services. Services as Software and Software as a Service (SaaS) represent new services delivery models that deliver and operate values added services around a software stack. For instance, exposing a customer relationship management (CRM) software application as a service for a wide range of users over the Internet is a typical SaaS business model. Services as Software is a new model of transforming the currently used labor-intensive services business model to an asset-based services business model. The key idea is to realize the best practices from the field in reusable software tools to increase the productivity and effectiveness of the services delivery process.
2.1 Web Services (M.3)
As a realization technology of a service-oriented architecture, Web Services (M.3) have gone through an adoption phase to become a mainstream standard of defining interfaces and communication protocols for modularized components. Although Web services were initially introduced and adopted in business-to-business integration scenarios, they have been gradually used in various solutions in horizontal and vertical industry spaces. In addition to the general topics, the key knowledge areas of Web services include Composite Services, Web Services Publishing, and Web Services Discovery. The general topics of Web services include all aspects of the representation of Web services. Those knowledge areas include Web Services Modeling, Web Services Communication Protocols, Web Services Binding, Web Services Registry, Stateful Web Services, and Web Services Interoperability. Web Services Modeling covers the interface description languages or mathematical model for representing individual Web services. For example, the Web Services Description Language (WSDL) is an example of interface description languages. Web Services Communication Protocols covers how the communication is enabled between Web services. An example communication protocol is the Simple Object Access Protocol (SOAP) and its variations. The Web Services Registry covers the metadata, access protocols, and integration interfaces of repositories for publishing and discovering Web services. Web Services Binding covers how the invocation gets done. For example, we can use the SOAP Servlet to handle SOAP requests on a Web server. The Stateful Web Services area covers how to annotate and manage state information for a Web service. The Web Services Resource Framework (WSRF) is an example way of capturing the state information of a Web service. Web Services Interoperability addresses the integration and cross-platform reuse of Web services which are produced by various tools from different vendors. For example, WS-I Profiles for various scenarios can help achieve the interoperability of Web services.
The Composite Services knowledge area includes three subknowledge areas: Composite Web Services, Representation of Composite Services, and Multidimensional Modeling. Here, the knowledge area of Composite Web Services includes scenarios of getting multiple Web services to be part of a composite service, which defines its services interface based on individual Web services. Representation of Composite Services deals with how a composite service is described in a readable way. For example, BPEL can be used to describe a composite Web service. The knowledge area of Multidimensional Modeling extends the traditional WSDL-based static modeling to dynamic modeling, which takes time dimension and Quality of Services (QoS) into consideration, and further to relationship modeling, which captures various relationships among services and service providers.
Web Services Publishing is emphasized here to include knowledge areas for publishing services to services registries, which can be a Public Services Registry, Private Services Registry, and Distributed Services Registry. For example, UDDI registry could be used as a public service registry or private service registry. For Distributed Services Registry, Web Services Inspection Language (WSIL) documents or customized Really Simple Syndication (RSS) files could be used as services registries to announce new services or features of existing services. So, in this knowledge area, services registries and repositories are the major target places for Web services publishing.
The knowledge area of Web Services Discovery includes the Services Discovery Language, Services Discovery Engine, Services Discovery Process and Methodology, Service Discovery Architecture, and Federated Services Discovery. Here, Services Discovery Language is a direction of defining an effective and efficient query model and description language to support search for services. We can manually discover services based on keywords or semantic annotations. The Services Discovery Engine covers how a processing capability can be modeled and enabled to parse search queries and handle the search results for appropriate output generation. The Services Discovery Process and Methodology includes reusable steps that can help construct search query, resolve query conflicts, dispatch search requests, aggregate results, disseminate notifications, and present search results in appropriate formats. A well-formulated methodology of services discovery can help practitioners find the right services to be part of a solution in an effective and disciplined approach. The Service Discovery Architecture provides an enablement and realization framework of services discovery in a modularized manner. This architecture supports search requests from program clients and Web browser clients. A caching mechanism and parameters are part of the architecture, which also supports searching centralized services repositories or distributed documents (e.g., XML files). Federated Services Discovery is the most used services discovery scenario for creating a solution which leverages services from multiple services registries. The business case is equivalent to the scenario of an Internet search from multiple Web sites but in the service-oriented environment.
2.2 Service-Oriented Architecture (M.4)
Service-Oriented Architecture (SOA) includes five second-level knowledge areas: General Topics, Services Invocation, Bridging Business and IT Architecture, Solution Lifecycle, and Solution Reference Architecture. As a loosely coupled architectural framework, SOA provides an extensible and reusable approach to designing a solution. In the knowledge area of general topics of SOA, Operational Model and Realization aspects are covered. The conceptual SOA includes service consumer, service provider, and service registry to provide an interaction environment for consuming, publishing, and discovering services for achieving certain goals. The Operational Model includes practical ways of customizing or formalizing SOA in the context of solution design. The Realization area covers all implementation aspects from technology foundation to product offerings. For example, Web services are one of the multiple technologies that can be used to realize an SOA. Web 2.0 technologies can be also used to realize and implement user-centric SOA solutions.
Services Invocation is a major knowledge area of consuming services in a disciplined approach. It covers Simple Services Invocation, Metadata of Services Interfaces, Metadata Publishing, and the Advanced Services Invocation Framework. The area of Simple Services Invocation includes how a method signature (i.e., operations names and associated input and output parameter types) is constructed manually for invoking a Web service. An example is to analyze a WSDL file and manually construct a service invocation call. The meanings of the parameters and other semantics are not covered in the Simple Services Invocation area. The Metadata of Services Interfaces area covers how and what metadata should be captured to annotate additional information for method signatures of services. For example, MetaWSDL is one way of annotating additional information that is not captured in WSDL. MetaWSDL and WSDL can pair with each other to provide rich information for the potential automation of services invocation. Metadata Publishing specifically addresses how the metadata about interfaces can be associated with the existing interface description languages, such as WSDL and BPEL. For example, WSIL can be used to pair WSDL with the corresponding MetaWSDL in a hyperlinked fashion. Once the additional annotation is added to an existing service interface description file, the Advanced Services Invocation Framework can help construct method signatures of services for consuming services automatically or programmatically.
Bridging Business and IT Architecture is a key area of using SOA principles to capture and propagate business-level requirements and strategies to the process execution level and then to the IT realization level. It includes Enterprise Level Transformation, Process Level Transformation, and Programming Level Transformation. The Enterprise Level Transformation mainly concentrates on the componentization and prioritization of key business functions in an enterprise for transforming its current business to a to-be state that could achieve better and more effective business performance. In general, the output of the Enterprise-Level Transformation includes identified pain points and high-level strategies to launch transformation initiatives. The area of Process-Level Transformation addresses how to formalize, create, or reengineer a set of business processes to improve the business areas which were indentified in the phase of Enterprise Level Transformation. Then, Programming-Level Transformation can realize and implement the identified business processes through software development. Programming languages or models are part of the Programming-Level Transformation for SOA. The research challenges not only include the modeling of each transformation at all the three levels, but also cover how the gaps can be connected between levels.
Solution Lifecycle includes Solution Modeling, Solution Development, Solution Deployment, Solution Publishing, Solution Discovery, Solution Invocation, Solution Composition, Collaborations in Solution, Solution Monitoring, and Solution Management. Solution Modeling covers requirement gathering and analysis as well as architecture design. Solution Development includes the technology and tools selection for implementing a solution based on the solution architecture from the solution modeling phase. Once a solution is developed and tested, it goes to the target environment for the Solution Deployment, which includes the installation and configuration of code, documentation, other solution artifacts (e.g., business processes), as well as corresponding software and hardware. Solution Publishing covers how a solution can be exposed as a service or application for others to leverage. It also covers repository and registry for enabling a solution or solution artifacts to be reused in the future. Solution Invocation includes how a solution can be leveraged. For example, a solution can be exposed as a service, which can be invoked like an individual service. On the other hand, if multiple services will be invoked, they should provide a centralized service invocation engine in the context of a solution for effective logging. Solution Composition covers how several solutions can be composed to become a composite application that provides an integrated solution view and other value-added services. Composition patterns and methodology can be major research topics from an engineering innovation perspective. The area of Collaborations in Solution covers how services are coordinated in a solution. For example, service-to-service collaboration protocols and enforcement mechanisms are research directions that may lead to OSI-like solutioning protocols for SOA. Solution Monitoring includes how key performance indicators are defined, tracked, and presented in a user-friendly or machine-readable format. Solution Management concentrates on the routine maintenance and exception handling when a solution is in operation mode.
The Solution Reference Architecture area includes various aspects of designing a solution architecture for SOA. It covers the Architecture Overview Diagram, User Interaction and Presentation, Processes, Services, Services Components, Operational Systems, Integration, Quality of Services, Data Architecture, and Governance. The knowledge area of the Architecture Overview Diagram provides a graphic diagram to get all key architectural elements to be illustrated. It may have several perspectives that are associated with corresponding audience types. The main audiences of the enterprise view of an architecture overview diagram are business analysts or senior solution architects. The IT view of an architecture overview diagram could target solution architects and developers. User Interaction and Presentation covers how a solution interacts with end users and programs. For example, it includes the architectural building blocks of modeling the interactions of a Web user or a business-to-business program with other architectural elements in a solution. The knowledge area of Processes deals with the design of all the business processes and their collaboration patterns in a solution. The Services aspect in solution architecture covers all the reusable services, their relationships, and their source and target solution artifacts. The Services Components area discusses how services are realized and implemented in components, such as Java class or .Net components. The knowledge area of Operational Systems includes all hardware, middleware, and application portfolios that support the deployment of services components and other architectural elements. The knowledge area of Integration deals with how applications can be integrated into a solution and how a message can be routed and shared among other solution artifacts and business entities involved in a solution. The Quality of Services area covers what quality metrics should be defined and applied to the right solution artifacts in a solution. The knowledge area of Data Architecture includes how various data formats can be integrated and transformed based on access control policies. The Governance area in a solution reference architecture handles organizational issues, design-time and run-time monitoring, and management based on best practices. For example, team building and information dissemination practices can help create a dedicated organization to focus on the innovations of SOA and related projects. The other type of governance includes a set of normative guidance that guides the practitioners to design solution architecture in a disciplined approach.
2.3 Services Relationships (M.5)
The knowledge area of Services Relationships covers general topics, the Web Services Relationship Language, and Service-Oriented Relationship Modeling. Some general topics include Relationships in Services Registries and Relationship Specification Languages. Since services are eventually cataloged in services registries, the annotation or metadata about relationships of services are important building blocks in a service registry. The other aspect is how to represent the relationship in a readable manner.
The knowledge area of the Web Services Relationship Language covers how to represent the relationship in a unified way. For example, an XML-based structure is used to capture relationships for Web services. Since Web services are provided by a business entity, the relationships can be defined at the business entity level, the Web service level, or the operations level.
Service-Oriented Relationship Modeling extends the Web Services Relationship Language to cover all service-oriented scenarios. It covers the relationships among business entities, business services, Web services, and operations. For example, an alliance relationship between business entities could provide better integrated business services offerings at lower prices. This kind of relationship can directly affect the selection of service providers and their corresponding services. This subknowledge area concentrates on the metadata of service-oriented relationship modeling. It covers Business Services Relationships, Modeling at the Business Entity Level, Modeling at the Business Service Level, and Relationship-Enriched Services Registry. The knowledge area of Business Services Relationship includes all kinds of relationships between business services, their providers, and their realizations. Modeling at the Business Entity Level includes four types of business-to-business relationships: partnership, parent-child relationship, exclusion, and alliance. XML schema can be used to represent those relationships. The knowledge area of Modeling at the Business Service Level includes relationship modeling of business services within one business entity or cross-business entities. For example, the following relationships can be captured to cover within and across business entities: parent-child, exclusion, binding, and community. Relationship-Enriched Services Registry is an engineering innovation area for enhancing services registries with well-defined and structured relationships.
2.4 Services Composition (M.6)
Services Composition includes general topics, the Services Integration Framework, and Services Value Chain Collaboration. It spans services integration within an enterprise or across enterprises. Services composition is a way of creating value-added services or applications based on existing services.
Some general topics of services composition include Aspects of Business Requirements, Business Requirements Modeling, Requirements-Driven Services Discovery, and Formalization of Services Composition. The knowledge area of Aspects of Business Requirements includes target components (e.g., user interfaces, functions, data models, events, and messages), operational environments, asset lifecycle governance, project management consideration, and finance consideration (e.g., development cost and price). Business Requirements Modeling covers ways of representing requirements in a readable manner. For example, XML can be used to capture all aspects of business requirements for services composition. The knowledge area of Requirements-Driven Services Discovery handles services discovery based on requirements. In most cases, automatic services discovery are based on modeled requirements. Once the services are indentified through requirement analysis and discovery, how to use a mathematical model to formulate services composition and present the composite services are the main topics of the Formalization of Services Composition area.
The knowledge area of the Services Integration Framework includes the Services Integration Procedure and Optimization of Services Composition. The Services Integration Procedure area explores methodologies of integrating various services into a composite service or service-oriented business process based on requirements. The knowledge area of Optimization of Services Composition covers how the resulting business process can be tuned to satisfy business requirements in a manual or automatic way. For example, a global optimization algorithm can be used to compose an optimal or near optimal business process based on requirements. Some best practices and performance data analysis of integrating services are also covered in this area.
The Services Value Chain Collaboration area covers how business collaborations are conducted in business-to-business environments. In this case, an enterprise is not standalone anymore. It collaborates with other partners to form a value chain based on its business objectives. Within an enterprise, the collaboration among multiple organizations or business units is also folded in this knowledge area. Therefore, the Services Value Chain Collaboration area includes Interenterprise Collaboration and Intraenterprise Collaboration. The other topics in this area are the Extended Business Collaboration Model, Annotated Business HyperChain, Web Services Collaboration Resources, Collaborative Message Primitives, Collaborative Constructs, and Collaborative Exchange Protocols. The knowledge area of the Extended Business Collaboration Model includes all models that support business collaborations across organization boundaries. The Annotated Business HyperChain area defines how the value chain can be represented without changing individual entities and their resources involved in the value chain. The knowledge area of Web Services Collaboration Resources defines how various resources (e.g., Site, Organization, Project, Task, People, Message, Transaction, Document, Product, and Tool) can be represented in a unified way. In this case, the Web Services Resource Framework (WSRF) could be used to capture all static or dynamic resources in a value chain. The Collaborative Message Primitives area covers reusable unit-level request-type or response-type primitives in a service-oriented environment. The knowledge area of Collaborative Constructs includes a set of reusable message exchange patterns that have specific business goals. Each collaborative construct is comprised of one or several message primitives. The Collaborative Exchange Protocols area covers how to leverage unified resources, message primitives, and collaboration constructs to annotate collaborative business processes that are involved in multiple organizations. A business solution can be composed by one or multiple collaborative exchange protocols.
2.5 Business Process Management and Integration (M.7)
The knowledge area of Business Process Management and Integration includes three second-level knowledge areas: general topics, Service-Oriented Business Process Management, and Flexible Business Process Integration. The general topics include all aspects of Business Process Modeling and Business Process Management. The first one covers how a business process can be represented in description languages (e.g., XML), graphic tools, or model-driven templates (e.g., UML). The later one includes how to monitor and manage business processes.
The Service-Oriented Business Process Management area includes Top-Down Process Management, Bottom-Up Process Management, Business Process Reengineering, and Process Reengineering Methodology. In the knowledge area of Top-Down Process Management, a business process is decomposed into subprocesses. A subprocess can be further decomposed into smaller subsubprocesses, until a task in the process can be realized by services. In general, Top-Down Process Management is mainly used in business driven and service-orientation scenarios. The Bottom-Up Process Management area deals with how to transform a legacy application into service-oriented business processes. In practice, Top-Down Process Management and Bottom-up Process Management can be used jointly at any point in time. The knowledge area of Business Process Reengineering covers how a business process is reengineered from the functional requirements perspective. For example, one task could be realized by two services in a reengineered process due to availability issues. The Process Reengineering Methodology area concentrates on the normative guidance of reengineering a process. For example, in an SOA solution design, the following three steps are used widely: process partition or decomposition, services allocation for realizing tasks in process, and realization of services through services components. All those major activities in the process reengineering methodology have reusable and configurable patterns that can be further articulated and analyzed based on theoretical models and best practices. An example method of process reengineering covers process decomposition, business services clustering, service selection, data modeling, service definition, business logic refinement, service implementation, service deployment, service monitoring and management, and service maintenance.
The knowledge area of Flexible Business Process Integration covers the Lifecycle of an Integration Activity, Integration Activity Modeling, and Business Process Monitoring. In real business scenarios, various applications are required to be integrated with the main solution. But for each application, the integration interfaces and adapters are different. How can we increase the flexibility of business process integration? In order to address this challenge, an integration ontology can be created. Once a new application is to be integrated with the current solution, a new integration activity is captured in the integration ontology. Then, an adaption layer for this new integration activity needs to be implemented. Since all the adaption layers’ service interfaces have the same definition of the input and output parameter types, only the contents in the input parameter have the context-aware information about this new integration activity. Examples of Flexible Business Process Integration can be found in . The knowledge area of Integration Activity Modeling covers the modeling principles and theoretical analysis of deadlock free, for example. The Resource Description Framework (RDF) is one example way of representing the integration activity ontology. Here, the Business Process Monitoring area concentrates on how to prove a model of process integration is deadlock free. Formal verification techniques can contribute to this effort. For instance, Petri nets are used to model an adaptive activity management system to help simulate, analyze, and validate some important properties of a system from deadlock-free and safeness perspectives.
The knowledge area of Business Grid Solution Development includes Business Grid Service Development and Business Grid Service Invocation. Business Grid Service Development deals with how to design and develop services for the distributed Grid Computing or Cloud Computing platform. On the other hand, the Business Grid Service Invocation area concentrates on the consumption of the services in the Grid or Cloud Computing environment.
3.2 Enterprise Modeling and Management (M.9)
The Enterprise Modeling and Management area includes three second-level knowledge areas: general topics, Methodologies for Enterprise Modeling, and Enterprise Performance Management. The general topics of Enterprise Modeling and Management cover the Dynamics of Services Ecosystem and Requirements for Enterprise Modeling. The knowledge area of the Dynamics of Services Ecosystem concentrates on how new technologies such as SOA can be used to build a dynamic services system to adapt to changing business models. The area of Requirements for Enterprise Modeling deals with various stakeholders and different visibility requirements while modeling an enterprise.
The knowledge area of Methodologies for Enterprise Modeling includes Balanced Scorecard and Strategy Map, Component Business Modeling Circle, and Enterprise Architecture and Transformation. Here, the Balanced Scorecard and Strategy Map area provides a communication tool and continuous execution tool for modeling an enterprise. The corresponding perspectives of objectives, measurement, target, and initiative can be used to define strategy map. The knowledge area of the Component Business Modeling Circle takes business components as inputs to perform business analysis and produce high-level constructs for realizing business services.
The Enterprise Performance Management area includes Enterprise Project Management, Performance Management, Service-Oriented Enterprise Management, and Enterprise Portfolio Management. Enterprise Project Management moves the traditional project management’s scope to integrate business requirements, project data, project status, and resource information into one managed environment. Performance Management covers the performance tracking and management aspects of project-based businesses. The knowledge area of Performance Management covers idea formalization, initiative creation, and IT realization of the created initiatives. The Service-Oriented Enterprise Management area covers the componentization of enterprise management. An example service-oriented enterprise management system includes business objectives, projects (portfolio), tools, components, and corresponding actions which are performed by the involved organizations. The knowledge area of Enterprise Portfolio Management covers multiple projects in multiple categories at the project portfolio level. Step-by-step methodologies for enterprise portfolio management are also covered in this area.
3.3 Service-Oriented Consulting Methodology (M.10)
The knowledge area of Service-Oriented Consulting Methodology includes general topics and Service-Oriented Business Consulting. Some general topics in this area cover the Consulting Method for Strategic Change and the Consulting Method for IT Strategic Plan. When an enterprise becomes more complex in value chain settings, it needs more adaptive business models and supporting infrastructures to execute its growth strategy. A typical business and IT alignment method covers three aspects: enterprise level, process level, and IT infrastructure level. The knowledge area of the Consulting Method for Strategic Change includes strategy definition, governance model, and recommended process improvements. In this phase, the typical outputs are white papers that describe the market trends, gap analysis, and suggested improvement points. On the other hand, the Consulting Method for the IT Strategic Plan area covers the IT assessment phase, governance model defining phase, initiatives launching phase, and IT transition planning phase.
The Service-Oriented Business Consulting area deals with methodologies of conducting business consulting services in a service-oriented approach. The traditional consulting methods often ignore the possibility of reusing assets and leveraging open ecosystems. Some key activities in service-oriented business consulting methodologies are key topics in this area. They include Gap Analysis, Initiatives Identification, Value Chain Analysis, Portfolio Analysis, Transition Planning, Project Management, and IT Service Management. The knowledge area of Gap Analysis covers service-oriented analysis of the "AsIs" and "ToBe" status of an enterprise. The Initiatives Identification area includes how to identify business initiatives through a set of reasonable analysis steps. The identified initiatives are expected to align with the overall enterprise architecture, illustrate enhancements for specific business components in an enterprise, and lead the business to the target strategy. The knowledge area of Values Chain Analysis concentrates on the integration and management of business partners and components suppliers to maximize the business value in a distributed service environment. The Portfolio Analysis area includes topics such as project coordination, prioritization of each initiative, dependence analysis, and executive communication. The knowledge area of Transition Planning covers all detailed steps of enabling the identified initiatives based on the portfolio analysis results. The Project Management area concentrates on the execution of projects through resource identification, role clarification, budget management, work break down structure, and statement of work. The knowledge area of IT Service Management deals with how to ensure service operations to satisfy the predefined service level agreements.
3.4 Services Delivery Platform and Methodology (M.11)
Services Delivery Platform and Methodology includes general topics, Service-Oriented Services Delivery Platform, Services Delivery Methodology, Software as a Service, and Services as Software. The general topics of this area include Services Delivery Mechanisms and Services Engineering. The knowledge area of Services Delivery Mechanisms covers all possible delivery models and their evolutions. For example, most of the total or integrated services providers are moving to specialized services offerings based on their best practices in selected industries or domains. The Services Engineering area includes all engineering aspects of services delivery. It can also cover some aspects of services development and other phases of the whole services lifecycle if the services delivery is a continuation of previous services engagements.
The knowledge area of the Service-Oriented Services Delivery Platform includes the Traditional Services Delivery Platform, Collaborative Services Delivery Platform, and Common Services. The Services Delivery Platform area covers all required core infrastructure services, IT service management, horizontal services, vertical business services, service partnership management, value-added services, service membership management, and service lifecycle monitoring. The knowledge area of the Collaborative Services Delivery Platform concentrates on the collaborative view of the services delivery platform. It includes the business capability perspective, business-to-business collaboration perspective, and coordinated access control perspective. The Common Services area includes reusable services that can be consumed by other services or applications in the services delivery platform. For example, centralized membership management service, billing service, and search service are core services in a services delivery platform.
The Services Delivery Methodology area includes the following key steps: the Services Delivery Readiness Phase, Services Delivery Creation Phase, and Services Delivery Operation. The knowledge area of the Services Delivery Readiness Phase covers the interactions between the service provider and service consumer through a service method adoption phase that includes analyzing requirements, defining governance, creating information and data architecture, and enabling project management. The Services Delivery Creation Phase area includes management of service variation, implementation, testing, and deployment by leveraging the services delivery platform, technologies, and tools. The knowledge area of Services Delivery Operation includes incident management, change and problem management, release management, and configuration management.
The knowledge area of Software as a Service includes Web 2.0 and Web X.0, Service Mashup, and New Business Models. The key goal of Software as a Service is to deliver software applications as services in an efficient and effective way. Web 2.0 and Web X.0 cover all the latest and future technologies to enable services delivery over the Internet. For example, consumer-oriented applications can be enabled through rich interfaces realized by Web 2.0 technology. The Service Mashup area covers how services can be composited in a systematic way over the Internet. For instance, integrating map service with product sales information can generate a new value-added service in the context of service mashup. The knowledge area of New Business Models includes how to leverage Software as a Service to deliver brand new or improved service offerings. For example, moving a standalone product lifecycle management (PLM) tool to the Internet can attract more Web users.
The knowledge area of Services as Software includes the Asset-based Services Model and Services Software. The traditional service business mainly concentrates on the labor-intensive delivery model. The Asset-based Services Model is a way of transforming the labor-intensive service model to increase the productivity and quality of services delivery business. The knowledge area of Services Software includes how to use software to embed best practices from the field into reusable and consumable software tools or systems. It is expected that more and more software applications or tools will focus on the enablement of the knowledge accumulated from services engagements.
4.1 Application Services and Standards (M.12)
The Application Services and Standards area includes five second-level knowledge areas: general topics, Solution-Level Quality of Service, Data Architecture Framework, QoS Management Modeling, Web Services Standard Stack, and Industry-Specific Standards. The general topics in this area include Case Studies in Industry, Case Studies in Scientific Applications, and Case Studies in Government. Those topics cover applications in industry sectors, scientific applications, and e-government solutions. Some cross-industry methodologies and tools are important enablers of asset reuse in multiple solution scenarios.
The knowledge area of Solution-Level Quality of Service includes the Context-Aware QoS Model, Representation of QoS Model, QoS Data Management, Business Relationship Model, and Solution-Level QoS Framework. The Context-Aware QoS Model area covers how to qualitatively and quantitatively define the quality of a solution. In general, the QoS model includes a set of attributes such as reliability, security, safety, and availability. The knowledge area of the Representation of QoS Model covers a uniform, flexible, and extensible way of modeling a QoS model for a solution. The QoS Data Management area covers how the QoS data is communicated and propagated through message exchanges including QoS metrics. The Business Relationship Model defines how service-oriented relationships can be leveraged to assure QoS for a solution. The knowledge area of the Solution-Level QoS Framework covers a logical QoS framework that controls and manages the quality of a solution. It may include multiple architectural building blocks in the enablement architecture.
The Data Architecture Framework area includes Constructs in Data Architecture, Relationships Between Constructs, and Data Services. The knowledge area of Constructs in Data Architecture includes data services gateway, data aggregator, data mining manager, access control manager, traceability enabler, data representation manager, and data sources manager. The Relationships between Constructs area covers some predefined relationships between constructs. For example, a one-to-one or many-to-many relationship between selected constructs can be defined. The relationships can be modeled in a class diagram in UML or in XML. The Data Services area concentrates on how to enable data as services.
The knowledge area of QoS Management Modeling includes Modeling of Resources and Modeling the QoS Assurance Process. The Modeling of Resources area covers modeling aspects of all entities involved in a solution lifecycle. The knowledge area of the Modeling QoS Assurance Process deals with how to provide reasonable assurance for a solution to get right QoS metrics and results in practice. Any description languages can be used to develop a model for a QoS assurance process. For example, BPEL could be used to capture a specific QoS assurance process.
The Web Services Standard Stack covers the following layers: Transport, Messaging, Description/Publishing/Discovery, Quality of Services, and Service Composition. SOAP, XML, WSDL, BPEL, UDDI, and Web services security are example standards in the Web services standard stack. The knowledge area of Industry-Specific Standards covers how to leverage the evolving SOA and Web services standards to define industry-specific solution frameworks, business processes, business protocols, and data models.
4.2 Security, Privacy, and Trust in Services (M.13)
The knowledge area of Security, Privacy, and Trust in Services includes four second-level knowledge areas: general topics, Access Control in Services Systems, Security Enablement in Services Systems, and Privacy Management in Services Systems. The general topics include Security Concerns of Service-Oriented Solutions, Privacy Concerns of Service-Oriented Solutions, and Trust in Service-Oriented Solutions. With the development of Internet technologies, more and more applications are moving to the Web. Who can access those applications? Has any private information about users been exposed to unauthorized users? Who can you trust on the Internet? Those questions and concerns are always associated with Web-based applications such as social networking solutions.
The Access Control in Services Systems area covers Role-based Access Control, Policy-based Access Control, Single-Sign-On, and Constraints and Rules. Role-based Access Control is used in a multirole collaboration environment to make sure only the right group of users can access the same type of information. The knowledge area of Policy-based Access Control covers how to define and enable policy to support access control. The Single-Sign-On area covers how to leverage role-based access control or policy-based access control mechanisms to get the right visibility with only one visible verification that needs user’s manual interaction. Once the first verification process is done, the session will last for a predefined period without requiring another visible verification request to the end user. Constraints and Rules are used to define policies and actions for enabling security, privacy, and trust in a solution.
The knowledge area of Security Enablement in Services Systems includes Service-Oriented Security Enablement at the Software Level, Service-Oriented Security Enablement at the Hardware Level, Service-Oriented Security Enablement at the Solution Level, and Security Enablement Methods and Tools. Generally speaking, a solution includes hardware, software, and other supporting infrastructure. Security enablement can be embedded in a hardware component or a software component. However, from a solution perspective, the hardware-level security enablement and software-level security enablement need to be federated at the solution level. So, some additional security modules may be added to the solution to leverage the hardware and software-level security features. Tools and methodologies for enabling security can dramatically improve the consistency and productivity of the delivery process of security and privacy services.
The Privacy Management in Services Systems area covers Privacy Management in Data Collection, Privacy Management in Data Transformation, Privacy Management in Data Dissemination, and Privacy Governance Methods and Tools. Privacy has become a major concern in electronic business. When data is collected, the contributors of the data have concerns about the possibility of inappropriate exposure of the collected data. When data is transformed, the same privacy issue requires a governance process to prevent the involved parties from exposing data in an inappropriate manner during the data transformation. In the data dissemination process, there is a question of how to ensure that only the right receiver can get the privacy-related information. Therefore, systematic approaches should be summarized as delivery methodologies for privacy protection services. A set of corresponding tools can help privacy practitioners deliver regular privacy assurance service and serve as platforms for new innovations. For example, new privacy assurance verification and enforcement algorithms can be plugged into the existing tools to get high quality service delivery for privacy or security assurance.
4.3 IT Services Management (M.14)
The knowledge area of IT Services Management includes four second-level knowledge areas: general topics, Application Management in Services, Infrastructure Management in Services, and Business and IT Aligned Management Services. The general topics in this area cover Management of Services Design and Management of Services Delivery. Management of Services Design deals with how a service is developed in an organized fashion. For example, task assessment and resource allocation in a service project can be managed in various environments such as in-house development, cross-site development, or outsourcing. The whole services design process can be streamlined in a factory-like setting to produce services from a managed services assembly line. Management of Services Delivery area concentrates on the delivery aspects of a service. It includes people resource management, customer support, system maintenance, billing handling, delivery process improvement, and service quality monitoring and management. The goal of Management of Services Delivery is to use minimum resources to deliver high quality services to satisfy customers’ requirements.
Application Management in Services includes three third-level knowledge areas: Application Management Services, Application Development Services, and Legacy Application Transformation Services. The Application Management Services area covers all kinds of maintenance services for existing applications which may need hardware management, software upgrade, application testing, and quality management or technical support service for the application users. The knowledge area of Application Development Services concentrates on the development aspects of applications. It involves governance design, development process improvement, business architecture design, application architecture design, software tools selection, middleware and implementation technology, code development, testing for application development, technical writing, and preparation of training and marketing materials. The Legacy Application Transformation Services area covers how a legacy application is migrated to a new solution architecture or integrated with other applications. For example, the legacy to SOA transformation effort has resulted in many code analysis algorithms and automation systems.
The knowledge area of Infrastructure Management in Services includes Maturity Assessment Services, Network Management Services, Server Management Services, and Data Center Management Services. The Maturity Assessment Services area deals with methods and tools of assessing the degree of maturity of the current IT infrastructure. As a result, a maturity assessment report can be generated. The knowledge area of Network Management Services covers the management aspects of network infrastructure, network software tools, network firmware, network configuration, security and price setup, priority management for applications over the network, and billing of network usages. The Server Management Services area includes server setup, clustering management, software upgrade, load balancing, service-level agreement monitoring for server’s usages, operating systems support, and hosting support. The Data Center Management Services area concentrates on the management of storage, energy consumption management for Green compliance, storage outsourcing, data backup, and emergency handling services.
The Business and IT-Aligned Management Services area includes Service-Level Agreement for Contracts, Key Performance Indicators for Business Processes, Quality of Services for Services Offerings, and Management Methods and Tools for Business and IT Alignment.
It should be noted that all of the defined knowledge areas and subareas can be selectively composed to create various courses serving different audiences. In the last few years, the Technical Committee on Services Computing within the IEEE Computer Society has organized a series of tutorials, Summer School on Services Computing, Fall School on Services Computing, panels, the Education Methodology Summit on Services Computing, and planetary talks to get input from the participants of the IEEE International Conference on Web Services (ICWS), IEEE International Conference on Services Computing (SCC), Congress on Services (SERVICES), IEE International Computer Software and Applications Conference (COMPSAC), IEEE Workshop on Future Trends of Distributed Computing Systems (FTDCS), and IEEE Asia-Pacific Services Computing Conference (APSCC). I would like to send my special thanks to the organizing committee members of those events, the participants, and the TSC Editorial Board members for their contributions to this first version of the body of knowledge areas of Services Computing.
I hope the introduction of the body of knowledge areas of Services Computing inspires you to explore scientific foundations and killer applications in the field of Services Computing. Applying the Services Computing discipline to your daily teaching, consulting, research, development, or services delivery practices could enable you to be more effective and systematic in the process of modernizing the services industry. Case studies and course guidelines will be published in the Services Computing Curriculum handbook for degree programs.
I am very pleased to include four research papers in the second issue of TSC. All of the papers have gone through a comprehensive review process. The decisions were recommended by the assigned associate editors. The first paper is "A Secure Information Flow Architecture for Web Service Platforms" by Jinpeng Wei, Lenin Singaravelu, and Calton Pu. Wei et al.’s paper is in the knowledge areas of Web Services as well as Security, Privacy, and Trust in Services. The second paper is "Similarity-Based SOAP Multicast Protocol to Reduce Bandwidth and Latency in Web Services" by Khoi Anh Phan, Zahir Tari, and Peter Bertok. Phan et al.’s paper is in the knowledge area of Web Services. The third paper is "Dynamic Web Service Selection for Reliable Web Service Composition" by San-Yih Hwang, Ee-Peng Lim, Chien-Hsiang Lee, and Cheng-Hung Chen. Hwang et al.’s paper is in the knowledge areas of Web Services and Services Composition. The fourth paper is "Coordinated Service Allocation through Flexible Reservation" by Kazuo Miyashita, Kazuyuki Masuda, and Fumitaka Higashitani. Miyashita et al.’s paper is in the knowledge area of IT Services Management.
I hope you like the papers published in this issue. If you have any suggestions or questions on TSC, please feel free to contact me so we can work together as ONE team to leverage TSC as a community-driven innovation platform for our Services Computing professionals.
Liang-Jie (LJ) Zhang
 L.-J. Zhang and C.K. Chang, "Towards Services Computing Curriculum," Congress on Services—Part I (SERVICES ’08), pp. 23-32, 2008.
 L.-J. Zhang, J. Zhang, and H. Cai, Services Computing. Springer and Tsinghua Univ. Press, July 2007.
 TSC Taxonomy, IEEE Computer Society, http://www.computer.org/portal/pages/transactions/tsc/mc/tsc_taxonomy.html, 2008.
Detailed taxonomy structure
M. Services Computing
M. Services Computing
1. Principle of Services
a. Services Systems
b. Services Models
c. Services Technologies
d. Services Architectures
e. Optimization of Services Systems
2. Services Lifecycle
a. Consulting and Strategic Planning
b. Services Engagement
c. Services Delivery
d. Services Operation
e. Services Billing
f. Services Management
1. Key Factors in Services Lifecycle
e. Financial Factors
f. Knowledge and Skills
g. Innovation and Technology
2. Service-Oriented Business Models
a. Services Modernization
b. Software as a Service
c. Services As Software
3. Web Services
a. Web Services Modeling
b. Web Services Communication Protocols
c. Web Services Binding
d. Web Services Publishing
e. Stateful Web Services
f. Web Services Interoperability
1. Composite Services
a. Composite Web Services
b. Representation of Composite Services
c. Multi-Dimensional Modeling
2. Web Services Publishing
a. Public Services Registry
b. Private Services Registry
c. Distributed Services Registry
3. Web Services Discovery
a. Services Discovery Language
b. Services Discovery Engine
c. Services Discovery Process and Methodology
d. Services Discovery Architecture
e. Federated Services Discovery
4. Service-Oriented Architecture
a. Operational Model
1. Services Invocation
a. Simple Services Invocation
b. Metadata of Services Interfaces
c. Metadata Publishing
d. Advanced Services Invocation Framework
2. Bridging Business and IT Architecture
a. Enterprise Level Transformation
b. Process Level Transformation
c. Programming Level Transformation
3. Solution Lifecycle
a. Solution Modeling
b. Solution Development
c. Solution Deployment
d. Solution Publishing
e. Solution Discovery
f. Solution Invocation
g. Solution Composition
h. Collaborations in Solution
i. Solution Monitoring
j. Solution Management
4. Solution Reference Architectures
a. Architecture Overview Diagram
b. User Interaction and Presentation
e. Services Components
f. Operational Systems
h. Quality of Services
i. Data Architecture
5. Services Relationships
a. Relationships in Services Registries
b. Relationship Specification Languages
1. Web Services Relationship Language
a. Relationship Modeling Schema
b. Layered Services Relationship Modeling
2. Service-Oriented Relationship Modeling
a. Business Services Relationship
b. Modeling at Business Entity Level
c. Modeling at Business Service Level
d. Relationship Enriched Services Registry
6. Services Composition
a. Aspects of Business Requirements
b. Business Requirements Modeling
c. Requirements Driven Services Discovery
d. Formalization of Services Composition
1. Services Integration Framework
a. Services Integration Procedure
b. Optimization of Services Composition
2. Services Value Chain Collaboration
a. Inter-Enterprise Collaboration
b. Intra-Enterprise Collaboration
c. Extended Business Collaboration Model
d. Annotated Business HyperChain
e. Web Services Collaboration Resources
f. Collaborative Message Primitives
g. Collaboration Constructs
h. Collaborative Exchange Protocols
7. Business Process Management and Integration
a. Business Process Modeling
b. Business Process Management
1. Service-Oriented Business Process Management
a. Top-Down Process Management
b. Bottom-Up Process Management
c. Business Process Reengineering
d. Process Reengineering Methodology
2. Flexible Business Process Integration
a. Lifecycle of an Integration Activity
b. Integration Activity Modeling
c. Business Process Monitoring
8. Business Grid and Cloud Computing
a. Service-Oriented Grid Computing
b. Business Grid Solution Framework
c. Cloud Computing
1. Logical Grid Infrastructure
a. Packaged Application Grid
b. Business Grid Middleware
c. Business Process Grid
2. Business Grid Solution Development
a. Business Grid Service Development
b. Business Grid Service Invocation
9. Enterprise Modeling and Management
a. Dynamics of Services Ecosystem
b. Requirements for Enterprise Modeling
1. Methodologies for Enterprise Modeling
a. Balanced Scorecard and Strategy Map
b. Component Business Modeling Circle
c. Enterprise Architecture
d. Enterprise Transformation
2. Enterprise Performance Management
a. Enterprise Project Management
b. Performance Management
c. Service-Oriented Enterprise Management
d. Enterprise Portfolio Management
10. Service-Oriented Consulting Methodology
a. Consulting Method for Strategic Change
b. Consulting Method for IT Strategic Plan
1. Service-Oriented Business Consulting
a. Gap Analysis
b. Initiatives Identification
c. Value Chain Analysis
d. Business Case Analysis
e. Portfolio Analysis
f. Transition Planning
g. Project Management and Collaboration
h. IT Service Management
11. Services Delivery Platform and Methodology
a. Services Delivery Mechanisms
b. Services Engineering
1. Service-Oriented Services Delivery Platform
a. Traditional Services Delivery Platform
b. Collaborative Services Delivery Platform
c. Common Services
2. Services Delivery Methodology
a. Services Delivery Readiness Phase
b. Services Delivery Creation Phase
c. Services Delivery Operation
3. Software as a Service
a. Web 2.0 and Web X.0
b. Service Mash-up
c. New Business Models
4. Services as Software
a. Asset-based Services Model
b. Services Software
12. Application Services and Standards
a. Case Studies in Industry
b. Case Studies in Scientific Applications
c. Case Studies in Government
1. Solution-Level Quality of Service
a. Context-Aware QoS Model
b. Representation of QoS Model
c. QoS Data Management
d. Business Relationship Model
e. Solution-Level QoS Framework
2. Data Architecture Framework
a. Constructs in Data Architecture
b. Relationships Between Constructs
c. Data Services
3. QoS Management Modeling
a. Modeling of Resources
b. Modeling the QoS Assurance Process
4. Web Services Standard Stack
d. Quality of Service
e. Service Composition
5. Industry-Specific Standards
a. Service-Oriented Solution Reference Architecture
b. New Standards
c. Case Studies
13. Security, Privacy, and Trust in Services
a. Security Concerns of Service-Oriented Solutions
b. Privacy Concerns of Service-Oriented Solutions
c. Trust in Service-Oriented Solutions
1. Access Control in Services Systems
a. Role-Based Access Control
b. Policy-Based Access Control
2. Security Enablement in Services Systems
a. Service-Oriented Security Enablement at Software Level
b. Service-Oriented Security Enablement at Hardware Level
c. Service-Oriented Security Enablement at Solution Level
d. Security Enablement Methods and Tools
3. Privacy Management in Services Systems
a. Privacy Management in Data Collection
b. Privacy Management in Data Transformation
c. Privacy Management in Data Dissemination
d. Privacy Governance Methods and Tools
14. IT Services Management
a. Management of Services Design
b. Management of Services Delivery
1. Application Management in Services
a. Application Management Services
b. Application Development Services
c. Legacy Application Transformation in Services
2. Infrastructure Management in Services
a. Maturity Assessment in Services
b. Network Management Services
c. Server Management Services
d. Data Center Management Services
3. Business and IT Aligned Management Services
a. Service-Level Agreement for Contracts
b. Key Performance Indicators for Business Processes
c. Quality of Services for Services Offerings
d. Management Methods and Tools for Business and IT Alignment