If you are planning to implement Odoo for your business, understanding the steps involved in the process is crucial to ensure the success of the project. In this article, you will learn:
- Why the discovery phase is so important
- How to ensure that your business metrics are achieved after Odoo implementation
- Whether the project is considered finished after going live
Odoo implementation process can be broken down into three high-level stages: discovery, implementation, and support.
- Discovery and Conceptualization: This stage involves gathering requirements, identifying the key stakeholders, and planning the project. During this stage, the organization should determine what they want to achieve with Odoo, what features they need, and how they want to implement the system.
- Odoo Implementation: This stage involves installing and configuring the Odoo software, migrating data if necessary, testing the system, and training end-users. This is the stage where the organization works to ensure that Odoo is set up to meet their specific needs and that users are prepared to use the system effectively.
- Support: Once the system is deployed, ongoing support is necessary to ensure that it continues to meet the needs of the business. This involves providing regular updates, troubleshooting issues, and addressing user questions or concerns. This stage is critical to ensure that the organization gets the most out of their investment in Odoo.
Now let’s focus on each step in detail.
Discovery and Conceptualization
The more you sweat in times of discovery the less you bleed in Odoo implementation
This phase is dedicated specifically to project initiation for everyone involved to define what we will do and how we will collaborate. During this time, we determine the client’s vision and goals, the overall Odoo project scope, and the delivery framework. We then structure qualified teams to focus on the company’s needs.
- Get ready to the implementation phase of the MVP version for the defined solution
- Form a strategy for the Implementation phase with the implementation roadmap
Key Tasks and Activities
- Define company business goals, needs and improvement areas.
- Dive into the client company structure & processes.
- Get processes, functions overview and their dependencies
- Understand the processes to digitalise/automate or the processes affected, MVP definition based on the processes
- Define & Validate of requirements, define solution options, POC creation as a value demonstration
- Form a strategy for implementation phase
- Define & prepare the mutually aligned scope of requirements for the whole project
- Define the priorities, dependencies, transformation roadmap & project charter for implementation phase
- Define the scope for MVP version – requirements based
- Define the scope for 1st release, decompose and describe the 1st release requirements in details
- Define a team for the client as a dedicated competence center
- Approve and sign off.
Once the key tasks and activities framework are in place, we begin with a discovery kick-off meeting. Plan objectives and the deliverables are reviewed by all for a client-centered collaboration.
The process continues with focused workshops. We carefully analyze the client’s business goals, the company’s needs, and necessary improvement areas, which helps us to design our process roadmap.
Each company’s vision, structure, and processes are at the center of our planning. In preparing the Vision and Scope (V & S) documentation, we define the scope for the first release to start the implementation stage after transitioning from the discovery stage.
Processes are broken down by functions and their dependencies. Then we look at potential opportunities to digitalize and automate all affected processes. Key metrics are put into place to measure success, while priorities are updated in the transformation roadmap, which becomes the project charter.
Next, the scope for the first release is defined along the project’s priorities, and the team is structured in the best way to carry out the first release requirements. We then validate and confirm our plans by demonstrating feasibility in a proof of concept (see an example in Outputs).
Note: Usually, the workshops are held offline on the client’s side, and the trip takes from 3 to 5 days depending on the project size. Additionally, a separate agenda is prepared for each workshop day before the workshop begins.
Ongoing consultations and discussing affected processes include understanding how these aspects can perform better. We pay close attention to our clients’ value perceptions regarding results obtained, and then we apply our Odoo solutions.
Transparent team collaborations when working on processes ensures solution vision clarity; we work on what is configurable and customizable, and how can we deliver it. Along with such transparency comes ready and clear documentation to start implementing of the first release within our Odoo implementation framework.
Clients have confidence in their chosen vendor, because they can thoroughly see demonstrations of expertise through processes transparency.
Team and Stakeholders
As applicable for every client’s unique situation, our Core team includes the following member roles:
- Odoo Consultant
- Technical Lead/Solution
- Delivery Lead
- Product owner/Business Analyst
We collaborate with our clients’ teams and work with their expected stakeholders, which include company owners, product managers, users and customers, SMEs (subject matter experts), and other product teams, project teams, SCRUM teams, etc.
Vision and Scope Documentation
The following definitions and other items are included in the Vision and Scope (V&S) document: overall purpose, glossary, objectives; business requirements, objectives, constraints and limitations, risks and threats; business context to include a list of stakeholders along with roles and responsibilities; business assumptions; company’s vision statement, high-level scope, and detailed scope of the 1st release. We also include open questions, define what is ‘out of scope,’ and document details of the project’s organization.
Project Charter Documentation
We focus on and include the following aspects designed specifically for each case and project setup: project overview and description, reasons for the project, goals, deliverables; business opportunities, objectives, and success metrics; solution description; assumptions; implementation approach, including tools, working hours per team; project timeline, scope, and project team; RACI chart; communication plan, risk management plan; budgeting and reporting rules.
Demo or POC
We also organize a demo of the system using a client’s real data, highlighting how Odoo covers the most important processes. This demo will allow the client to see first-hand how Odoo can meet their specific needs and requirements. We will walk through the various features and functionalities of the system, highlighting its strengths and capabilities.
A POC (proof of concept) is a test Odoo environment with a basic setup tailored to meet the client’s requirements. It is essentially a prototype build that serves to prove a hypothesis from a technical perspective, demonstrating that the proposed solution is feasible. A POC helps validate the concept before significant time and resources are invested in its development. Once the POC is successfully completed, it can serve as a starting point for the full-scale implementation of the Odoo solution.
Additionally, we will be available to answer any questions or concerns the client may have during and after the demo or POC.
Ready to kick off your Odoo implementation project? Fill out our estimate request form to get started!
The goal of this step is to deliver a solution that is most appropriate for the requirements identified during the discovery phase. As you may recall, the scope of the project is closely tied to the company’s business metrics, and staying focused on the scope can help minimize change requests and lead to faster achievement of those metrics.
Now, let’s take a deeper dive into the Odoo implementation process.
The Define Stage
For larger projects with more complexity, there may be a need for a dedicated core team to manage the overall initiative and program, while also having project cross-functional teams dedicated to specific functions, systems, or technologies.
However, for smaller projects that only require one project team, a core team may not be necessary. This approach can help ensure efficient and effective management of the project, while also ensuring the right expertise is in place for each aspect of the project.
Key tasks for Core team:
- Define the scope for the coming releases and the goals
- Define the priorities and dependencies
- Describe the features and requirements
- Define the Project teams that will be implementing the features, what feature to what team
- Define the feature owner and all the stakeholders
Key tasks for Project teams:
- Contribute to the planning and prioritization providing expert options and evaluation, define the dependencies and discuss the solutions
- Analyze the feature and decompose it in terms of the team backlogs, describe the requirements – communicating with all the required stakeholders
- Prioritize the backlog
- Plan the iterations based on the priorities and dependencies
- Communicate with the team features and tasks with the project team
The Build Stage
This stage involves evaluating customer backlog, forming requirements, and developing and testing the project. The team fixes bugs and performs regression testing before demonstrating and implementing the project in production.
Here is a typical example of the flow for the Project team:
- Evaluation of the customer’s request (Backlog)
- Business-analysis, discussion with the customer, formation of requirements (Analysis)
- Requirements analysis by the team (BA, QA, developer)
- Description of the requirements in confluence and link to the task (To do)
- Environment setup, configurations, development, recording a demo of new functionality by the developer (In progress)
- Testing, recording a demo of the testing process and new functionality by a tester (Review)
- Problems analysis, discussion, bug fixing (Analysis → To do → In progress)
- Retesting, regression testing (Review)
- Demonstration, acceptance testing (Ready to release)
- Implementation, deployment to prod
- The support (Done)
The Odoo deployment process flow consists of five steps: planning, development, testing, deploying, and monitoring. The deployment of new functionality, whether it is a small fix or a whole module, must go through several stages (i.e., environments):
Transitioning to each next stage is possible only after testing functionality at the current one. Deploying features to Staging and Production is carried out by creating a pull request on GitHub.
Development branches create new databases using the demo data to run the unit tests. When pushing through a new commit in one of these branches, a new server is started, with a database created from scratch and the new revision of the branch. The databases created for development branches are meant to exist for about three days.
Staging is an environment that fully corresponds in its structure to the Production stage. Staging branches are meant to test new features using the production data without compromising the actual production database with test records. They will create databases that are neutralized duplicates of the production database.
Production is an environment holding the code on which the client’s production database runs.
- We follow SOLID, DRY, and KISS principles in design, and prefer using high-quality OCA modules rather than reinventing the wheel.
- We use a feature-toggling system for dynamically developing projects and implement refactoring and code optimization as needed.
- Our developers follow naming conventions for classes, methods, and variables, and write docstrings and comments for the code.
- Unit test coverage for our modules is around 75-80%, and we also implement UI and load tests on complex projects.
- We set up monitoring tools such as Sentry at the start of the project to detect and resolve issues on staging and production environments.
- All code changes undergo review by the development team and lead developer for potential bugs and data security. We also use static code analysis tools as part of our CICD flow to maintain code style and quality.
In this stage the team analyzes initial requirements, creates a test plan, and performs functional and integration testing before reporting and demonstrating acceptance testing for production.
Here is an example of the validation tasks and flow:
- Requirements analysis with the team (BA, developer)(Analysis)
- Requirements testing, analysis of the implementing/implemented process (Review)
- Test plan (testing process planning, testing technique selection)
- Test Design (creation of test documentation)
- Smoke test (checking the performance of the main functionality)
- Functional testing according to test scenarios/test cases/checklist on DEV-server, demo recording
- Bug analysis, demo creation, discussion with BA and developer (Analysis)
- Description of bugs in tasks (To do)
- Retesting after fixes (Review)
- Integration testing on the Staging server
- Regression Testing
- Demonstration, acceptance testing (Ready to Prod)
A flow example of this stage is as follows: A smoke test is done to check main functionality performance. Detailed testing continues following test scenarios, bug analysis, demo creation, and discussions with other SMEs.
After bug descriptions are addressed and fixed, retesting, integration testing, and regression testing takes place. This is all followed by reporting, demonstration, and acceptance testing. After release, active functionality and settings are also tested for quality assurance.
Activities and Events
Activities and events include the following:
- Release planning and reporting
- Iteration planning and reporting
- Discovery approach applications
- Status syncing
- Release and sprint retrospectives
- Regular follow-up reporting on a weekly or monthly basis
- Writing code and reviewing it
- Smoke test coverage
- Functional testing
- User acceptance testing
The client value for the Odoo implementation step is the ability to continuously enhance features with timely delivery ready for release upon demand. This is achieved through a transparent and manageable approach to development, quality, and integration, enabling quick application of new flows and process automations.
Team and Stakeholders
Besides of continues product increment on iteration and release basis, client gets related documentation (requirements, code documentation, release notes, guides, models and diagrams)
The importance and responsibility of the Odoo go-live procedure cannot be overstated, so activity planning is worked on carefully, followed by careful attention to carrying out each step.
- QA on different levels starting from the requirements definition phase – so we speed up the testing process and deliver faster.
- Validate whether the requirement supports future business needs – at the analysis phase. Used to minimize re-work and CRs.
- Change requests (CRs) work out flow
- Design solutions for systems evolvement and testing simplification
- DoR and Compliance supporting
- DoD for iteration/release & Feature/Story/tasks
Security and Compliance
Data security and compliance is very important for our clients. To ensure this, we follow strict procedures and guidelines to maintain the security of the Odoo implementation.
Our approach includes relying on the basic Odoo system for compliance and tracking any changes in data security for standard and enterprise modules. We also ensure that our clients use a high-trusted hosting and offer solutions such as two-factor authentication and implementing the principle of least privilege to minimize the risk of unauthorized access to critical data.
We conduct a mandatory code review for any third-party modules before recommending their installation, and we observe strict confidentiality of our clients’ data. We sign a non-disclosure agreement with clients and strictly limit the list of people who have access to production data.
To maintain the integrity of data, we replace email addresses and passwords to accounts of the system users for testing purposes and can also enhance the process of data anonymization on staging and development environments.
We prioritize the security and compliance of our clients’ data and follow strict procedures to ensure it.
Need help with Odoo implementation? Let us assist you with our transparent and manageable approach
It's not enough to implement an ERP system
After a project goes live, it typically enters the support phase. During this phase, clients often require assistance and quick fixes, and they may provide feedback that leads to new feature development.
During both stages of the support phase, it’s important for the development team to remain responsive and attentive to the needs of the client, in order to ensure the continued success and effectiveness of the project.
This is why we developed a separate approach for support projects that involve quick fixes, help and guidance, or even development of new features but not on a constant or planned basis.
Support mode is an option to increase value to the client and balance our team workload.
We work on clients’ requests depending on their criticality to their business operations in Odoo. This also means that we focus on maintaining existing features and addressing any technical issues that arise, but we also work on new features development requests. Client-defined priorities are always addressed.
All requests are categorized into three types:
|Request category||Description of category|
|Blocker||For issues that block the working process (e.g., the system is down, orders can’t be processed and there are no possible workarounds).|
|New feature||This is where we manage requests for development or analysis.|
|How to||We provide detailed instructions on how to do something, how it all works, and so on. Issues serviced in this category do not block your working process, and you have workarounds.|
Reaction time and start of work are discussed individually for each project based on criticality of one or the other process and may start from 1 hour.
To ensure that our clients experience process transparency, we use Jira Service Management. This helps clients to see requests in real time and involve all necessary staff in each process.
Depending on the request category, we provide the following dedicated team: a support engineer, a business analyst, a developer, and a quality assurance professional.
Usually support involves about 50 hours per month (although the numbers can vary greatly depending on project requirements) and typically includes maintaining the functionality and stability of the system, addressing any bugs or issues that arise, and providing assistance with system upgrades and guidance.
Note: In most cases, the project is not finished after going live. Businesses always have new requirements and processes to automate, so the post-go-live phase involves the development of new features and ongoing improvements. This cycle continues for as long as you use Odoo for your business automation.
Implementing Odoo can be a complex and challenging process, but there are three principles that can help any company navigate it more effectively:
- Careful planning and conceptualization during the discovery phase can make the implementation process much smoother.
- Staying focused on the scope of the project defined during the discovery phase can help the company achieve its goals and business metrics, leading to a faster return on investment in automation.
- Choosing an experienced Odoo partner can help ensure that the results of the automation are aligned with the company’s goals and budget.
At VentorTech, our team of experts is dedicated to providing transparent and client-centered solutions that meet the unique needs of each business. If you are ready to kick off your Odoo implementation project, we invite you to fill out our estimate request form and get started.