Muokkaa

Jaa


Choose a methodology for your Dynamics 365 project

A methodology is a set of steps and best practices that help you complete a project or task successfully. It tells you what to do, when to do it, and who should do it. It also helps you avoid common pitfalls and risks along the way.

For Dynamics 365 projects, choosing a suitable methodology is crucial. It can make the difference between delivering a solution that meets your goals and expectations, or wasting time and money on a solution that doesn't work for you.

In this article, we'll explain why a methodology is important for Dynamics 365 projects and how to choose one that fits your needs.

Why a methodology is important

A methodology is like a roadmap for your project. It guides you from the start to the finish, and helps you achieve predictable outcomes. A good methodology can help you:

  • Be consistent and reliable in your work.
  • Define clear phases, milestones, deliverables, and criteria for each stage of the project.
  • Assign roles and responsibilities to your team members.
  • Reduce the risks of missing or forgetting important tasks.
  • Follow proven best practices and standards.
  • Save time and money by optimizing your resources and processes.
  • Avoid surprises and disappointments by setting realistic expectations and goals.
  • Deliver a user-centric solution that delights your customers and stakeholders.

Think of a methodology as a planned journey. To reach your destination successfully, you need to:

  • Plan ahead: Before you start, make sure you know where you're going (project scope), what you need (resources, governance, and methodology), and how you'll track your progress (project monitoring).

  • Know the road: Map out the route, or solution blueprint, that shows the start and end dates for each milestone. This way, you can measure your progress, and your team knows what they need to do.

  • Avoid pitfalls: Follow the best practices and standards that minimize the chances of errors, delays, and scope creep.

  • Get there faster: Use strategies that help you speed up your work and reduce costs. Plan, act, and review regularly to make sure you're on the right track.

  • No surprises: Satisfy your users by delivering a solution that meets their needs and preferences. Satisfy your stakeholders by delivering results on time and within budget.

Illustration of the five steps on the roadmap to success: plan ahead, know the road, avoid pitfalls, get there faster, and no surprises.

Sometimes, external factors can affect your planning. You should have contingency plans to deal with unexpected situations that might be beyond your control.

How to choose a methodology

You can use many methodologies for a Dynamics 365 project. However, they can be grouped into three main types:

  • Waterfall model: A linear and sequential approach that follows a series of phases from conception to maintenance. Each phase must be completed before moving to the next one.

  • Agile model: An iterative and incremental approach that uses short cycles of work, called sprints, to deliver features and feedback. Each sprint involves analysis, design, development, testing, and review. Sprints are usually fixed in duration (for example, 30 days). Agile development isn't a methodology in itself, but an umbrella term that describes several methodologies. Some of the most popular agile methodologies are Scrum, XP, DSDM, and Sure Step for Agile.

  • Hybrid model: A combination of waterfall and agile practices that adapts to the project needs. It defines and designs the solution before starting the sprints, and uses sprints for refining, building, testing, and reviewing the solution.

A sprint or iteration is a period of time when the team delivers a working and tested piece of software. Agile methods use the term sprints, while iterative methods use the term iterations.

Note

The Success by Design framework is a tool that supports any methodology you choose. It provides proactive guidance and predictable outcomes for your Dynamics 365 project. Learn more at Introduction to Success by Design.

Let's take a closer look at each of these methodologies and their pros and cons.

Agile

Agile is a flexible and collaborative way of working that responds to changing requirements and feedback. It's based on the idea that you don't need to know everything upfront, and that you can learn and improve as you go.

In Dynamics 365 projects, many requirements are covered by the out-of-the-box capabilities of the product. However, you need to address and prioritize specific challenges and tasks in a backlog of user stories. A user story is a brief description of a feature or function that the user wants or needs.

From the backlog, you create plans for each sprint and assign user stories to them. During the sprint, you work on the user stories, and deliver a working and tested piece of software at the end. You also get feedback from the users and stakeholders, and use it to improve the next sprint.

Agile encourages a close collaboration between the people who define and own the requirements, and the people who develop and deliver the solution.

The goal is to release software faster, get early and regular feedback, adapt, and release again. This cycle continues until all the requirements are met or the backlog is cleared.

An example of agile practices using the methodology prescribed by Sure Step for Agile is shown in the following diagram:

Diagram of an agile project, in which a product backlog leads to a sprint backlog that leads to a sprint with 30 days of 24 hours that then generates working increments of the software.

Some of the benefits of agile are:

  • It's flexible and adaptable to changing needs and feedback.
  • It's user-centric and focuses on delivering value and satisfaction.
  • It's fast and efficient, and reduces waste and rework.
  • It's collaborative and transparent, and fosters trust and communication.

Some of the challenges of agile are:

  • It requires a high level of commitment and involvement from the users and stakeholders.
  • It can be difficult to estimate and plan the scope, time, and budget of the project.
  • It can be hard to maintain quality and consistency across multiple sprints and releases.
  • It can be challenging to integrate and coordinate with other teams and systems.

Waterfall

Waterfall is a traditional and structured way of working that follows a clear and predefined sequence of phases. It's based on the idea that you need to know everything upfront, and that you can't go back to a previous phase once you finish it.

It's a common methodology for implementing on-premises business applications. It's a linear and noniterative approach that delivers the project in one go.

The phases, milestones, and deliverables are clearly defined, and you only move to the next phase when you complete the previous one.

In the modern cloud world, getting early and frequent stakeholder buy-in is critical, which requires delivering quick and iterative results. This makes the waterfall approach less suitable.

An example of the waterfall model as prescribed in Sure Step Methodology is shown in the following diagram:

Illustration of a waterfall project as a table with five columns for analysis, design, develop, stabilization, and deploy, and rows for organization, solution, and technology.

Some of the benefits of waterfall are:

  • It's simple and easy to understand and follow.
  • It's predictable and stable, and minimizes changes and risks.
  • It's well-defined and documented, and ensures quality and compliance.
  • It's manageable and measurable, and allows for clear planning and monitoring.

Some of the challenges of waterfall are:

  • It's rigid and inflexible, and doesn't accommodate changing needs and feedback.
  • It's not user-centric and focuses on delivering specifications and requirements.
  • It's slow and costly, and increases waste and rework.
  • It's isolated and siloed, and hinders trust and communication.

Hybrid

Hybrid is a tailored and balanced way of working that combines the best of waterfall and agile practices. It's based on the idea that you can adjust and customize your approach to fit your project needs and context.

It's a popular and recommended methodology for Dynamics 365 projects. It uses a noniterative approach for the initial and final activities of the project, such as initiation, solution modeling, system integration testing, user acceptance testing, and deployment. It uses an iterative approach for the build activities of the project, such as requirement detailing, design, development, and testing.

The hybrid approach helps you provide early visibility into the solution, and allows you to take corrective actions early on in the project. It uses the best of both waterfall and agile approaches, and it's a win-win for most types and sizes of projects.

In the hybrid approach, the focus is on a regular rhythm of iterative and incremental releases of software features.

An example of the hybrid approach, based on Dynamics Sure Step 365, is shown in the following diagram:

Diagram of a hybrid project, with stages for mobilization, initiation, solution modeling, build, solution testing, deployment, support transition, and operation.

Some of the benefits of hybrid are:

  • It's adaptable and responsive to changing needs and feedback.
  • It's user-centric and focuses on delivering value and satisfaction.
  • It's fast and efficient, and reduces waste and rework.
  • It's collaborative and transparent, and fosters trust and communication.

Some of the challenges of hybrid are:

  • It requires a high level of skill and experience to balance and integrate the different practices.
  • It can be complex and confusing to manage and coordinate the different phases and sprints.
  • It can be hard to maintain quality and consistency across multiple sprints and releases.
  • It can be challenging to integrate and coordinate with other teams and systems.

Next steps