Essay > Words: 1468 > Rating: Excellent > Buy full access at $1
Agile Methodologies for Software Development:
Agile software development is a collective group of software developments in which solution and requirements evolve through collaboration between cross-functional teams and self-organization. It promotes evolutionary development, adaptive planning, continuous improvement, early delivery, and flexible response and encourages rapid to change. It is a conceptual framework that emphasis on frequently delivering growths of working software
Advantages of Agile model:
One of the advantages of agile model development is the ability to evolve and emerge, and the ability to embrace change. In agile model development the focus is more on building the right product. In an active Corporation, involvement, and collaboration manner this makes agile model development a team as much as enjoyable place for many individuals. As a result this helps to develop a highly inspired and performance team (Dybå & Dingsøyr, 2008, p. 12).
Disadvantages of Agile model:
There are several shortcomings and risks that are associated with agile method. The biggest shortcoming of agile methodology is how they handle large teams. Highsmith and Cockburn concluded that agile technology is very difficult for larger teams since size grows and coordinating interfaces becomes a prevailing concern. They also believed that agile with face-to-face communication breaks down and later become more complex and difficult with developers (Nerur, Mahapatra, & Mangalaraj, 2005, p. 31).
In agile development or implementation process there exist a tension between cost, quality, and time. As one progress from design, analysis, testing, coding and production, it is evident that the cost of solving a problem increases exponentially. When fixing the problem it will be realized that there will be an increase in cost after production, a cost of roughly 50 to 100 times more than eradicating the problem in the design face. It is also evident that when reducing this cost, it is recommended that one should use heavyweight methodologies so that a lot of time is spent in an open requirement gathering. Although with time it cost less to implement a change with XP than it will cost to implement with the traditional methodology (Nerur, Mahapatra, & Mangalaraj, 2005, p. 41). In order to reduce the cost during implementation it is advisable to follow the following step during implementation process:
- Test-driven development and unit testing ensures that the errors and bugs are found early and quickly so that it would be cheaper to solve.
- Functional testing and on-site customer testing is important since it ensures the specification and analysis of the system is precise and up-to-date with the business/users requirements.
- Pair programming must be used since it allows two or more developers working together on a single computer to increase the chance of lead to a simpler model/design or finding the bugs.
- Increasing design consistency and refactoring improves flexibility and simplicity to the structure during implementation of the model since it ensures that the system is easy to use and well-designed.
- Regular release of agile model feedback from both the customer and the production team during implementation phases helps to make the product cheap as possible in order to be used by many people.
The principles of agile project management are in discomfort of the high cost of fitting errors keeping in mind the specifications, design features, fast track feedback and outstanding implementation. However, according to Laurie Williams, this does to transcend to the fact that agile process is there to increase or decrease the cost development as compared to traditional process such as heavyweight. Based on figure 1 below, Laurie is able to document the above information in graphs to help explain further about the above concern. In Figure 1 graph a, it shows the expense th.............
Type: Essay || Words: 1468 Rating || ExcellentSubscribe at $1 to view the full document.
Buy access at $1