1,721,015 research outputs found
Developing a course on designing software in globally distributed teams
Present-day software engineering combines technical and social skills, as well as collaboration among people with different backgrounds (e.g. due to global development and outsourcing). In this paper we address the problem of teaching "globally distributed development", and specifically software design. Our goal is to develop a joint Master course teaching software design in a global setting. To this end, we contribute with a list of characteristics to be developed, in the form of an 'orientation map' for educators. We use this map to build a joint course between two European universities.Patricia Lago, Henry Muccini, Muhammad Ali Baba
A comparative survey of economic models for software product lines
Software product line engineering aims at achieving systematic reuse by exploiting commonalities among related products in order to reduce cost and time-to market. Before adopting this approach, organizations are likely to estimate the benefits they can expect to achieve and the level of investment required to transition to product line engineering. Several economic models and analysis approaches have been developed in order to help make a sound business case. There is a need to review the existing approaches in order to better understand the overall landscape of economic models. To this objective, this paper provides an overview of some existing economic models and discusses important issues and directions in product line economic modeling.Muhammad Sarmad Ali, Muhammad Ali Babar, Klaus Schmi
Modeling service oriented architectures of mobile applications by extending soaML with ambients
Mobile applications need to dynamically adapt to requirements of new environments (or locations) as users and their devices continuously move. Service oriented architecture (SOA) is a recent approach for designing and developing open and distributed systems. However, SOA has to be extended in order to fully accommodate the requirements of mobile services. This paper presents an approach called AmbientSoaML, which introduces ambients in service oriented architecture modeling language (SoaML) proposed by the OMG in order to allow its models to include mobility primitives. Ambients are considered to be the service providers and the service consumers for providing/consuming mobility services. They also represent the boundaries that services have to cross when moving from one location to another. This paper demonstrates the use of SoaML for modeling SOA of a mobile application in order to motivate the problem our research purports to address.Nour Ali, Muhammad Ali Baba
A Comparison Framework for Open Source Software Evaluation Methods
The use of Open Source Software (OSS) components has become a viable alternative to Commercial Off-The-Shelf (COTS) components in product development. Since the quality of OSS products varies widely, both industry and the research community have reported several OSS evaluation methods that are tailored to the specific characteristics of OSS. We have performed a systematic identification of these methods, and present a comparison framework to compare these methods.Klaas-Jan Stol, Muhammad Ali Baba
Model-Centered Customizable Architectural Design Decisions Management
Architectural Design Decisions (ADD) form a key element of Architectural Knowledge (AK), which plays a vital role in the software architecture process. To help manage ADDs, several tools have been proposed. However, most of them have prescribed fixed data models to be followed and do not provide sufficient customizability. Mismatches between a tool's data model and users' specific needs make the tool less usable, or even unusable. We propose a highly customizable solution that enables users to define specialized ADD models according to the specific needs of their individual preferences and working situations to achieve perfect fitness between the required model by users and the provided model by the tool. The results of the initial evaluation of the proposed solution are encouraging.Lianping Chen, Muhammad Ali Babar, Haiqi Lian
Using scrum in global software development: A systematic literature review
There is a growing interest in applying agile practices in Global Software Development (GSD) projects. The literature on using Scrum, one of the most popular agile approaches, in distributed development projects has steadily been growing. However, there has not been any effort to systematically select, review, and synthesize the literature on this topic. We have conducted a systematic literature review of the primary studies that report using Scrum practices in GSD projects. Our search strategy identified 366 papers, of which 20 were identified as primary papers relevant to our research. We extracted data from these papers to identify various challenges of using Scrum in GSD. Current strategies to deal with the identified challenges have also been extracted. This paper presents the review’s findings that are expected to help researchers and practitioners to understand the challenges involved in using Scrum for GSD projects and the strategies available to deal with them.Emam Hossain, Muhammad Ali Babar, Hye-young Pai
The use of empirical methods in open source software research: Facts, trends and future directions
Open Source Software (OSS) is a field of study with increasing interest of researchers. By its nature, OSS is especially suitable for empirical research. A great number of OSS related empirical studies have been conducted, but no effort has been made to systematically review the published evidence. This paper presents the results of a systematic review to investigate research topics and used methods in OSS related research. We present our results as facts and trends in this field and provide directions for future research.Klaas-Jan Stol, Muhammad Ali Babar, Barbara Russo and Brian Fitzgeral
Challenges in using open source software in product development:A review of the literature
This workshop was conducted as part of the ACM/IEEE 32nd International Conference on Software EngineeringComponent-Based Software Development has become a popular approach to building software intensive systems. Besides using Commercial Off-The-Shelf components, an organization may choose to use Open Source Software components. Using OSS has been reported to have many benefits, but there are also challenges involved. Understanding the potential challenges of using OSS in developing products is important for practitioners, so they become aware of them and can anticipate them and take appropriate measures to address these challenges. We have performed a thorough review of the literature to identify challenges that may arise, as reported in the literature. This paper presents and discusses these findings. Researchers can discuss potential causes and solutions of our synthesized findings as well as benefit from provided references to literature on OSS challenges as input for future research.Klaas-Jan Stol, Muhammad Ali Baba
A spatial hypertext wiki for architectural knowledge management
The absence of a disciplined approach for capturing and managing architectural knowledge causes the loss of substantial knowledge generated during the software architecture process. This paper describes the use of a Spatial Hypertext Wiki (ShyWiki) as a tool for Architectural Knowledge Management (AKM) support. Specifically, we demonstrate that ShyWiki can be used for implementing lightweight knowledge sharing workspaces, which includes AKM tools, decision support facilities, and activity awareness features. We also describe how distributed stakeholders involved in the software architecting process can share knowledge and manage their tasks by various features provided by ShyWiki.Carlos Solís, Nour Ali, Muhammad Ali Baba
An exploratory study of architectural practices and challenges in using agile software development approaches
Agile software development approaches have recently gained popularity as a mechanism for reducing cost and increasing ability to handle change in dynamic market conditions. However, there is also a significant concern about the role and importance of the issues related to the software architecture of a system being developed using agile approaches. There is to date little empirical evidence available on what software architecture related practices are followed by teams using agile approaches and the kinds of architectural challenges resulting from using agile approaches. This paper reports a case study aimed to empirically identify and understand the architectural practices and challenges of teams using agile approaches. The findings provide useful information about the researched issues and also highlight the areas that need to be focused on for integrating agile and architecture-centric approaches.Muhammad Ali Baba
- …
