Software has been division of modern society since previous 50 years. There are many software development methodologies in use. Some companies have their own customized methodology for developing the software but majority of them speak about two kinds of methodologies: heavyweight and lightweight. Heavyweight methodologies are also taken as the traditional method to develop software; they claim their support to comprehensive planning, detailed documentation, and expansive design. The lightweight methodologies are called as agile modeling and they have gained necessary attention from the software engineering community in the previous few years. Unlike traditional methods, agile methodologies give short iterative cycles and they rely on tacit knowledge within a team as opposed to documentation.
In this dissertation, it is described that the characteristics of some traditional and agile methodologies that are commonly used in software development. It is also discussed that the strengths and weakness among the two opposing methodologies and granted the challenges associated with implementing agile processes in the software industry. This anecdotal evidence is increasing regarding the effectiveness of agile methodologies in certain environments; but there has not been much collection or analysis of empirical evidence for agile projects. Yet to support this dissertation a questionnaire was conducted, soliciting feedback from software industry practitioners to evaluate which methodology has a better success rate for various sizes of software development. According to our findings agile methodologies can grant larger number of advantages for small scaled and medium scaled projects but for large scaled projects traditional methods seem more in use for their advantages.
[...] The last two phases are the iterative part of the procedure that supports the agile development with quick adaptations to late changes in needs and business requirements. The FDD approach includes regular and tangible deliverables, along with precise monitoring of the progress of the report (29). FDD comprises of five sequential steps, an explanation of the various functions and responsibilities used in FDD. Feature Driven Development processes Develop an Overall Model - A high level walk through of the system scope and its situation is performed by the domain expert to the team members and chief architect. [...]
[...] Following this, the challenges associated with implementation of agile processes in the software industry according to software practitioners and anecdotal evidence. To conclude, I conducted a questionnaire to gather feedback from software developers in Perth and analyzed which methodology was used to develop software and as well as their views on agile and heavyweight methodologies. Chapter 2 Literature review Agile Modeling Agile devotes quality of being agile; readiness for motion; activity, nimbleness, dexterity in motion” as mentioned in the Oxford Dictionary “software development methods are attempting to offer once again an answer to the eager business community asking for lighter weight along with faster and nimbler software development processes”. [...]
[...] Yet, there are few disadvantages in using agile methodologies in the software industry and one of them is their extra emphasis towards customer collaboration. Erkki Vuorenmaa, manager of IT Company in Finland says, getting business people involved in the development process is very “irritating” and awkward job, and without the determined customer it would be hard to develop quality software. Another con of agile methods is its project costs. Agile projects have no fixed schedule or fixed price and projects are open-ended evolving as needs vary or change. [...]
[...] Factors that effect the implementation of an Agile Software Development Methodology According to Highsmith and Cockburn “what are new about agile methods are not the practices they use, but their recognition of people as the primary drivers of project success, coupled with an intense focus on effectiveness and maneuverability. This yields a new combination of values and principles that define an agile world view.” Highsmith moreover transcribes from the book Agile Competitors and Virtual Organizations the definition of agility: “Agility . [...]
[...] Thus it could be wrapping up by putting it as the development of software increases, there is a corresponding reduction in the number of agile techniques used. Moreover, respondents tend to use heavyweight methods when the increase of project size, difficulty, team, architecture, scope, and risks take place. Figure: Extent of Agile Techniques Chapter 5 Conclusion In this dissertation, are described the various approaches to software development through heavyweight and agile methodologies. Moreover, it is initially criticized on both heavyweight and agile methodologies that are further followed by their comparison. [...]
using our reader.