Agile Project Management

Source: Internet
Author: User
1 OverviewNow, even if the IT budget is greatly reduced, the pressure on IT managers continues to increase. At the same time, the business environment is constantly changing at a very high speed, which makes it hard to keep up with this change speed. These changes have led to a great deal of interest in the agile software development methodology "Fast Release and flexible and high-quality maintenance. Agile Methods (XP, scrum, feature-driven development) strive to reduce the cost of changes in the software development process. For example, XP uses fast iteration plans and development cycles to produce the most valuable features as early as possible. In addition, XP's continuous and systematic testing ensures high quality and early detection of defects and corresponding solutions. Although agile methods have brought about some early success stories, there are still many factors that impede their widespread adoption. Advocates of agile methods often find that dynamic changes cannot be supported by management in application development. These methods require developers, managers, and users to change the way they work and think. For example, peer programming, TDD, continuous integration, and on-site customer representatives in XP practice are very unacceptable. In addition, these methodologies tend to focus more on developers and do not seem to place too much emphasis on management roles. However, practice has proved that strengthening management is the key to the successful adoption and application of agile methods, while traditional project management methodologies and tools are not associated with these new agile methods. This low correlation is a symptom of deep-seated problems. These deep-seated problems are manifested in the differences in basic assumptions about how to handle changes, controls, commands, organizations, people, and solutions. Traditional management theory assumption: l management changes require strict procedures l hierarchical organizational structure is the way to establish order l enhanced control can get better order l in the "Project Team" machine, personnel are interchangeable "parts" l the problem is mainly solved through task subdivision l the project and risk can be fully predicted through detailed and complex plans in advance, managed in this context, there is nothing strange about the disorder, equality, and directionality of the new methodology. Agile Methods are gradually adopted in the absence of the convergence between traditional management and agile development methodology. Similarly, the changes in these assumptions and the new management framework in the agile method process are also very important requirements. In the process of searching for such a new framework, we strongly realized that there was a management principle based on the new discipline "complexity theory. The new discipline "Complexity Theory" is actually produced in the process of researching existing systems. It mainly explores the understanding of autonomous human behavior .. In particular, we have begun to integrate the concept of a complex adaptive system (CAS) into our management assumptions and best practices. Scientists of Complexity Theory have studied the collective behaviors in existing systems, such as birds, fish, Ant Colony, and bee colony. They found that when these individuals in complex adaptive systems possess local strategic principles and capabilities, their collective behavior is more fully ordered, self-organized, and more intelligent than the total number of individuals. This CAS theory has been successfully applied to economics and life sciences and is now used for management. This concept of CAS gives us an inspiration: In the XP team, the Project Manager also needs a series of simple guiding practices to provide a framework and manage it under this framework, instead of a series of strict commands. Based on this practice, managers become an adaptive leader-determining the direction, establishing simple generative system principles, and encouraging continuous feedback, adaptive changes, and collaboration. This management framework provides a series of content for the team to implement agile methodology, including: l in team management, the collective ability of stakeholderl, skilled and highly valuable team members, is the basic mechanism for solving the problem. l minimizes the advance plan as much as possible in the face of unpredictable assumptions, and enhances the ability to adapt to changes. 2 problem: project management as a traditional task distributorThe traditional software life cycle development methodology is generated because we need to control increasing development projects and evaluate and manage the workload for generating reliable products. These methodologies are derived from some principles in construction engineering management. As a result, they emphasize foresight (when building a bridge, the engineering designer must design every detail of the Bridge ), it is also a linear development cycle (that is, demand, analysis, design, and development ). Based on this predictable nature, they follow deterministic simplified methods that depend on task breakdown and are based on stability (namely, stable demand analysis and stable design ). As a means of project control, this rigidity is manifested as obedience. In the past, some companies used these methods and may be using them now. For many, these methodologies only increase costs and complexity, but give people a wrong sense of security-management is to do things through detailed planning, measurement and control. The huge cost is wasted by premature planning. We realize that rapid iterative development and constant feedback from users are the prerequisite for the success of today's project. The following example is a typical case of failure in the original methodology: "London Ambulance System" and "But Buddha aviation luggage System", with huge costs exceeding the support and delay. Let's take a look at the Standish organization's survey on chaos. In the first investigation, successful projects were 18%, 31% failed, and 53% challenged. The survey in 1998 has been improved, but it is also 26% successful, 46% challenge, and 28% failed. The study also shows that in successful projects, their project size is controlled at a level that can be completed with a small team. This result is obviously consistent with the principles of Agile Methodology. Moreover, we also found that many established project management practices can still be applied to agile development projects. Only adaptive changes and enhanced leadership can be achieved. When managers use traditional methodologies to control projects, the technical community begins to use agile methods to deal with the setbacks brought about by traditional management and the impact on their product quality and morale. For example, at that time, XP was almost completely focused on the development process. When the technical community supports these practices, it seldom involves the management of agile development projects. This implies that because the XP team develops and manages their own tasks, there is little demand for project managers. It is not surprising that company management has been skeptical about agile methods and does not accept them. Managers want a scenario where developers in the room are doing their own thing .... The word "extreme" does not make any sense. Aside from the specific methodology, traditional project managers are often the people who develop and control the main plan, these plans detail tasks, dependencies between them, and resources required to complete the final product. The Project Manager then monitors the task status and makes necessary adjustments to the plan. This approach is based on the assumption that Members are interchangeable, just like screws of the same model. Therefore, managers familiar with traditional methodologies rarely have the courage to use agile methods in their projects. But this is not necessary. In fact, the independence of agile methods leads the management community and technical community to the same focus in project management. 3 answer: as a project manager of the Vision leaderThe best project managers are not just the organizers-they combine their business vision, communication skills, soft management skills and technical minds with their planning, coordination, and execution capabilities. Basically, they should be leaders ). Agile Project Management requires higher leadership skills. For example, the XP team creates and monitors their own iteration plans in collaboration with customers. When the XP team is working, it measures the results of each iteration (such as long iteration) and adjusts the plan with the user as needed. So, if the project no longer needs a detailed project plan, why the project manager? Because each project requires a leader ). The agile method frees the project manager from the position of the foreman so that the project manager can concentrate on being a leader and focus on the project vision to inspire the team's courage, promote team collaboration, eliminate obstacles in the project process, and make the project development process smooth. A project manager is not only a controller of project operations, but also an adaptive leader-if he gives up his dependency on the old style of management. The basic stages of an agile development project are no different from those of other projects. The project manager must define and initialize the project, plan the project, execute the plan, supervise and control the results. However, the methods for completing these steps are different. The project manager needs to adopt a new way of thinking for management-thinking about CAS. 4. Guiding Principles: The team is a complex adaptive systemAs mentioned above, most of the traditional command and control management methods come from Taylor's "Scientific Management" principle. Taylor's "Scientific Management" principle is based on Newton's idea in the 17th century, that is, the world can be seen as a huge and orderly "clock-structured world" managed by the classic laws of nature. Scientific management is considered to be the main driving force for the 20th century to raise the level of physical labor (working masses) to a new level of abundance in developed countries. However, we have encountered problems in using C & C management in our team today. Because physical labor has been replaced by knowledge workers. For example, in the software industry, skilled software developers are more valuable to their bosses than their managers. In the Taylor era, managers solve knowledge problems. In our time, the key to solving knowledge problems is knowledge workers rather than managers. So how can we use the project management technology to solve this key problem? The scientific world has changed. In the two centuries after Newton, his theory has also found wide adaptability in many other disciplines. Later discoveries by the scientific community (from Einstein's theory of relativity to quantum theory) began to replace Newton's point of view in many disciplines. In fact, the new scientific theory "Complexity Theory" has now begun to change the traditional management mode. Over the past 20 or 30 years, scientists have discovered such systems in many fields and explored their common attributes to explain complex phenomena. They have discovered that many natural systems (brain systems, immune systems, ecosystems, and social systems) and many artificial systems (parallel distributed computing systems, artificial intelligence systems, and artificial neural networks) it is characterized by complex behaviors, which are the result of system interaction at different levels of their organizations. In nature, these conclusions are used to explain the group behaviors of active systems (such as fish and birds), and some of these groups have special principles and abilities, their group behavior is characterized by this full order, self-organization, and collective wisdom. In addition, these systems often show unusual capabilities to adapt to complex dynamic environments. All in all, Complexity Theory includes the basic idea of a system with life characteristics: l a system with life characteristics is complex, and they are composed of multiple individuals, in addition, interaction is performed in multiple ways. The interaction is based on simplicity and locality. The rich interaction among individuals in the system enables the system as a whole to carry out spontaneous self-organization, it is accompanied by the complexity and order of the system itself, rather than being imposed on the system by the outside. L these complex and self-organized systems are adaptive because they have different responses in different environments. L The whole system shows the individual actions of the leader l these systems will evolve along with their environment (changes in the environment lead to changes in their behavior, changes in their behavior will in turn lead to changes in the environment) and bring about a new balance. When a change is reached, a new balance point is triggered. If we regard our team as a complex adaptive system, the knowledge of CAs can be applied to our new management philosophy. In particular, the rules of traditional project management can be changed and used in the new CAS model.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.