Security is one of the most critical aspects of software quality. Software security refers to the process of creating and developing software that assures the integrity, confidentiality, and availability of its code, data, and services. Software development organizations treat security as an afterthought issue, and as a result, they continue to face security threats. Incorporating security at any level of the Software Development Life Cycle (SDLC) has become an urgent requirement. Several methodologies, strategies, and models have been proposed and developed to address software security, but only a few of them give reliable evidence for creating secure software applications. Software security issues, on the other hand, have not been adequately addressed, and integrating security procedures into the SDLC remains a challenge. The major purpose of this paper is to learn about software security risks and practices so that secure software development methods can be better designed. A systematic literature review (SLR) was performed to classify important studies to achieve this goal. Based on the inclusion, exclusion, and quality assessment criteria, a total of 121 studies were chosen. This study identified 145 security risks and 424 best practices that help software development organizations to manage the security in each phase of the SDLC. To pursue secure SDLC, this study prescribed different security activities, which should be followed in each phase of the SDLC. Successful integration of these activities minimizing effort, time, and budget while delivering secure software applications. The findings of this study assist software development organizations in improving the security level of their software products and also enhancing their security efficiency. This will raise the developer’s awareness of secure development practices as well.
In the modern digital era, software systems are extensively adapted and have become an integral component of human society. Such wide use of software systems consists of large and more critical data that inevitably needs to be secured. It is imperative to make sure that these software systems not only satisfy the users' needs or functional requirements, but it is equally important to make sure the security of these software systems. However, recent research shows that many software development methods do not explicitly include software security measures during software development as they move from demand engineering to their final losses. Integrating software security at each stage of the software development life cycle (SDLC) has become an urgent need. Tackling software security, various methods, techniques, and models have been suggested and developed, however, only a few of them provide strong evidence for building secure software applications. The main purpose of this research is to study security measures in the context of the development of secure software (SSD) during the study of systematic mapping (SMS). Based on the inclusion and exclusion criteria, 116 studies were selected. After the data extraction from the selected 116 papers, these were classified based on the quality assessment, software security method, SDLC phases, publication venue, and SWOT analysis. The results indicate that this domain is still immature and sufficient research work needs to be carried out particularly on empirically evaluated solutions.
Offshore software development outsourcing (OSDO) is a modern business strategy for producing high-quality software at a low cost. The OSDO refers to the practice of contracting to an offshore (extrinsic) organization to perform some or all software development work of a product. For the benefit of the OSDO vendors, this paper aims to develop a “communication and coordination challenges mitigation model” (CCCMM) that provides solutions for unambiguously defined communication and coordination processes in global software development (GSD) environment. Our proposed model is based on the fuzzy multi-attribute decision-making (FMADM) approach incorporating the capability of group decision-making. The FMADM approach is used both in the ranking of survey and assessment of case studies. First, the authors undertook a systematic literature review (SLR) that identified all cited challenges from a set of 101 articles. We identified 18 problem areas faced by the GSD vendors in OSDO relationships. Of these, six were ranked as critical. For the purpose of identifying corrective interventions, a second SLR was conducted that revealed 75 remedial measures extracted from 63 chosen articles. To validate our SLR findings, we surveyed 42 outsourcing experts from six countries. We also categorized six critical challenges and 75 corrective practices into four mitigation levels based on CMMI, SOVRM, and SOPM. In addition, two case studies were conducted to evaluate CCCMM outcomes in OSDO companies. The assessment results of the first case study do not recommend Company-A for the successful implementation of level-2 of the CCCMM, so Company-A stands at level-1. We have observed from the second case study that Company-B has implemented all the critical challenges of the level-2 only; therefore, Company-B is at level-2 “success” of the proposed assessment model.
The number of security attacks and the impact has grown considerably in the recent several years. As a result, new emerging software development models are required that assist in developing software that is secure by default. This article reviews the most widely used security software models. It proposes a new Security Assurance Model (SAM) for Software Development that is adaptable to all contemporary scenarios, emphasizing global software development (GSD) vendor companies. The SAM of Software Development was developed after studying 11 well-known development models and analyzing results obtained from a systematic literature review (SLR) and questionnaire survey. The SAM of Software Development consists of seven security assurance levels: Governance and Security Threat Analysis, Secure Requirement Analysis, Secure Design, Secure Coding, Secure Testing and Review, Secure Deployment, and Security Improvement. The security assurance levels of SAM of software development consist of 46 critical software security risks (CSSRs) and 388 practices for addressing these risks. The proposed SAM of Software Development was assessed based on a tool created by Motorola, which is used to evaluate the present state of a company’s software processes and find areas for improvement. We conducted 3 case studies on software development companies, using data from real software projects to examine the results of a practical experiment in each company. The results of the case studies indicate that the proposed SAM of Software Development helps measure the security assurance level of an organization. In addition, it can potentially serve as a framework for researchers to develop new software security measures.
Agile methods are extensively adapted by software development organizations due to the competitive benefits it offers. In recent years global software development (GSD) projects practice agile methods as prominent methods to deliver the software in increments with utmost user satisfaction and affordable cost. Beside the use of agile methods, the software industry has also considered the green aspect of software, to be in line with the demands of the organizations and the world technological ecosystem. The green and sustainable feature of software should focus both the energy and resource efficiency key factors. This phenomenon of embedding the green flavor in software has emerged a new research area, green software engineering, that promises the development of eco-friendly software with minimum energy and use of less computing resources, to trim down the adverse effects on both society and environment. The principal objective of this research study is to design and develop a multi-level Green-Agile Maturity Model (GAMM) to assess the GSD vendors' agile maturity in terms of green software development. The model has been built in four phases. In phase I and II, systematic literature review (SLR) was performed to identify the success factors and risk factors that either supports or hinders the green and sustainable software development respectively by practicing the agile methods in GSD. The results have been validated from 106 relevant experts, dealing with agile and green software projects, through questionnaire survey. The experts' demographic represents 25 different countries. We also identified the industry practices through SLR and survey, to address our identified critical factors. Phase III of this research deals with development of the GAMM by categorizing the identified factors into seven Green-Agile maturity levels. A similar approach has been used in other models such as Capability Maturity Model Integration (CMMI), Implementation Maturity Model (IMM) and Software Outsourcing Vendors Readiness Model (SOVRM). In phase IV of this research, five case studies were conducted at GSD organizations, to evaluate the structure and efficacy of the GAMM, while as a major contribution, this paper presents our developed model, the GAMM, which aims to assess the green-agile maturity of the GSD vendors in terms of green and sustainable software development.
21 April 2017 in Journal of Software: Evolution and Process