StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Integrating Agile Practices into Waterfall Methodology - Coursework Example

Cite this document
Summary
From the paper "Integrating Agile Practices into Waterfall Methodology" it is clear that the advancement of technology has seen the evolution of skills and expertise in the field to have advanced the traditional technologies to the more efficient and effective technologies of software development…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER97.3% of users find it useful
Integrating Agile Practices into Waterfall Methodology
Read Text Preview

Extract of sample "Integrating Agile Practices into Waterfall Methodology"

INTEGRATE AGILE PRACTICES INTO WATERFALL METHODOLOGY CHAPTER INTRODUCTION Great change would be pointed out in the computer era after the discovery of computer system and the subsequent improvement in computer technology. Software is a basic part to computer system as they are the main features of programming. Distinctions in the purpose and use of computers systems is often dictated or influenced by the software configuration of the system as different software are required for performing different tasks. It is however worth noting that computer software are dynamic and keeps developing in order to handle complex and more confiscated tasks always. The development of software therefore requires continuous improvement in technology and the processes involved. Computer software developers are therefore individuals who specialize in the knowledge and field of computer software development. They therefore adopt and use strategic systems and processes in developing the software as would be necessary depending on the type and purpose of the software being developed. It is however, worth noting that there is disparities that would be identified in the processes and technologies used in software development over years. For instance, the advancement of technology has seen the evolution of skills and expertise in the field to have advanced the traditional technologies to the more efficient and effective technologies of software development as we have them today. Future projection also points towards improved systems and processes to be devised for the process of software development in the future. It is therefore basic and necessary to be aware that the process of software development is very dynamic and keep evolving. This chapter therefore contains an introduction to the study of development of software development technologies and processes. Main features to this chapter will therefore be background information to this subject, problem statement, purpose of the study, aims and objectives, research questions, hypothesis as well as the methodologies to be used. Background information It is prerequisite and a necessity of any organization to embark on ‘a priori’ activity of estimation of the success of a software project before embarking on it. This is because it has been identified actually that the rate of failure of such undertakings and projects can be very high which has very detrimental outcomes overall. This has been backed up by research findings where research has shown that organizations undertaking projects of software development and improvement often face challenges that end up rendering the processes unsuccessful and hence the need to have proper infrastructure and expertise as would lead to successful processes in software development and improvement for such organizations. For instance, according to a report by Krigsman (2011), an estimated 37% of all the software development and improvement projects by organizations fail. The study on the main factors that would be associated with the failure revealed five main reasons of the failures, which are requirements, resources, schedules, planning, as well as risks. The failure of an organization to identify project requirements that are clear, has priority, having agreement precise and un-ambiguous explain the failure resultant from requirements according g to the report. Sufficient and right resources with right estimated turnovers are also prerequisite to the success of any such a project. Right scheduling as well as planning also play a critical role in ensuring the success of any such a project within a n organization. Moreover, any other risks hat a project in software development may face needs to be identified a priori and managed to avoid the repercussions in failure of the project as would result from assuming such risks. The necessity of proper planning as well as estimation concerning costs involved in development and improvement of software cannot be over emphasized with the current trends of failures showing that the failures results to losses of billions of money. Galorath (2007) therefore emphasizes on this need in his report where he ascertains that with improved estimation as well as planning, such huge losses could be averted. The process of software development and improvement has been ongoing over years with great discoveries being done due to specificity of organizational operations, which would often necessitate particular software for its operations. For instance, the ever-changing technological infrastructure in use by bankers requires continuous improvement in order to overcome the challenges of hacking into the systems and the possibility of great losses that would arise. Operators in the sector therefore keep investing higher and higher in development and improvement of the software in use for effectiveness and efficiency in their operations. One strategy that has been used in overcoming the challenge of software failure in organizations has been through identifying a software lifecycle. This refers to understanding the active life of a given software developed as just as with other systems, a software has a lifespan where after the expiry of such a software, upgrading or complete renewal is necessary to make the software active. Good example to such is the software used for protecting a computer system against malwares, which requires activation after expiry of the active life. Developers came up with a systematic and logical process to be used in developing and maintaining software’s (Leau et al., 2012). The process, which was named as system, software development life cycle (SDLC), aimed at reducing the failures. This process came with an emphasis that documentation was important at every stage of the development process. SDLC brought forth Waterfall and V-model methodologies that many software development companies were interested to take in following. Each company that adopted the cycle took each stage of the cycle until verification of the required specifications was achieved (Okoli & Carillo, 2010). The stage wise development was important to the developers since they were able to deal with all bugs as they occurred hence leading to production of high quality software. After the design stage, the implementation stage that purely comprised of coding needed no changes. This is because; every bit of the software and its specifications had been identified in the initial stages. However, the methodologies brought forth were still not complete. This is because they were not competent enough to handle changes in technology and the ever-growing differences in business needs. For example, waterfall needed to be restarted every time there was a slight change in business or technology. These shortcomings brought forth development of new and more interactive software methodologies where agile and relational unified processes are some of them. The new methodologies aimed at achieving software agility and adaptability, which is the opposite of the rigid and bureaucratic development schedule involved in the first cycle. Agile models comprised of numerous iterations in the schedules that went through the complete SDLC stages of planning, analysis, design, coding and testing. The iterations focused on improving the output with every test made after iteration. The iterations emerged from customer feedbacks that assist in arriving at conclusive solutions. This was majorly possible since the design was open to change and it was not “set in stone.” According to Leau et al. (2012), agile development methods comprise of crystal methodology, featured-driven development, dynamic software development method, scrum, lean software development and extreme programming. All the mentioned methods have about five common practices. These are they all promote interaction rather than documentation, they have frequent but rapid iterations, have frequent short meetings, distributed decision making and they have a close interaction with customers. All these practices translate to important business benefits. This research paper will explain how these practices can be integrated in to the traditional software development like waterfall instead of changing completely to the new software methods. According to Garner’s IT key metric data, waterfall methods were employed on 52% of development efforts in 2011, with iterative methods used in 29% and agile in 19%. These numbers remained roughly stable during the 2009 through 2011 period, although agile methods usage increased from 15% to 19% in 2011. Only 56.6% of the projects were completed on time, and only 67% finished on budget. The average schedule variance was 20%, and the average budget variance was approximately 14%. Problem statement Among other tools that have been used in reducing the rates of soft ware failures have been studying the distinct lifecycle of a given software in order to establish its strengths and weakness as would help an organization in taking necessary precautions. More improved methodologies and tools are being used in the modern day in development of software as against the traditional methods. However, it is acknowledged that just as was the case with the traditional tools, these modern tools equally present challenges in effectiveness and this probes the challenge of how the traditional and the modern technologies would be incorporated in designing and developing of more effective methodologies and tools. In particular, therefore, the problem to be studied in this research is the traditional waterfall technologies can be utilized with the agile technologies in designing more improved software. Purpose of the study The focus of this study is in analyzing how the waterfall technologies used in software development would be integrated with the agile technologies in development of better software. By identifying the main features of agile processes that would be adopted for incorporation within the waterfall methodologies for improvement, this study will therefore contribute to the literature of compatibility of these methodologies. Besides, this study will establish the link between these attributes of software technology as would be used for effectiveness and efficiencies in developing more improved organizational software. This study will also contribute to the existing literature on methodologies used in software development and provide recommendation(s) towards future studies in the theme. Agile technologies as are seen today show advancement although are criticized on equally having specific shortcomings just as is the case with the previous methodologies of waterfall. Historical descriptions are the main characteristic features identified in the waterfall technology literatures while the agile technologies has literature on best practices, case studies as well as on improved concepts. Integration of agile technologies have in a number of instances been identified as having potential in improving the waterfall methodologies used and hence proposed as potential effective solution to the challenges faced in software development. This study is therefore very instrumental in affirming such claims and identifying the particular attributes of agile methodologies that would be adopted and incorporated in the waterfall technologies for effectiveness and efficiency. Besides, by the study adopting the investigative approach, it will test the hypothesis that incorporating agile technologies in the waterfall technologies would produce better results that would be advantageous to trading organizations and the players within the field of software development. The purpose of the study will be therefore directed more on improvement of existing methodologies as against development of new technologies. Objectives of the study The main objective and aim for this study is identifying the main attributes of the agile technologies that would be adopted and incorporated in the rather traditional waterfall methodologies in order to produce better and improved technologies to be used in software development for business purposes. This study therefore evaluates the agile practices such as the crystal methodology, the dynamic software development, extreme programming, scrum, failure driven development as well as lean software development. By identifying the capacity to integrate the various technologies in development of a better technology of software development, the study will have contributed greatly towards overall software development expertise and knowledge. Research Questions a. What are the main defining features of ‘waterfall’ and ‘agile’ technologies of software development? b. What are the main advantages and or weaknesses of the two technologies? c. How can agile technology attributes be incorporated within the waterfall technologies in development of software and what would be the main advantages? Hypothesis Incorporating agile technologies in the waterfall technologies would produce better results that would be advantageous to trading organizations and the players within the field of software development. Methodology This part describes the procedure that will be used during the testing of the hypothesis, collecting of data and management of data upon which this study is based. The chapter additionally explains the method that is used during data analysis and the description entailing the scope of the procedure that eventually leads to the answering of the hypothetical questions that was generated previously. Unlike research methods that are used by researchers to refer to distinct techniques that are applied while carrying out a research study, research methodology describes the vast number of processes that a researcher involves while studying specific phenomena. Methodologies therefore refer to the systematic process through which a research study is carried out. Research methods are categorically part of the methodologies that are utilized by a researcher while carrying out a research study. Nevertheless, the conceptual or theoretical research studies such as the current study are guided by some abstract ideas or theories. Testing of the hypothesis, answering of questions as well as interpretation of the findings is based on some predetermined body of knowledge or theories. The theories are assumed conventional and thus universally acceptable. The research paradigm adopted as either being qualitative or quantitative is equally very instrumental in deciding on the methodology to be applied (Maxwell, 2008). Qualitative and quantitative research studies depend on the major differences notable on the nature of reality, epistemology (relationships being studied), use of language, role of values as well as the overall research process (Aylward & Clarke, 2005). Analytical methods especially the empirical analyses are applicable within the context of testable variable within studies. Other relationships are not testable hence; the studies adopt the deductive methodologies of carrying out a research study. On the other hand, whenever research variables relate in manners that are both predictable through theoretical deductions and can be testable, the studies will employ the use of the two simultaneously. Deductions from the study findings will then be applicable in general context within the capacity of the study to project and make inferences (Key, 1997). By conducting this study under the deductive framework and by use of qualitative analysis, the study methodology is not unique, as others have used the methodology in the past. However, uniqueness is ascertained by the specific analysis engaged within this study as opposed to the other studies carried out in a like or related analysis. This study however will adopt the qualitative methodology in that the data collected and analyzed are not numerical. The main advantage appreciated in the adoption of qualitative methodology in this study is that it incorporates only a few assumptions while compared to quantitative method of analysis. This therefore increases the likelihood of having accurate and more reliable findings from the study. Besides, the method is less time consuming for the reason that little procedures in documentation and analysis are involved. The main steps therefore to be observed within this study are data collection, its analysis as well as the interpretation of the findings. Data collection will employ the use if past literature in the field while primary data will be collected from the field through interviews and questionnaires. The main information to be gotten from the literature is together with the main features of the two main methodologies under analysis (the agile and the waterfall methodologies) as well as their strengths and weaknesses. Through interviews and survey methods, qualitative data on the use and perception of people on waterfall and agile technologies used in software development will be collected. The main population to be targeted for the data will be large commercial organizations as well as government agencies, which are often known for their preference in use of waterfall methodologies of software development. However, the main organization sampled for the study is the CITI, which is a large US based financial corporation, which is known of incorporating both the agile and the waterfall technologies in developing their software. It is to be noted that now, the organization has numerous software projects that are underway and hence the choice of using it and the data collected there. Emailed surveys are the main tools of data collection for ease of convenience as well as in order to cut on costs implications that would be resultant in the use of otherwise manual methods of administering the surveys. However, written consent from the respondents in the intentional participation within the study will be mandatory with the criteria of choosing the sample respondents being a mandatory two years of experience with the organizational software development. Direct prior experience in software development is the main prerequisite of qualifying for the survey and the different branches of the organization are targeted in order to have representativeness in the data collected. Moreover, this will aid in collecting data touching on the various attributes of the software development technologies as identified previously. Data analysis will be done qualitatively with qualitative deductions being the focus of the study. By the reason that the study is qualitative by design presentation and summaries is done through graphs and charts. Methodology is therefore a critical step while carrying out a research study in that through literature review, one is able to know whether it is a study that has ever been done and if so the methods applied previously and the outcomes that were gotten. It therefore assists the researcher in determining whether his/her methods have been used in the past and what other methods have ever been used. Moreover, the methodology may depend on the research being either structured or unstructured within the qualitative/quantitative analysis. Research Design The research design describes a unique procedure that the researcher intends to use to go about the data collection exercise. In this study, the researcher identifies a the main area of study as being the possibility of incorporating agile and waterfall methodologies of software development together with an aim of producing more effective and efficient systems of software development and undertakes a comprehensive study or research around the situation. This study therefore identifies the case of interest to be the challenges that software developers experiences in the process of developing and improving software through use of the traditional waterfall methodology and or agile technology and the likely effectiveness that would be realized in incorporating features of the two concurrently. This study will be qualitative and thus information to be collected is not quantitative. This study will employ deductive methods in analyzing available past research studies in order to successfully study the challenges that software developers face in the process and the likelihood of developing better methods by incorporating agile technologies into waterfall technologies concurrently. The next chapter investigates the past studies and such other study literatures that exist under the theme of the methodologies used in software development. The chapter will therefore contribute immensely in guiding the study through methodologies used in past studies while at the same time providing qualitative information, which would also be used as secondary references. References Aylward D. & Clarke R. (2005). Research models and methodologies. HDR seminar series. Faculty of commerce spring session 2005. Retrieved from:< http://www.uow.edu.au/content/groups/public/@web/@commerce/documents/doc/uow012042.pdf> Galorath D., (2007). “Software Project Failure Costs Billions.. Better Estimation & Planning Can Help” Retrieved from < http://www.galorath.com/wp/software-project-failure-costs-billions-better-estimation-planning-can-help.php> Key J. P., (1997). “Qualitative research” Retrieved from Krigsman M., (2011). “CIO analysis: Why 37 percent of projects fail” Retrieved from Maxwell J. A., (2008). “Designing a Qualitative Study” Retrieved from Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(Integrating Agile Practices into Waterfall Methodology Coursework Example | Topics and Well Written Essays - 3000 words, n.d.)
Integrating Agile Practices into Waterfall Methodology Coursework Example | Topics and Well Written Essays - 3000 words. https://studentshare.org/information-technology/1808591-integrate-agile-practices-into-waterfall-methodology
(Integrating Agile Practices into Waterfall Methodology Coursework Example | Topics and Well Written Essays - 3000 Words)
Integrating Agile Practices into Waterfall Methodology Coursework Example | Topics and Well Written Essays - 3000 Words. https://studentshare.org/information-technology/1808591-integrate-agile-practices-into-waterfall-methodology.
“Integrating Agile Practices into Waterfall Methodology Coursework Example | Topics and Well Written Essays - 3000 Words”. https://studentshare.org/information-technology/1808591-integrate-agile-practices-into-waterfall-methodology.
  • Cited: 0 times

CHECK THESE SAMPLES OF Integrating Agile Practices into Waterfall Methodology

IT Project Success and Failure

Overview of methodologiesWaterfall methodology:waterfall methodology was introduced by Winston W.... Requirement analysis of waterfall methodology is one of the most crucial stages of all.... The only term for agile methodology is if there are no budget and time constraints.... One such decision that project managers have to make is deciding upon the methodology that they would adopt to make sure that the project is completed in the given time, budget, etc....
12 Pages (3000 words) Essay

Strategy to Develop the System

This implies that an iterative methodology is utilized whereby no specifics are being operated with, instead they are operated on in tandem with the deliverable system.... Now as we develop the system using the agile approaches and procedures guided by spiral or waterfall model, without the presence of... To begin with agile development approaches, it utilizes some principles and practices which can be glowered upon by various developer who favor planning and implementation of plan as opposed to bind coding....
5 Pages (1250 words) Essay

Software Development Methodology

This paper "Software Development methodology" focuses on software development methodology or system development methodology which is an action framework which includes all the activities involved in the production and development of an information system.... nbsp; These three approaches would be separately be implemented on the project in question and then a conclusion would be drawn from the comparison of all of these approaches which would lead to the methodology that is the most befitting to the project in question....
5 Pages (1250 words) Coursework

Agile software development

On the other hand, agile software development methodology is a software development process that is aimed at developing a software application quickly and allowing for late changes.... In fact, principles and practices offered by the agile software development approach ensures critical, long-standing process improvement, hence making it a perfect partner of the CMMI model, which provides an excellent structure of an organization-wide, effectively trained nonstop optimization and improvement....
2 Pages (500 words) Assignment

Agile Methodology in the Realm of E-commerce

The paper "Agile methodology in the Realm of E-commerce" highlights that the element that is propagated is working software OVER comprehensive documentation.... Agile methodology is one of the best methodologies that has been implemented in the realm of e-commerce.... Agile methodology allows organizations to harness growth, breed innovation, and define products that can be tangible and intuitive.... The team evaluated by practising this technique to steer the direction of the product via this methodology....
1 Pages (250 words) Essay

An Agile Methodology and a More Traditional Approach

In the paper “An Agile methodology and a More Traditional Approach” the author compares agile and traditional approaches to project management, which have their strong and weak points.... nbsp;According to the book, 'Project management fundamentals: key concepts and methodology' “There is a limit to the size of the problem that can be solved with a given number of people” (Haugan, 2011).... Haugan goes ahead to show the existing relationship between methodology and communication....
8 Pages (2000 words) Essay

Guest Lecture by Erin

In the agile development methodology, value is incorporated in the project scope while, in the iron triangle of waterfall methodology, value is the result.... Scheduling flexibility is limited in the iron triangle methodology.... The Agile model of software development is founded on systematic and cumulative… Progress in the iron triangle of waterfall flows gradually and moves (similar to a waterfall) through well-defined steps such as strategizing, designing, building, testing, deployment, and maintenance....
1 Pages (250 words) Essay

Project Management Office in an Agile Environment

Through motivating, self-organization, responsibility, and exploiting all the project stakeholders' knowledge, then most management practices could be executed by the experts that describe the companies that have successfully excelled by utilizing relevant strategies as required by the Agile managers (Cobb,163).... "Project Management Office in an agile Environment" paper argues that The agile PMOs function is basically different in contrast to the current PMO....
5 Pages (1250 words) Case Study
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us