1,720,966 research outputs found
Evolvability Analysis Method for Open Source Software Systems
Software systems evolve over the life span to accommodate changes in order to meet technical and business requirements. Evolution of open source software (OSS) is challenging because of involvement from a large number of independent teams and developers who make modifications in the systems according to their own requirements. It is required to evaluate these changes as these are being incorporated into the system against the long term evolvability objectives. This paper presents the analysis of the Hackystat, an OSS framework; against analyzability, changeability, extensibility, testability domain specific quality attributes. The analysis of the processes used during the development of the OSS systems is also discussed. On the basis of the analysis and the early research conducted to evaluate software evolvability, an evolvability analysis method for OSS evolution is presented in this report. Guidelines of the model suggest that the requirements identification and analysis, identification of the system components that are to be affected as a result of the change, identification and prioritization of the potential solutions, evaluation of the potential solutions with respect to evolvability characteristics, use of test driven development and automated build tools are the important steps that should be performed to evaluate system changes. Evolvability analysis model also suggests that the team which is responsible to for system overall architecture (project control group) should also evaluate changes submitted by different teams. A case study to modify a service oriented architecture bases system into software as a service cloud model following the guidelines of evolvability analysis model is also presented
Foundations for Tools as a Service Workspace: A Reference Architecture:Design Space, Architecture Models, Design Tactics, Prototype and Experiences
Nowadays, on-demand provisioning of computing resources following a payper-use service model have enabled client organizations to have easy and on the fly access to the resources. The resources that are provisioned using the service model are generally characterized as resource as a Service (*aaS). However, providing the resources corresponding to a domain following *aaS requires specific challenges associated with the domain to be addressed. Software as a Service (SaaS) model enables software vendors to offer their software solutions to end users following pay-per-use model. SaaS also enables end users to have access to the software system without being bound into long-term license commitments and without incurring additional infrastructure and maintenance overheads. Though SaaS has been successful in providing stand-alone applications where users can perform a specific set of activities using an application, applicability of SaaS for scenarios where users need to use a number of software systems to perform activities and associated tasks is limited. A typical such use case is the activities associated with software engineering domains in general and software architecting domain in particular.This dissertation presents an approach to provide Tools as a service workSPACE (TSPACE), which is characterized as provisioning of a bundled suite of Tools as a Service (TaaS) required to perform activities associated with a specific domain as part of a cloud-enabled workspace. The presented approach is focused on addressing the challenges using an architecture centric solution by providing a Software Reference Architecture for TSPACE. As a specific case, software architecting domain and the tools used for software architecting have been focused in this dissertation.This dissertation explores (a) the challenges associated with software architecting of cloud-enabled systems, (b) TSPACE reference architecture design guidelines, (c) TSPACE requirements, (d) information structuring needs and methods of TSPACE reference architecture, (e) a detailed description of TSPACE reference architecture sub-systems and components, and (f) TSPACE reference architecture evaluation.The research goals are achieved by applying systematic literature review method, general literature surveys, reference architecture design methodologies, cloud and general architecture styles and patterns, architectureprototyping and architecture evaluation methods as tools.The main results of this dissertation are (a) a systematic review of the literature that identifies the challenges associated with software architecting of cloud-enabled systems, (b) a framework that guides the development of ivTSPACE reference architecture and its evaluation, (c) the business, functional, quality and software architecture significant requirements of TSPACE, (d) TSPACE reference architecture meta-models and a set of ontologies to structure concepts and elements of TSPACE (e) a detailed description of the reference architecture based on established design practices and architecture patterns and (f) the detailed process of TSPACE reference architecture evaluation based on using architecture evaluation methods and a prototype of TSPACE reference architecture along with integrated tools to analyze applicability, effectiveness and usefulness of TSPACE reference architecture.The main conclusions of this dissertation are (a) as the nature of the tools that are used in a specific domain vary, the domain models play a vital role in design of the TSPACE reference architecture for the respective domain (b) TSPACE reference architecture should have the capability to identify tools needed for the specific tasks (e.g. software architecting tasks and activities) and be able to bundle the needed tools in a suite of tools to provision TaaS, (c) as the nature of the tools vary in terms of the activities that are supported (e.g. specifying architecture significant requirements, capturing architecture knowledge and modeling architecture components), abstraction level of the artifacts that are produced and the way artifacts are exchanged among the tools and support for semantic as well as process-centric integration among the tools play a vital role in the adaptation of the reference architecture and (d) the reference architecture should be flexible enough to accommodate a wide variety of the tools used in a domain and the operations that are performed on the artifacts using the tools.<br/
A Systematic Mapping Study of Software Architectures for Cloud Based Systems
Context: Cloud computing has gained significant attention of researchers and practitioners. This emerging paradigm is being used to provide solutions in multiple domains without huge upfront investment because of its on demand recourse-provisioning model. However, the information about how software systems are constructed for cloud based systems and what architecture approaches are used to build these systems in not available in synthesized form, which makes it hard to find common architecture solutions for building applications for cloud and identify research gaps.Object: The main objective of this study is to systematically identify and analyze the currently published research on the topics related to software architectures for cloud-based systems in order to identify architecture solutions for achieving quality requirements.Method: We decided to carry out a systematic mapping study to find as much peer-reviewed literature on the topics related to software architectures for cloud-based systems as possible. This study has been carried out by following the guidelines for conducting systematic literature reviews and systematic mapping studies as reported in the literature. Based on our paper selection criteria defined by the requirements of the study’s objectives and research questions, we have found 86 papers to be included in this study out of initial set of 1491 papers.Results: We have grouped selected papers into different categories of themes including: quality attributes (15%), multi-tenancy (3%), frameworks (3%), workflow based systems (4%), support for hybrid devices (7%), middleware infrastructure for managing services and resources (10%), architecture refactoring considerations for migrating applications to cloud (4%), generic architecture solution (12%), emerging research areas (3%) and cloud application domains (39%). We have described problems being addressed in each category, which architecture solutions have been proposed to solve these problems and technologies that have been used.Conclusions: The selected studies reports challenges and potential solutions related to maintaining underlying infrastructure for supporting large number of users, utilizing cloud computing for making applications available for devices with limited resource, performing sensitive data processing on cloud and achieving service level agreements at different levels or abstractions. Energy optimization, service adaptability, reliability, resource provisioning and service integration are most commonly addressed quality attributes in cloud bases system. Work reported in this study focuses on architectural constructs of cloud-enabled systems reported in literature. We have synthesized architecture approaches proposed in paper into architecture styles that can be used for building cloud-based applications. After analyzing and synthesizing solutions proposed in independent studies we have provided architecture patterns for management, execution and realization of services. We have also proposed synthesized architecture patterns for managing multi-tenancy at database, service monitoring, service interoperability and management of distributed workflow execution
PTaaS: Platform for Providing Software Developing Applications and Tools as a Service
Cloud computing has become an established paradigm for enabling organizations to build scalable software systems and to meet challenges of rapid demand of computing and storage resources. There has been a significant success in building cloud-enabled applications for many disciplines ranging from web based and mobile application to intensive video and data processing systems. This initial success of cloud has opened new horizons for more complex domains. Global Software Development (GSD) is one of such domains. GSD is different than traditional applications domains because of involvement of large number of complex activities that does not only include technological aspects but also social aspects. A large number of applications and tools have been devised for providing solutions to the challenges of the GSD that emerge as a result of distributed development teams. However, the technological solutions that have been proposed so far are limited in their ability to meet specific GSD challenged and emerging trends of GSD in which software development is not only global but it also involve multiple organizations. Involvement of the multiple organizations in GSD increase the complexity of aligning their processes and establishing technology support needed to facilitate working according to new processes. Although the benefits of using cloud computing to solve GSD issues have been discussed in the literature but there has not been a significant attempt to provide fully functional technological support for it that is not limited to one specific tools and a particular phase of software development life cycle. In this thesis, we have explored the possibility of offering software development applications and tools as services that can be acquired on demand according to the software development process in globally distributed environment. We have performed the structured review of the literature on GSD tools to identify attributes of the software development tools that have been introduced for addressing GSD challenges and we have discussed significance of technology alignment with process. Information gained from the review of literature on GSD tools and processes is used to extract functional requirements for the middleware platform for provisioning of software development applications and tools as services. Finding from the review of literature on architecture solutions for cloud-enabled systems has been used to seek inspirations for providing architecture of the platform. In order to demonstrate feasibility of our proposed architecture, we have implemented a prototype of the middleware using Amazon as underlying IaaS Cloud and have demonstrated its functionality with the help of simple client application that act as a bridge between software development tools and middleware platform
Going Beyond Counting First Authors in Author Co-citation Analysis
The present study examines one of the fundamental aspects of author co-citation analysis (ACA) - the way co-citation
counts are defined. Co-citation counting provides the data on which all subsequent statistical analyses and mappings
are based, and we compare ACA results based on two different types of co-citation counting - the traditional type that
only counts the first one among a cited work's authors on the one hand and a non-traditional type that takes into
account the first 5 authors of a cited work on the other hand. Results indicate that the picture produced through this non-traditional author co-citation counting contains more coherent author groups and is therefore considerably clearer. However, this picture represents fewer specialties in the research field being studied than that produced through the traditional first-author co-citation counting when the same number of top-ranked authors is selected and analyzed. Reasons for these effects are discussed
Variations on the Author
“Variations on the Author” discusses two of Eduardo Coutinho’s recent films (Um Dia na Vida, from 2010, and Últimas Conversas, posthumously released in 2015) and their contribution to the general question of documentary authorship. The director’s filmography is characterized by a consistent yet self-effacing form of authorial self-inscription: Coutinho often features as an interviewer that rather than express opinions propels discourses; an interviewer that is good at listening. This mode of self-inscription characterizes him as an author who is not expressive but who is nonetheless markedly present on the screen. In Um Dia na Vida, however, Coutinho is completely absent form the image, while Últimas Conversas, on the contrary, includes a confessional prologue that moves the director from the margins to the center of his films. This article examines the ways in which these works stand out in the filmography of a director who offers new insights into the notion of cinematic authorship
Appropriate Similarity Measures for Author Cocitation Analysis
We provide a number of new insights into the methodological discussion about author cocitation analysis. We first argue that the use of the Pearson correlation for measuring the similarity between authors’ cocitation profiles is not very satisfactory. We then discuss what kind of similarity measures may be used as an alternative to the Pearson correlation. We consider three similarity measures in particular. One is the well-known cosine. The other two similarity measures have not been used before in the bibliometric literature. Finally, we show by means of an example that our findings have a high practical relevance.information science;Pearson correlation;cosine;similarity measure;author cocitation analysis
Dispelling the Myths Behind First-author Citation Counts
We conducted a full-scale evaluative citation analysis study of scholars in the XML research field to explore just how different from each other author rankings resulting from different citation counting methods actually are, and to demonstrate the capability of emerging data and tools on the Web in supporting more realistic citation counting methods. Our results contest some common arguments for the continued
use of first-author citation counts in the evaluation of scholars, such as high correlations between author rankings by first-author citation counts and other citation
counting methods, and high costs of using more realistic citation counting methods that are not well-supported by the ISI databases. It is argued that increasingly available digital full text research papers make it possible for citation analysis studies to go beyond what the ISI databases have directly supported and to employ more
sophisticated methods
- …
