{"id":3342,"date":"2013-06-19T08:30:59","date_gmt":"2013-06-19T15:30:59","guid":{"rendered":"https:\/\/www.jamasoftware.com\/?p=3342"},"modified":"2023-01-12T16:56:54","modified_gmt":"2023-01-13T00:56:54","slug":"how-detailed-should-requirements-be-part-2","status":"publish","type":"post","link":"https:\/\/www.jamasoftware.com\/legacy\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/","title":{"rendered":"How Detailed Should Requirements Be? (Part 2)"},"content":{"rendered":"<p>In the first article in this series, I pointed out that there\u2019s no easy answer to the question of how detailed the requirements need to be. Instead, I can present a thought process the business analyst can use to assess the appropriate level of detail for each case. As I describe in this article, which is adapted from my book <i>More about Software Requirements<\/i>, several conditions make it appropriate to leave the requirements descriptions at a higher level of abstraction. Recognize that these are broad guidelines. The BA should perform a risk-benefit analysis to balance the potential downside of omitting important information against the effort required to include it.<\/p>\n<h2>Customers are extensively involved<\/h2>\n<p>If you have extensive, ongoing, and intimate involvement by the right customer representatives, you can get away with less written requirements documentation. This is the premise behind the on-site customer in agile development methodologies. In such situations, developers need just enough written information about requirements to estimate their size and get a general idea of the customer\u2019s intent. The details will come later from conversations with customer representatives and subject matter experts.<\/p>\n<p>This approach works only when developers have ready access to customers who have the time, knowledge, and authority to make decisions on behalf of the communities they represent. Even if the customers can provide just-in-time details, it\u2019s doubtful that anyone will record those details. This makes it harder to reach a shared expectation among the various stakeholders. Your project might lack a written reference to ensure that the product is adequately tested and that no requirements were inadvertently overlooked during implementation. Of course, you <i>can<\/i> capture the requirements details as the developers obtain them, thereby growing the requirements specification\u2014or, as in some agile approaches, the suite of acceptance tests\u2014incrementally.<\/p>\n<h2>Developers have considerable domain experience<\/h2>\n<p>Developers with extensive application domain knowledge can sometimes supply a lot of the necessary requirements details. Watch out for developers who are overconfident, certain that they understand what users need without asking. Ideally, knowledgeable representatives of specific user classes will work with the BA to develop requirements.<\/p>\n<p>There\u2019s always a risk of a disconnect when using surrogates who will not actually use the product being developed. Technically sophisticated developers might not be representative of the typical end user. Even developers with a lot of domain experience sometimes aren\u2019t aware of the current needs in a changing business environment. If their knowledge is obsolete, they can\u2019t do a good job of supplying the missing requirements.<\/p>\n<p>If developers are filling in a lot of the requirements details, it\u2019s a good idea to have them run their ideas past the BA and some customer representatives before implementing them. A simple review provides a check to make sure the fleshing out is being done appropriately.<\/p>\n<h2>Precedents are available<\/h2>\n<p>When precedents are available to use as a model, you don\u2019t need to include all the requirements details in the specification. The developers can turn to the existing product or documentation as a reference for details that aren\u2019t provided in the current specification. This might be the case when reengineering a legacy application, for example.<\/p>\n<p>Watch out, though. Most software contains extensive functionality that is not immediately visible to someone who is simply looking at the user interface or a high-level product description. Some examples are exception handlers, business rule enforcement, and relationships between data in fields on a form or dialog box. You don\u2019t want every developer to have to reverse-engineer the existing product to figure out just what it does, possibly arriving at different conclusions.<\/p>\n<h2>A package solution will be used<\/h2>\n<p>Projects that plan to acquire a commercial package solution for all or part of the functionality don\u2019t need highly detailed requirements. There\u2019s no point in writing comprehensive functional requirements, because the package vendor has already done that (or so you hope). However, it\u2019s rare that a package will fully meet your needs, so you still must specify the requirements for package extensions, integrations, and customizations.<\/p>\n<p>Use cases are an effective requirements elicitation technique for package-solution projects. The package needs to let your users accomplish specific tasks (use cases), although the details of how this works will vary from one package to another (functional requirements and user interface design). User acceptance tests based on use cases are also helpful for evaluating packages. Knowledge of the pertinent business rules is critical. The package you select must enforce the necessary business rules and let you change or customize them as necessary. Defining quality attribute requirements will also help the stakeholders choose the right package.<\/p>\n<h2>Sample Levels of Requirements Detail<\/h2>\n<p>Let\u2019s return to the home alarm system example I mentioned in the first article in this series. Following is an illustration of how you might write some functional requirements for disarming the triggered system. The first requirement (our original one) is written at a high level:<\/p>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"99\">Disarm.Alarm<\/td>\n<td valign=\"top\" width=\"540\">When the alarm system is armed and a sensor is triggered, the user shall be able to enter a numeric passcode to disarm the system.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>A developer who receives this requirement likely will have many questions. The table below shows how the BA could flesh out this high-level requirement with additional specific functional requirements, if the BA judges that this is a good idea. (These requirements are written in a traditional hierarchical format, expressed using a compact notation to give each child requirement a unique identifier, such as Disarm.Alarm.Timeout.Siren. The parent requirement, Disarm.Alarm, is shown as a title or heading, rather than as a discrete requirement statement.)<\/p>\n<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td colspan=\"2\" valign=\"top\" width=\"638\">Disarm.Alarm: Disarming the triggered system with a user-entered passcode<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .Sound<\/td>\n<td valign=\"top\" width=\"535\">When a sensor is triggered after the system is armed, the alarm system shall emit an intermittent warning tone. The alarm system shall sound the tone until either the system is disarmed or the preset warning duration has passed.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .Interval<\/td>\n<td valign=\"top\" width=\"535\">The system shall evaluate an entered passcode 1.0 second following user entry of the last digit. Digits entered within less than 1.0 second of the previous digit\u2019s entry are appended to the sequence of passcode digits the user has already entered.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .OK<\/td>\n<td valign=\"top\" width=\"535\">If the entered passcode is correct, the system shall stop emitting the warning tone and shall set itself to the disarmed state.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .NoGood<\/td>\n<td valign=\"top\" width=\"535\">If the entered passcode is incorrect, the system shall continue to emit the warning tone, continue counting down the warning duration, and permit the user to reenter the passcode.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 .Timeout<\/td>\n<td valign=\"top\" width=\"535\">If the warning duration is reached before the user enters a valid passcode, the system shall take the following actions:<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 .Siren<\/td>\n<td valign=\"top\" width=\"535\">Trigger the alarm system\u2019s siren.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 .Dial<\/td>\n<td valign=\"top\" width=\"535\">Dial the alarm system monitoring company.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"103\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0 .Log<\/td>\n<td valign=\"top\" width=\"535\">Record the alarm incident in the internal system event log.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Note that these requirements include the names of some data objects, like \u201cwarning duration\u201d and \u201cpasscode.\u201d I recommend that you collect the meaning and attributes of such objects in a <i>data dictionary<\/i>, a separate document (or file) or an appendix to the requirements spec. The data elements and structures that pertain to the requirements are defined and hierarchically decomposed in the data dictionary.<\/p>\n<p>Even though these functional requirements answer many of the questions posed earlier in this chapter about the alarm system\u2019s behavior, they\u2019re still missing some important information. What is the cycle frequency of the \u201cintermittent warning tone\u201d described in requirement Disarm.Alarm.Sound? How loud is it? What does it sound like? I\u2019ve never seen a requirement that didn\u2019t have opportunities for improvement. Whether to specify these details in the requirements or leave them to the developer\u2019s judgment is the BA\u2019s choice.<\/p>\n<p>Also read\u00a0<a title=\"How Detailed Should Requirements Be? Part 1\" href=\"https:\/\/www.jamasoftware.com\/blog\/how-detailed-should-requirements-be-part-1\">How Detailed Should Requirements Be? Part 1<\/a><\/p>\n<p>Also read\u00a0<a title=\"How Detailed Should Requirements Be? Part 3\" href=\"https:\/\/www.jamasoftware.com\/blog\/how-detailed-should-requirements-be-part-3\">How Detailed Should Requirements Be? Part 3<\/a><\/p>\n<p><em>Jama Software has partnered with Karl Wiegers to share licensed content from his books and articles on our web site via a series of blog posts, whitepapers and webinars.\u00a0 Karl Wiegers is an independent consultant and not an employee of Jama. \u00a0He can be reached at\u00a0<a href=\"http:\/\/www.processimpact.com\">http:\/\/www.processimpact.com<\/a>.\u00a0 Enjoy these free\u00a0<a href=\"https:\/\/www.jamasoftware.com\/resources\/\">requirements management resources<\/a>.<\/em><\/p>\n<input class=\"fooboxshare_post_id\" type=\"hidden\" value=\"3342\"\/>","protected":false},"excerpt":{"rendered":"<p>In the first article in this series, I pointed out that there\u2019s no easy answer to the question of how detailed the requirements need to be. Instead, I can present a thought process the business analyst can use to assess the appropriate level of detail for each case. As I describe in this article, which [&hellip;]<\/p>\n","protected":false},"author":68,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[50],"tags":[49],"industry":[],"class_list":["post-3342","post","type-post","status-publish","format-standard","hentry","category-requirements-management","tag-best-practices"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.1 (Yoast SEO v28.1) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How Detailed Should Requirements Be? (Part 2) - Jama Software<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How Detailed Should Requirements Be? (Part 2)\" \/>\n<meta property=\"og:description\" content=\"In the first article in this series, I pointed out that there\u2019s no easy answer to the question of how detailed the requirements need to be. Instead, I can present a thought process the business analyst can use to assess the appropriate level of detail for each case. As I describe in this article, which [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/\" \/>\n<meta property=\"og:site_name\" content=\"Jama Software\" \/>\n<meta property=\"article:published_time\" content=\"2013-06-19T15:30:59+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-13T00:56:54+00:00\" \/>\n<meta name=\"author\" content=\"Karl Wiegers\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Karl Wiegers\" \/>\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\":\"Article\",\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/\"},\"author\":{\"name\":\"Karl Wiegers\",\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/#\\\/schema\\\/person\\\/e6a00f0ad439a5e1865476b36481aa47\"},\"headline\":\"How Detailed Should Requirements Be? (Part 2)\",\"datePublished\":\"2013-06-19T15:30:59+00:00\",\"dateModified\":\"2023-01-13T00:56:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/\"},\"wordCount\":1355,\"keywords\":[\"best practices\"],\"articleSection\":[\"Requirements &amp; Requirements Management\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/\",\"url\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/\",\"name\":\"How Detailed Should Requirements Be? (Part 2) - Jama Software\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/#website\"},\"datePublished\":\"2013-06-19T15:30:59+00:00\",\"dateModified\":\"2023-01-13T00:56:54+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/#\\\/schema\\\/person\\\/e6a00f0ad439a5e1865476b36481aa47\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/2013\\\/06\\\/19\\\/how-detailed-should-requirements-be-part-2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.jamasoftware.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How Detailed Should Requirements Be? (Part 2)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/#website\",\"url\":\"https:\\\/\\\/www.jamasoftware.com\\\/\",\"name\":\"Jama Software\",\"description\":\"Jama Connect\u00ae #1 in Requirements Management\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.jamasoftware.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.jamasoftware.com\\\/#\\\/schema\\\/person\\\/e6a00f0ad439a5e1865476b36481aa47\",\"name\":\"Karl Wiegers\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/6d4992a28dda9ae47cf239c04be9a0bc554586672cba38949c070d2fed228aef?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/6d4992a28dda9ae47cf239c04be9a0bc554586672cba38949c070d2fed228aef?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/6d4992a28dda9ae47cf239c04be9a0bc554586672cba38949c070d2fed228aef?s=96&d=mm&r=g\",\"caption\":\"Karl Wiegers\"},\"description\":\"Subject matter expert Karl Wiegers writes on best practices for writing requirements, requirements management, and requirements traceability.\",\"sameAs\":[\"alison@makes-magic.com\"],\"url\":\"https:\\\/\\\/www.jamasoftware.com\\\/blog\\\/author\\\/kwiegers\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How Detailed Should Requirements Be? (Part 2) - Jama Software","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:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/","og_locale":"en_US","og_type":"article","og_title":"How Detailed Should Requirements Be? (Part 2)","og_description":"In the first article in this series, I pointed out that there\u2019s no easy answer to the question of how detailed the requirements need to be. Instead, I can present a thought process the business analyst can use to assess the appropriate level of detail for each case. As I describe in this article, which [&hellip;]","og_url":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/","og_site_name":"Jama Software","article_published_time":"2013-06-19T15:30:59+00:00","article_modified_time":"2023-01-13T00:56:54+00:00","author":"Karl Wiegers","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Karl Wiegers","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/#article","isPartOf":{"@id":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/"},"author":{"name":"Karl Wiegers","@id":"https:\/\/www.jamasoftware.com\/#\/schema\/person\/e6a00f0ad439a5e1865476b36481aa47"},"headline":"How Detailed Should Requirements Be? (Part 2)","datePublished":"2013-06-19T15:30:59+00:00","dateModified":"2023-01-13T00:56:54+00:00","mainEntityOfPage":{"@id":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/"},"wordCount":1355,"keywords":["best practices"],"articleSection":["Requirements &amp; Requirements Management"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/","url":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/","name":"How Detailed Should Requirements Be? (Part 2) - Jama Software","isPartOf":{"@id":"https:\/\/www.jamasoftware.com\/#website"},"datePublished":"2013-06-19T15:30:59+00:00","dateModified":"2023-01-13T00:56:54+00:00","author":{"@id":"https:\/\/www.jamasoftware.com\/#\/schema\/person\/e6a00f0ad439a5e1865476b36481aa47"},"breadcrumb":{"@id":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.jamasoftware.com\/blog\/2013\/06\/19\/how-detailed-should-requirements-be-part-2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.jamasoftware.com\/"},{"@type":"ListItem","position":2,"name":"How Detailed Should Requirements Be? (Part 2)"}]},{"@type":"WebSite","@id":"https:\/\/www.jamasoftware.com\/#website","url":"https:\/\/www.jamasoftware.com\/","name":"Jama Software","description":"Jama Connect\u00ae #1 in Requirements Management","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.jamasoftware.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.jamasoftware.com\/#\/schema\/person\/e6a00f0ad439a5e1865476b36481aa47","name":"Karl Wiegers","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/6d4992a28dda9ae47cf239c04be9a0bc554586672cba38949c070d2fed228aef?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/6d4992a28dda9ae47cf239c04be9a0bc554586672cba38949c070d2fed228aef?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6d4992a28dda9ae47cf239c04be9a0bc554586672cba38949c070d2fed228aef?s=96&d=mm&r=g","caption":"Karl Wiegers"},"description":"Subject matter expert Karl Wiegers writes on best practices for writing requirements, requirements management, and requirements traceability.","sameAs":["alison@makes-magic.com"],"url":"https:\/\/www.jamasoftware.com\/blog\/author\/kwiegers\/"}]}},"_links":{"self":[{"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/posts\/3342","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/users\/68"}],"replies":[{"embeddable":true,"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/comments?post=3342"}],"version-history":[{"count":0,"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/posts\/3342\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/media?parent=3342"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/categories?post=3342"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/tags?post=3342"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.jamasoftware.com\/legacy\/wp-json\/wp\/v2\/industry?post=3342"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}