Cloud and industry, Part 3: Telecommunications solutions

Enhance development and integration with Service Storm

In this third part of our series about cloud based industry solutions, learn about a novel process-centric PaaS. Service Storm, a cloud enabled self-service telecommunication prototyping platform, is a PaaS model. Explore how this rapid integration model lets non-technical users create applications by assembling registered services, mashups, built-in rules, events, and database services. Examine how cloud technologies and Service Storm enhance PaaS capabilities in telecommunication solutions and enterprise environments.

Xin Peng Liu, Advisory Software Engineer and Quality Management Architect, IBM

Xin Peng Liu photoXin Peng Liu is an advisory software engineer and architect for the Rational Quality Management development team, IBM Software Group. Previously, he was the development lead of cloud services and IBM SOA Advanced Technologies focusing on design and development of cloud computing and industry solutions and piloting of other SOA technologies.



Yu Chen Zhou, Senior Technical Staff Member and Lead Architect, IBM

Yu Chen Zhou 的照片Dr. Yu Chen Zhou is a senior technical staff member at IBM Research, China. As the lead architect of Cloud Computing and Solution Engineering, China SOA Design Center, IBM SWG SOA Advanced Technologies, he initiated and led advanced technology projects, including cloud-enabled industry solutions, federated metadata management, and SOA policy. He is a senior member of IEEE and ACM, an IBM Master Inventor, a member of the IBM Academy of Technology, and was a member of the W3C and TOG workgroups. He is the primary author of a book, Service Oriented Computing, and has published 17 papers on IEEE conference proceedings, IBM Research Reports, and IBM developerWorks.



Xi Ning Wang, Advisory Software Engineer and Cloud Architect, IBM

Xi Ning Wang photoXi Ning Wang is an advisory software engineer on GCG Cloud Labs within IBM China Software Development Labs. He has designed and developed cloud computing technologies and solutions. Currently, he focuses on the areas of cloud computing and industry solutions.


developerWorks Contributing author
        level

Liang Xue , Advisory Software Engineer BPM Architect, IBM

Liang Xue photoLiang Xue joined IBM in 2006 and has a Ph.D. in Computer Science. She's lead projects on SOA policy, Metadata Management, PaaS Cloud, and WSRR development in SOA domain. She reached first plateau 2011. Currently, Liang is working as senior tech lead for BPM development and BPM cloud delivery.



Xiao Xing Liang, Staff Software Engineer, IBM

Xiao Xing Liang photoXiao Xing Liang is a staff software engineer on the Business Performance and Service Optimization team within the IBM Software Group and is experienced in SOA, BPM, and Web 2.0 technologies and solutions development.



Chang Hua Sun, Staff Researcher, IBM

Chang Hua Sun photoChang Hua Sun is a staff researcher with the IBM China Research Lab. Before that, he was a staff software engineer with IBM SOA Advanced Technologies and developed SOA and cloud related technologies and solutions for several projects.



Shuang Liang, Software Engineer, IBM

Shuang Liang photoShuang Liang is a software engineer on the Business Performance and Service Optimization team within the IBM Software Group and is experienced in SOA and BPM technologies and solutions development.



13 March 2012

Also available in Russian Japanese

Introduction

This article is the third part is a series on enabling cloud computing in industry solutions. Part 1 provided an overview of PaaS best practices and patterns. In Part 2, you learned about the capabilities and implementation mechanism of cloud-based IIF solution life cycle management. In this article, learn how cloud technologies enhance PaaS in the telecommunication industry. Explore how the Service Storm SPD provides a rapid integration model for services, and an integrated view of system health, for the four distinct user roles.

Telecommunication and IT technologies are rapidly converging. Confronted with huge infrastructure costs, telecommunication service providers need to:

  • Develop new, high-value services faster to recoup investments.
  • Deal with eroding revenue streams from traditional services, such as voice.
  • Fend off new, aggressive competitors, such as virtual and other Internet-based service providers that offer competitive services at very low cost.

Frequently used abbreviations

  • PaaS: Platform-as-a-Service
  • SDP: Service delivery platform

Service providers must rationalize their investment to build, deploy, and manage services while facilitating development of new, attractive services by third-party partner service providers. The demand for such combined services, and the convergence of wireless and fixed networks (broadband, for example), emphasize the need to move away from silo-based architectures. Today, service providers should rely on a horizontal, standards-based platform that enables convergence: a standards-based service delivery platform (SDP). (SDP usually refers to a set of components that provide services delivery architecture, such as service creation, session control, and protocols, for a type of service.)

Telecommunication SDP is the open, horizontal, standards based platform that enables service providers to create and deliver new, innovative services. To attract and serve an expanded customer base, telecommunication service providers are moving from voice-centered legacy network service to services that target the "long tail" across industries and communities. Services will be more targeted, focused, and personalized. This is a challenge for business models and technologies to develop and consume such value added services. Telecommunication networks and the Internet have evolved separately with regard to software applications and application development technologies.

For SDP, the cloud, with low cost for value added services and Platform-as-a-Service (PaaS), is the best way to host solutions. The cloud provides the open development community and business models for telecommunication services. A new range of services and applications are delivered to customers through several business models, though the PaaS model is the most prominent.

The PaaS model is a novel approach for software suppliers that want to focus primarily on the software development cycle and the monetization of new applications. They can bypass the investment in, and maintenance of, the underlying infrastructure and services for application design, development, testing, deployment, and hosting. PaaS creates a virtual platform for application development and deployment. With PaaS, the system's provider makes most of the choices that determine how the application infrastructure operates. Users build their applications with the provider's on-demand tools and collaborative development environment.

PaaS enables a centralized cloud-computing model where different roles in the ecosystem are magnetized around value added services into a centralized hosting environment. Roles include:

  • Telecommunication operator
  • Partner for development of value added services
  • Enterprises using telecommunication related applications
  • Individual customers

PaaS fits a double-sided market model where, in a platform, business is mediated between the demand and supply side. It creates value for upstream developers and downstream customers by extracting revenues from both sides. Telecommunication service providers will benefit from this new business model by achieving: low cost, openness, faster time to market, rich applications, and rich approaches for increasing revenue. Since the telecommunication operator provides the environment for the entire software cycle, developers can reduce the cost of provisioning and managing their own IT infrastructure. Runtime fees will be their primary costs, based on the actual computing resources used by applications or the number of users who are using them.


Service Storm

After studying telecommunication and mobile communication operators with dozens of customers, and analyzing the requirements and challenges in both business and technical models, we implemented Service Storm, a cloud enabled self-service telecommunication SDP in the PaaS model. Service Storm leverages Web 2.0 and other virtualization technologies to address the requirements of different roles in the ecosystem. It's different from conventional enterprise or partner-based development models because it enables the "open development community" model; everyone can rapidly develop telecommunication-based applications according to domain, community, or even user-specific requirements.

Service Storm provides a rapid integration model for personalized value added services. With the Service Storm model, non-technical users can create applications by assembling the registered services, mashups, built-in rules, events, database services, and so on. To ensure the independence and security of the different user groups, a three-layer isolation mechanism secures the resources. To facilitate resource allocation, a management and capacity planning mechanism allocates the resources appropriately. It provides an automatic deployment mechanism to support rapid and flexible deployment and scalability adjustment with the increased needs of business users. Service Storm also provides an integrated view of system health, from both a business and IT perspective, for business solutions and their hosting platforms.

To win in the marketplace, telecommunication operators must innovate, differentiate the customer experience, and be agile. In their business model, success factors for telecommunication operators are associated with the proper balance between the platform trade offs (open or closed, proprietary or non-proprietary, free or paid) to avoid fragmentation. For the business model, we classify roles, according to requirements regarding telecommunication value-added services, into the following four categories.

Individual user
The individual user previously acted only as end user with limited options for personalized services, lacks IT knowledge to develop own application but has a deep understanding of the requirements specific to the individual or small community, and requires that the environment is a black box with easy-to-use functions to innovate for personal needs or business opportunities.

Requirements from individual users, who dream to start from scratch, bring a new business model for the telecommunication operator. There's opportunity for increased revenue, in addition to the conventional voice and SMS based business. End users may significantly benefit from the rich content, multimedia, and highly personalized services in such a model.

Telecommunication operator
This telecommunication operator develops and hosts the value added services for public user communities, which falls into the conventional business model of value added services. There's a need for a more powerful and flexible development model, and infrastructure, to shorten the time to market for more fine-grained value added services to smaller user communities.
Business partner
The business partner develops value added services for the public user community and splits the profit with telecommunication operator. Requirements are similar to the telecommunication operator, with additional requirements for: reducing cost for hosting the development; and testing and provisioning product environments compliant with telecommunication industry standards.
Organization user
Conventionally, the organization user owns industry-specific applications as a part of an enterprise system by leveraging telecommunication service, such as mobile workforce management and front-end customer relationship management systems—especially for small and mid-size enterprises lacking IT capability.

A requirement is to reduce the cost to maintain the IT infrastructure by partial out-sourcing, and developing and deploying new applications rapidly.

Service Storm is designed to meet the requirements of all four categories of users. Figure 1 shows the Service Storm architecture.

Figure 1. Architecture of Service Storm
Architecture of Service Storm

In the architecture:

  • Service assembler is a visual tool for you to define the application logic in a drag and drop manner. You can integrate the telecommunication services (SMS, MMS, Location Based Service (LBS)), and other elements, including Web 2.0 UI and external third party services, for implementing the value added services. You can also automatically generate the deployable artifacts without coding.
  • Management components provide management functions for SDP by collaborating with BOSS. The management components are:
    • Service management that is used to manage the telecommunication services exposed in SDP, external third party services registered in SDP, and the newly generated applications
    • Solution management that is used to manage the solution implementing the services and deployed in the cloud environment
    • Cloud management that is used to manage the computing resources as cloud infrastructure
  • Runtime software platform, which is built in the cloud environment, provides the runtime environment to host the applications for value added services. Typically, it consists of application servers, process servers, and other runtime environments focusing on handling business rules, events, and operating status.
  • Cloud infrastructure is the cloud environment that provides centralized management of virtualized computing resources for the underlying capabilities needed for resource sharing based on cost saving.

Elements of the infrastructure

Cloud platforms host several independent applications, in a shared resource pool, and can allocate computing power to applications on demand. It's a challenge for cloud providers to manage resources while taking into account:

  • The high-level quality of service requirements of hosted applications.
  • Resource management costs.

Before an application is deployed, the hosting runtime environment should be allocated with necessary resources, and it should be created automatically in SDP. For security, Service Storm ensures that the allocated resources have been isolated for different user groups via the three-layer resource isolation mechanism. Meanwhile, resources allocated to service providers can be scaled up and down, depending on the user group size or the business growth requirement. The capacity planning mechanism helps manage the resources more effectively by catering to the requirements from the different roles.

Resource isolation

Cloud computing allows services to run on leased computation platforms, thereby decoupling the service provider from the platform owner and the cloud infrastructure provider. This model implies that the infrastructure provider provides the ability to properly isolate services from each other. Service Storm consists of physical resources that include hosts, CPU, memory, disk space, and networks. Service Storm software resources include the OS, middleware, and applications.

Service providers, and their end users, should be isolated from each other to avoid interference or conflicts. Service Storm provides a three-layer isolation mechanism that helps to isolate resources in the following ways.

Application layer
Application level isolation ensures that the application data and business logic are kept adequately segregated. End users cannot gain unauthorized access to each others' data and business logic. The account information for end users is associated with the applications. Only authorized end users can access the application, which is exposed by the corresponding service provider. This isolation ensures that end users will have accessibility for the applications created by a special group of telecommunication operators or business partners. Applications are isolated from each other for different end users, telecommunication operators, and business partners.
Network layer
Network isolation is often used to enhance the security and efficiency of the network by isolating some network traffic to certain physical networks. Generally, there are two types of isolation technologies:
  • Physical isolation, which cuts off the physical conjunction between physical nodes.
  • Logical isolation, which often uses the software to achieve isolation.
For virtual machines, coupled with virtual LAN and virtual switch technologies, isolation of a network can be effectively provided for physical server hosts and the virtual machines running on them.
Virtual machine layer
Different virtual machines running on the same physical machine are isolated from each other. The virtual machine monitor should offer isolation among virtualized guest environments and the host systems for both para-virtualization and full system virtualization. The software running in a virtual machine cannot access, or modify, the software running in the virtual machine monitor or in a separate virtual machine. Figure 2 shows an example of virtual resource isolation.
Figure 2. Virtual resource isolation
Virtual resource isolation

Resource management and scaling

Resource usage typically includes storage, I/O bandwidth, CPU usage, and memory usage. Agile resource management capabilities provide flexible mechanisms to build business agility. Service providers require different functions, qualities, and resource scaling in the telecommunications field. For example, the service provider of a backbone business process requires more virtual resources to achieve shorter response time and higher availability. For the service provider of assistant services, fewer or shared resources are allocated to reduce expenses. Flexibility is easily implemented by adjusting the virtual resources on a cloud infrastructure.

Horizontal and vertical scaling mechanisms are provided to resolve different performance tuning problems. Horizontal scaling covers the scaling up and scaling down capabilities. Vertical scaling specifies scaling out and shrinking capabilities.

Suppose a business service increases its requirements on resources in order to increase the quality of services. The service needs better capability when high-end usage increases. Clustering of middleware solves the problem. In Service Storm, built-in virtual templates provide topologies, including a standalone application server and cluster, for both normal and larger system throughput. A business user just specifies service quality options in Service Storm to increase scalability, including the number of end users or whether to enable high availability. The corresponding virtual system resources will be associated automatically to satisfy the service quality requirement.

Besides the basic resource scaling, the telecommunication operator and business partner roles can define more detailed sub-resource templates for different roles throughout the entire service life cycle. Topology of virtual machines, or the hardware and software resources for each virtual machine, are customized for roles as business modeler, developer, tester, production environment administrator, and so on.

Initial resource allocation and scaling functions in Service Storm are customized according to the user's role in their group (service provider groups or service end user groups), and can serve through the entire service life cycle.

Capacity planning

Capacity planning involves:

  • Predicting how much capacity is needed when future load levels saturate the system.
  • Determining the most cost-effective way of delaying system saturation.

The capacity planning provided by Service Storm caters to different roles. The telecommunication operator and business partner can define constraints on resources at initial resource allocation and specify upper limits for future growth. They can also define, in the service level agreement, the conditions for resource extension and recovery.

When a user reaches a predefined threshold of virtual resource usage, the cloud infrastructure will extend the virtual machine resources by allocating more memory and disk space, or by adding more nodes into a cluster to balance workload. Conversely, when usage of a virtual system is lower than the predefined threshold for a certain time, idle nodes will be removed or memory will be drawn back.

Based on automatic scripts (described later in Smarter deployment and monitoring), the virtual resources are scaled horizontally or vertically. They are managed automatically, based on the capacity planning of the service provider, with uninterrupted services that will remarkably decrease operating costs of the SDP.

Scaling the system

As the number of consumers increases, more computing capability will be required. Service Storm lets you scale the runtime environment horizontally or vertically. The horizontal and vertical scaling mechanisms are two-dimensional methods to resolve performance tuning problems. The automatic deployment capabilities provide a flexible mechanism to build business agility.

Scaling up and scaling down signify that the resources of the running service nodes are adjusted based on performance monitoring. Scaling up will increase the allocation of CPU or memory into the deployed service nodes; scaling down will decrease the allocation of CPU or memory.

Scaling out and shrinking can also adjust the performance capabilities of the deployed solutions. For scaling out, in cases where the workload of the production environment is increased, the deployed software cluster will encounter more pressure. The new nodes will be provisioned to join the cluster to enhance the computing ability and maintain performance. Shrinking is similar, but acts in the opposite manner when the running environment is in an idling state. Some of the member nodes can be released from the cluster to save resources for other usage.


Smarter deployment and monitoring

For a flexible and efficient SDP, the runtime environment (including the OS, network, middleware, and applications) must be instantiated and configured automatically. In Service Storm, a deployment model provides an elastic combination of virtual machine templates, network resources, and automatic scripts. The entire deployment becomes configurable; components can be flexibly configured, rather than the traditional single solution deployment. Service Storm also provides aggregated views of business and infrastructure monitoring that greatly benefit runtime management after deployment.

Configurable deployment model

To implement automatic deployment, Service Storm provides a complete deployment model with the following elements.

Virtual machine template
The OS and middleware are integrated in one virtual machine template, as in Figure 3. Configuration points for the OS and middleware are defined for a particular virtual machine template so the service provider can customize. There are three types of configuration points: specific software configuration points, OS level configuration points, and underlying hardware resource properties.
Network resources
Service Storm provides centralized networking management, including:
  • Allocation of internal network addresses for virtual machines.
  • Address and port configurations for external services.
  • Routing to internal virtual systems.
The end user cannot manually specify these types of values to control the deployed environment.
Automatic scripts
Automatic scripts configure or reconfigure a resource for a certain configuration point. Based on a unified model, Service Storm associates special automatic scripts for configuration during deployment. All the configuration steps are organized; the corresponding automatic scripts are invoked, relieving the service provider of the burden of implementing the underlying infrastructure.
Figure 3. Application runtime, automated deployment
Application runtime, automated deployment

Upon deployment, Service Storm selects virtual machine templates from the template repository and associates the necessary automatic configuration scripts, as shown in Figure 3.

Solution deployment

Service Storm provides the entire solution deployment as well as single component deployment and configuration. In the telecommunication field, flexible businesses require that the SDP provide a rapid, easy-to-use method to automatically deploy either an entire solution or a single resource component.

Service Storm contains several typical middleware solution patterns, such as application server cluster and high availability solution pattern. The solution patterns include pre-built metadata of middleware and automatic scripts to regenerate the solution. Users can customize the solution patterns by setting values for configuration points. For example, a service provider can select the number of nodes in the cluster and whether to enable the high availability feature.

Aggregated monitoring views

Monitoring is another important function of the SDP. Monitoring provides awareness of execution status of physical and software resources. In Service Storm, which is based on the PaaS model, you can select special resources for monitoring, such as response time of a business process instance and virtual system resource status (CPU, memory, and disk space).

Monitoring of both business and infrastructure resources is mashed up into a unified view for the user. It provides a global and integrated status view for the whole SDP, which helps reduce the risks of SDP operation and makes it much easier to respond quickly in emergency situations. The captured key performance indicator (KPI) of a business process is in the Service Storm monitor portal, as shown in Figure 4.

Figure 4. Monitored business process KPI
Monitored business process KPI

Resources

Learn

Get products and technologies

Discuss

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Select information in your profile (name, country/region, and company) is displayed to the public and will accompany any content you post. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into Cloud computing on developerWorks


  • BlueMix Developers Community

    Get samples, articles, product docs, and community resources to help build, deploy, and manage your cloud apps.

  • Cloud digest

    Complete cloud software, infrastructure, and platform knowledge.

  • DevOps Services

    Software development in the cloud. Register today to create a project.

  • Try SoftLayer Cloud

    Deploy public cloud instances in as few as 5 minutes. Try the SoftLayer public cloud instance for one month.

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Cloud computing, Industries
ArticleID=801065
ArticleTitle=Cloud and industry, Part 3: Telecommunications solutions
publish-date=03132012