scholarly journals Choosing the Best-fit Lifecycle Framework while Addressing Functionality and Security Issues

10.29007/cfm3 ◽  
2019 ◽  
Author(s):  
Salman Faizi ◽  
Shawon Rahman

Software application development must include implementation of core functionality along with secure coding to contain security vulnerabilities of applications. Considering the life cycle that a software application undergoes, application developers have many opportunities to include security starting from the very first stage of planning or requirement gathering. However, before even starting requirement gathering, the software application development team must select a framework to use for the application’s lifecycle. Based on the application and organizational characteristics, software application developers must select the best-fit framework for the lifecycle. A software application’s functionality and security start with picking the right lifecycle framework.When it comes to application development frameworks, one size does not fit all. Based on the characteristics of the application development organization such as the number of application developers involved, project budget and criticality, and the number of teams, one of the five frameworks will work better than others.Keywords: Software development lifecycle, software functionality, software security, application development, framework security

Author(s):  
Kamalendu Pal ◽  
Bill Karakostas

The adoption of agility at a large scale often requires the integration of agile and non-agile development practices into hybrid software development and delivery environment. This chapter addresses software testing related issues for Agile software application development. Currently, the umbrella of Agile methodologies (e.g. Scrum, Extreme Programming, Development and Operations – i.e., DevOps) have become the preferred tools for modern software development. These methodologies emphasize iterative and incremental development, where both the requirements and solutions evolve through the collaboration between cross-functional teams. The success of such practices relies on the quality result of each stage of development, obtained through rigorous testing. This chapter introduces the principles of software testing within the context of Scrum/DevOps based software development lifecycle.


2022 ◽  
pp. 1059-1076
Author(s):  
Kamalendu Pal ◽  
Bill Karakostas

The adoption of agility at a large scale often requires the integration of agile and non-agile development practices into hybrid software development and delivery environment. This chapter addresses software testing related issues for Agile software application development. Currently, the umbrella of Agile methodologies (e.g. Scrum, Extreme Programming, Development and Operations – i.e., DevOps) have become the preferred tools for modern software development. These methodologies emphasize iterative and incremental development, where both the requirements and solutions evolve through the collaboration between cross-functional teams. The success of such practices relies on the quality result of each stage of development, obtained through rigorous testing. This chapter introduces the principles of software testing within the context of Scrum/DevOps based software development lifecycle.


2020 ◽  
Author(s):  
Mubarak Albarka Umar

<p><i>Software Testing is the process of evaluating a software program to ensure that it performs its intended purpose. Software testing verifies the safety, reliability, and correct working of software. The growing need for quality software makes software testing a crucial stage in Software Development Lifecycle. There are many methods of testing software, however, the choice of method to test a given software remains a major problem in software testing. Although, it is often impossible to find all errors in software, employing the right combination of methods will make software testing efficient and successful. Knowing these software testing methods is the key to making the right selection. This paper presents a comprehensive study of software testing methods. An explanation of Testing Categories was presented first, followed by Testing Levels (and their comparison), then Testing Techniques (and their comparison). For each Testing Levels and Testing Techniques, examples of some testing types and their pros and cons were given with a brief explanation of some of the important testing types. Furthermore, a clear and distinguishable explanation of two confused and contradictory terms (Verification and Validation) and how they relate to Software Quality was provided.</i></p>


2022 ◽  
pp. 819-834
Author(s):  
Nayem Rahman

Software development projects have been blamed for being behind schedule, cost overruns, and the delivery of poor quality product. This paper presents a simulation model of a data warehouse to evaluate the feasibility of different software development controls and measures to better manage a software development lifecycle, and improve the performance of the launched software. This paper attempts to address the practical issue of code defects in each stage of data warehouse application development. The author has compared the defect removal rate of their previous project to the newly proposed enhanced project development life cycle that uses code inspection and code scorecard along with other phases of software development life cycle. Simulation results show that the code inspection and code score-carding have achieved a significant code defect reduction. This has also significantly improved the software development process and allowed for a flawless production execution. The author proposes this simulation model to a data warehouse application development process to enable developers to improve their current process.


2019 ◽  
Vol 31 (3) ◽  
pp. 97-112
Author(s):  
Ong Chin Ann ◽  
Fu Swee Tee ◽  
Voon Yang Nen

Web applications are an important platform in today's society, which humans rely on to complete daily tasks. Most of the web applications were developed with sophisticated, well-known, and powerful web development frameworks. While these frameworks evolve and grow at exponential rate, it become very complex, challenging to learn and no longer intuitive for web application developers, especially those who are inexperience and amateur. There is a need for a simpler web development framework which is sufficient for contemporary web application development. Pigeon-table is a simple module developed under ngPigeon project with the aim to generate web content, i.e. table using data from MySQL database with a single html tag. Pigeon-table is intuitive and easy to learn as it was developed with the principle “web developer-centred design” in mind. A pilot test was conducted in this study to evaluate the satisfactory level among amateur web application developers towards pigeon-table as nano-framework.


Author(s):  
Shruti Jaiswal ◽  
Daya Gupta

The researchers have been focusing on embedding security from the early phases of software development lifecycle. They have researched and innovated a field of Security Engineering where security concerns are embedded during requirement, design, and testing phases of software development. Efforts were made in developing methods, methodologies, and tools to handle security issues. Various methods are present in the literature for eliciting, analyzing and prioritizing the security requirements. During the design phase based on prioritized requirements, environment parameters and attribute a suitable security algorithm mainly cryptography algorithms are identified. Then a question arises how to test the effectiveness of chosen algorithm? Therefore, as an answer to the issue in this paper, a process for Security Testing is presented that evaluates the selected security algorithms. Evaluation is done by generating the test scenarios for functionalities using sequence diagram representing the threats at vulnerable points. Then, checking the mitigation of potential threats at identified vulnerable points. A security index is generated which shows the effectiveness of deployed/ chosen security algorithm. The process ends with the generation of a test report depicting the testing summary. For a clear understanding of the process, the proposal is illustrated with a case study of the cloud storage as a service model.


Author(s):  
Shruti Jaiswal ◽  
Daya Gupta

The researchers have been focusing on embedding security from the early phases of software development lifecycle. They have researched and innovated a field of Security Engineering where security concerns are embedded during requirement, design, and testing phases of software development. Efforts were made in developing methods, methodologies, and tools to handle security issues. Various methods are present in the literature for eliciting, analyzing and prioritizing the security requirements. During the design phase based on prioritized requirements, environment parameters and attribute a suitable security algorithm mainly cryptography algorithms are identified. Then a question arises how to test the effectiveness of chosen algorithm? Therefore, as an answer to the issue in this paper, a process for Security Testing is presented that evaluates the selected security algorithms. Evaluation is done by generating the test scenarios for functionalities using sequence diagram representing the threats at vulnerable points. Then, checking the mitigation of potential threats at identified vulnerable points. A security index is generated which shows the effectiveness of deployed/ chosen security algorithm. The process ends with the generation of a test report depicting the testing summary. For a clear understanding of the process, the proposal is illustrated with a case study of the cloud storage as a service model.


2021 ◽  
Vol 8 (9) ◽  
pp. 436-441
Author(s):  
Abdul Khaliq ◽  
Eko Hariyanto ◽  
Supina Batubara

Application developers and users are the keys to the market impact on application development. In application development, developers need to predict applications in the market accurately, accurate prediction results are very important in showing user ratings that affect the success of an application. Ratings are given by users to judge that the application is good or not. The higher the rating given by the user, it means that the user likes the application and can be a benchmark for other users to download the application. It is undeniable that there are so many apps available on the google play store, it is impossible for users to select one by one app on the google play store. Therefore, a rating prediction system is needed to determine the right application based on the rating given by the user to an application. Predictions will be made using the random forest algorithm as the method used to predict application ratings. This study using the Google Play Store dataset. This dataset has 10840 rows and 13 attributes. The results of this study can be seen from the use of the random forest algorithm with an average accuracy of 93.8%. Keywords: Google Play Store, Rating, Prediction, Random Forest.


2012 ◽  
Vol 433-440 ◽  
pp. 5453-5458
Author(s):  
Ying Wan ◽  
Chuan Qi Tan ◽  
Zhi Gang Wang ◽  
Guo Qiang Wang ◽  
Xiao Jin Hong

In the software development lifecycle, code static analysis takes an important part in building secure software. To help discover the potential security issues in source code, large numbers of static analysis tools are developed. But the results generated by them display in the form of pure text, so it is time-consuming for developers to analyze these text messages, and it is difficult for developers to concentrate on the most interesting defects in huge data. In this paper, we have developed a visualization system oriented to Java source code, which presents the results in graphics from a developer’s point of view, to help developers to analysis code defects. A novel layout is proposed to visualize software source code in a hierarchy way, which shows the physical structure of the software. A visual overview and powerful interaction is provided in this system which allows the developer to focus on the most pressing defects within huge volumes of source code.


Sign in / Sign up

Export Citation Format

Share Document