Software Reuse in the Emerging Cloud Computing Era
Latest Publications


TOTAL DOCUMENTS

12
(FIVE YEARS 0)

H-INDEX

2
(FIVE YEARS 0)

Published By IGI Global

9781466608979, 9781466608986

Author(s):  
Tsung Lee ◽  
Jhih-Syan Hou

In this chapter, the authors introduce a model expansion method that is used in a new methodology of model composition and evolution for broad design domains. In the methodology, hierarchical model compositional relationships are captured in a model composition graph (MCG) as a schema of designs. An MCG schema can be used as a blueprint for systematic and flexible evolution of designs with three hierarchical model refinement operations: expansion, synthesis, and configuration. In this methodology, due to the need of hierarchical sharing in software and hardware domains, the authors designed an algorithm to achieve conditional and recursive model expansion with hierarchical model instance sharing that is not achievable in other expansion methods. Hierarchical model instance sharing complicates the design structure from tree structures to graph structures. The model expansion algorithm was thus designed with enhanced features of maintenance of MCG instance consistency, path-based search of shared submodel instances, and dependency preserving expansion ordering. The expansion specification and the expansion process are integrated with the MCG-based methodology. Model parameters set by designers and other refinement operations can be used to guide each expansion step of design models iteratively.


Author(s):  
Richard Millham

In this chapter, the author examines the migration process of a legacy system, as a software-as-a-service model, to the Web, and he looks at some of the reasons that drive this legacy system migration. As migration is often a multi-step process, depending on the legacy system being migrated, the author outlines several techniques and transformations for each step of the migration process in order to enable legacy systems, of different types, to be migrated to the cloud. Of particular interest are the different methods to handle data-intensive legacy systems to enable them to function in a cloud computing environment with reduced bandwidth. Unlike the migration of an unstructured legacy system to a locally-distributed desktop system, system migration to a cloud computing environment poses some unique challenges such as restricted bandwidth, scalability, and security. Part of this migration process is adapting the transformed legacy system to be able to function in such an environment. At the end of the chapter, several small case studies of legacy systems, each of a different nature successfully migrated to the cloud, will be given.


Author(s):  
Anteneh Ayanso

This chapter provides an overview of social customer relationship management (CRM) and explores the Web-based platforms that provide social CRM solution in software as a service (SaaS) model as well as the applications and tools that complement traditional CRM systems. Based on a review of current practices, the chapter also outlines the potential benefits social CRM provides to organizations in their sales, service, and marketing efforts. Furthermore, while the Web and its new breed of technologies and applications open new opportunities for businesses, these technologies also pose several new challenges for organizations in implementation, integration, data security, and consumer privacy, among others. In addition, these technologies can be exploited in a negative way to propagate misinformation against businesses and their reputations. In view of this, this chapter also examines ethical and legal challenges businesses could face in embracing social media technologies at the core of their customer management processes and systems.


Author(s):  
Indika Kumara ◽  
Chandana Gamage

Enterprise Service Bus (ESB) is a middleware that provides solutions for enterprise application integration. Although the contemporary ESB products exhibit diverse architectural styles and standards such as service component architecture and Java business integration, they mostly provide the same set of ESB services such as data transformation, security, et cetera. The quality attributes of a software system are primarily attributed to the system’s architecture, and a set of systems having different architectures can meet the requirements from a great variety of users. To produce several ESB variations successfully, a systematic reuse across ESB systems is crucial. Therefore, the commonality in ESB products, which is comprised mainly of ESB services, should be strategically exploited, and this chapter discusses an approach to realize it. The author presents a platform that can derive architecturally heterogeneous ESB products from reusable ESB services. The approach for building the platform leverages aspect-oriented programming.


Author(s):  
Qusay F. Hassan

Since the emergence of Service-Oriented Architecture (SOA), many organizations have thought they should migrate to it as a strategic solution that would enable higher agility in meeting fluctuating needs. However, SOA is not a “silver bullet” as many might think. SOA implementation is not a trivial task as it is facing a number of adoption challenges that should be addressed and accounted for before delving into the migration process. Paying close attention to these challenges would enable adopters to successfully reap the inherent benefits. This chapter lists the most important challenges that might prevent adopters from successfully implementing SOA in their organizations, with the help of some recommended solutions. Furthermore, it presents a step-by-step implementation case study in order to teach beginners the best ways to apply SOA to their organizations.


Author(s):  
Lin Liu

Based on the existing requirements model and new service requests, the proposed service requirements elicitation framework ASREGL aims to achieve an optimal service supply and demand relationship. The current control variable is the similarity of the service requirements and capabilities. The major contents of this chapter include: (1) Service requirements elicitation questionnaires system, which uses a set of queries to narrow generic service requirements down to specific expressions of user preferences; (2) The construction process of goal-oriented service models based on the user’s answers to the elicitation questions, which incorporates a Multi-strategy Task-adaptive Learning (MTL) technique with the goal-oriented requirements modelling approaches such as the i* framework; and (3) The dual feedback control mechanism, which supports the continuous interactions between service providers and requestors. The requirements elicitation process uses requirements models in the services pool matched with specific service requests, and ultimately identifies a service capability model that best fits the specific purpose of the targeted user. A virtual travel agency example is used to illustrate the proposed approach.


Author(s):  
Vishav Vir Singh

Reusability in the software development realm is a momentous cornerstone in deciding the success of an organization. The quantum leap in reusability was provided by object-orientation, which fundamentally altered the manner of thinking of software architects. The notion of the object and the installation of reusability as one of the central tenets is a critical requisite. Components that represented bigger and better software aggregates easily utilized by businesses to gain instant execution for their business services have made great strides. This gave way to the ultimate notion of a service which took software aggregates in components to fine and sharpened streams of software execution called services. This has been another inflection point in the overall curve of reusability, and most importantly, in agility and turnaround time for software production. The notion of services mandated the birth of a secure and trusted public interface to a service, which is called the Application Programming Interface (API). APIs represent a directory of services that a given enterprise offers.


Author(s):  
Barbara Gallina ◽  
Nicolas Guelfi

Cloud computing represents a technological change in computing. Despite the technological change, however, the quality of the computation, in particular its dependability, remains a fundamental requirement. To ensure dependability, and more specifically, reliability, transaction models represent an effective means. In the literature, several transaction models exist. Choosing (reusing entirely) or introducing (reusing partially) transaction models for cloud computing is not an easy task. The difficulty of this task is due to the fact that it requires a deep understanding of the properties that characterize transaction models to be able to discriminate reusable from non reusable properties with respect to cloud computing characteristics. To ease this task, the PRISMA process is introduced. PRISMA is a Process for Requirements Identification, Specification and Machine-supported Analysis that targets transaction models. PRISMA is then applied to engineer reusable requirements suitable for the achievement of the adequate transaction models for cloud computing.


Author(s):  
Qusay F. Hassan ◽  
Alaa M. Riad ◽  
Ahmed E. Hassan

Cloud computing is simply considered the realization of the long-held dream of using computing resources in the same way as accessing public utilities. Although the term “cloud computing” has been added to the IT jargon for about four years, many people are still in doubt as to what its actual meaning is. Some people even argue that cloud computing might just be an old technology under a new name. Many questions are raised when it comes to this subject. Why cloud computing? Is it the same thing as web hosting on third party servers? What is the difference between it and other popular terms such as grid computing? Why should organizations consider it? And, is it risk-free? IT, business, and academia folks are continuously asking about cloud computing with the intention of better understanding and realizing it. This chapter tries to demystify cloud computing by means of introducing and simplifying its terms to readers with different IT interests.


Author(s):  
Manjunath Ramachandra ◽  
Pandit Pattabhirama

With the evolution of the paradigm of cloud computing in every field of application, the demand on the reusable resources while providing the service has increased substantially. Although it is transparent to the user through virtualization, that is also a strength of cloud computing, the runtime scalability of resources to cater for a variety of services is to be addressed to meet the critical factor of the agreed quality of service. In this work, an architecture based on information feedback is presented to address this issue. The findings have been supported by the simulation results. The scalable architecture makes use of a hierarchy of resources, each level capable of providing a different degree of services. The demand for resources at each level, which is also equivalent to contention for resources or service drops, is computed using Random Early Detection (RED) or similar algorithms and used as feedback signal. The effectiveness of this signal may be enhanced by predicting the same several steps ahead of time. The prediction ensures the availability of a breathing time for the allocation of the resources.


Sign in / Sign up

Export Citation Format

Share Document