scholarly journals Agile Software Development Techniques: A Survey

Author(s):  
Marriam Nawaz ◽  
Tahira Nazir ◽  
Seema Islam ◽  
Momina Masood ◽  
Awais Mehmood ◽  
...  

In this IT era, where there is a race of software development, it is necessary to introduce such types of software development techniques which will help the practitioners to deliver fast solutions. In the past, various traditional approaches were used for this purpose, but now agile techniques are getting more popular because conventional software development approaches are not efficient in managing the changing requirements. The agile software development process is one of the most emerging lightweight software development methodologies, which uses iterative and prototype development approaches to accommodate changes in software requirements. Final software products are delivered to the end-users in short iterations. One of the most noticeable drawbacks of agile methods is their limited courtesy to the structured and architectural design of the system. Hence this development approach will restrict small to medium design decisions only. In this paper, we have performed the analysis of different agile techniques, which will help the readers to understand their positive and negative points and select the most appropriate technique suited to their projects.

Author(s):  
David Parsons ◽  
Rosemary Stockdale

Multi-User Virtual Environments (MUVEs) are the subject of increasing interest for educators and trainers. In the context of software development, they are beginning to see increasing use both as learning spaces and as a richer means of collaboration for virtual teams. This chapter reflects on a project that developed and evaluated a virtual agile software development workshop hosted in the Open Wonderland MUVE, designed to help learners to understand the basic principles of some core agile software development techniques. The work took a design-based research approach, following a reflective path of development through two major iterations. The authors trace the research process from a real world implementation of the “agile hour” workshop to its virtual incarnation, describing the design philosophy and the constructed virtual artifacts. They conclude by reflecting on the insights into learner perceptions and practical implementations gained from building and evaluating the Open Wonderland workshop.


Author(s):  
Vinay Kukreja ◽  
Amitoj Singh

In the globalization of fast changing business and technology environment, it becomes very important to respond quickly to changing user requirements. Traditional methodologies are not appropriate for the projects where user requirements are not fixed. Agile methodologies have been developed to cope up with user changing requirements and emphasize more on working software and customer collaboration. Agile is an umbrella term and it is used for many software development methodologies which shares common characteristics. This chapter mainly focuses on the working methodology of agile development and the usage areas of industry where agile development is implemented. Agile software development is difficult in distributed environment as the team members are at distributed locations. This chapter discusses agile industry applicability enablers which are useful for agile software development in distributed environment.


Author(s):  
Muhammad Aminu Umar ◽  
Sheidu Salami Tenuche ◽  
Sahabi Ali Yusuf ◽  
Aminu Onimisi Abdulsalami ◽  
Aliyu Muhammad Kufena

As the popularity and acceptance of agile software development methodologies increases, the need to integrate usability engineering in the design and development processes is imperative. While, agile the focus is on technical and functional requirements not on end-user interaction, usability is usually only dealt with on the side. Combining this two in practice will go a long way in development of better product. Since the success and acceptance of software product depends not only on the technologies used but how well it integrates user-oriented methods. Therefore, this chapter puts together works on how usability engineering has been integrated with agile processes.


Author(s):  
Ernest Mnkandla

This chapter aims to reveal agile techniques that have been applied to software development and have resulted in meaningful improvements in software productivity. Available literature generally state some claims on the gains associated with the use of particular agile methodologies in software development. What lacks however, is a comprehensive analysis of how the application of agile techniques as a family will lead to improvement in software productivity. This chapter therefore provides such details. Software productivity techniques provide ways of measuring three things in order to determine the productivity of software; software products, software production processes and structures, and software production setting. Agile methodologies improve software productivity by focusing on the software production process and structures. The fundamental concern of this chapter is to show that agile methodologies measure the production process activities in a different but effective way from the more traditional approaches. For example, time-to-market is reduced by use of an iterative incremental development approach.


2009 ◽  
pp. 2680-2699
Author(s):  
James F. Kile ◽  
Maheshwar R. Inampudi

Of great interest to software development professionals is whether the adaptive methods found in agile methodologies can be successfully implemented in a highly disciplined environment and still provide the benefits accorded to fully agile projects. As a general rule, agile software development methodologies have typically been applied to non-critical projects using relatively small project teams where there are vague requirements, a high degree of anticipated change, and no significant availability or performance requirements (Boehm & Turner, 2004). Using agile methods in their pure form for projects requiring either high availability, high performance, or both is considered too risky by many practitioners (Boehm et al., 2004; Paulk, 2001). When one investigates the various agile practices, however, one gets the impression that each may still have value when separated from the whole. This chapter discusses how one team was able to successfully drive software development quality improvements and reduce overall cycle time through the introduction of several individual agile development techniques. Through the use of a common-sense approach to software development, it is shown that the incorporation of individual agile techniques does not have to entail additional risk for projects having higher availability, performance, and quality requirements.


Author(s):  
Kalle Rindell ◽  
Sami Hyrynsalmi ◽  
Ville Leppänen

Security objectives in software development are increasingly convergent with the business objectives, as requirements for privacy and the cost of security incidents call for more dependable software products. The development of secure software is accomplished by augmenting the software development process with specific security engineering activities. Security engineering, in contrast to the iterative and incremental software development processes, is characterized by sequential life cycle models: the security objectives are thus to be achieved by conflicting approaches. In this study, to identify the incompatibilities between the approaches, the security engineering activities from Microsoft SDL, the ISO Common Criteria and OWASP SAMM security engineering models are mapped into common agile software development processes, practices and artifacts.


Sign in / Sign up

Export Citation Format

Share Document