Our way to a fancy QA automation reporting

In our relentless quest to find the best processes, we tested different QA automation tools such as Serenity, Cucumber, and Allure to find the best fit. Here’s a step-by-step guide to creating the best, most efficient, easily-readable automated QA reports containing all essential tag information while reducing time-costly tasks, saving both you and your team countless hours of work. Let’s get started!

Written by: 

Aleksandr Petukhov,
Senior QA Engineer at Nuvolar

 

QA automation tools: Our first experiment with Allure

Various different options were tried in order to experiment and create this article. All of them had something in common, such as the trend chart or the feature to display the number of passed/failed scenarios.

Previously, we were using the Serenity reporting tool which has a good example of a pie chart with statistics.

When we decided to experiment with different reporting tools, we chose Allure Framework because it allows users to not only check the status of the test-execution process but also to look way deeper and extract a maximum of useful information from everyday test execution.

The first step was integrating Allure into one of our projects, and here we faced our first problem: the Serenity framework-related reporting tool we used before wasn’t going to work with Allure, so it had to be removed from the project structure and Allure was added instead. 

This time we used Cucumber in our test project. It’s a good way to manage test cases because Gherkin (used in the Cucumber framework) makes test cases easily readable and understandable from a non-QA point of view.

As we’re using Cucumber, you’ll be required to update the plugins list in the Cucumber Runner class to then add Allure there.

Also, some Maven configuration updates were needed:

  • Add encoding.
  • Add a java agent for aspectJWeaver.
  • Include our runner Cucumber class.
  • Add mandatory system property variables: results report directory, Jira pattern, TestRail pattern.

  • Add io.qameta.allure plugin into pom.xml.

  • Add dependencies into pom.xml.

Running the first test

Once everything has been configured, then the time has come for the first test run with an updated reporting tool to start.

Depending on the Maven-Surefire configuration, there can be several options to execute a test run. For us it’s a simple mvn clean test && mvn allure:serve

When the mvn clean test has finished, mvn allure:serve will start doing its job:

  • A report will be generated in the target folder (example:target/site/allure-maven/index.html)
  • As the report is ready, the next step is to start the Jetty server
  • A browser will be opened in a separate window and the Allure report will be displayed

Why switch from Serenity to Allure?

Let’s finish with the technical part and discuss the main idea: Why did we change from an already working option (the Serenity reporting too) to Allure? The answer is the rich amount of options provided by Allure

As those who frequently check QA reports, collect statistics and try to improve our reporting user experience on a daily basis, we’d like to be able to easily identify problems, localize their source and be able to quickly fix them.

It doesn’t matter which side the defect is on: Whether it’s on the application’s side, or in places where tests are no longer relevant and should be updated.

Regarding the latter, there are also many useful features for that in Allure.

Flaky Test: including marks for what should be fixed

Sometimes we face issues with unstable tests, there are a lot of reasons why this could happen; if we’re talking about Front-end tests the reason could be, for example, a StaleElementException problem which can appear from time to time on specific elements on the UI part.

This will depend on the stack of technologies used to display the UI part and can be fixed by the reinitialisation of such elements within the test code. But before doing so there might be more urgent tasks, so to not to lose time doing this failing test periodically, it can be marked as @flakky.

This way the reports showing the following failures will contain a mark showing that the current test is unstable and should be fixed, here’s how it looks:

In comparison with Serenity, it only has an option to retry N times, but to not to mark things as flakky, it means if compared with Allure, Serenity is not as informative.

Environment: Creating the right properties

If tests are being executed on different environments and it is critical to know the exact configuration of the environment being used, it’s possible to display this information in the report.

It can be added by creating environment.properties (or environment.xml) file within allure-results directory:

Adding Categories

  • Product defects (failed tests)
  • Test defects (broken tests)

To create custom defects classification; add categories.json file to the allure-results directory before starting the report generation. 

  1. (mandatory) category name
  2. (optional) list of suitable test statuses. Default [“failed”, “broken”, “passed”, “skipped”, “unknown”]
  3. (optional) regex pattern to check the test error message. Default “.*”
  4. (optional) regex pattern to check stack trace. Default “.*”

In comparison with Serenity, it has no custom categories, only basic ones, broken, failed, skipped, etc. So allure allows customizing workflow and reports much better.

Jira & TestRail integration: Identity what’s wrong 

Now for my favorite part; by configuring properties, we’ll be able to connect our reporting tool with Jira and TestRail

<systemPropertyVariables>

    <allure.link.issue.pattern>https://nuvolar.atlassian.net/browse/{}</allure.link.issue.pattern>

    <allure.link.tms.pattern>https://nuvolar.testrail.io/index.php?/cases/view/{}</allure.link.tms.pattern>

</systemPropertyVariables>

Allure will be replaced with {} placeholders with value specified in annotation:

In reports, the tags @issue and @tmsLink will be displayed as links to Jira and TestRail, they will be clickable, and will navigate to the story or test case which is being notified in the test you’re writing, like this: 

Adding Custom tags

If you’d like to differentiate a test case you’re adding by any tag, you can easily do it.

Simply add it as an annotation as @{tag} where {tag} can be replaced by any word or number and it will be displayed in the report.

Best QA automation tools: Allure’s wide list of advantages

In conclusion, when we decided to try Allure reporting we already knew it contained various options that would make our lives much easier, but we didn’t realize how interesting and valuable it would be to actually integrate and use it.

Now, we receive fancy reports  on a daily basis, which are:

  • Easy readable
  • Contain numerous tags we need to identify problems and cases 
  • Complete with all the necessary information about the environment where tests are being executed
  • Saving us an incredible amount of time (the best part) thanks to the fact we’re able to quickly navigate from Jira to TestRail to identify and specify what goes wrong.

How to Update Your React Native App Live with CodePush (Quick Manual)

Publishing mobile apps to the stores is not an easy task. There are a lot of things to consider, such as 2 different ecosystems, each with different processes. This whole process has to be repeated each time a new feature is released or a batch of issue fixes are ready, which can be a tedious habit. In this article, we’ll show you how to update your react native app with CodePush, guiding you through the implementation of CodePush in a React Native project, as a faster and more efficient way to push these updates directly to your live app.

Written by: Javier de los Reyes, Mobile developer at Nuvolar.


 

CodePush: The best tool to push updates directly to your users

CodePush is a cloud service managed by Microsoft, within the AppCenter, that allows developers to deploy updates to end users’ devices.

It acts as a repository that teams can publish updates to (changes to JS files, for example), and has a client SDK for different technologies to allow querying for those updates.

Thanks to the JS nature of React Native, the bundle generated by Metro (composed of JS files and assets) can be used as a way to synchronize those files between the application and the AppCenter server.

As such, changes in files on the native side, such as MainActivity.java or AppDelegate.m can’t be updated and served this way, and thus require a full rebuild and distribution of the binary.

Setting up AppCenter’s CodePush in 5 minutes

For this example, and to play around with this tool a little bit, you don’t exactly need an application to be fully distributed across the stores; just a standalone release build will be enough.

That means you have to be able to run your app unattached from the React Native CLI and Metro typical execution, to prevent the update code from being synchronized with the launched application at runtime.

We will see more about this later on.

Once you have an account created in AppCenter, we can click on the Add new button and select the Add new app option there, so the form below will appear:

Quick manual on how to update your React Native app with CodePush -  Step 1: adding new app option

We have to create a separate app for each platform. In our case, it will be as follows:

1. React Native iOS app:
a. Release Type → Beta
b. OS → iOS
c. Platform → React Native

2. React Native Android app:
a. Release Type → Beta
b. OS → Android
c. Platform → React Native

You’ll then have something like this:

Quick manual on how to update your React Native app with CodePush -  Step 2: : creating apps for each platform

Now let’s navigate to one of those two apps, and on the left panel that appears, click on the Distribute option and then on the CodePush element displayed under that category.

You’ll see a screen warning that you don’t have any deployments, so let’s create them.

Quick guide on how to update your React Native app with CodePush - Step 3: creating standard deployments

Press on the Create standard deployments button to let the magic happen!

After that, two environments will be available for you in the top right corner. In this case, I will be working with the Staging one.

If you click on the tool on the right, you’ll see a dialog containing one key for each environment. Make sure to have the Staging key at hand (one for iOS and the other for Android) for the React Native configuration later.

Update Your React Native App with CodePush

Now that we have the service configuration ready, it’s time to prepare our React Native project to deploy updates via CodePush.

Let’s assume you already created a React Native project using its CLI, you can check the React Native official docs to guide you through.

First, let’s add the dependency to the project:

NOTE: I will be using yarn during this example, but npm can also be used.

Updating your React Native app Live with CodePush - Step 4

With the library installed, let’s set up CodePush for each platform.

iOS Configuration

Navigate to your AppDelegate.m file and add the CodePush dependency at the top of the file:

NOTE: It’s important to add it before the #ifdef FB_SONARKIT_ENABLED sentence, some people have reported errors otherwise.

Updating your React Native app Live with CodePush  -  Step 5

After that, go to the bottom of the file and replace this line:

Updating your React Native app Live with CodePush  -  Step 6

For the one below:

Updating your React Native app Live with CodePush  -  Step 7

This change configures the app to always use the most recent version of your JS bundle.

At the first launch, it will correspond to the compiled bundle that the app shipped with, but after we push some updates to CodePush, this will tell the app to use the newly generated bundle that contains those updates.

Then we can proceed and install the pods inside the /ios folder.

And last but not least, we need to add the CodePush key to the Info.plist file. The addition should look like this:

Updating your React Native app Live with CodePush  -  Step 8

In this example we are just using the Staging environment, you can refer to Microsoft docs for multi-deployment testing if you need multiple environments for your application.

The configuration for iOS is now ready!

The next step would be releasing a detached standalone version of your app, and you can do so via Xcode. Note that you will need an Apple Developer Account to generate this build.

Once we have a release built up and running on a device, we can trigger the first iOS CodePush deploy if you want to have the same build on AppCenter previous to the first batch of updates.

If not, proceed to make any changes to your project and execute the following command in the terminal:

Updating your React Native app Live with CodePush  -  Step 9

If everything went ok, you will be able to see a table like this:

Quick manual on how to update your React Native App with CodePush  -  Step 10

Now, whenever we close the application and start it again, the content from the last CodePush bundle will be available.

Let’s continue with the Android setup!

Android Configuration

First, let’s navigate to the android/settings.gradle file and add the following:

Updating your React Native app Live with CodePush  -  Step 11

Then, in the android/app/build.gradle, add the line below, just underneath the react.gradle one:

Updating your React Native app Live with CodePush  -  Step 12

After that, inside the MainApplication.java file, make the following changes:

Updating your React Native app Live with CodePush  -  Step 13

And finally, include the deployment key inside the strings.xml file:

Updating your React Native app Live with CodePush  -  Step 14

And with that last step, the configuration for Android is now ready!

We now need the detached standalone build for that, and you can follow the React Native documentation for Google Play Store distribution.

After that, let’s proceed the same way we did for iOS.

Once the application is running on an Android device, make a change and execute the following command on any terminal:

Updating your React Native app Live with CodePush  -  Step 15

After the application is closed and restarted, you will be able to see the last changes deployed with CodePush to the app’s Staging environment.

Additional settings to update your React Native app with CodePush

By default, CodePush will silently update the app, applying the updates the next time the app restarts, so users won’t see any prompt informing about the changes or asking them to confirm the update.

However, this behavior and others can be modified to tweak the experience to your preference.

For example, we could change the checkFrequency value, which would define the moment CodePush fetches the updates (on app resume, on app restart, etc).

Or we could display a dialog to ask the user for permission before the update with the updateDialog option.

There are a lot of options available on the API reference, so definitely check it out and play around with different settings to see what suits you the best.

At Nuvolar, we can help you take full advantage of implementing React Native apps in your company.

Whatever your software needs, our dedicated team of talented professionals will provide you with the perfect product by using the latest tools and best practices the software industry has to offer. You and your users are at the center of our focus.

Contact us and let’s work together!

Improving your Customer Experience: Best B2B Marketing tools to build engagement!

“Know your customer”. An easy to write 3-word sentence. However, having a deep understanding of what consumers think about your brand is definitely not an easy task. Customer Experience is the methodology that provides objective metrics on how consumers feel throughout all the steps that lead to the purchase. It’s the so-called ‘Customer Journey’. In this article, we will explain why this concept is so important and which are the best B2B Marketing tools out there to help you improve your post-sale experience.


 

Applying Customer Experience (or CX) methodologies can for sure bring enormous benefits to any company, especially when it comes to marketing campaigns.

We could almost say that Customer Experience is the Science that evaluates the emotional behavior of the consumer throughout the entire purchasing process. It is the so-called ‘Customer Journey’, and rather than focusing on subjective metrics, it can provide objective and measurable analytics. That way, companies can detect the areas of improvement and rapidly react to correct them.

What is the Customer Journey?

When we talk about the Customer Journey, we are referring to the entire process that a person goes through from the moment a need arises until they make a purchase.

The Customer Journey encompasses the entire customer lifecycle (from the moment a need arises until they make a purchase) and not just what is strictly related to the purchase.

Nowadays, consumers have more means at their disposal to research and inform themselves well before making a final decision. It is now enough to browse certain sites or do a quick Google search.

For this reason, we say that the Customer Journey encompasses the entire customer lifecycle, and not just what is strictly related to the purchase cycle.

As with all journeys, there is an itinerary that can be represented on a map. With the Customer Journey, it is also possible to map the path that leads the customer from the first contact with the company to the final decision or the purchase of a good or service.

And although we quickly think of this action as the end, the map also extends to after-sales.

In this way, Customer Experience Marketing is a less literal way of understanding the term Customer Journey. It encompasses a broad customer lifecycle that brings benefits to any company, even small and medium-sized companies.

Why is Customer Experience Marketing important?

What is the purpose of the Customer Journey and the creation of a Customer Experience map?

There are some implicit advantages to this marketing technique. Here we can list 6:

1. Evaluates the perception of your brand

Knowing which are the moments that a consumer goes through when interacting with your company will allow you to know what he or she thinks of it.

If you want to tip the balance towards your products or services, having this information is essential.

2. Allows you to know your customers behavior

Marketing campaigns are strengthened by applying techniques such as Customer Journey and Customer Experience Mapping.

With the valuable data that emerges, it is much easier to know how to act and in what media to do it so that the company is the chosen one in the purchasing process.

3. Improves the user experience when shopping

Customer Experience Marketing seeks to understand the consumer’s feelings during the purchase.

This analysis moves away from cold metrics and makes it much easier to improve the buying process to make it a success.

4. Customer Experience Marketing: better with the right tools

Implementing the methods we’ve talked about so far is much easier if you have the right tools.

One truly indispensable solution is the Salesforce Marketing Cloud. What are its advantages? Let’s take a look.

5. Marketing Cloud is customer care in any channel

Salesforce provides a platform that adapts to the communication changes in the market.

Thanks to this, any company can quickly start using the new channels and send messages to its audience in a more targeted way.

Through agile cloud operation and mobile applications, it is possible to interact with potential customers from any location and any medium.

6. Personalized communications

The data provided by Salesforce allows you to listen to your customers, partners, and team.

In fact, it makes Customer Experience Marketing easier because it helps to understand what the customer’s needs are.

As a result, marketing campaigns are fully personalized and tailored to the most appropriate customer lifecycle phase.

When a campaign works, Salesforce allows you to reinforce it. If something goes wrong, then the feedback helps the management team rectify it.

Consumer and B2B Marketing tools

Another advantage of Salesforce solutions is that they can be approached in different ways, whether it’s to reach end consumers or for B2B Marketing.

The unification of data and the personalization of channels makes it much easier to evaluate the relationship between the customer and the brand, whether it is a company or an individual.

Some modules of the Salesforce solution:

Salesforce Marketing Cloud has a large number of modules for managing customer relationships. Here are some of them:

  1. Journey Builder: create personalized customer experiences across channels and departments.
  2. Email Studio: create personalized email campaigns.
  3. Customer 360 Audiences: unify, segment, activate, and analyze all customer data.
  4. Mobile Studio: personalize mobile interactions, whether through SMS messages, pop-up notifications, or chat messages.
  5. Social Studio: listen, publish, and interact with customers on all social media channels.
  6. Advertising Studio: direct advertising management with CRM data to engage and retain customers.

Salesforce Marketing Cloud, the perfect Customer Experience solution

In this article, we have clarified concepts related to the Customer Journey and reviewed the main Salesforce Marketing Cloud tools.

The importance of such platforms in the development of B2B Marketing and other fields is clear.

Salesforce is a true ally when it comes to taking Customer Experience Marketing to the next level.

At Nuvolar, we can help you take full advantage of implementing Salesforce Marketing Cloud in your company.

We are a Salesforce Certified Partner with more than 12 years of experience. We have successfully delivered some of the most advanced solutions to the market, in both Classic and Salesforce Lightning interfaces, using Agile methodologies, like SCRUM and Kanban.

Whatever your software need, our dedicated team of talented professionals will deliver you the perfect product by using the latest tools and best practices the software industry has to offer. You and your users are at the center of our focus.

Contact us and let’s work together!

5 Simple ways to boost your business growth with Salesforce!

Productivity & Growth: 5 Simple ways to boost your business growth with Salesforce!

Improving productivity and generating growth is today a key objective for any company, but achieving it is not always so easy without the right tools. Implementing Salesforce CRM solutions and using them across Sales, Marketing, and Customer Service can for sure provide a big boost in your business results. In this article, you will find 5 simple examples of how to boost your business growth with Salesforce tools and take your business productivity to the next level!

In more colloquial terms, we identify productivity as an indicator of how a company uses its resources to produce more profitably.

The importance of productivity in business is high, since being aware of the degree of productivity helps to correct and improve certain procedures.

It can even help eliminate methodologies that are detrimental to the organization’s performance. Measuring productivity is also essential to know if the company’s objectives are being met.

Finally, it helps to evaluate the work of the company’s human resources.

A high-value tool to improve productivity

According to the benefits listed above, it is logical that the management team is not satisfied with just knowing the level of productivity.

They will also want to improve and enhance production, both at the level of processes and employees. It is at this point that certain tools take on special relevance.

Salesforce enables companies to improve productivity in different operational areas. Although this CRM software is focused on sales, it also has tools designed to improve customer service and marketing campaigns.

In short, all of the Salesforce tools have the same goal: take a business to the next level of productivity. How? Here are a few ways:

1. Social Networking with “Salesforce Chatter”

Providing a chat tool for employees to communicate with each other is a good way to improve productivity.

Salesforce includes an application that helps facilitate conversations between employees.

Salesforce Chatter integrates into the main Salesforce platform and turns the CRM into a complete social network. It supports the creation of groups focused on specific customer accounts, campaigns, or specific regions.

Without leaving Chatter, you can create customers or obtain expense reports. This application is capable of updating orders and can reward the most productive employees. It helps everyone share ideas, proposals, and organize internal communications.

Without a doubt, Chatter is perfect for building new bridges between employees, teams, and departments.

When time spent on contacting other team members is reduced, productivity can increase substantially.

2. Great Analytics to track your business growth with Salesforce

If there’s one thing Salesforce does well, it’s providing valuable information, and it does this by generating key reports and metrics.

Through these analytical capabilities, you get data that helps you make better business decisions.

How to boost your business with Salesforce: Analytics
Salesforce can provide you with all kinds of reports and metrics to easily see what’s happening in the company, take actions if needed, and improve your overall decision-making.

Knowing where the company’s best sales are occurring or how long it takes to complete a conversion will allow you to optimize your resources and streamline processes.

Creating reports is not an easy task. Not surprisingly, the time spent on work related to the preparation of reports is high. In addition, many workers would say creating metrics based on results is one of the least enjoyable tasks, primarily because it requires a high level of concentration.

How does Salesforce solve this problem? In a few clicks, users can generate a variety of reports. In this way, market trends or team performance metrics are quickly uncovered.

Salesforce tools take care of everything. Well, everything except drawing conclusions based on the reports.

3. Improving your business Advertising

Being productive while creating marketing campaigns is a challenge faced by many businesses.

Salesforce allows you to create more effective and targeted advertising to potential customers.

This advanced CRM has several tools that help the marketing department dedicate less effort while improving their campaigns.

Using fewer resources, such as time or energy, while obtaining better results is the right path to productivity.

4. Productivity & Mobility go hand in hand

Being tethered to a device is a nuisance, to say the least, as this situation does not facilitate remote work, which is often required in today’s times.

Improving productivity with Salesforce is possible thanks to its mobile solutions. The applications launched by the company are available on Android and iOS devices.

With them, it is possible to consult information, notes, and news about customers from anywhere. In addition, in many cases, it is possible to react in real-time and resolve issues instantly.

Salesforce’s strong presence in the mobile world helps streamline all kinds of processes.

5. Artificial Intelligence

There is a lot of talk about Artificial Intelligence in fields such as consumer electronics. However, this technology is also making advances in business sectors.

Salesforce CRM has implemented AI to help companies in a variety of ways. For example, it allows you to discover more about your customers’ preferences or automate processes related to sales and marketing.

It will even help predict what the next steps are to improve customer relationships.

So, how can you start improving your business growth with Salesforce?

After this review of different Salesforce features, its tools, and its ability to automate processes, there should be no doubt that improving productivity with Salesforce is not only possible but also highly recommended!

At Nuvolar, we can help you take full advantage of this leading CRM for your company.

We are a Salesforce Certified Partner with more than 12 years of experience. We have successfully delivered some of the most advanced solutions to the market, in both Classic and Salesforce Lightning interfaces, using Agile methodologies, like SCRUM and Kanban.

Whatever your software need, our dedicated team of talented professionals will deliver you the perfect product by using the latest tools and best practices the software industry has to offer. You and your users are at the center of our focus.

Contact us and let’s work together!

Salesforce best practices: 6 points every administrator should keep in mind

The use of CRM software by companies is becoming more and more common. One of the most popular is Salesforce, which has become a complete platform for customer management, marketing campaigns, and other vital tasks. But the truth is that, like every tool, the proper functioning of Salesforce depends, in part, on its administrator. That is why following Salesforce admin best practices is crucial today. In the following article, we review some of the most important points that cannot be overlooked by the technician responsible for CRM in a company.


Salesforce administrators must follow a few best practices if they want their work to be a success. In the following sections, we will discuss some tips to achieve this.

Although we will focus on Salesforce best practices, due to its popularity, many of these tips can be applied to similar tools.

 

1. Putting users at the center of everything

A good CRM administrator does not forget that the user is at the center of everything.

For this reason, he or she strives to implement training programs to improve the team’s productivity when using CRM software. In addition, the administrator ensures that employees make proper use of the solutions offered by Salesforce.

Obviously, the administrator needs to engage the users to prevent them from feeling powerless due to the overwhelming number of options the software offers.

So what do you get with a good Salesforce training program? Keeping the entire CRM team trained has both short and long-term benefits. For example, the implementation of the tool will be shorter.

In addition, users will understand Salesforce’s potential better and will contribute new ideas of great value to the administrator.

Ultimately, recognizing that the user is at the center of everything allows companies to use the software more effectively and expedite business growth.

 

2. The importance of quality data

Sales admin best practices inevitably, include maintaining data quality.

For this reason, the administrator must take responsibility for cleaning customer information that is stored. It is also necessary for the administrator to take action to standardize data and avoid inconsistencies.

CRM users are also responsible for maintaining the quality of the information.

The administrator should work closely with employees in the sales team and other departments to help them maintain a clean, quality database.

In this way, users will be able to identify potential input errors and correct them. In turn, other departments that use the data will also benefit.

 

3. Salesforce admin best practices: Never stop learning

Regardless of whether they are certified, good Salesforce administrators should never stop learning. They must always keep up with new techniques and features.

Salesforce updates are not just about bug fixes and small changes. Sometimes, there are significant new features, and the administrator needs to be aware of them.

Why is this so important? An out-of-date administrator may stop your company from staying up to date. As a consequence, sales and process efficiency may suffer. In short, ongoing Salesforce administrator training is critical.

Following Salesforce admin best practices is crucial for the proper functioning of the CRM of the company
A great administrator should check regularly the “health status” of the CRM. Salesforce offers several options to help admins detect errors, apply corrections if needed, and improve the overall performance.

 

4. Beware of neglecting performance

The good performance of software focused on a work environment is closely related to higher productivity.

Salesforce, of course, adheres to this premise. The administrator must ensure that the CRM is kept in good health. This will allow the employees to access it to perform their tasks more quickly.

Salesforce has included in its applications some tools that allow the administrator to improve performance and detect errors.

The Health Check section allows administrators to check the health status of the CRM and correct any faults detected. It is also possible to refer to the documentation provided by Salesforce to optimize the CRM.

 

5. Manage changes wisely, a crucial point in Salesforce admin best practices

The administrator should strive to build a fluid relationship with users. This will help him or her to implement training programs and maintain data quality. This will also help communicate any CRM changes in advance.

Other corporate collaboration channels, such as Slack or Teams, can be used for this purpose.

Another point that the administrator must take into account when implementing changes is to do so in test environments. In this way, before the implementation is final, he or she will be able to identify possible failures and reverse them without consequences.

 

6. Solving incidents in the right way

Administrators are also responsible for any errors experienced by users. In this case, it is essential that administrators know how to deal with the various issues reported.

If they have made an effort to maintain a good relationship with the team, it will be much easier for them to request a screenshot of the error in question.

In the same way, the administrator can check whether the issue is system-related or stems from the employee’s lack of experience. In the latter case, the administrator should take the opportunity to provide appropriate training to avoid similar errors in the future.

Good practices are not incompatible with asking for help. The CRM manager should be aware that Salesforce provides high-quality documentation and a high-quality support team.

Taking advantage of these resources will ensure the early resolution of any errors.

 

Understanding Salesforce admin best practices

As a great Salesforce administrator, you must be clear that his/her work directly influences the company’s performance and results. For this reason, it is very important to implement initiatives such as those mentioned in this article. Administrators that follow Salesforce best practices can have a very positive effect on the company.

At Nuvolar, we have over 12 years of experience developing custom applications on the Salesforce platform and are a Salesforce Certified Partner.

For more information on any Salesforce aspects, please feel free to contact our team of Salesforce experts.

GDPR & Cookies: How Salesforce can help you to easily comply

GDPR & Cookies: How Salesforce can help you to easily comply

GDPR and cookie policy, as well as the treatment of personal data are issues that Salesforce users can solve without complications. This leading CRM platform understands the importance of this legislation and helps its customers to comply with it. Throughout this article, we’ll explain how to set your marketing tools in accordance with European regulations.

Salesforce is the first global developer of cloud solutions to offer tools to protect users’ data. Specifically, Salesforce CRM uses binding corporate standards for data processors that have been approved by the European authorities.

Moreover, Salesforce worked closely with European legislators, EU data protection authorities, and industry associations during the GDPR drafting and approval processes.

As a result, the company undertook a commitment to full compliance with the General Data Protection Regulation in providing services to its customers.

This obligation extends to ensuring that users of its solutions can continue to use them while also complying with legal requirements.

However, this compliance requires close collaboration between Salesforce and its customers. Below we will see how this solution can help companies that use it to proceed according to legal guidelines.

Salesforce features cover key aspects of GDPR & cookie policies

As previously mentioned, Salesforce is committed to complying with GDPR and cookie policies as a cloud processor. Here are some of the Salesforce features and tools that address the most common GDPR requirements:

1. Rights of users in relation to the processing of their data

In 2018, Salesforce introduced the Individual Object into its applications. This provides an easy way to store the simple consent of prospects. It is possible to enable the Individual Object in the “Company Settings and Data Protection & Privacy” menu.

Here, users can find a check box that allows data protection details to be available in the records. In both standard and custom fields, it is possible to register preferences related to:

  • Storage, use, and permission to share data.
  • Monitoring of geolocation data and web activity.
  • Deletion of logs and linked personal data.

In addition, Salesforce ensures that all of its cloud applications are compliant with GDPR requirements and have standard functionality for:

  • Deleting preferences or activities (right to be forgotten, article 17).
  • Exporting data (right of portability, article 20).
  • Managing consent in general and within its limitations.

On the other hand, Salesforce allows users to manage all the overall consent (data restriction, data erasure, data portability, and more).

2. Security & Architecture

Article 24 of the GDPR requires the data controller to implement “appropriate technical and organizational measures in order to ensure and be able to demonstrate that the processing is in compliance…” with the legal instrument in question.

Further on, Article 32.2 indicates that these measures must be appropriate to the level of risk posed by the processing of the information and to protect against unauthorized processing, access, and disclosure; as well as accidental loss, destruction, or alteration.

In this regard, Salesforce has consistent security and privacy programs with the highest standards in the market. The multi-tenant architecture under which Salesforce services operate is designed to classify and restrict access to data based on business needs.

This architecture provides a logical and efficient separation of data from the company’s different customers by means of specific unique identifiers., allowing access privileges via client and user roles.

Likewise, Salesforce implements planned procedures to ensure that data processing is carried out in accordance with the customer’s instructions throughout the entire chain of activities.

3. Safety controls and certifications

Salesforce Services has a set of security policies, controls, and procedures that support data security conditions.

These are described in the platform’s security, privacy, and architecture documentation.

Thanks to this focus on security, Salesforce has been awarded multiple certifications and audit reports Legal transfer of data outside the EU, vital to comply with GDPR and cookies policy

Salesforce provides its users with data processing with strong privacy commitments that few cloud providers can match.

These privacy add-ons include data transfer parameters that ensure the transmission of personal data to Salesforce outside the European Union in a fully legal manner, based on binding rules assumed by the organization or standard contractual clauses.

This is in accordance with Chapter V (Articles 44 to 50) of the Regulation in question.

Let’s take a look at how Salesforce performs such data transfers:

4. Binding Corporate Rules

Binding Corporate Rules (BCRs) are company-level data protection policies approved by European data protection authorities. Such measures facilitate transfers of personal data from the European Economic Area (EEA) to third countries.

The BCRs are based on rigorous privacy principles established by the authorities, with whom intensive consultation is essential for their implementation. Salesforce was the first software developer in the world to obtain approval for binding corporate rules for data processors.

5. Standard Contractual Clauses

SCCs are legal contracts between parties transferring personal data from Europe to third countries. The European Commission approved the Standard Contractual Clauses reflecting detailed obligations related to the protection of personal data.

6. Training Program

It is true that Salesforce provides a number of tools in its applications to support GDPR compliance. However, the involvement of the customer and its partners is essential.

Any organization subject to European regulation can take steps to ensure full compliance. Through its Trailhead resources, Salesforce offers an interesting GDPR compliance readiness program for users of the tool.

Nuvolar customizes Salesforce CRM, ensuring compliance with GDPR and cookie policies

Nuvolar is a technology company specialized in Salesforce CRM customization, on whose platform it has years of experience developing applications.

This in-depth knowledge of the leading brand in Customer Relationship Management solutions allows Nuvolar to adapt Salesforce products to the characteristics and needs of any company, regardless of the industry in which it operates. Having a knowledgeable partner is crucial when verifying and enhancing specific functionalities for GDPR compliance.

Nuvolar’s staff of multidisciplinary professionals is specialized in advising on all the details related to such customization and executing it in the agreed time.

Contact us and get to know more about all our services in the development of customized solutions based on SalesForce!