This three-part series was adapted from the book Managing Project Complexity, A New Model by Kathleen B. Hass. ©2009 by Management Concepts, Inc. The book was the recipient of the 2009 PMI David I. Cleland Project Management Literature Award recognizing authors of a published book that significantly advances project management knowledge, concepts, and practice. All rights reserved. www.managementconcepts.com. If you would like a copy of all three articles, please request by email at firstname.lastname@example.org.
In this last part of the series, we examine step 4 of the Framework: Managing Complexity Dimension.
1. Make Managerial Decisions to Control and Leverage the Complexity Dimensions
Projects sometimes fail because of misapplication of good methods and techniques. Applying complexity thinking to determine the appropriate techniques to use based on the complexity dimensions present is the key to success when managing complex projects. Successful managers of complex projects use situational project management by adapting their leadership style, and the project management, systems engineering, and business analysis techniques to manage the complexity dimensions that exist.
Traditional project management, system engineering, and business analysis practices are often insufficient (sometimes, downright deficient) when applied to complex projects that behave dynamically. In the case of complex projects, leadership is the critical component that can make the difference. The remaining sections of this chapter present practical techniques for project leaders faced with challenging complex initiatives. We estimate that putting these techniques into practice can reduce project rework by 30 to 50 percent, thus eliminating excessive rework causing time and cost overruns. For each complexity dimension, the project team has an array of complexity management techniques from which to choose. Steps to manage project complexity dimensions include: (1) identify the dimensions that make your project complex; (2) select the techniques that will best manage each complexity dimension that is present, and (3) tailor techniques to best manage the unique characteristics of the complexity dimension. As described in the Project Complexity Model, there are nine complexity dimensions. We discuss options to manage each dimension.
Applying Complexity Thinking to Long-Duration Projects
The biggest problem with long-term projects is that so many unforeseeable things can happen. These projects run the risk of working to achieve a business objective that has changed during the course of the project. Consequently, the new business solution may no longer meet current business needs. Dependencies that have been identified and managed may disappear, but new ones often emerge. In addition, project teams fatigue over time, losing interest in the project. Long-duration projects typically cause a lack of confidence in time and cost estimates. Complexity management techniques to reduce risk include:
- Appropriate management approach – Conduct rigorous enterprise analysis during the pre-project study phase to clarify the high-level management issues and help the customer, architect and project manager make the appropriate management choice for what appears to be a long-duration project. Determine the specific nature of the business problem and appropriate project management structure: Is this really a program? Is it a series of modestly scoped, small projects? Something else? Must the project or program deliver a product line, a system of systems? Can the solution be delivered in components? Whether the project is long- or short-duration, if the problem or solution contains significant elements of complexity and uncertainty (see below), success depends on selecting the management approach that will deal with the problem/solution complexities. The customer, architect and project sponsor need to recognize the nature of the problem/solution, understand that the conventional, reductionist systems/software engineering and project management approaches may not work, and then make the right choice of management approaches to solving the problem.
- Evolutionary development – Develop, and if possible, deliver the solution in increments, applying lessons learned from each increment into the next iteration and constantly testing for alignment with business objectives. This technique involves iterations of a cycle that builds, refines, and reviews so that the correct solution gradually emerges. This technique can be difficult to control, but it is very useful when properly applied.
- Time and cost management – delivering on schedule is one of the main challenges for a long-duration project due to the enormous amount of work involved. Implement a rigorous process to track progress and control delivery. Manage the schedule and budget by establishing a project support team to update and maintain the schedule and budget baselines, and escalate issues for your attention in a timely manner.
- Rapid Application Development (RAD) – If requirements are understood, and scope is contained, RAD allows greatly abbreviated development timelines. The component-based approach allows for incremental testing and defect repair, and significantly reduced risk compared to single, comprehensive delivery. RAD can be costly if requirements aren’t well-defined (high risk of requirement defects), or the design is not sound (high risk of integration issues).
- Progressive elaboration and rolling wave planning – Instead of trying to plan the entire project, start by defining just the increment requirements and conceptual design activities in detail, and define the remaining phases at a summary level. After requirements are understood, and there is an idea of what the solution will be, define the design, construction, and test activities in detail. This makes it possible to request the resources needed in increments, instead of all at once.
- Multiple estimating methods – Build a work breakdown structure (WBS) and estimate the time and cost associated with lowest-level activities for near-term project phases (bottom-up estimating). It is difficult to know what out-phases will require, so the WBS cannot be used for bottom-up estimating and other estimating approaches are needed. Use expert judgment and historical information from similar projects to help devise and verify estimates. It may also be helpful to use industry guidelines to create estimates. It is always wise to use multiple estimating techniques.
- Attention to team composition and process – As the project drags on and fatigue sets in, project managers should look at both team composition and team processes to maintain continued motivation among members. Celebrate and reward success at key milestones rather than waiting until the end of a long project. Continually capture lessons learned about how well the team is working together and implement suggested improvements. Build your expertise in leading high-performing teams.
- Lean development techniques – Although the project is complex, do not be tempted to apply more rigor than necessary. Limit producing documents and conducting meetings to only those that add value to the project. Use storyboards to make the project plan visible and identify dependencies. Continually verify that the project is building the minimum viable solution. Use the motto: “Barely sufficient is enough to move forward.”
- Control gate reviews; stage-gate management – After completing each major project phase, conduct quality reviews of deliverables and determine lessons learned. Update the project cost, schedule, and scope baselines for the remaining project phases, incorporating lessons learned in the plans. At the same time, re-examine the business case to make sure the investment is still sound.
- Real risk management – In practice, few projects perform adequate risk management techniques. For long-duration projects, it is essential to identify risks every month and reexamine risk responses to ensure management of known risks and the identification of new risks.
Applying Complexity Thinking to Large, Dispersed, Culturally Diverse Project Teams
Complex projects almost always involve multiple layers and types of teams. Geographical diversity and dependency on technology dramatically magnify the levels of organizational complexity. Outsourcing all or part of the solution also adds a significant level of complexity. Applying the appropriate practices, tools, and techniques to multiple parties at the right time is a complex endeavor. The project manager role is more about team leadership than project management. Techniques include:
- Great teams…you need one – When structuring the project, establish a core project team, and multiple core sub-project teams that are small (four to six people), dedicated full-time to the project, co-located (preferably in a workroom), highly trained, and multi-skilled. These core teams will augment their efforts by bringing in subject matter experts and forming sub-teams as needed. Select team members not only because of their knowledge and skills but also because they are passionate and love to work in a challenging, collaborative environment. Develop and use a team operating agreement. Develop team leadership skills, and dedicate efforts to transitioning these groups into high-performing teams with common values, beliefs, and a cultural foundation upon which to flourish.
- Team leadership – The PM and BA need to learn how to delegate and decide what roles and responsibilities to keep since he/she is now managing through others. In addition, they need to determine what procedures to standardize across sub-teams and what to allow others to tailor. For example, the overall project/program may follow one cycle while allowing other teams to differ. The program may use a variant of Waterfall Model with highly structured phases and decision gates, but allow individual projects to use agile techniques to achieve their individual objectives.
- Contractor team management – Add contract terms for managing the contractor team (e.g., joint planning sessions, integrated project schedules, EVM, control gate reviews, award fees, and penalties). Document and communicate expectations and establish clear evaluation criteria. Develop and use a contractor team operating agreement. Conduct regular progress evaluations and periodic reviews of contract terms and conditions.
- Virtual team management – For complex projects involving virtual team members distributed globally, communication and collaboration are critical. Communication manners, methods, and frequencies are crucial factors in determining the success or failure of virtual teams, so develop a communication strategy early in the project. There is no substitute for face-to-face sessions when the team is in early formative stages or when the team is in crisis. However, in today’s electronically borderless world, technology is an enabler to keep in close touch, manage interdependencies, and resolve issues. Audio conferencing, web meetings, and email are the rule of the day for progress reporting and quick decision making. Visual, paper-based communication takes on enormous importance when virtual teams are involved. Learn the art of keeping an adequate amount of documentation, without overburdening the team with too much. Formal procedures and processes are necessary to set and maintain expectations. Virtual teams can be more productive than traditional teams when managed well, so use them as a strategic advantage.
- Collaboration – Involve all core team members to build the project storyboard in all project planning sessions and seek feedback often to continually improve the performance of the team. Secure best-in-class software tools to enable collaboration and document sharing, as well as personal communication and telecommunication tools. Enforce the use of standard procedures, practices, and tools.
Applying Complexity Thinking to Fixed Deadlines and Inflexible Competing Demands
Fixed deadlines almost always add risk to projects, because of the interdependency of time with other competing demands, including project scope, risk, quality, and cost. Economists have been warning us for years that success in a global marketplace is contingent upon our capability to produce small batches of tailored products on a tight schedule to meet growing demands in emerging markets. The same is true of projects: it’s necessary to deliver value to the organization faster, cheaper, and better. Techniques include:
- Flexible high-performing team members – High-performing team members must have the skills, information, and motivation to adapt to change quickly. Team members must be able to move freely from project to project as priorities change. Standard project management, business analysis, and systems engineering procedures and tools, along with a project sponsor who is available in real time, all combine to provide the foundation for this flexibility.
- Time-boxed schedule – While we all hate fixed deadlines, a time-boxed schedule increases the level of urgency felt by the project team and forces decisions to be made quickly and efficiently. Consider it your friend.
- Fierce scope management – Eliminate all “nice-to-haves” and unnecessary features. Deliver the minimally viable solution.
- Stage-gate or milestone management – Structure the schedule into a series of milestones marked by the completion of a major deliverable. Conduct control-gate reviews at each milestone to ensure the quality of the deliverables and to move quickly to the next stage. Milestone management frees the team to focus on the work needed to get to the next milestone only.
Applying Complexity Thinking to Ambiguous Business Problems, Opportunities, Solutions
Complex projects frequently involve a significant level of uncertainty and ambiguity. When the business problem or opportunity is unclear and ill-structured, it is difficult to identify stakeholders, define business benefits, determine interdependencies, and establish project boundaries. Likewise, when the solution is ambiguous, it is likely to be difficult to assess the feasibility of the concept or estimate costs with any degree of certainty. In this situation, all options must remain on the table, and an implementation project should not be funded until the team is certain that they understand both the business problem and/or opportunity, and that the recommended solution is optimal in terms of cost, time, value, and risk. Techniques include:
- Business analysis – At this point, you are essentially in an R&D mode vs. a project implementation mode. Use business models and requirements-understanding models to clarify the current and target states of the business. Spend ample time researching and studying the business problem or opportunity, conducting competitive, technological, and benchmark studies, defining dependencies and interrelationships, and identifying all potential options to meet the business need or solve the business problem.
- Decision analysis – Decision analysis is applied during the enterprise analysis and architecture effort preceding project launch, and subsequently as needed. Analyze the economic, technical, operational, cultural, and legal feasibility of each solution option until it is clear which option has a higher probability of success. Develop initial solution designs to ensure the ability to manage solution dependencies and interrelationships. Determine answers to questions such as;
- Is this effort unprecedented? Have we or anybody faced it before?
- Is the technology that is likely to be needed advanced (not commercially available) or even nonexistent.
- Do we understand the phenomena involved? That is, the scientific phenomena if there are any.
- Is the problem within our business competence to solve? To understand?
- Is the problem/solution environment clear?
- Value-chain analysis – Describe processes within the organization that are impacted by the change, and evaluate the value each activity contributes to the organization’s product or services. The goal is to establish the ability to perform particular activities and to manage the interrelationships between the activities that result in a source of competitive advantage. The linkages can be flows of information, goods, and services, as well as systems and processes.1
- Root-cause analysis – Conduct rigorous root cause analysis to determine the underlying business problem.
- Creativity and Feasibility studies – Brainstorm to identify all potential solution options and conduct feasibility analyses (analyze technical, operational, economic, cultural, and legal feasibility) for each solution option to determine the highest-value alternative.
- Complex project risk management – Conduct rigorous risk assessments and risk response planning. Focus on identifying and managing interdependencies to external projects, groups, organizations, and application systems.
- Vendor partnerships – If the technology planned for use is unproven, establish a partnership with the technology vendor to assign them a significant part of the risk. Use techniques mentioned above for contractor management. Use award fees for quality and early delivery. Insist that part of the vendor’s responsibility is to offer adequate knowledge to your technology team so they’ll be able to operate and maintain the solution.
- Rapid prototyping – Quickly build the riskiest component of a solution first to prove an idea is feasible. This is typically used to better understand requirements or to prove a concept.
- Feature-driven development – Use when the solution can be delivered incrementally. The goal is to provide value early, implement the highest value features first, and adapt from the learnings from prior increment.
- Technical solution dependency management and Rapid Application Development – When the technical solution is complex, it is prudent to divide the development into a core system (the operative part of the system), and special components (separate from the core, adding functionality in components). Further divide the core system into extension levels, building the foundation level first and then extending system capabilities incrementally. As the core system is developed and implemented, different technical teams work on specialized functional components. The goal is to build the specialized components with only a one-way dependency to the core system; therefore, specialized components are independent of each other and can be created in any order or even in parallel.2
- Edge-of-chaos management – In some circumstances, when a project seems to be operating on the edge of chaos, the team is still brainstorming, creating, studying, examining ideas, and evaluating complexity and dependencies to select the most valuable, most elegant, and least complex solution. Encourage lots of experimentation and prototyping to bring the solution into focus. In rare cases, project teams design and develop more than one solution in order to prove which one is truly the optimal approach. When this “tiger-team” approach is used, the outcome can be more innovative and creative than ever imagined. So, if your team seems to be operating on the edge of chaos, it might be just the right approach!
Applying Complexity Thinking to Volatile Requirements
A significant percentage of project failures occur because of poor requirements. Defining requirements is hard—very hard. Individual requirements are seldom complex; it is the relationships and interdependencies between them that result in complexity. In addition, requirements are dynamic, changing as the business changes and as they are progressively elaborated. Techniques include:
- Professional business analyst – Critical, complex projects need a full-time, senior business analyst (BA), and will likely need a BA team to elicit, analyze, specify, validate, and manage requirements.
- Enterprise analysis - If thorough stakeholder and purpose analyses, problem structuring, behavior modeling, value modeling, solution structuring, concept development and selection, and architecture description are completed during the pre-project study phase, the requirement definition that is completed after project initiation is still hard, but will be significantly easier and less risky.
- Agile development – The agile movement is flourishing because requirements are so volatile. Agile analysis is a highly iterative and incremental process, where developers and project stakeholders actively work together to understand the domain, identify what needs to be built and prioritize functionality.3 Use agile methods when these conditions are present: project value is clear; customer participates throughout the project; customer, designers, and developers are co-located; incremental feature-driven development is possible; and visual documentation (cards on the wall vs. formal documentation) is acceptable.
- Test-driven requirements development - Build the test case before or concurrent with documenting requirements. Sometimes building the test case clarifies the requirement, or even changes it.
- Effective scope change management – Avoid spending too much time up front. Uncover 80 percent of requirements in 20 percent of the time. Expect, plan for, and welcome changes that add value. Reduce the cost of change by using incremental development methods. Do requirements and early design concurrently and collaboratively. Remember, typically only 20% of features are used, so limit scope to the critical 20%.
- Iteration – Iteration is the best defense against unpredictability. Use iterative approaches when defining requirements and building systems to manage changes to requirements throughout the life of the project. Determine lessons learned after each iteration with two goals: (1) to drive down the cost of change and be able to welcome change that adds value, and (2) to increase innovation.
- Visualization and communication – Visualize and communicate requirements in the right way to the right audience. Create a blueprint (a view or conceptual model, a rich picture, often simple stick figures) of what the solution will cover. It is the starting point for defining the phasing of critical and non-critical functionality. Build prototypes and “a-day-in-the-life” scenarios. Use technology to share information, e.g., video recordings of current user operations; webcasts of business vision and rationale for change; and live, interactive usability testing.
- Appropriate level of detail – Know what needs to be fixed (defined at the front end), and what can be flexed (defined at a summary level initially). When using purchased components, establish the goal of using the current system functionality, versus developing requirements without taking system functionality into account.
- Interdependency management – Set up a requirements integration team to manage requirements relationships and dependencies. Identify boundaries and ensure each team knows its area of responsibility and areas of overlap. Trace requirements throughout design, construction, and test work products.
- Define customer experience vs. product or service – It is important to design what experience you want the customer to have, vs. leaping first to the solution.
Applying Complexity Thinking to High-Visibility Strategic Projects with Multiple Stakeholder Groups
Strategic projects are by their very nature politically sensitive. Every organization has undefined political processes and ever-present power struggles. Political maneuvers can be stifling and overwhelming to a project, and can even lead to project failure. Strategies can shift, causing virtually every aspect of the project to change. Project stakeholders often have conflicting expectations. Executive stakeholder interrelationships cause complexity, as do unspoken management expectations. Techniques include:
- Executive sponsorship – A project cannot exist successfully without a project sponsor. If a project doesn’t have a sponsor, it’s important to find one. Build a trusting, collaborative relationship with the sponsor, seeking mentoring and coaching, and involve the sponsor in every important decision.
- Executive oversight – Establish a governance committee consisting of the project sponsor and key members of management impacted by the project. Build a framework for effective decision-making and project oversight, focused on realizing the project benefits, achieving strategic goals, addressing risks, managing change, and setting expectations. Steer your steering committee.
- Political management strategy – Identify key stakeholder groups and individuals, internal or external to the project. Conduct an analysis to determine those who can influence the project, and whether they feel positively or negatively about the project. Identify the goals of the key stakeholders. Assess the political environment. Define problems, solutions, and action plans to take advantage of positive influences, and to neutralize negative ones.
- Public relations – Find ways to promote yourself. To do so you must be genuine, competent and credible. Also, promote your project as central to and important for organizational goals and strategies.
- Benefits management – Continually assess the value and organizational impact of the project benefits. Ensure expected benefits are specific, measurable, agreed to, realistic, and time-bound. Make certain the project has a business sponsor who is responsible and accountable for the actual benefits expected from the project. Move from C (cost) to R (revenue) focus; concentrate on customer value, wealth to the bottom line, innovation, risk reduction
- Virtual alliance management – Strategic projects involve alliances with suppliers, customers, key political groups, regulatory entities, and even competitors. When seeking out partners, look for the best-in-class competencies to build high-quality, specific products or services in the shortest period of time.
Applying Complexity Thinking to Large-Scale Organizational Change Initiatives
Large-scale cultural change typically involves new technologies, mergers and acquisitions, restructurings, new strategies, cultural transformation, globalization, new partnerships, and/or e-business. Handling change well can mean the difference between success and failure of a project, and consequently, of an organization. Techniques include:
- A sense of urgency – After identifying key stakeholders and developing a political management strategy (see above), work with stakeholder groups to reduce complacency, fear, and anger over the change, and to increase their sense of urgency.
- The guiding team – Using some of the same techniques mentioned above, build a team of supporters who have the credibility, skills, connections, reputations, and formal authority to provide necessary leadership.
- The vision – Use the guiding team to develop a clear, simple, compelling vision, and set of strategies to achieve the vision.
- Communication for buy-in – Execute a simple, straight-forward communication plan using forceful and convincing messages sent through many channels. Use the guiding team to promote the vision whenever possible.
- Empowerment for action – Use the guiding team to remove barriers to change, including disempowering management styles, antiquated business processes, and inadequate information.
- Short-term wins – Wins create enthusiasm and momentum. Plan the delivery to achieve early successes.
- Cross-project dependency management – When the project is dependent on major deliverables from other projects currently underway within the organization, the core project team should identify and manage such deliverables. Assign someone from a core program team as the dependency owner, to liaise with the team creating the deliverable. A best practice is for dependency owners to attend team meetings of the dependent project, so as to demonstrate the importance of the dependency and to hear status updates first hand.4
Applying Complexity Thinking to Manage Projects with Significant Risks, Dependencies, and External Constraints
The concepts of risk and uncertainty are often used interchangeably in the context of complex projects, but it is important to distinguish between them. A risk is an uncertain event that, if it occurs, has a positive or negative effect on a project. A risk may or may not occur. In the context of complex projects, an uncertainty, in contrast, is a present reality. Complex projects are riddled with uncertainty. Although conventional project management wisdom tells us to resolve all uncertainties before project execution, this is usually not feasible, especially on a complex project. So we must learn how to make progress in the midst of uncertainty. Risk management involves planning to accommodate future events that may or may not happen. Uncertainty management is the proactive effort to make sense of the project and reduce ambiguity in the present. Techniques include:
- Managing Risks. Even though the process is well defined in many sources, risk management is one of the most neglected aspects of managing complex projects. Most project managers simply do not perform rigorous risk management on their projects. For complex projects, however, risk management is not an option—it is essential.
- Managing Uncertainties. To manage uncertainty is to make sense of the current situation. Only when we understand the origins of the uncertainty, and attempt to identify patterns, can we determine the appropriate way forward? Sophisticated project leadership teams often use simulation and probability techniques to predict results in uncertain circumstances and to reduce sensitivity to random variability.
- Managing Dependencies and External Constraints. Large-scale organizational change alters much about the environment for many different groups across the enterprise. A change in one functional area may have unwanted consequences in another. In addition, a major transformation project is often dependent on key deliverables from other projects currently underway within the organization or from outsourced components of the solution. Recommendations for managing dependencies and external constraints include:
- Identify intergroup and cross-project dependencies.
- Assign ownership to dependencies.
- Manage your project in the midst of changes in your IT environment.
- Use edge-of-chaos management to adapt to changes in the external environment.
The most difficult part of dependency management is identifying the dependencies. Interrelationships across functional groups are often invisible and difficult to predict and define. Business analysis practices that analyze the value chain and develop functional and process models are designed to make these dependencies visible. As the processes and functions change, new dependencies will emerge and existing dependencies might need to adapt. The core project leadership team needs to spend a great deal of time and effort continually monitoring and adapting its dependency management strategy as the organizational changes take place. Intergroup dependencies might be among people, information exchanges, policies, business rules, functions, processes, IT application systems—virtually anywhere across the enterprise. As these dependencies are identified, use visualization techniques to literally map the interdependent processes in simple pictures. Review and refine often as more is learned. Make key decisions with the dependencies in mind.
In addition to changes in your IT environment, your team is likely to experience events and changes both within and external to your organization that will impact your project. These may include:
- Changes to the regulatory environment that constrain your decisions and pose new requirements,
- Changes in the business environment that pose new interrelationships, dependencies, and perhaps new requirements, such as mergers and acquisitions,
- Changes in the competitive environment that establish new interrelationships and dependencies, which may also impose new constraints or requirements, and
- Changes in zoning or building codes (for projects that involve construction).
These external constraints and dependencies require vigilance by the core leadership team to identify, assign ownership, adapt as changes occur, and rigorously manage each constraint or dependency so that it does not hinder progress.
- Complex Outsourced Projects. Outsourced projects are by their very nature risky. The project leader and team must direct special attention to ensuring that the outsource partner understands requirements and is amenable to requirements changes as needed. Establish positive supplier partnerships, create an integrated project management team, and establish a framework for managing outsourced projects. In essence, treat the outsourced team as if they were a part of your organization, because they are.
- Supplier Partnerships. Positive supplier partnerships are crucial if we are to adjust as we learn, adapt as our environment changes, and manage project complexities. Seek out suppliers who are focused on quality and who routinely establish positive partnerships with their customers. Together, perform value-chain analysis, from the subcontractors to the prime supplier to your organization, through to the customers of your business. Ensure that all along the way on the value chain, everyone is focused on their requirements and the quality of their products and services. Review and adjust the value change processes as the project progresses and learning occurs.
- Create an Integrated Project Management Team. Establish a small, integrated “tiger team” consisting of key members of the core team, the supplier and major subcontractors, and the business. Involve all parties in the requirements elicitation, analysis, and specification activities so that they share a common understanding of the requirements themselves as well as the requirements management process. Schedule frequent feedback sessions where supplier and subcontractor representatives provide business representatives with prototypes, models, and increments of the solution for their review, feedback, and validation. Manage the suppliers and subcontractors as trusted partners.
Applying Complexity Thinking to Projects with a High Level of IT Complexity
Thought leaders in the IT industry suggest that radical new approaches are required to build complex adaptive products and business solutions. We offer these up-and-coming management approaches to foster innovation and customer empowerment.
- Build solutions that empower customers
- Establish “skunk works” teams
- Exploit the advantages of edge-of-chaos management
- Introduce a last-responsible-moment decision-making process
- Structure the effort into micro projects
- Create communities of practice and diversity of thought
- Ensure your architect is seasoned
- Forge new partnerships
- Set up integration teams
- Strike the right balance between discipline and agility
Organizations depend on successful projects to sustain or seize competitive advantage, and ultimately achieve their strategies. Managing projects in highly competitive and changing circumstances requires us to understand complexity thinking and put it into practice. Traditional project management techniques are based on our desire to decompose work into simple, easily managed components. Yet sometimes, more creative solutions emerge from teams operating on the edge of chaos. The trick is to know when to apply traditional project management techniques, and when to live on the edge. Complexity thinking enables project managers and business analysts to learn to diagnose the dimensions of complexity present in a project, and then, to apply appropriate management techniques.
This chapter was adapted from the book Managing Project Complexity, A New Model by Kathleen B. Hass. ©2009 by Management Concepts, Inc. The book was the recipient of the 2009 PMI David I. Cleland Project Management Literature Award recognizing authors of a published book that significantly advances project management knowledge, concepts, and practice. All rights reserved. www.managementconcepts.com
Porter, Michael. (1985). Competitive Advantage: Creating and Sustaining Superior Performance. New York, NY: Simon and Shuster Inc.
Lippert, M., Roock, S., Wolf, H., Züllighoven, H. XP in Complex Project Settings: Some Extensions, In: Informatik/Informatique. Schweizerischer Verband der Informatikorganisationen. Nr. 2, April, 2002.
Ambler, Scott W. Agile Analysis. Online at: http://www.agilemodeling.com/essays/agileAnalysis.htm. (ACCESSED JULY 2015).
Kotter, John P. (2002). Getting to the Heart of How to Make Change Happen. Boston, MA: Harvard Business School Press.