Discuss the reasons that projects often exceed their Scope. What can project managers do to minimize this?
Project scope is the part of project planning focused on determining and documenting specific project goals, deliverables, tasks, costs and deadlines. Project scope management includes the following:
Requirement gathering – a phase where all the requirements are gathered from various stakeholders
Scoping – The scope of the project is outlined which includes objectives, goals, sub-phases, tasks, resources, and budget. The project scope has to be confirmed
Work Breakdown Structure (WBS) –essentially a project management tool intended to capture project missions in a graphic, systematized manner. It offers the project manager enhance control of prices and deadlines, using the breakdown method to generate a WBS which is less prone to adding items outside of the project scope.
Most project managers have experienced a case where the customer asks for something outside the scope agreed (scope creep) and expects it included in the project at no extra cost. In fact, they’re probably acting as if it was always in scope. Scope creep is one of the most common reasons projects run over budget and deliver late. Often done with the best intentions, changes to scope during a project is an event best avoided.
Causes of Scope Creep
The primary causes of scope creep are:
Poor Requirements Analysis – Customers don’t always know what they want and often have only a vague idea. Failure to spend enough time gathering business requirements can lead to a need for extra resources, increased cost and longer durations when new requirements emerge.
Not Involving Users Early Enough – Thinking you know what the users want or need is a serious mistake. It is important to involve them in both the requirements analysis and design phases.
Underestimating the Complexity of the Project – Many projects run into problems because they are new in an industry and have never been done before. Nobody knows what to expect, and consequently we may underestimate the complexity of the project.
Lack of Change Control –A lack of any change control mechanism or process in a project may lead to delays, increased cost and additional complexities introduced in later stages.
Gold Plating – This term is given to the practice of exceeding the scope of a project, without proper due diligence, in the belief that an additional value is being added. These changes consume time and resources and are not guaranteed to increase customer satisfaction.
How to control Scope Creep
The following are some ways by which project managers can prevent or manage scope creep to take over their projects:
Be vigilant from day one – The project manager must handle scope creep and ultimately say yes or no to new requests as soon as they come in.
Understand your client’s vision – Even before getting to project requirements, it is important to understand what your client hopes to achieve from the project. This will enable better scope identification and agreement from all stakeholders.
Understand the project requirements – You want clarity around the goals and objectives of the work in the initial planning stage. Don’t underestimate the project’s complexity, which must be balanced against the timeline and resources for the work. Break the deliverables into milestones and put them on a timeline. When a scope change is requested, these milestones and dates help keep project within the timelines.
Change Control Process – We should always expect some degree of scope creep in most projects, therefore it is important to design a process to manage these changes. Empower a limited number of people to request scope changes and an even more limited number to grant them with a documented process for getting additional payment.
Guard against gold plating – Ensure that teams don’t try to over-deliver by adding features outside of the scope without proper due diligence. Although done in good faith, these minor changes can lead to larger scope creep.
Use a project management software – Use a software which gives visibility not only to your software team but to your clients as well. Your project management tool can also reinforce your process for handling requests for scope changes once you establish rules. Changes in scope will alter both the schedule and work tasks for project team members. Once this happens, all the changes should roll up through your plan and make the updated project plan visible to the whole team.
Know when to say “No” – Remember, not all scope changes are created equal. Changes to critical path elements (pieces that hold up other work unless completed on time) must be made sparingly and scrutinized carefully.
What are the problems that often affect project quality. What can be done to improve the way that project quality is managed?
Project managers must ensures that the product or service resulting out of the project is consistent. They are therefore focused not only on product and service quality, but also on the means to achieve it. However, implementing and maintaining quality can be quite a challenging task. The following are some of the problems that often affect project quality:
Too much Theory – Organizations that are striving for perfection often go overboard. Sometimes in an attempt to implement the “perfect” Quality Management System, they often focus more on theory than on putting theory into practice.
Poor Planning – Inability to prioritize effectively, not having a proper business plan, or not breaking down the development into phases are some of the poor planning examples which might eventually affect the project quality.
Too much documentation – This can hinder functionality of your quality management system (QMS) and might lead to employees getting lost in the documentation and losing interest. As a result, the QMS will not yield the expected results.
Not enough implication and communication – From time to time, quality is being viewed as the responsibility only of a quality manager. In such cases, lack of communication would add to employees not understanding the implications and therefore not actively contributing to the quality systems
Not enough attention to customers – Often companies are more concerned about delivery as per their standards of quality while completely ignoring client’s perception of it. This approach will also impact the project quality in most of the cases.
Vague/Changing Requirements – It’s essential that the project requirements are defined clearly and completely from the start. Change requests can often cause projects to drift later in the process and negatively impact quality.
Lack of Quality Assurance and Quality Control – Quality assurance is used to verify that the project processes are sufficient so that if they are being adhered to the project deliverables will be of good quality. In absence of a proper quality assurance plan, the project quality might be impacted.
Quality management is the process for ensuring that all project activities necessary to design, plan and implement a project are effective and efficient with respect to the purpose of the objective and its performance. Project managers can follow the below to manage project quality:
Make quality management pragmatic – Many people do not invest appropriate effort towards quality because they do not understand it. The Project Management Institute defines quality as “conformance to requirements and fitness of use.” According to this definition, quality comes through clearly defining and meeting the requirements of the users and stakeholders.
Plan for Quality – Quality should be planned intentionally. Quality management plans may include defining roles and responsibilities for quality management, identifying tools and techniques to be applied, quality measurement metrics, defining tracking and reporting cycles, laying out process for validating deliverables etc.
Start your project with a focus and commitment to quality – If inspections and tests are conducted periodically throughout the project lifecycle, the team is more likely to find defects at the point of origination, saving time and expense later.
Invest in quality management – The amount of time spent on quality should be commensurate with the size and complexity of the project. Although, the cost should not exceed the benefit, it is often experienced that most people do not invest enough time in quality management and pay for it exponentially later.
Conduct appropriate software tests – Ensure to conduct appropriate and thorough tests after implementation. For large, complex software implementations, make sure end–to-end testing is performed. Skimming through testing could result in issues down the line after implementation which will be harder and costlier to fix.
Safeguard the testing time – Most testing occurs towards the end of iterations or the end of software projects. Testers are often in a crunch. If developers get behind on their development tasks, the testers are often the ones who are adversely impacted by cuts in the testing time. This might adversely impact the quality of deliverables and all efforts should be made to ensure appropriate testing time is allowed for.
Educate and negotiate with management – In general, project teams apply their knowledge, experience, and creativity to delivering the products in the desired timeframe. However, the project manager must know when to negotiate trade-offs of schedule, scope, quality, cost, and risks to manage the overall quality of the project.
Discuss the importance of project stakeholders. What can project managers do to effectively manage project stakeholders?
The stakeholder analysis is the process of identifying and analysing stakeholders, and plan for their participation in the project. Some of the ways stakeholders are important to the project are as follows:
Providing Expertise – Stakeholders are a wealth of knowledge about current processes, historical information, and industry insight given the fact that these team members might have been on the project longer than project team. It’s also important to involve all key stakeholders when gathering and documenting requirements to avoid missing major deliverables of the project. Project managers, or others who are in charge of deliverables, may not be experts on every project. Key stakeholders can provide requirements or constraints based on information from their industry that will be important to have when understanding project constraints and risks.
Reducing and Uncovering Risk – We can reduce and uncover risks in the projects early on by engaging key stakeholders. During initial discussions on requirements, needs and constraints, stakeholders may bring up issues or concerns about meeting those things. This will enable uncovering of possible risk and be planned for before they occur.
Increasing Project Success – Reviewing project requirements with stakeholders will help them to be on side with them and enable project success. In case conflicting needs or priorities cause stakeholder expectations not to be met, set expectations early in the project life cycle. This will help with managing stakeholders throughout the process Stakeholders should always be aware of the project scope, key milestones, and when they will be expected to review any deliverables prior to final acceptance.
Granting Project Acceptance – The more regularly you engage and involve stakeholders from the start, the more likely you will have a positive project conclusion. By the end of the project, the team members should have already been aware of delivery expectations, risks, and how to mitigate the risks. They also should have reviewed draft deliverables along the way. This process should help avoid any surprises at the end of your project. The final acceptance is just their final stamp of approval during the project closure phase.
Project manager can do the following to effectively manage project stakeholders:
Stakeholder mapping – Early in the project timelines, conducting a thorough stakeholder analysis is very beneficial for the project. This includes identifying and examining key factors including proximity to the project, interest in the project, and expectations from the project.
Understanding influence – It is important to understand levels of influence as this will allow predicting stakeholder interactions directly with your project team or with others. The range of benefits of stakeholder influence is borage which could range from positive sentiment and support to engagement of other members who might be against the project.
Identifying key triggers – Preventable complaints can be avoided by understanding how key stakeholders react to different project actions. Often, changes to the environment or expectations of a business cause a reaction and understanding those upfront will enable managing the project smoothly throughout the process.
Looking for Opportunities – Regardless of how important it is to focus on those stakeholders that are not supportive of the project and may cause disruption, equally important are those stakeholders who are on side with the project. Those stakeholders view the project favorable as they might have vested benefits and these stakeholders might be leveraged as project advocates.
Proactive mitigation – With above steps performed properly and having gained knowledge about stakeholders’ influences and triggers, the next step is to create a mitigation plan. This includes detailing the risk that the project is prepared to accept or avoid and outline steps to reduce the impact. Early identify the items that are negotiable and those that are not. This will enable stakeholder buy-in, credibility and ownership of the mitigation measures.
In addition, the following key ideas are essential to allow management of stakeholders by their type:
For those stakeholders with a high degree of influence – it is extremely important to maximize their positive influence and behavior. Actively figure out how to optimize their engagement level and leverage their support to champion the project to others, especially those who are more resistant to the project.
For powerful stakeholders who are not supportive of your project – it’s important to find a way to minimize the potential for them to disrupt or slow the project progress. This can most likely be done by finding a little benefit for them or appealing to their sense of organizational loyalty.
Discuss the differences between the agile and predictive approaches to project management
Development methods exist on a continuum from adaptive to predictive. Agile methods lie on the adaptive side of this continuum. One key of agile development methods is a rolling approach to schedule planning, which identifies milestones but leaves flexibility in both the path to reach them as well as the milestones themselves. Agile methods focus on adapting quickly as per needs of the project. Agile is a flexible and iterative project management technique that focuses on rapidly adapting to changing customer requirements. It is especially effective for service-oriented projects where continuous improvement is to be expected. One possible disadvantage, however, is that the finished deliverable can be very different from what was originally intended given the innovative nature of this approach.
In contrast, the predictive method (also known as waterfall or traditional project management) focuses on analyzing and planning the future in detail. Traditionally, following a predictive approach will enable a team to report exactly what features are planned for the entire length of the development process. One basic requirement of the waterfall or traditional project management methodology is detailed planning before the start of the project. Steps and dependencies are explicitly mapped, and the project moves on to the next phase only when the previous one has already been completed. This solution works well for projects with defined tasks and sequences, and when you know exactly what the final deliverable should be. Predictive methods rely on effective early phase analysis and will often institute a Change Control Board to ensure that only the most valuable changes are considered.
Here are some major differences between Agile and Predictive methodology:
In the predictive model, software development process is divided into different phases while agile methodology splits the project development lifecycle into sprints.
Predictive approach is a structured methodology with rigid timelines; however, Agile is a flexible methodology.
Software development is to be completed as one single project under the predictive approach, which is then divided into different phases. Each of these phases appear only once during the Software Development Life Cycle (SDLC). However, the Agile methodology is basically iterations of the different phases focusing on improving the overall software quality by incorporating user feedbacks.
Under predictive approach, you have to be clear with all the development requirements beforehand as there is no scope of changing the requirements once the project development starts, except minor scope creep which goes through a rigorous change control board. The Agile methodology, on the other hand, is quite flexible, and focuses on continuous improvements and changes to be made in the project development requirements as requirements evolve driven by feedback from users and QA teams.
In a predictive approach, all the project development phases such as designing, development, testing, etc. are required to be completed, while as part of the Agile methodology they follow an iterative development approach. As a result, planning, development, prototyping and other software development phases can appear more than once during the entire lifecycle.
Another major difference between the two methodologies is their individual approach towards quality and testing. In the predictive model, the testing phase follows the build phase, but, in the Agile methodology, testing is typically performed concurrently with programming or at least in the same iteration as programming.
Predictive methodology is typically an internal process and does not require the participation of customers; the Agile software development approach focuses on client satisfaction and thus, involves the participation of users and clients throughout the project lifecycle.
The predictive model can be a stringently sequential process, however, the Agile methodology is a highly collaborative software development process, thereby leading to better team output and faster problem solving and easy pivoting and changing directions as required.
The projects which have clearly defined requirements and in which change are not expected are better suited to follow predictive methodology, while agile development supports a constantly changing and evolving process. Thus, Agile is the best approach to follow while planning software which would require frequent overhauls and would be required to be kept up with technology landscape and evolving customer needs.
The predictive model exhibits a project mindset and focuses largely on the completion of project development, while Agile introduces a product and client centric mindset that focuses on ensuring that the developed product satisfies its end customers, and changes itself as feedback is received.