Benoit Tran, Sénior Consultant - QA Manager, Itecor Paris · October 30, 2023
Our client is the leading French company in the field of physical and electronic document archiving, with over 45 years of expertise. They provide physical storage solutions in secure warehouses and software solutions that facilitate the management of all document-related processes, including scanning, Document Management Systems (GED), and digital and physical archiving management.
Currently, these services and solutions are used by over 11,000 clients, and 98% of companies listed in the CAC 40 index.
After conducting an audit on the client’s software quality processes and proposing associated recommendations, Itecor was chosen to implement these recommendations.
The main objective was to accelerate the pace of production deployments and enhance the overall software quality of all products offered in our client’s catalog.
Through its expertise, Itecor became the primary partner and player for the client in establishing a QA community working on their 5 key products as early as 2020.
Initially, the client did not have a unified and industrialized QA policy.
In this context, they sought our expertise to provide ten structural proposals, with the mission of creating the software quality function from scratch, defining a global strategy, and gradually implementing it within the different teams.
The main challenge of our mandate was to provide operational advice to the client on the following points: defining the testing policy, recruiting and integrating experienced QA profiles into squads, implementing change management, defining processes, monitoring and reporting KPIs.
Recruiting the right profiles
To meet the client’s high requirements and successfully manage the change process, it was crucial to integrate qualified, certified, and agile talents into the team.
ISTQB Test Manager, Automation/Performance Expert Engineer certifications were evident prerequisites in the recruitment process, demonstrating our ability to deliver state-of-the-art testing processes.
Furthermore, beyond in-depth technical interviews, the Itecor consultants selected for this mandate were particularly assessed for their “soft skills” and service orientation.
Establishing processes and standards
To ensure software quality, it was essential to identify key processes, including:
Defining standards was a crucial step as it set the guidelines for test execution, documentation production, naming conventions, and bug management policy.
These standards needed to be clear, understandable, and applicable to all parties involved.
Selecting and implementing testing tools
The client collaborated with several public entities in the development of a digital archiving software package. As a result, they needed to demonstrate total independence and ensure data protection in compliance with the constraints of the Patriot Act.
In this context, Itecor primarily considered European market solutions. The client finally chose French testing tools such as Squash TM for test management and a codeless tool for web, desktop, and mobile application automation.
Itecor also proposed and integrated a recognized performance testing solution to ensure the robustness of the solutions before their production release.
Our main team consisted of a task force experienced in all testing domains: manual testing, automation, performance, and strategy.
An Itecor QA Manager led the team, ensuring cohesion among internal and external resources, project management, reporting, and client interface.
The ability to build trust and satisfaction with all stakeholders: Director of IT, Chief Technical Officer, Chief IT Operations Officer, Chief Product Owner, Product Owner, and Developers.
The capability to capitalize on knowledge and facilitate exchanges between the QA tribe (10 people) and the 6 development squads.
Defining Scope and Objectives
Itecor relied on the TMMi model to assist the client.
TMMi is a reference model that allows evaluating and improving the maturity of testing processes within an organization. It consists of five levels of maturity, ranging from initiation (level 1) to continuous optimization (level 5).
By using TMMi, Itecor objectively assessed the client’s maturity level and identified areas for improvement. This served to define the scope and objectives to be achieved step by step and provided an overall progression vision to the client.
Defining Prioritization Management
We applied the Risk Based Testing (RBT) method to manage functional coverage. This method evaluates the risk based on the probability of dysfunction occurrence and its impact on users and the environment.
Defining Associated Testing Context
Initially, we created a foundation of regression tests (TNR) by building a reliable and standardized test data set. This practice enables the comparison between versions with stable reference data.
Once this test repository was validated, we could create automated tests in suitable environments dedicated solely to software qualification purposes.
Defining the Place of Software Quality within the IT Department
We conducted a change management process inspired by Prince2 to ensure a smooth transition and successful integration of new processes into the existing workforce.
We communicated the reasons and benefits of establishing a QA tribe to all organization members, gaining their support.
Additionally, we provided in-depth technical training to QA resources to meet the client’s expectations and facilitate their onboarding.
The establishment of the QA tribe has provided numerous advantages:
Cookie | Duration | Description |
---|---|---|
__hssrc | Session | This cookie is set by Hubspot whenever it changes the session cookie. The __hssrc cookie set to 1 indicates that the user has restarted the browser, and if the cookie does not exist, it is assumed to be a new session. |
_GRECAPTCHA | 5 months 27 days | This cookie is set by the Google recaptcha service to identify bots to protect the website against malicious spam attacks. |
cookielawinfo-checkbox-advertisement | 1 year | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category . |
cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
CookieLawInfoConsent | 1 year | CookieYes sets this cookie to record the default button state of the corresponding category and the status of CCPA. It works only in coordination with the primary cookie. |
JSESSIONID | session | New Relic uses this cookie to store a session identifier so that New Relic can monitor session counts for an application. |
viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
Cookie | Duration | Description |
---|---|---|
__cf_bm | 30 minutes | This cookie, set by Cloudflare, is used to support Cloudflare Bot Management. |
__hssc | 30 minutes | HubSpot sets this cookie to keep track of sessions and to determine if HubSpot should increment the session number and timestamps in the __hstc cookie. |
Cookie | Duration | Description |
---|---|---|
__hstc | 1 year 24 days | This is the main cookie set by Hubspot, for tracking visitors. It contains the domain, initial timestamp (first visit), last timestamp (last visit), current timestamp (this visit), and session number (increments for each subsequent session). |
_ga | 2 years | The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors. |
_ga_* | 1 year 1 month 4 days | Google Analytics sets this cookie to store and count page views. |
_ga_JYCPSB48B8 | 2 years | This cookie is installed by Google Analytics. |
_gat_gtag_UA_* | 1 minute | Google Analytics sets this cookie to store a unique user ID. |
_gid | 1 day | Google Analytics sets this cookie to store information on how visitors use a website while also creating an analytics report of the website's performance. Some of the collected data includes the number of visitors, their source, and the pages they visit anonymously. |
CONSENT | 16 years 2 months 25 days 10 hours | YouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data. |
hubspotutk | 1 year 24 days | This cookie is used by HubSpot to keep track of the visitors to the website. This cookie is passed to Hubspot on form submission and used when deduplicating contacts. |
Cookie | Duration | Description |
---|---|---|
IDE | 1 year 24 days | Google DoubleClick IDE cookies are used to store information about how the user uses the website to present them with relevant ads and according to the user profile. |
test_cookie | 15 minutes | The test_cookie is set by doubleclick.net and is used to determine if the user's browser supports cookies. |
VISITOR_INFO1_LIVE | 5 months 27 days | A cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface. |
YSC | Session | YSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages. |
yt-remote-connected-devices | never | YouTube sets this cookie to store the user's video preferences using embedded YouTube videos. |
yt-remote-device-id | never | YouTube sets this cookie to store the user's video preferences using embedded YouTube videos. |
Cookie | Duration | Description |
---|---|---|
VISITOR_PRIVACY_METADATA | 5 months 27 days | Description is currently not available. |