{"id":47960,"date":"2022-06-14T11:27:51","date_gmt":"2022-06-14T15:27:51","guid":{"rendered":"https:\/\/sdtimes.com\/?p=47960"},"modified":"2022-08-24T12:17:23","modified_gmt":"2022-08-24T16:17:23","slug":"continuous-test-data-management-for-microservices-part-2-key-steps","status":"publish","type":"post","link":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/","title":{"rendered":"Continuous test data management for microservices, Part 2: Key steps"},"content":{"rendered":"<p><em>This is part 2 in a series on applying test data management (TDM) to microservices. Part 1 can be found <a href=\"https:\/\/sdtimes.com\/microservices\/continuous-test-data-management-for-microservices\/\">here<\/a>.\u00a0<\/em><\/p>\n<hr \/>\n<p><span style=\"font-weight: 400;\">The continuous TDM process for microservices applications is similar to that for general continuous TDM, but tailored to the nuances of the architecture. The key differences are as follows:\u00a0<\/span><\/p>\n<h5><strong>Step 1(b): Agile Design<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">Rigorous change impact analysis during this step is key to reducing the testing (and the TDM) burden for microservices applications\u2014especially in the upper layers of the test pyramid and the CD stages of the lifecycle. There are various ways to do this, following are a few highlights:\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">(a)<\/span><span style=\"font-weight: 400;\"> \u00a0 <\/span><span style=\"font-weight: 400;\">Code-change-based impact analysis (also known as a white-box, inside-out approach). Through this approach, we identify which services and transactions are affected by specific code changes in implementing backlog requirements. We then focus testing and TDM efforts on those services and transactions affected. This approach is supported by tools such as <\/span><a href=\"https:\/\/techdocs.broadcom.com\/us\/en\/ca-enterprise-software\/devops\/continuous-delivery-director-saas\/1-0\/testing\/test-advisor.html\"><span style=\"font-weight: 400;\">Broadcom TestAdvisor<\/span><\/a><span style=\"font-weight: 400;\"> and <\/span><a href=\"https:\/\/docs.microsoft.com\/en-us\/azure\/devops\/pipelines\/test\/test-impact-analysis?view=azure-devops\"><span style=\"font-weight: 400;\">Microsoft Test Impact Analysis<\/span><\/a><span style=\"font-weight: 400;\">. This approach is more useful for white and gray box testing, specifically unit and component testing.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">(b)<\/span><span style=\"font-weight: 400;\">\u00a0 <\/span><span style=\"font-weight: 400;\">Model flow-based impact analysis (also known as a black-box, outside-in approach). Here we do change impact analysis using flows in model-based testing. This analysis helps to highlight key end-to-end or system integration scenarios that need to be tested, and can also be traced down to individual components and source code. This approach is supported by such tools as <\/span><a href=\"https:\/\/www.broadcom.com\/products\/software\/continuous-testing\/agile-requirements-designer\"><span style=\"font-weight: 400;\">Broadcom Agile Requirements Designer<\/span><\/a><span style=\"font-weight: 400;\">, and is more beneficial for testing in the upper layers of the test pyramid.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">I recommend a combination of both approaches to ensure sufficient test coverage, while minimizing the number of tests in a microservices context. Based on the change impact set, we prepare test data for the tests discussed in the previous section.\u00a0<\/span><\/p>\n<h5><strong>Step 2(a): Agile Parallel Development\u00a0<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">As discussed in the previous section, as part of development, a component developer must also define and implement these APIs:<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">\u00a0<\/span><span style=\"font-weight: 400;\">APIs that allow us to set test data values in the component data store. These are sometimes referred to as mutator APIs.\u00a0<\/span><\/li>\n<li><span style=\"font-weight: 400;\">APIs that allow us to extract test data values, for example, from instances of components in production. These are also known as accessor APIs.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Developers should use the white-box change impact testing technique discussed above to focus their unit and component testing efforts.\u00a0<\/span><\/p>\n<h5><strong>Step 2(b): Agile Parallel Testing<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">This is an important stage in which testers and test data engineers design, or potentially generate or refresh, the test data for test scenarios that have been impacted by changes and that will be run in subsequent stages of the CI\/CD lifecycle. This assessment is based on the backlog items under development. Testers use the TDM approaches described above for cross-service system testing and end-to-end testing.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In addition, the test data will need to be packaged, for example, in containers or using virtual data copies. This approach can ease and speed provisioning into the appropriate test environment, along with test scripts and other artifacts.\u00a0\u00a0<\/span><\/p>\n<h5><strong>Step 3: Build<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">In this step, we typically run automated build verification tests and component regression tests using the test data generated in the previous step.\u00a0<\/span><\/p>\n<h5><strong>Step 4: Testing in the CD Lifecycle Stages\u00a0<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">The focus in these stages is to run tests in the upper layers of the test pyramid using test data created during step 2(b).\u00a0 The key in these stages is to minimize the elapsed time TDM activities require. This is an important consideration: The time required to create, provision, or deploy test data must not exceed the time it takes to deploy the application in each stage.\u00a0\u00a0<\/span><\/p>\n<h5><strong>How do you get started with continuous TDM for microservices?<\/strong><\/h5>\n<p><span style=\"font-weight: 400;\">Continuous TDM is meant to be practiced in conjunction with continuous testing. Various resources offer insights into <\/span><a href=\"https:\/\/docs.broadcom.com\/doc\/continuous-testing-final-frontier\"><span style=\"font-weight: 400;\">evolving to continuous testing<\/span><\/a><span style=\"font-weight: 400;\">. If you are already practicing continuous testing with microservices, and want to move to continuous TDM, proceed as follows:\u00a0\u00a0\u00a0<\/span><\/p>\n<ul>\n<li><span style=\"font-weight: 400;\">For new functionality, follow the TDM approach I have described.\u00a0<\/span><\/li>\n<li><span style=\"font-weight: 400;\">For existing software, you may choose to focus continuous TDM efforts on the most problematic or change-prone application components, since those are the ones you need to test most often. It would help to model the tests related to those components, since you can derive the benefits of combining TDM with model-based testing. While focusing on TDM for these components, aggressively virtualize dependencies on other legacy components, which can lighten your overall TDM burden. In addition, developers must provide APIs to update and access the test data for their components.\u00a0<\/span><\/li>\n<li><span style=\"font-weight: 400;\">For other components that do not change as often, you need to test less often. As described above, virtualize these components while testing others that need testing. In this way, teams can address TDM needs as part of technical debt remediation for these components.\u00a0<\/span><\/li>\n<\/ul>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>This is part 2 in a series on applying test data management (TDM) to microservices. Part 1 can be found here.\u00a0 The continuous TDM process for microservices applications is similar to that for general continuous TDM, but tailored to the nuances of the architecture. The key differences are as follows:\u00a0 Step 1(b): Agile Design Rigorous  &hellip; <a class=\"read-more\" href=\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\">continue reading<\/a><!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":979,"featured_media":47961,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"cybocfi_hide_featured_image":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[1,11110],"tags":[1235,5246,16187,10960],"coauthors":[15470],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v23.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Continuous test data management for microservices, Part 2: Key steps - SD Times<\/title>\n<meta name=\"description\" content=\"This article is the second part of a series examining how to do continuous Test Data Management (TDM) for microservices.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Continuous test data management for microservices, Part 2: Key steps - SD Times\" \/>\n<meta property=\"og:description\" content=\"This article is the second part of a series examining how to do continuous Test Data Management (TDM) for microservices.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\" \/>\n<meta property=\"og:site_name\" content=\"SD Times\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SDTimesD2\" \/>\n<meta property=\"article:published_time\" content=\"2022-06-14T15:27:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-08-24T16:17:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"531\" \/>\n\t<meta property=\"og:image:height\" content=\"707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Shamim Ahmed\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@sdtimes\" \/>\n<meta name=\"twitter:site\" content=\"@sdtimes\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Shamim Ahmed\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\"},\"author\":{\"name\":\"Shamim Ahmed\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/528aee2962df9978d432f25b60887087\"},\"headline\":\"Continuous test data management for microservices, Part 2: Key steps\",\"datePublished\":\"2022-06-14T15:27:51+00:00\",\"dateModified\":\"2022-08-24T16:17:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\"},\"wordCount\":793,\"publisher\":{\"@id\":\"https:\/\/sdtimes.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg\",\"keywords\":[\"Broadcom\",\"microservices\",\"tdm\",\"Test Data Management\"],\"articleSection\":[\"Latest News\",\"Sponsored\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\",\"url\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\",\"name\":\"Continuous test data management for microservices, Part 2: Key steps - SD Times\",\"isPartOf\":{\"@id\":\"https:\/\/sdtimes.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg\",\"datePublished\":\"2022-06-14T15:27:51+00:00\",\"dateModified\":\"2022-08-24T16:17:23+00:00\",\"description\":\"This article is the second part of a series examining how to do continuous Test Data Management (TDM) for microservices.\",\"breadcrumb\":{\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage\",\"url\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg\",\"contentUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg\",\"width\":531,\"height\":707},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/sdtimes.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Continuous test data management for microservices, Part 2: Key steps\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/sdtimes.com\/#website\",\"url\":\"https:\/\/sdtimes.com\/\",\"name\":\"SD Times\",\"description\":\"Software Development News\",\"publisher\":{\"@id\":\"https:\/\/sdtimes.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/sdtimes.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/sdtimes.com\/#organization\",\"name\":\"SD Times\",\"url\":\"https:\/\/sdtimes.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png\",\"contentUrl\":\"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png\",\"width\":225,\"height\":90,\"caption\":\"SD Times\"},\"image\":{\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SDTimesD2\",\"https:\/\/x.com\/sdtimes\",\"https:\/\/www.linkedin.com\/company\/sdtimes\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/528aee2962df9978d432f25b60887087\",\"name\":\"Shamim Ahmed\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/sdtimes.com\/#\/schema\/person\/image\/bef2ed7d56ef22565d20df67c031c6c6\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/b0dd5f498197109bae58c1519e8dc6a4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/b0dd5f498197109bae58c1519e8dc6a4?s=96&d=mm&r=g\",\"caption\":\"Shamim Ahmed\"},\"description\":\"Shamim Ahmed is Broadcom CTO for DevOps Solution Engineering\",\"url\":\"https:\/\/sdtimes.com\/author\/shamimahmed\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Continuous test data management for microservices, Part 2: Key steps - SD Times","description":"This article is the second part of a series examining how to do continuous Test Data Management (TDM) for microservices.","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:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/","og_locale":"en_US","og_type":"article","og_title":"Continuous test data management for microservices, Part 2: Key steps - SD Times","og_description":"This article is the second part of a series examining how to do continuous Test Data Management (TDM) for microservices.","og_url":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/","og_site_name":"SD Times","article_publisher":"https:\/\/www.facebook.com\/SDTimesD2","article_published_time":"2022-06-14T15:27:51+00:00","article_modified_time":"2022-08-24T16:17:23+00:00","og_image":[{"width":531,"height":707,"url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg","type":"image\/jpeg"}],"author":"Shamim Ahmed","twitter_card":"summary_large_image","twitter_creator":"@sdtimes","twitter_site":"@sdtimes","twitter_misc":{"Written by":"Shamim Ahmed","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#article","isPartOf":{"@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/"},"author":{"name":"Shamim Ahmed","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/528aee2962df9978d432f25b60887087"},"headline":"Continuous test data management for microservices, Part 2: Key steps","datePublished":"2022-06-14T15:27:51+00:00","dateModified":"2022-08-24T16:17:23+00:00","mainEntityOfPage":{"@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/"},"wordCount":793,"publisher":{"@id":"https:\/\/sdtimes.com\/#organization"},"image":{"@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage"},"thumbnailUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg","keywords":["Broadcom","microservices","tdm","Test Data Management"],"articleSection":["Latest News","Sponsored"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/","url":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/","name":"Continuous test data management for microservices, Part 2: Key steps - SD Times","isPartOf":{"@id":"https:\/\/sdtimes.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage"},"image":{"@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage"},"thumbnailUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg","datePublished":"2022-06-14T15:27:51+00:00","dateModified":"2022-08-24T16:17:23+00:00","description":"This article is the second part of a series examining how to do continuous Test Data Management (TDM) for microservices.","breadcrumb":{"@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#primaryimage","url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg","contentUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2022\/06\/1722f9ef3e36849c2781c2ca6a79419e.jpg","width":531,"height":707},{"@type":"BreadcrumbList","@id":"https:\/\/sdtimes.com\/test\/continuous-test-data-management-for-microservices-part-2-key-steps\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/sdtimes.com\/"},{"@type":"ListItem","position":2,"name":"Continuous test data management for microservices, Part 2: Key steps"}]},{"@type":"WebSite","@id":"https:\/\/sdtimes.com\/#website","url":"https:\/\/sdtimes.com\/","name":"SD Times","description":"Software Development News","publisher":{"@id":"https:\/\/sdtimes.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/sdtimes.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/sdtimes.com\/#organization","name":"SD Times","url":"https:\/\/sdtimes.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/","url":"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png","contentUrl":"https:\/\/sdtimes.com\/wp-content\/uploads\/2014\/05\/deafaultlogo.png","width":225,"height":90,"caption":"SD Times"},"image":{"@id":"https:\/\/sdtimes.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SDTimesD2","https:\/\/x.com\/sdtimes","https:\/\/www.linkedin.com\/company\/sdtimes\/"]},{"@type":"Person","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/528aee2962df9978d432f25b60887087","name":"Shamim Ahmed","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/sdtimes.com\/#\/schema\/person\/image\/bef2ed7d56ef22565d20df67c031c6c6","url":"https:\/\/secure.gravatar.com\/avatar\/b0dd5f498197109bae58c1519e8dc6a4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b0dd5f498197109bae58c1519e8dc6a4?s=96&d=mm&r=g","caption":"Shamim Ahmed"},"description":"Shamim Ahmed is Broadcom CTO for DevOps Solution Engineering","url":"https:\/\/sdtimes.com\/author\/shamimahmed\/"}]}},"_links":{"self":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/47960"}],"collection":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/users\/979"}],"replies":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/comments?post=47960"}],"version-history":[{"count":2,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/47960\/revisions"}],"predecessor-version":[{"id":47963,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/posts\/47960\/revisions\/47963"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/media\/47961"}],"wp:attachment":[{"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/media?parent=47960"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/categories?post=47960"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/tags?post=47960"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/sdtimes.com\/wp-json\/wp\/v2\/coauthors?post=47960"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}