One of the major issues that Salesforce users identify is the need for a single solution that will take their developers through the entire lifecycle. To make this easier, the company rolled out Salesforce DX, which provides Salesforce teams with an integrated tooling designed for end-to-end life cycle management.
Salesforce DX is a revolutionary platform that enables modern development practice with the following three key features:
- Scratch Orgs – Lightweight source-driven development environments that can be created with ease where changes can be validated, tested and integrated into the mainline quickly with CI platforms such as AutoRABIT.
- Unlocked Packages – Customers and partners have seamless distribution and delivery of apps with unlocked packages; this is a paradigm shift towards upgrades rather than battling with metadata deployment failures.
- CLI – Salesforce DX comes with an integrated CLI with support for scratch org creation, metadata conversion and migration, as well as data migration.
The real success that Salesforce DX can drive goes beyond CLI and scratch orgs. A team will be successful with Salesforce DX if they are able to seamlessly implement the three key elements outlined above. The first is that they need the ability to restructure their complex metadata into apps so they can manage shared metadata and dependencies. That may sound obvious, but it’s often overlooked. Users also must be able to setup a unified development and delivery process driven from ALM systems such as JIRA. Finally, they need to be in line with continuous delivery guidelines so that any complete user story can effortlessly go through the deployment chain to production.
AutoRABIT is an end-to-end CI platform designed specifically for Salesforce. It empowers Salesforce teams to be successful with DX with several out-of-the-box features that Salesforce users have long desired.
The first feature is modularization. Salesforce architects can now restructure and componentize their source code into applications with the modularization feature in AutoRABIT DX Integration. This includes a few factors, all of which play critical roles in long-term success. The first – and maybe the most important – is the ability to fetch and select metadata from DevHubs that form your application. These must include dependent metadata and the ability to create automated test data sets based on the objects selected in the module along with parent/child relationships. In addition, it should be able to validate the module for successful deployment, publish the module as an unlocked package, and add dependent unlocked package information and automatically include them in deployments. As a final consideration, they also need to push the source code in SFDX-compatible format into GIT along with sample data set and JSON configuration files.
A second critical component is Scratch Org Management, which allows Salesforce development teams to create contextual scratch orgs that add more power to conventional Salesforce scratch orgs. The Scratch Org Management feature in AutoRABIT has a number of capabilities that drive organizational success.
The first is DevHub management. Users can register and maintain DevHubs in AutoRABIT as well as create, maintain and delete Scratch orgs directly from AutoRABIT. They can also create contextual scratch orgs that let them set their own features and preferences, load the unlocked packages of base apps at the time of creation, and load intelligent sample data sets into scratch orgs.
Another key feature is user story management. To ensure holistic Application Lifecycle Management (ALM), users can rely on AutoRABIT to connect the dots by creating a user story in ALM, a Scratch Org in Salesforce, or a feature branch in GIT. AutoRABIT lets users assign and create a Scratch Org for a user story in any ALM (Jira/VersionOne/TFS) or in GIT for a user story and check validations, review and approve details of commits and make sure that all relevant user story information is updated back to the ALM.
Continuous delivery is critical for organizations that need the capability to promote a completed requirement anytime from development to production and ensure quality and compliance parameters. With AutoRABIT, a developer can create a scratch org with all the required metadata and data pre-requisites. They can also validate the changes done in scratch orgs, complete the review and approval process for changes, push approved changes to a GIT branch, and raise a pull request. Release Manager allows users to merge the approved user stories into a release line and validate them; and automated functional tests can be run post-deployment for further quality assurance. Most importantly, the user story will be ready for production deployment.
A comprehensive CI Server with a check in merge deploy framework along full support for SFDX ensures that Salesforce can help users experience continuous delivery for their applications. And for organizations that rely on Salesforce to drive their market success, there’s nothing more important than that.
Niranjan Gattupalli, is Senior Director of Customer Service at AutoRABIT. Follow him on Twitter at @tweet_niranjan
In the 1990’s evaluating a build vs. buy approach for a line of business system (such as HR or Finance) was sometimes considered a worthwhile use of time. But nowadays, with feature rich cloud-based systems, any executive considering building such systems internally would likely be asked “why aren’t we focusing our efforts on building customer facing applications rather than building non-differentiating operational systems”. Today, there are many cloud-based DevOps platforms on the market. So, for the rapid accelerating field of Salesforce based DevOps, whether it be for Apex or DX based development, decision makers need to consider a unique set, of often un-expected requirements, when considering build vs. buy.
Since Salesforce development is different from traditional development, building a DevOps system requires an additional layer of complexity on top of any internally built (or an extended Jenkins) platform. This is because unlike traditional software development, Salesforce development is about managing changing object configurations, keeping sandboxes in synch, avoiding conflicts & efficiently releasing deployments without breaking Salesforce’s org structures. The level of effort to build these capabilities into a home-grown DevOps platform can catch many IT teams by surprise.
Arun Purushothaman, Salesforce development team leader at Land O’Lakes, went through a build vs. buy evaluation after they initially tried, but failed, to build a DevOps platform based on Jenkins. One of their key requirements, per Arun, was “to be able to keep sandboxes refreshed and be able to roll-back versions instantly”. In addition, Land O’Lakes needed to preserve parent child relationships when data-loading. He points out that Land O’Lakes teams kept investing in building their own platform, but deployments kept failing because “we weren’t able to address the ability to continuously synch sandboxes and we aren’t able to pre-validate developers code submissions”. Land O’Lakes eventually scrapped their admittedly cobbled together platform build efforts and proceed with a “purpose-built DevOps platform for Salesforce development.
Land O’Lakes experience indicates the high cost and complexity of trying to build Salesforce metadata awareness & highly synchronized capability into a home-grown DevOps platform. As more purpose-built Salesforce development support is built into a platform, the cost to build and maintain it goes up even higher.
A DevOps platform to support Salesforce’s org structure complexities must not only have all the foundational competencies of DevOps capabilities (found in hundreds of DevOps vendors’ platforms in the market today), it must also be able to:
- Parse & interpret Salesforce data structures
- Spot only the delta changes within large Salesforce file structures & deploy incrementally
- Identify destructive changes & provide an early warning system before org structures break
- Monitor & gate every step in the DevOps process to ensure only the healthiest of codes is promoted to production
- Keep Salesforce sandboxes in synch so a large development team can be aware of the most recent (delta based) changes
- Automate otherwise manual steps (that are not Salesforce’s metadata API) during pre/post deployment phases
- Be able to roll back destructive (to the Salesforce org structure) changes seamlessly
- Proactively identify object dependencies in order to preserve parent-child data structure when loading data
Not only would such a build approach have to deal with the complexity of supporting Salesforce development (listed above), any one enterprise would also need to establish an ongoing relationship with Salesforce’s own product management team. They would have to monitor and keep up with changes to Salesforce’s platform roadmap and then perform major releases to their internal home-grown DevOps platform, each time Salesforce changes their platform.
Needless to say, the time spent by an internal IT team’s building, monitoring and maintaining their own hand-built DevOps platform is time not spent building customer facing and business differentiating applications in support of their business needs.
Any organization considering a build vs. buy decision must face this time allocation trade-off.
Salesforce provided its Force.com platform-as-a-service (PaaS) so its customers IT teams could spend less time on building their service delivery stack (hardware, software, etc.) and more of their time focusing on developing business solutions. The same trade-off holds true for building vs. buying a Salesforce DevOps platform.
John Wooden was coach of UCLA Bruins and won 10 NCAA championships in a 12-year period achieving a record 88 straight wins. If you were filling out your March Madness brackets during the Wooden era, UCLA would be the easy pick to win it all. While his basketball coaching skills are legendary, he is equally recognized as a life coach and has dozens of quotes that are often repeated in any team situation.
Here are some words of wisdom from the “Wizard of Westwood” for your DevOps team:
“Be quick, but don’t hurry”
DevOps was designed to support an agile world and the accelerated pace of business. While DevOps speed is desirable, the process cannot be hurried and without discipline, or quality suffers, and the outcomes become unpredictable. Wooden would stress perfecting fundamentals to get it right. Working as a team with a collaborative set of tools that facilitates the rapid delivery of code into an integrated build with automated testing and deployment can reduce your time to deploy by more than 10 times that of a traditional process, all while producing quality results. Mastering these fundamental processes of DevOps will allow you to be quick with quality, and not hurried and haphazard.
“Failure to prepare is preparing to fail”
Setting up your DevOps processes based on evolving best practices and levels of DevOps maturity is critical to the success of your program. Job one for any company embarking on DevOps is a readiness assessment. It will identify the needs of the organization for team development, process definition, establishing performance metrics and continuous delivery tools and services. You don’t have to do much research to discover DevOps is a cultural change as much as a technology approach. Preparing your organization for this important shift to deliver on business agility before you buy technology means avoiding failure.
“If you’re not making mistakes, then you’re not doing anything. I’m positive that a doer makes mistakes.”
While preparing to avoid failure is sage advice, it does not mean you will not make mistakes. The only way to avoid mistakes is to not transition to continuous delivery. But then your business will likely suffer as others move to the new pace of delivery. Making mistakes is part of putting the process in place and letting your developers be responsible for error free commits, learn from the process, and re-engage each and every time to get comfortable with the pace and expectations. Hundreds of companies have transitioned to DevOps and Continuous Delivery, not one made the journey without their fair share of mistakes.
“It’s the little details that are vital. Little things make big things happen.”
DevOps is not a big bang transformation, but rather a series of small steps that transitions your org from two independent operations into a collaborative, continuous process with more speed and quality than ever imagined. There are several small steps in the process than can be rolled out and perfected before moving to the next and then the next. Know where you are on the maturity model and take deliberate steps to move up the scale. Big things will happen.
There are many more words of wisdom from Wooden – take a look.
Good luck with your journey to become a model DevOps organization. The competition is getting more intense every year and your company is counting on you to make this happen. One final quote from John Wooden: “It isn’t what you do, but how you do it.” Do it well.
Dean Alms is VP of Product and Strategy at AutoRABIT. Follow him on LinkedIn.
The term DevOps has been around for over a decade. Most accounts say that Belgian Patrick Debois coined the phrase around 2007, as a way to ease his frustration around the role he had as a project manager and agile consultant with the Belgian government to help with data center migrations. In particular, his role in readiness and certification, required him to combine activities and relationships between applications development teams and operations teams – DevOps. So what is DevOps, in today’s terminology, and why should you care?
DevOps Is Not a Process
There’s a lot of confusion around what DevOps really is. It’s not a process. It’s not a technology. And it’s not a standard. It’s really more of a movement, or cultural shift that focuses on rapid information technology service deliver through the adoption of agile, lean practices using a system-oriented approach. Why DevOps is different, is because it places emphasis on people with the goal of improving collaboration between operations and development teams. DevOps implementations typically utilize technology, and in particular, automation tools that can leverage a programmable, rapidly changing infrastructure, and this is done from a life cycle point of view.
Amazon Web Services defines DevOps as “the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes.”
Developers typically try to push our new software faster and faster. That’s typically why they are hired. Operations, on the other hand, tend to be the voice or reason, trying to slow the pace somewhat, so that proper safeguards can be put into place to maintain system stability.
Why DevOps Matters
In the DevOps approach, the siloes between development and operations teams are torn down. Engineers work side-by-side with Operations, Quality Assurance and Security teams throughout the entire application lifecycle. What this means is that solutions in an organization’s tech stack can be developed more quickly and more reliably, and can help the organization’s overall velocity increase. The key benefits most companies see from a DevOps approach include:
- Speed of Innovation- companies can innovate faster to help their customers stay on top by driving business results.
- Rapid Delivery – as companies innovate faster, new features and bug fixes can be rolled out continuously to better satisfy the needs of their customers and gain a competitive advantage.
- Reliability – through utilizing continuous integration and delivery to test changes provides assurance that functionality is maintained. Monitoring and logging practices help keep everyone informed in real-time.
- Improved Collaboration – because of the close-knit nature of a culture of DevOps, teams work better together, take more ownership in their work and help themselves more accountable. This reduces inefficiencies as responsibilities and workflows are shared between developer and operational teams.
All of this leads to a more secure and scalable methodology that can be utilized across industries. Software moves from simply supporting business initiatives, to becoming an integral part of every business unit, thus driving more efficiency and profitability for the entire company.
To learn more about if adopting a DevOps methodology is right for you, watch Salesforce DevOps: Which Path Should You Take – Build or Buy, This webinar reply is hosted by Salesforce MVP, Eric Dreshfield, and features AutoRABIT customer, Arun Manjila Purushothaman, DevOps Automation Engineer, Land O’Lakes.
A Gated Merge is a criteria-based approval process for pull requests that provide an early-warning system for Salesforce merges. Using this, merging is as easy as writing a “Hello World” script. This article will help you get the most of out of this feature, which is only available in AutoRABIT.
How Do Gated Merges Work?
What are Pull Requests? – Developers initialize a pull request to propose and collaborate on changes that need to be integrated into a forward branch.
Gated Merges are used to enforce conditions on the pull requests based on a set criteria for individual branches or branch patterns.
The enforced conditions include:
- Deployment Validation – Performs a mock deployment on your QA, Integration, UAT or Production orgs to determine if the merge will break during deployment
- Code Review –
- Apex Class/ Trigger Monitoring – Preempts your Apex Test Class failures and code coverage results before merging your code
- PMD – Finds common programming flaws such as unnecessary object creation, empty catch blocks, unused variables, etc.
- Diff Report – Generates a line-by-line Diff Report of “as if” and “to be” changes.
The Flowchart below depicts the process flow of Gated Merges
After meeting the pre-set parameters, the approver/reviewer can choose to accept or reject the pull request.
Consider this example, which will probably sound familiar to you:
You’re a Salesforce Administrator or a Release Manager overseeing a mid-size development team building an Expense Management application for your business. The team uses two source code streams: Integration and Release. Without Gated Merge, each time a developer merges a change into the Integration or Release branch, you won’t know whether the code worked or failed until the day of your Production deployment. A failed deployment at this stage is likely to put your business commitments in jeopardy, not to mention subject you to a whole lot of frustration.
With Gated Merge, a Salesforce-specific review process is initiated whenever a developer raises a Pull request. The review process does a mock deployment on your Integration Salesforce org, confirming the change to be a “Good” or “Bad” change. Apart from the mock deployment, you also get to see a PMD report and a line-level Diff report on the changed Apex Trigger. This guarantees a quick, fun-filled Production deployment.
Why are Gated Merges Important for Your Salesforce Development?
Version Control Systems such as GIT and SVN are used to manage and version files (obviously). For Salesforce, which uses XML file structures storing configuration and meta information, the smallest unit is an element which typically spans multiple lines. The version control systems do not have Salesforce source code that comprehend such XML files and this results in XML file corruption (malformed XML). This shortcoming can lead to invalid XML files or missing nodes causing Salesforce specific code errors.
The image below shows the XML file of a Profile
Gated Merges provide a mechanism to preempt XML file corruption, code mis-match, deployment failures in Pull requests. Enforcing conditions to validate merges reduces the risk and cost involved in deployments by allowing you to spot and fix defects earlier in the process.
Ready to try Gated Merges? Click here to get started.
Catch up on the previous post on another cool new feature of AutoRABIT, “Delta Deployments powered by a lean-packaging model”
No matter what industry you work in, hiring a good software engineer has always been an expensive proposition – to say nothing of building an entire engineering team. That’s why development became an industry on its own. After all, it’s much more efficient for organisations to bring in a third-party expert than it is to build their own technological infrastructures from scratch. For the last 20 years, the norm has been for companies in verticals ranging from logistics to finance to outsource their development.
Today, the situation has turned around on its head, and more and more organisations in traditional industries have hired their own internal teams of engineers to work closely with third-party software development companies. As a result, these companies are gradually morphing into software companies themselves. Businesses in the automobile, manufacturing, and telecom industries are now actually referring to themselves as technology companies – which wouldn’t have happened even a decade ago. This is giving companies the confidence to develop the technologies they need in-house rather than hiring outside specialists to build it for them.
THE BUILD-VERSUS-BUY CONUNDRUM IN SOFTWARE
The build vs. buy conundrum is not a new one, but in the context of software development there are certain perspectives to be taken into consideration before making this decision. Here are some of the factors that need to be evaluated before deciding to go with an in-house development model:
The resources at your disposal play an important in the build vs. buy decision. The two most important resources that you should account for are money and people. If you do decide to build, you will need to train (or expand) a team of engineers with different skill sets at different stages of the project. When it comes to buying or licensing, the vendor will take care of these requirements, but you will most likely need to hire new talent throughout the development process.
If you are using specific features to differentiate yourself from your competitors, building your own technology is often a better option because the spread of development knowledge is within your control. However, if the software helps you do routine tasks, increase efficiency, or maximise effectiveness, you could be better off buying off-the-shelf solutions and then customising them as required. It is important to note that seeking competitiveness should not be confused with wanting control of the project. Whether you build or buy, most of the project will require similar project management skills.
Even if you have monetary and people resources and are building technology for competitive advantage, if you do not have time on your side buying is usually the way to go. Admittedly, this is a tricky blanket statement to make because there are so many variables at play and not two projects are the same. Decisions made under the pressure of time can go either way, but if the choice is between making no decision and making a risky decision, the latter is preferred. On the other hand, if you have the luxury of time, you may find that it is a better option to build technologies internally. An example of this would be a feature which is not really hot in the market but will become a default feature in the near future.
If your requirement is something completely out of the box and needs to be developed for the first time, building is an obvious choice. However, be mindful of the times we live in: if you are thinking of enhancing a product feature or looking to just doing something differently, chances are that someone, somewhere else, is working on it – or already has done so. Do your research and then make a decision.
About the Author: Raj Gaurav Bhandari is the Digital Marketing Manager and Salesforce evangelist forTechforce Services, a leading Salesforce Consulting company based in Sydney, Australia.
Techforce Services is a Sydney based Salesforce Consulting company. We are a group of seasoned and Certified Salesforce Professionals having multi-functional, multi-industry experience.
We will work with your business to help achieve your goals, deliver your project demands, provide ongoing support, run a health check or review your existing Salesforce implementation and be with you throughout your Salesforce journey.
Modern Salesforce development environments are sophisticated with huge amounts of metadata, which can make deployments heavy and complex. Many organizations spend a great deal of time and effort to deploy an application within the governor limits and meet their goal of ensuring quality and stability in the application. However, the increase in deployment complexity combined with higher expectations of quality and agility, demand a more streamlined approach to Salesforce deployments.
Lean is a proven strategy in the software industry used to make application development faster, saving both time and money. When our team applied the principles of Lean to Salesforce deployments, ‘Delta Deployments’ were born. Powered by a Lean metadata packaging model, Delta Deployments are fast, simple and fail-proof (which also means you don’t have to wait until Friday night to do your deployments).
After all, you deserve a ‘Happy’ weekend, not a ‘Deployment’ weekend!
Why Delta Deployments are Important on the Salesforce Platform
As Salesforce runs in a multi-tenancy environment, it imposes governor limits to avoid monopolizing shared resources. When deploying, users are restricted to a .zip file with a maximum size of 39MB. The file size limit is applied to all tools and types of data, including Changesets, Metadata API, Force.com IDE, and ANT Migration tools. Most third-party tools available today are subject to the Salesforce governor limits as they are built using the Salesforce Metadata API.
Small and medium-sized organizations can work within these limitations, as they have fewer metadata components to migrate. However, deploying the metadata for a large enterprise can be an uphill battle. Bundling and compressing the files into multiple deployment packages is time consuming, inconvenient , and prone to failure due to file exceeding the 39MB limit.
Large file sizes occur due to the fact that the Salesforce Metadata API pulls and packages the complete component file, even if only a single line of code is modified. This is a bit like plucking the entire branch when trying to pick a single apple.
With Lean packaging, the changes (delta) of the metadata components are retrieved by comparing the Salesforce orgs and Version Control System. These changes are packaged into a .zip file and are deployed to the target Salesforce org. Delta Deployments allow you to move only the code that is absolutely necessary to update the application.
Let’s see how Delta deployments look like.
Delta Deployments in Action
The image below shows how a change to the field of an object named “Country Code” is migrated using Delta deployments.
The inline help text of a field is changed to “Provide your shipping address.” The Object’s XML file that is shown in the figure contains various other fields and object definition files like action overrides and custom settings, etc., along with the modified field. Using Delta deployments only the node of the field that is modified(color-coded in Blue) will be migrated.
Here’s another example in which changes are made in 3 versions of an application
An object is added in the first version of the application and two Custom Fields, namely Custom Field 1 and Custom Field 2 are added to it in the consecutive versions.
Packaging only the Deltas from Version 1 to Version 3 will migrate the components highlighted in Blue in the image.
To interpret, The Object is retrieved when deploying Version 1. Deploying Deltas from Version 2 means only the Custom Field 1 is retrieved to amend for the Object that is already in the target environment. Similarly, the deployment of Version 3 includes just the Custom Field 2.
AutoRABIT for Delta Deployments
AutoRABIT is a comprehensive DevOps Solutions for Salesforce application development. It is the only continuous delivery platform for Salesforce with end-to-end automation and Delta Deployments. With AutoRABIT, you can be sure that the right code will be delivered to the right place at the right time.
Find out how you can try AutoRABIT For FREE. Your next Salesforce deployment is on us.
There’s nothing more frustrating than having a trouble right when you felt everything was going great. This happens very often not just in life but also when you’re in the middle of an SDLC and especially if you’re a Developer or worse, a release manager waiting for a miracle release date. And we all naturally want to fix that problem, whatever’s annoying us. That is why we know it’s right investment in having a dedicated customer support where we get to know all those things which you want us to fix, right away!
But wait, this update will not solve all those problems that you’d been planning to write to Santa this Christmas. But yes, you’ll notice very soon that you’ve been sighing less and breathing more!
Some of those that we ourselves were glad working on were…
Feels like free fall from Niagara: Now your workflow doesn’t get buffered; hands down, better support for Salesforce API 44.0
We’ve put you in a Black Vault: If systems had missile technology and had enough sense to detect waves from your code, even then it won’t be able to encrypt it, that strong we made the security this time for DataloaderPro.
Cloak of invisibility: Whatever it was that you did not want to exist, IP Ranges and User Permissions from Profiles OR AutoRABITExtId from version control; we cloaked it all for you
Loved when you were pampered? Rest assured you’d never get spoilt over this with extensive support for Vlocity builds. Even dynamically packaged Vlocity components. There you go, Happy builds, automated!
Though what’s completely new is we’ve achieved Webhook support for Bitbucket Stash, but what we’re proud of is that the Ez-commits are made so much easier with more search options, commit history and logger improvements.
Well, it doesn’t end here. Our cats have been on an expedition to leave no corner undiscovered and fixed a couple of more bugs for you. Look at the Release notes and tell us how the house looks after they’ve left with no litters.
3 Take aways:
- Deploying delta changes between revision numbers is not possible elsewhere
- Developing without AutoRABIT is not possible for a peace-lover like me
- Going through another interesting blog is not possible without a Coffee break now
We do understand. There’s no fun in visiting a place like Paris and attending Demos. We wouldn’t feel a least bit excited. But then when we’ve known what a Demo could mean for making that coarse-changing decision for your company, we had second thoughts.
How does French Touch Dreamin help Salesforce users:
Right from its debut in 2016, French Touch Dreamin is a big hit within the Salesforce community. The passion at the event is infectious, as the event organizers brought speakers, MVP’s and other leaders in salesforce ecosystem, from various country communities to suffice the content-rich agenda of the event. You may have learnt on some tips and tricks to scale your Salesforce development or just move around and network with the Salesforce Ohana.
French Touch Dreamin is more than an event, it is an experience.
What you should look for in a Product for an informed decision:
- Is the Product having its presence in Global Events regularly?
- Is the Product active on Forums for problem solving?
- Is the Product in the market since a couple of years?
- Are the representatives empathetic towards your queries?
- Does the Product have regular updates as per the market demands?
- Does the Product have the passion to evolve into the bigger markets? (participation in these events are a sign of this)
- How is its Social media presence?
- What’s the work culture of the team behind the Product?
It’s hard to part ways after a long association
Did you consider all of the above to give you great insights into how your partnership would be for the next couple of years. Cause it’s not just you who’s gonna part ways with the Solution Provider if things don’t work your way, it involves teams across departments to switch between Solution Providers meaning – new teams, new ways and new engagements from the scratch.
- Did you get a chance to speak to our team and collect your swag at the event? If not, just leave a comment,we will connect back with you to help.
Chatbots are creating quite a buzz these days and can be found on websites and in apps across all industries. So, what exactly is a Chatbot? A Chatbot is a program which allows users to communicate with a computer or an application as if they are conversing with another person. Chatbots do this by combining Artificial Intelligence (AI) with Natural Language Processing (NLP) to process simple requests and respond accordingly.
A great example of a chatbot in action is the Skype Bot. Whenever a user logs into Skype, Microsoft gives an option to interact with the Skype Bot. Based on the user’s interactions, Skype Bot pops up things of their interest like games, curated news, music, and much more.
Chatbots – Making inroads into every industry
The adoption of Chatbots is working its way into every industry for the significant benefits they offer.
- Customer care 24/7
- Personalized customer experience
- Reduction in costs by automating repetitive tasks and with less staff
- Quick response and resolution to customers’ requests
- Improve customer satisfaction and loyalty
“Twenty-five percent of customer service and support operations will integrate virtual customer assistant (VCA) or chatbot technology across engagement channels by 2020, up from less than two percent in 2017.” - Gartner, Inc. Click To Tweet
Possible applications of Chatbot technology are limitless. Businesses across all sectors are investing in chatbot technology. A few examples are:
In the retail sector: In order to offer an enhanced customer experience, Nordstrom, a retail fashion store, launched its first-ever Chatbot during the 2016 holiday gift-giving season.
How does the Nordstrom bot work? The user is asked basic, but leading questions. For example, if a user is shopping for a gift, few questions like – buying for whom, for what age, etc. – are asked; and based on the replies, the bot will come up with gift ideas. It makes user’s shopping experience personalized and successful without the need for human interaction.
In the field of Medicine: A Russian technology company launched an Alzheimer’s Disease Chatbot project. The goal of this project is to create an open source Chatbot companion for senior and Alzheimer’s patients to help them feel less lonely.
The Chatbot poses specific questions to the people who have Alzheimer’s or dementia. It reacts to the replies and speaks on various interesting topics in response. Interactions of the patients are examined and passed on to medical professionals to help diagnose the severity of the disease.
In the food/cooking industry: ‘Heston bot’ is created by Heston Blumenthal – a chef whose restaurants have been awarded Michelin stars. This bot uses the similar principles of speech/text recognition and suggests recipes the customers may like.
Chatbots Vs. Virtual Assistants
Don’t confuse virtual assistants with Chatbots! Though both are supported by AI & machine learning, and growing at a fast pace, they are very different from each other in terms of their functionalities and the purposes they serve. Amazon’s Alexa, Apple’s Siri, and the Google Assistant are not Chatbots, but Virtual Assistants. While Chatbots are useful for specific purposes like customer support, automated shopping, and customer engagement, the scope of Virtual Assistants is much broader. They allow more sophisticated applications for business.
Although Chatbots and Virtual Assistants have different purposes, it’s important to know that most Chatbots can be accessed via Virtual Assistants, messaging apps, or individual apps and websites of organizations.
Role of Chatbots in Application Development and DevOps Implementation
Harnessing the power of Chatbots in application development and software projects will let enterprises increase the speed at which they bring value to their customers. In certain situations, a business may benefit more by leveraging a chatbot than by spending time and effort in building an app. A readymade platform can be utilized to develop a chatbot rather than focusing on coding for UI/UX, graphics, front-end/back-end systems as in the development of an application. Also, once a chatbot is developed, it is easy-to-use and does not require loading or installation. Additionally, it can be used across operating systems without porting. The latest chatbots can also merge different areas of customer interaction – like search, filter, contact, etc.
So, how will Chatbot technology be used in the world of DevOps? Chatbots may just be the next big advancement needed to allow for effective real-time collaboration and communication between development and operations. Users will be able to monitor performance, orchestrate workflows, and receive a predictive & prescriptive analysis of monitoring data; all using natural language commands. The use of Chatbots can have a positive impact on app development, ultimately reducing development time and costs significantly. Imagine how easy development will be when DevOps tools integrate with Virtual Assistants… “Google, build and test the latest branch…”!