Improving the Software Homologation Process through Peer Review: An Experience Report on Android Development Environment

In the current technological market environment, ensuring the quality of new products has become a complex challenge. In this scenario, companies have been investing in solutions that aim to reduce the execution time of software testing and lead to cost efficiency. However, companies that have a complex and specialized testing environment usually face barriers related to costly testing processes, especially in distributed settings. Sidia Institute of Technology works on research and development for the Android platform for mobile devices in Latin America. As we work in a global software development (GSD) scope, we have faced barriers caused by failures detected lately that have caused delays in the homologation release process on Android projects. Thus, we adopt an Internal Review process, using as an alternative to reduce these failures. In this paper it was presented the experience of a homologation team adopting an Internal Review process in order to increase the performance through of improving test efficiency. Using this approach, it was possible to realize a substantial improvement in quality, reliability and timeliness of our deliveries. Through the quantitative analyses, it was possible identify a positive growth in homologation efficiency of 6% after adoption of the process. In addition, we performed a qualitative analysis from the collected data through an online questionnaire. In particular, results show that association between failure reduction and review process adoption provides the most quality that has a positive effect on project milestones. We hope this report can be helpful to other companies and the scientific community to improve their process thereby increasing competitive advantages.

A Survey of Key Challenges of Adopting Agile in Global Software Development: A Case Study with Malaysia Perspective

Agile methodology is the current most popular technique in software development projects. Agile methods in software development bring optimistic impact on software performances, quality and customer satisfaction. There are some organizations and small-medium enterprises adopting agile into their local software development projects as well as in distributed software development projects. Adopting agile methods in local software development projects is valuable. However, agile global software deployment needs an attention. There are different key challenges in agile global software development that need to resolve and enhance the global software development cycles. The proposed systematic literature review investigates all key challenges of agile in global software development. Moreover, a quantitative methodology (an actual survey) targeted to present a real case scenario of these particular key challenges faced by one of the software houses that is BestWeb Malaysia. The outcomes of systematic literature and the results of quantitative methodology are compared with each other to evaluate if the key challenges pointed out in systematic review still exist. The proposed research and its exploratory results can assist small medium enterprises to avoid these challenges by adopting the best practices in their global software development projects. Moreover, it is helpful for novice researchers to get valuable information altogether.

A Framework for Teaching Distributed Requirements Engineering in Latin American Universities

This work describes a framework for teaching of global software engineering (GSE) in university undergraduate programs. This framework proposes a method of teaching that incorporates adequate techniques of software requirements elicitation and validated tools of communication, critical aspects to global software development scenarios. The use of proposed framework allows teachers to simulate small software development companies formed by Latin American students, which build information systems. Students from three Latin American universities played the roles of engineers by applying an iterative development of a requirements specification in a global software project. The proposed framework involves the use of a specific purpose Wiki for asynchronous communication between the participants of the process. It is also a practice to improve the quality of software requirements that are formulated by the students. The additional motivation of students to participate in these practices, in conjunction with peers from other countries, is a significant additional factor that positively contributes to the learning process. The framework promotes skills for communication, negotiation, and other complementary competencies that are useful for working on GSE scenarios.

An Agile, Intelligent and Scalable Framework for Global Software Development

Global Software Development (GSD) is becoming a common norm in software industry, despite of the fact that global distribution of the teams presents special issues for effective communication and coordination of the teams. Now trends are changing and project management for distributed teams is no longer in a limbo. GSD can be effectively established using agile and project managers can use different agile techniques/tools for solving the problems associated with distributed teams. Agile methodologies like scrum and XP have been successfully used with distributed teams. We have employed exploratory research method to analyze different recent studies related to challenges of GSD and their proposed solutions. In our study, we had deep insight in six commonly faced challenges: communication and coordination, temporal differences, cultural differences, knowledge sharing/group awareness, speed and communication tools. We have established that each of these challenges cannot be neglected for distributed teams of any kind. They are interlinked and as an aggregated whole can cause the failure of projects. In this paper we have focused on creating a scalable framework for detecting and overcoming these commonly faced challenges. In the proposed solution, our objective is to suggest agile techniques/tools relevant to a particular problem faced by the organizations related to the management of distributed teams. We focused mainly on scrum and XP techniques/tools because they are widely accepted and used in the industry. Our solution identifies the problem and suggests an appropriate technique/tool to help solve the problem based on globally shared knowledgebase. We can establish a cause and effect relationship using a fishbone diagram based on the inputs provided for issues commonly faced by organizations. Based on the identified cause, suitable tool is suggested, our framework suggests a suitable tool. Hence, a scalable, extensible, self-learning, intelligent framework proposed will help implement and assess GSD to achieve maximum out of it. Globally shared knowledgebase will help new organizations to easily adapt best practices set forth by the practicing organizations.

Investigation of Time Delay Factors in Global Software Development

Global Software Development (GSD) projects are passing through different boundaries of a company, country and even in other continents where time zone differs between both sites. Beside many benefits of such development, research declared plenty of negative impacts on these GSD projects. It is important to understand problems which may lie during the execution of GSD project with different time zones. This research project discussed and provided different issues related to time delays in GSD projects. In this paper, authors investigated some of the time delay factors which usually lie in GSD projects with different time zones. This investigation is done through systematic review of literature. Furthermore, the practices to overcome these delay factors which have already been reported in literature and GSD organizations are also explored through literature survey and case studies.