scholarly journals Software Risk Analysis with the use of Classification Techniques: A Review

2020 ◽  
Vol 10 (3) ◽  
pp. 5678-5682 ◽  
Author(s):  
M. N. A. Khan ◽  
A. M. Mirza ◽  
I. Saleem

Risk analysis and management is a critical aspect of the software development process. Various risks are associated with every phase of the software development lifecycle. The early identification of risks in each phase of software development coupled with mitigating plans can help to reduce the cost of the product and increase software quality. This study aims to explore various tools and techniques used in the literature of analyzing and managing risks. Most risk analysis techniques have been applied in the requirement analysis phase, so there is a scarcity of tools supporting automated risk analysis. Accommodating various types of risk factors to predict the software risks reduces the accuracy of the classifier.

2014 ◽  
Vol 2014 ◽  
pp. 1-12 ◽  
Author(s):  
Maxime Frydman ◽  
Guifré Ruiz ◽  
Elisa Heymann ◽  
Eduardo César ◽  
Barton P. Miller

The growth of the internet and networked systems has exposed software to an increased amount of security threats. One of the responses from software developers to these threats is the introduction of security activities in the software development lifecycle. This paper describes an approach to reduce the need for costly human expertise to perform risk analysis in software, which is common in secure development methodologies, by automating threat modeling. Reducing the dependency on security experts aims at reducing the cost of secure development by allowing non-security-aware developers to apply secure development with little to no additional cost, making secure development more accessible. To automate threat modeling two data structures are introduced, identification trees and mitigation trees, to identify threats in software designs and advise mitigation techniques, while taking into account specification requirements and cost concerns. These are the components of our model for automated threat modeling, AutSEC. We validated AutSEC by implementing it in a tool based on data flow diagrams, from the Microsoft security development methodology, and applying it to VOMS, a grid middleware component, to evaluate our model's performance.


2021 ◽  
Vol 13 (5) ◽  
pp. 2602
Author(s):  
Basit Shahzad ◽  
Fazal-e-Amin Fazal-e-Amin ◽  
Ahsanullah Abro ◽  
Muhammad Imran ◽  
Muhammad Shoaib

Software risks are a common phenomenon in the software development lifecycle, and risks emerge into larger problems if they are not dealt with on time. Software risk management is a strategy that focuses on the identification, management, and mitigation of the risk factors in the software development lifecycle. The management itself depends on the nature, size, and skill of the project under consideration. This paper proposes a model that deals with identifying and dealing with the risk factors by introducing different observatory and participatory project factors. It is assumed that most of the risk factors can be dealt with by doing effective business processing that in response deals with the orientation of risks and elimination or reduction of those risk factors that emerge over time. The model proposes different combinations of resource allocation that can help us conclude a software project with an extended amount of acceptability. This paper presents a Risk Reduction Model, which effectively handles the application development risks. The model can synchronize its working with medium to large-scale software projects. The reduction in software failures positively affects the software development environment, and the software failures shall reduce consequently.


2021 ◽  
Vol 8 (2) ◽  
pp. 245
Author(s):  
Wahyu Andhika ◽  
Muhammad Iqbal ◽  
Munifah Nur ◽  
Rizkhi Dwi Nugroho

<p class="Abstrak">Elisitasi kebutuhan dalam proses pengembangan perangkat lunak adalah fase yang sangat penting dalam <em>Software Development Lifecycle</em>. Karena dalam tahap ini ditentukan dengan tepat mengenai apa yang akan dibuat. Sebuah sistem baiknya memenuhi kebutuhan dari pengguna. Oleh karena itu, melibatkan pengguna dalam elisitasi kebutuhan menjadi salah satu fase yang sangat berguna dalam menentukan kualitas <em>persona</em><em> experience</em> dalam suatu sistem. Keterlibatan pengguna membuat pengembang harus memahami dengan baik apa saja yang akan menjadi kebutuhan pengguna. Pendekatan yang efektif dibutuhkan untuk mengenali pengguna dan merangkum kebutuhannya dengan baik dengan segala keunikan pada setiap individu yang mungkin terjadi. Menggunakan metode <em>persona</em>, penelitian ini akan menyelesaikan permasalahan berupa informasi dari pengguna yang tidak menggambarkan kebutuhan secara lengkap. Metode ini akan membantu menggambarkan seorang pengguna secara mendalam mulai dari kepribadian, kemampuan hingga perilaku pengguna terhadap suatu masalah. Dokumen mengenai pengguna secara detail kemudian disimpulkan agar didapatkan sebuah kebutuhan dasar untuk diimplementasikan menjadi sebuah sistem. Selain menggunakan metode <em>persona</em><em> </em>dalam meningkatkan elisitasi kebutuhan, penelitian ini juga berfokus pada nilai kualitatif informasi tersebut dengan menambahkan implementasi teori iteratif. Teori ini digunakan untuk meningkatkan akurasi penyelesaian masalah, yang mana pada setiap tahapnya akan menghasilkan informasi yang akan memudahkan pengembang dalam mendesain perangkat lunak yang berorientasi pada pengguna.</p><p class="Abstrak"> </p><p class="Abstrak"><em><strong>Abstract</strong></em></p><div><p><em>Elicitation of needs in the software development process is a very important phase in the Software Development Lifecycle. Because in this stage it is precisely determined what will be made. A good system meets the needs of personas. Therefore, involving personas in the elicitation of needs is one phase that is very useful in determining the quality of persona experience in a system. User involvement makes the developer must understand well what will be the persona's needs. An effective approach is needed to recognize the persona and summarize his needs well with all the uniqueness in each individual that might occur. By using the persona method, this research will solve problems in the form of information from personas who do not describe the needs in full. This method will help describe a persona in depth ranging from personality, ability to persona behavior towards a problem. The detailed persona document is then concluded in order to obtain a basic requirement to be implemented into a system. In addition to using the persona method in increasing the elicitation of needs, this research also focuses on the qualitative value of the information by adding iterative theory implementation. This theory is used to improve the accuracy of problem solving, which at each stage will produce information that will facilitate developers in designing persona-oriented software.</em></p></div><p class="Abstrak"><em><strong><br /></strong></em></p>


2011 ◽  
pp. 11-28 ◽  
Author(s):  
Scott Ambler

A fundamental reality of application development is that the user interface is the system to the users. Software development process should reflect this fact. When you ask how user interface development should be reflected within an software development lifecycle (SDLC), you quickly discover that it affects all aspects of software development from requirements through to system delivery. This chapter discusses how user interface development should be reflected in a mature software process and overviews a collection of techniques for each phase of software development, showing how user interface development can easily be integrated into the overall software process.


Complexity ◽  
2019 ◽  
Vol 2019 ◽  
pp. 1-20
Author(s):  
Paulo A. M. Barbosa ◽  
Plácido R. Pinheiro ◽  
Francisca R. V. Silveira ◽  
Marum Simão Filho

During the software development process, the decision maker (DM) must master many variables inherent in this process. Software releases represent the order in which a set of requirements is implemented and delivered to the customer. Structuring and enumerating a set of releases with prioritized requirements represents a challenging task because the requirements contain their characteristics, such as technical precedence, the cost required for implementation, the importance that one or more customers add to the requirement, among other factors. To facilitate this work of selection and prioritization of releases, the decision maker may adopt some support tools. One field of study already known to solve this type of problem is the Search-Based Software Engineering (SBSE) that uses metaheuristics as a means to find reasonable solutions taking into account a set of well-defined objectives and constraints. In this paper, we seek to increase the possibilities of solving the Next Release Problem using the methods available in Verbal Decision Analysis (VDA). We generate a problem and submit it so that the VDA and SBSE methods try to resolve it. To validate this research, we compared the results obtained through VDA and compared with the SBSE results. We present and discuss the results in the respective sections.


Sign in / Sign up

Export Citation Format

Share Document