Introduction
Software development is a complicated process to deliver products in more rapidly, enhanced and cheaper ways. Agile method as a new mythology can fit this goals very well, it can defeat the rapid change in organization and business which the traditional methods is hard to handle.
The core of agile methodologies is people. Customer and each team member in agile development teams are the key success or failure factor in agile process.
Due to this nature of the agile method, there are several problems may happen in the agile software development process.
In this article, several weakness of agile method will be identified and discussed with the examples, and these weaknesses will be divided Into three groups to analysis, they are People, flexibility and structure.
For the people group, some problem caused by Active user Involvement and close collaboration are required throughout the placement to ensure the agile development process operate successfully ,however can be a big problem in agile development.
For the flexibility group, due to the flexibility of the agile method, the requirement are always changed that will lead to the unwilling to implement the design, ever-lasting project, scope creep.
For the structure group, the less detail of the requirement may lead to the misunderstanding which will caused delays in deliverables, the testing is integrated throughout the lifestyle which can caused much more money, the constraint that the team members would in same location can be the disadvantages in agile method. People Active user involvement and close collaboration The core of agile methodologies is people, customer and each team member in agile development teams are the key success or failure factor in agile process. Active user involvement and close collaboration are required throughout the development cycle.
Weakness Of Agile
This is very engaging, rewarding and ensures delivery of the right product. However, in the real life there are some many reasons will prevent the user to take their time and big commitment to involve in the agile development. From the results of the Dry research of the obstacles in agile software development teams. Not all the Agile teams are made by the experienced team members, the length of the experience are various between each team members. And that will caused lack of commitment to a decision in the agile development process.
In some team, nobody was willing to make a decision and resolution was left to the Scrum Master. Because when they face a unfamiliar situation, especially the complex situation, they don’t have sufficient expertise to make a right decision, they afraid to make a wrong decision and they don’t how to solve this problem correctly. And sometime they are too many decision to choice, it’s hard for a inexperienced member to decide which one is better. (Dry, 2012) When the agile process coming to the iteration retrospective, one of the member noted “The same issues kept coming up iteration after iteration.
The problems were not going away. We made a bunch of decisions at the end of the iteration but nobody followed through” in the Softies case in the Drugs research. Because less experienced team members naturally have less certainty about their decisions and this can lead to a lack of ownership and accountability for their decisions. Nobody felt they owned the decision, and everyone just focused on delivering the committed content after retrospective, no body followed the decision they made in retrospective.
And for the Scrum master in this case, he said,” I Just didn’t have time to think about it. I felt under pressure to deliver on our user stories and didn’t have time to go back and look at what we talked about during the Retrospective”. Therefore, the experienced members will also not attention to the agile process under the complex situation (Dry, 2012). The term of agile in scrum refer that owner think, it is difficult for development team to have an holistic view in product and desires status (Sahara, 2012).
Agile method is very demanding on the user representative’s time and requires a big commitment for the duration of the project. This can be a weakness of agile method. Flexibility One of the biggest benefits of using agile is that the requirement can be accepted and changed any time throughout the development which provides much more flexibility. Requirements changed all the times The flexibility of agile method can ensure the project are delivery the right product, ay be happen if the requirement are never stop and essential, and it may create the risk of ever-lasting project.
And in the Largess case study of Drugs research, one of the projects had 22 new user stories, each of which had changed at least twice during the 2 days, it subsequently caused havoc, fear, panic and resentment on these projects within 2 days of it being introduced (Dry, 2012). Agile method can handle changes, but how to handle the problem caused by change is a question. Less predictability Due to the flexibility feature of the agile method, the project can be start with less accessory information because it can be improvement in future iteration.
That cause a situation that the developer doesn’t know what the project is actually going to deliver to the customer at the start of the project and during. It makes it harder to define a business case for the project, and harder to define how much money will be cost in a particular project. Furthermore, in the iteration of the project development, the lack of design or some long-term view make it easy to take wrong solutions or wrong small scale design that afterward need to be redone.
Requirements changed all the times and less predictability can be a weakness in the agile method, without the maturity of a strong and clear understand what the project is going to delivery, and the discipline of fixed timetable and project scope, these two weakness can be dangerous to the project development. Structure Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. (wisped).
According to that definition, we can identify that agile is an incremental placement, the requirements and solutions will be developed through the team collaboration. In this part, I will talk three potential issues may occur in each features. Misunderstand of the requirement Agile requirements are barely sufficient which mean that the wasted effort on deliverables that don’t last in the final product will be eliminates; it will saves time and money. However the requirements are always clarified Just in time for development and can be documented in much less detail due to the timeliness of conversations.
Therefore, it is harder for the new starters in team to understand hat they should to do, especially for the team members who are not good at team work and communications and are used to everything being defined up front. Due to that reason the misunderstanding may occur and misunderstanding will expand after several iterations. It may cause the delays in deliverables Agile testing In agile method, testing is integrated throughout the lifestyle of the iteration. This helps to ensure quality of the project and prevent the lengthy and unpredictable test phase at the end of the project.
However, testers are needed throughout the project which will increase the cost of the project. Furthermore, several problems may also happen in the testing. For example, it is difficult to keep everyone on the same page. Information changed so fast in agile method, everyone is support to be fully understand the day-to-day-progress, and teams have to find a suitable way to share this information that works for them, this information include who is allocated to what and what development and testing tasks are in progress.
The core of agile method is people, and the team collaboration is extremely important to the agile development. To ensure a good communication and collaboration environment, it is necessary to have all team members in the same location. The highly collaborative mode required for agile method is not compatible with distributed locations which may cause issue in some contexts to involve the right resources. For example, the time different may cause the necessary resource cannot be delivered on time.
How to manage these weaknesses There are some many uncertainties in the agile method, it is hard to prevent all the risk at one time. But there are some advice can be referred to help agile team avoid unnecessary mistake. First for the problem occur in the people group, used some incentives to stimulate the members to speak out there opinion, doing some training for the inexperienced members and hold some games or travel if possible to promote the communication between different members.
For the problem occurred in flexibility groups, sometimes choice the other method to develop a product is much more efficient than agile method, and when the situation fixed the agile method, it can come back and development in agile method. And it is better to hold a brainstorm meeting at the beginning when the deliverable are not clearly ,and the agile manager should take a role to guide the team when the problem cannot be solve by team. For the structure groups, if it is possible to slow down the iteration can be a good choice to let all the team members to follow the progress and understand what they are doing and what they need to do.
Setting an automate testing and use pair testing to reduce the cost of testing. And for the location constraint, using the telecommunication tools to maintain the communication, optimizing team size and team mix, understanding the culture and time different will be helpful to work in different location by using agile.
Conclusion
Agile method is adopt by more and more companies to develop their product, Despite the benefit of using agile method, there are several weaknesses of agile method.
Weaknesses Of Agile Methodology: The Topic-related Facts. (2019, Dec 07). Retrieved from https://paperap.com/paper-on-essay-the-weakness-of-agile-method/