{"id":345,"date":"2021-03-14T03:41:46","date_gmt":"2021-03-14T03:41:46","guid":{"rendered":"https:\/\/vernonkeenan.com\/?p=345"},"modified":"2021-05-30T14:42:53","modified_gmt":"2021-05-30T21:42:53","slug":"salesforce-sldc-nomenclature","status":"publish","type":"post","link":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/","title":{"rendered":"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\ud83d\udc49 Check Use the <a href=\"https:\/\/origin.salesforcedevops.net\/index.php\/2021\/04\/08\/use-the-salesforce-devops-segmentation-model-for-it-success\/\">Salesforce Devops Segmentation Model for IT Success<\/a> for a revision to the Salesforce devops industry segmentation model. \ud83d\udc48<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>A Definition of Salesforce SDLC for Solution Architects<\/em><\/p>\n\n\n\n<p class=\"has-drop-cap wp-block-paragraph\">The #1 challenge to Salesforce architects, developers and delivery managers today is to produce results faster. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As I write more about the Salesforce Software Developer Lifecycle (SDLC) in order to help advance this engineering practice, I need to set some ground rules on how to classify the terms, software, vendors, and actors that make up the Salesforce SDLC ecosystem. I will wrap up this nomenclature tutorial with some practical guidance on how to build an SDLC implementation.<\/p>\n\n\n\t\t\t\t<div class=\"wp-block-uagb-table-of-contents uagb-toc__align-left uagb-toc__columns-1  uagb-block-cd4a7806      \"\n\t\t\t\t\tdata-scroll= \"1\"\n\t\t\t\t\tdata-offset= \"30\"\n\t\t\t\t\tstyle=\"\"\n\t\t\t\t>\n\t\t\t\t<div class=\"uagb-toc__wrap\">\n\t\t\t\t\t\t<div class=\"uagb-toc__title\">\n\t\t\t\t\t\t\tTable Of Contents\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"uagb-toc__list-wrap \">\n\t\t\t\t\t\t<ol class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#salesforce-sdlc-what-is-that\" class=\"uagb-toc-link__trigger\">Salesforce SDLC \u2013 What Is That?<\/a><ul class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#the-pipeline-model-but-faster\" class=\"uagb-toc-link__trigger\">The Pipeline Model, But Faster<\/a><li class=\"uagb-toc__list\"><li class=\"uagb-toc__list\"><a href=\"#time-to-stack-the-salesforce-sdlc-solution\" class=\"uagb-toc-link__trigger\">Time to Stack the Salesforce SDLC Solution<\/a><\/li><\/ul><\/li><li class=\"uagb-toc__list\"><a href=\"#building-a-salesforce-sldc-solution\" class=\"uagb-toc-link__trigger\">Building a Salesforce SLDC Solution<\/a><li class=\"uagb-toc__list\"><a href=\"#the-devops-journey-continues\" class=\"uagb-toc-link__trigger\">The Devops Journey Continues<\/a><\/ul><\/ol>\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\n\n\n<h2 class=\"wp-block-heading\">Salesforce SDLC \u2013 What Is That?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The term Software Delivery Lifecycle (SDLC) represents the entire practice of software delivery management. If you are reading this, then you are (or wish to be!) an architect for a major software project tasked with fulfilling the functional goals of an enterprise program. That program is likely to have many stakeholders, including customers, investors, enterprise staff, and project staff.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Based on those criteria, an SDLC implementation must encompass the software, tools, systems, people, and best practices used by all the stakeholders of the program to achieve the delivery of the software\u2019s functionality to the enterprise.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The Pipeline Model, But Faster<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">But how do you build an SDLC implementation using devops engineering? The premise of SDLC as a software pipeline is simple. It starts when a developer commits new code to a source code repository. The invoked processes compile, test, secure, and assemble deployment artifacts. Docker containers and Salesforce change set are deployment artifacts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">One cycle of the SDLC process completes when the artifact deploys to a production environment. When running at \u201cdevops speed,\u201d daily deployments to production should be possible. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Most discussions about SDLC involve a version of this flow diagram. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"874\" height=\"152\" src=\"https:\/\/ceres-gw.tnxs.net\/wp-content\/uploads\/2021\/03\/sdlc-process.png\" alt=\"\" class=\"wp-image-348\" srcset=\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-process.png 874w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-process-300x52.png 300w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-process-768x134.png 768w\" sizes=\"auto, (max-width: 874px) 100vw, 874px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The flow diagram is deceptively simple, because an SDLC implementation is usually extraordinarily complex. The flow diagram does not guide an architect towards a solution.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Time to Stack the Salesforce SDLC Solution<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Another way to study SDLC is to group the tools and actors by ascending levels of functionality and descending levels of granularity, like a TCP\/IP or OSI networking architecture stack.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"952\" src=\"https:\/\/vernonkeenan.com\/wp-content\/uploads\/2021\/03\/sdlc-stack-1024x952.png\" alt=\"\" class=\"wp-image-347\" srcset=\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-stack-1024x952.png 1024w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-stack-300x279.png 300w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-stack-768x714.png 768w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-stack-1536x1429.png 1536w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-stack-2048x1905.png 2048w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-stack.png 726w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>\u00a9 2021 by Vernon Keenan<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Here are the explanations of these layers, including examples of tools and actors, starting from the bottom, and going up the stack.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Repositories &amp; Release Management<\/strong> \u2013 This stack component is usually a Git-compatible server that supports branching and pull requests for code review and release management. In the case of Salesforce, the artifact repository is frequently a sandbox or developer org instead of a \u201creal\u201d repository. <a href=\"https:\/\/github.com\/\">GitHub<\/a> is the leading commercial platform for repository management.<\/li><li><strong>Platforms, Services, Testing and Security<\/strong> \u2013 This part of the stack consumes the most resources in the software development and deployment process. It represents all the individual programs and services required to develop, compile, test, secure, stage and deploy code changes. Examples of elements in this layer include desktop systems, shared development servers, script processors, editing environments, static safety checkers (<a href=\"https:\/\/pmd.github.io\/latest\/pmd_rules_apex.html\">Apex PMD<\/a>), security checkers, external API endpoints, vendor solutions, and platform CLIs. The platforms may be any combination of Salesforce, VMware, AWS, GCP and Azure and private data centers.<\/li><li><strong>Orchestration, CI\/CD and Observability Tools<\/strong> \u2013 This is where the SDLC magic happens. It is like how the conductor of an orchestra commands the actions of their symphony. Inbound messages trigger automated processes involving the repositories, platforms, services, and tools. Observability refers to application instrumentation, logging, error tracing, and performance monitoring. <a href=\"https:\/\/www.elastic.co\/\">ELK<\/a>, <a href=\"https:\/\/prometheus.io\/\">Prometheus <\/a>and <a href=\"https:\/\/www.splunk.com\/\">Splunk <\/a>are examples of observability projects. Orchestration generally allocates resources for use by a container. Examples of orchestration software include <a href=\"https:\/\/www.openshift.com\/\">Redhat\/OpenShift<\/a> and <a href=\"https:\/\/kubernetes.io\/\">Google\/Kubernetes<\/a>. <a href=\"https:\/\/www.jenkins.io\/\">Jenkins<\/a>, <a href=\"https:\/\/www.jetbrains.com\/teamcity\/\">TeamCity<\/a>, and <a href=\"https:\/\/circleci.com\/\">CircleCI <\/a>are the leading Continuous Integration and Continuous Delivery (CI\/CD) platforms. <\/li><li><strong>Devops Engineering<\/strong> \u2013 This is the key knowledge and actor layer. To efficiently operate the Orchestration, CI\/CD and Observability layer engineers who are experienced in performing these tasks in open-source and Salesforce environments are required.<\/li><li><strong>Application Management Lifecycle<\/strong> \u2013 This layer performs the stakeholder\u2019s governance and engineering management of the entire software development process. Common AML strategies used include Waterfall, Agile and Scrum. Notably, the most common AML tool is <a href=\"https:\/\/www.atlassian.com\/software\/jira\">Jira\/Confluence<\/a>. Simpler project management tools, such as <a href=\"https:\/\/github.com\/features\/project-management\/\">GitHub Projects and Issues<\/a>, may suffice for some projects.<\/li><li><strong>Project Stakeholders and Engineering Management <\/strong>\u2013 The top layer represents all the actors and stakeholders in the enterprise who need the software project to work.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Building a Salesforce SLDC Solution<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Now for the interesting part. How does one construct an SDLC pipeline? That is a question with a thousand possible answers. Allow me to simplify it by taking a high-level look at how all the pieces could be networked together.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here is a sample solution. Using maximum security precautions, all the project development resources are hosted within the enterprise security perimeter. All public-facing production services are hosted by Salesforce or a public cloud. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"735\" src=\"https:\/\/vernonkeenan.com\/wp-content\/uploads\/2021\/03\/sdlc-network-1024x735.png\" alt=\"\" class=\"wp-image-346\" srcset=\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-network-1024x735.png 1024w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-network-300x215.png 300w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-network-768x551.png 768w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-network-1536x1102.png 1536w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-network-2048x1470.png 2048w, https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/sdlc-network.png 941w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>\u00a9 2021 by Vernon Keenan<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">An Internet Gateway governs traffic between the enterprise network, the Internet, Salesforce, and the public clouds. Deployment artifacts will include Salesforce change sets and Docker containers. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Let us examine the remaining parts one-by-one:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Enterprise Data Center<\/strong> \u2013 The enterprise data center must offer ephemeral compute resources to devops engineering and host any access points into legacy systems.<\/li><li><strong>Developer Work Environment<\/strong> \u2013 Modern developer workstations are built around <a href=\"https:\/\/code.visualstudio.com\/\">Microsoft Visual Studio Code<\/a> (VS Code). Working on Salesforce or the public clouds also requires installing and configuring various command line interfaces (CLIs), leading to complicated workstation setups. One way to solve this problem to use <a href=\"https:\/\/code.visualstudio.com\/docs\/remote\/ssh\">VS Code Remote SSH<\/a> or <a href=\"https:\/\/code.visualstudio.com\/docs\/remote\/containers\">Containers<\/a>. This enables developers to use a pre-configured and powerful backend service to augment their work.<\/li><li><strong>Enterprise Devops Resources <\/strong>\u2013 Devops services may be purchased as SaaS services on the Internet or hosted internally using secure enterprise resources.<ul><li><strong>Source Code &amp; Release Management Repository <\/strong>\u2013 If you choose to not use public GitHub for your source code repository and code release management there are many choices for self-hosted options, including <a href=\"https:\/\/github.com\/enterprise\">GitHub Enterprise<\/a>.<\/li><\/ul><ul><li><strong>Deployment Artifact Server<\/strong> \u2013 This is your private Docker repository. For Salesforce managing deployment artifacts is trickier and falls into the realm of metadata backup and management. Private Docker repository services are available on AWS, GCP and Azure.<\/li><\/ul><ul><li><strong>Command Server <\/strong>\u2013 This is the server that hosts your CI\/CD command and control processes. In the course of its duties, the command server directs other devops servers, Salesforce, or the public clouds to initiate actions. For example, the command server receives a message from the source code repository that a new commit has occurred. Next the CI\/CD system allocates compute resources for a runner process, which in turn runs scripts to test, compile, build and save a new deployment artifact. That artifact is ultimately deployed to Salesforce or the public clouds by the control server. A SaaS product that performs the control server function is <a href=\"https:\/\/www.jetbrains.com\/teamcity\/\">TeamCity from JetBrains<\/a>.<\/li><\/ul><ul><li><strong>Observability Server <\/strong>\u2013 Devops engineering depends on knowing what is going on in the networked systems, and to have a good alerting system in place when things go wrong. Observability is well-developed skill in traditional devops, using open-source tools like the ELK stack or Prometheus.<\/li><\/ul><ul><li><strong>AML Server <\/strong>\u2013 The resources used to implement project management and application lifecycle management software, such as Jira\/Confluent.<\/li><\/ul><\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">The Devops Journey Continues<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">I hope you found some Salesforce SDLC insights in my stack-diagram and networking approach to analyzing the software delivery lifecycle. There is plenty more to explain, so please stay tuned. If you have any comments on improvements on my SDLC nomenclature, I would love to hear from you!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Looking for more Salesforce Devops articles? Check out <a href=\"https:\/\/vernonkeenan.com\/index.php\/2021\/03\/10\/salesforce-devops-in-early-2021\/\">Salesforce Devops in Early 2021<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>An SDLC implementation for you must encompass the software, tools, systems, people, and best practices used by all the stakeholders of the program to achieve the delivery of the software\u2019s functionality to the enterprise.<\/p>\n","protected":false},"author":1,"featured_media":452,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","footnotes":""},"categories":[3],"tags":[26,36,51,54],"post_series":[],"class_list":["post-345","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-industry-analysis","tag-devops-engineering","tag-industry-analysis","tag-salesforce","tag-salesforce-sdlc","entry","has-media"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v22.2 (Yoast SEO v22.2) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Salesforce SDLC Nomenclature: Adopting the Ways of The Devops - SalesforceDevops.net<\/title>\n<meta name=\"description\" content=\"Confused by Salesforce SDLC? Learn how to build a software delivery pipeline using a new perspective inspired by devops engineering.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops - SalesforceDevops.net\" \/>\n<meta property=\"og:description\" content=\"Confused by Salesforce SDLC? Learn how to build a software delivery pipeline using a new perspective inspired by devops engineering.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\" \/>\n<meta property=\"og:site_name\" content=\"SalesforceDevops.net\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/salesforcedevopsnet\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-14T02:41:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-30T21:42:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"650\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Vernon Keenan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@salesforcedevop\" \/>\n<meta name=\"twitter:site\" content=\"@salesforcedevop\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vernon Keenan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\"},\"author\":{\"name\":\"Vernon Keenan\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04\"},\"headline\":\"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops\",\"datePublished\":\"2021-03-14T02:41:46+00:00\",\"dateModified\":\"2021-05-30T21:42:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\"},\"wordCount\":1274,\"commentCount\":6,\"publisher\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\"},\"image\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg\",\"keywords\":[\"Devops Engineering\",\"Industry Analysis\",\"Salesforce\",\"Salesforce SDLC\"],\"articleSection\":[\"Industry Analysis\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#respond\"]}],\"copyrightYear\":\"2021\",\"copyrightHolder\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\",\"url\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\",\"name\":\"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops - SalesforceDevops.net\",\"isPartOf\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg\",\"datePublished\":\"2021-03-14T02:41:46+00:00\",\"dateModified\":\"2021-05-30T21:42:53+00:00\",\"description\":\"Confused by Salesforce SDLC? Learn how to build a software delivery pipeline using a new perspective inspired by devops engineering.\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage\",\"url\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg\",\"contentUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg\",\"width\":1200,\"height\":650,\"caption\":\"Diagram of communication\"},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#website\",\"url\":\"https:\/\/cms.salesforcedevops.net\/\",\"name\":\"SalesforceDevops.net\",\"description\":\"Elevating Salesforce Devops with Insights and Innovation\",\"publisher\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cms.salesforcedevops.net\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#organization\",\"name\":\"SalesforceDevops.net\",\"url\":\"https:\/\/cms.salesforcedevops.net\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg\",\"contentUrl\":\"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg\",\"width\":325,\"height\":101,\"caption\":\"SalesforceDevops.net\"},\"image\":{\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/salesforcedevopsnet\",\"https:\/\/twitter.com\/salesforcedevop\",\"https:\/\/www.linkedin.com\/in\/vernonkeenan\",\"https:\/\/www.youtube.com\/channel\/UCOgOn9rD5gyXSOmV7-Q0n7g\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04\",\"name\":\"Vernon Keenan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg\",\"contentUrl\":\"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg\",\"caption\":\"Vernon Keenan\"},\"description\":\"Vernon Keenan (LinkedIn) works as a senior information technology industry consultant based in Oakland, California. He earned his B.Sc. in Biomedical Engineering at Northwestern University where he programmed a PDP-8 with punched paper tape. In his 34-year-long career he has been a teacher, SPSS programmer, database administrator, clinical researcher, technology journalist, product marketing manager, market researcher, management consultant, and industry analyst. Most recently he is a telecom operator, cloud architect, Go devops engineer and Salesforce Developer\/Architect. For inquiries about Salesforce strategy briefings or solution architect work please contact Vern directly at +1-510-679-1900 or vern@vernonkeenan.com.\",\"sameAs\":[\"https:\/\/ceres-gw.tnxs.net\",\"https:\/\/linkedin.com\/in\/vernonkeenan\",\"https:\/\/twitter.com\/salesforcedevop\"],\"url\":\"https:\/\/cms.salesforcedevops.net\/index.php\/author\/vern\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops - SalesforceDevops.net","description":"Confused by Salesforce SDLC? Learn how to build a software delivery pipeline using a new perspective inspired by devops engineering.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/","og_locale":"en_US","og_type":"article","og_title":"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops - SalesforceDevops.net","og_description":"Confused by Salesforce SDLC? Learn how to build a software delivery pipeline using a new perspective inspired by devops engineering.","og_url":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/","og_site_name":"SalesforceDevops.net","article_publisher":"https:\/\/www.facebook.com\/salesforcedevopsnet","article_published_time":"2021-03-14T02:41:46+00:00","article_modified_time":"2021-05-30T21:42:53+00:00","og_image":[{"width":1200,"height":650,"url":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg","type":"image\/jpeg"}],"author":"Vernon Keenan","twitter_card":"summary_large_image","twitter_creator":"@salesforcedevop","twitter_site":"@salesforcedevop","twitter_misc":{"Written by":"Vernon Keenan","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#article","isPartOf":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/"},"author":{"name":"Vernon Keenan","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04"},"headline":"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops","datePublished":"2021-03-14T02:41:46+00:00","dateModified":"2021-05-30T21:42:53+00:00","mainEntityOfPage":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/"},"wordCount":1274,"commentCount":6,"publisher":{"@id":"https:\/\/cms.salesforcedevops.net\/#organization"},"image":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage"},"thumbnailUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg","keywords":["Devops Engineering","Industry Analysis","Salesforce","Salesforce SDLC"],"articleSection":["Industry Analysis"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#respond"]}],"copyrightYear":"2021","copyrightHolder":{"@id":"https:\/\/cms.salesforcedevops.net\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/","url":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/","name":"Salesforce SDLC Nomenclature: Adopting the Ways of The Devops - SalesforceDevops.net","isPartOf":{"@id":"https:\/\/cms.salesforcedevops.net\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage"},"image":{"@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage"},"thumbnailUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg","datePublished":"2021-03-14T02:41:46+00:00","dateModified":"2021-05-30T21:42:53+00:00","description":"Confused by Salesforce SDLC? Learn how to build a software delivery pipeline using a new perspective inspired by devops engineering.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cms.salesforcedevops.net\/index.php\/2021\/03\/14\/salesforce-sldc-nomenclature\/#primaryimage","url":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg","contentUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg","width":1200,"height":650,"caption":"Diagram of communication"},{"@type":"WebSite","@id":"https:\/\/cms.salesforcedevops.net\/#website","url":"https:\/\/cms.salesforcedevops.net\/","name":"SalesforceDevops.net","description":"Elevating Salesforce Devops with Insights and Innovation","publisher":{"@id":"https:\/\/cms.salesforcedevops.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cms.salesforcedevops.net\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cms.salesforcedevops.net\/#organization","name":"SalesforceDevops.net","url":"https:\/\/cms.salesforcedevops.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/","url":"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg","contentUrl":"https:\/\/origin.salesforcedevops.net\/wp-content\/uploads\/2021\/04\/logo-horiz-325.jpg","width":325,"height":101,"caption":"SalesforceDevops.net"},"image":{"@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/salesforcedevopsnet","https:\/\/twitter.com\/salesforcedevop","https:\/\/www.linkedin.com\/in\/vernonkeenan","https:\/\/www.youtube.com\/channel\/UCOgOn9rD5gyXSOmV7-Q0n7g"]},{"@type":"Person","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/ac094823465a60be4f47d7321ed7ce04","name":"Vernon Keenan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cms.salesforcedevops.net\/#\/schema\/person\/image\/","url":"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg","contentUrl":"https:\/\/cms.salesforcedevops.net\/wp-content\/wphb-cache\/gravatar\/09b\/09bd30f3ca2e049fbd8b9313ef5a41aex96.jpg","caption":"Vernon Keenan"},"description":"Vernon Keenan (LinkedIn) works as a senior information technology industry consultant based in Oakland, California. He earned his B.Sc. in Biomedical Engineering at Northwestern University where he programmed a PDP-8 with punched paper tape. In his 34-year-long career he has been a teacher, SPSS programmer, database administrator, clinical researcher, technology journalist, product marketing manager, market researcher, management consultant, and industry analyst. Most recently he is a telecom operator, cloud architect, Go devops engineer and Salesforce Developer\/Architect. For inquiries about Salesforce strategy briefings or solution architect work please contact Vern directly at +1-510-679-1900 or vern@vernonkeenan.com.","sameAs":["https:\/\/ceres-gw.tnxs.net","https:\/\/linkedin.com\/in\/vernonkeenan","https:\/\/twitter.com\/salesforcedevop"],"url":"https:\/\/cms.salesforcedevops.net\/index.php\/author\/vern\/"}]}},"uagb_featured_image_src":{"full":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false],"thumbnail":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development-150x150.jpg",150,150,true],"medium":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development-300x163.jpg",300,163,true],"medium_large":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development-768x416.jpg",768,416,true],"large":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development-1024x555.jpg",980,531,true],"1536x1536":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false],"2048x2048":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false],"lightbox":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false],"search_results":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development-125x125.jpg",125,125,true],"blog_entry":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development-750x450.jpg",750,450,true],"blog_post":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",750,406,false],"blog_post_full":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false],"blog_related":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false],"gallery":["https:\/\/cms.salesforcedevops.net\/wp-content\/uploads\/2021\/03\/Enterprise-App-Development.jpg",1200,650,false]},"uagb_author_info":{"display_name":"Vernon Keenan","author_link":"https:\/\/cms.salesforcedevops.net\/index.php\/author\/vern\/"},"uagb_comment_info":6,"uagb_excerpt":"An SDLC implementation for you must encompass the software, tools, systems, people, and best practices used by all the stakeholders of the program to achieve the delivery of the software\u2019s functionality to the enterprise.","_links":{"self":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts\/345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/comments?post=345"}],"version-history":[{"count":3,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts\/345\/revisions"}],"predecessor-version":[{"id":2753,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/posts\/345\/revisions\/2753"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/media\/452"}],"wp:attachment":[{"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/media?parent=345"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/categories?post=345"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/tags?post=345"},{"taxonomy":"post_series","embeddable":true,"href":"https:\/\/cms.salesforcedevops.net\/index.php\/wp-json\/wp\/v2\/post_series?post=345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}