{"id":768,"date":"2026-02-25T10:24:27","date_gmt":"2026-02-25T10:24:27","guid":{"rendered":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/"},"modified":"2026-02-25T10:24:27","modified_gmt":"2026-02-25T10:24:27","slug":"writing-responsibility-crc","status":"publish","type":"docs","link":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/","title":{"rendered":"How to Write a Good Responsibility"},"content":{"rendered":"<p>Writing a good responsibility on a CRC card isn\u2019t about finding the perfect verb\u2014it\u2019s about capturing what a class must do, without ambiguity or overlap. It\u2019s the difference between a model that evolves with clarity and one that becomes tangled and hard to maintain.<\/p>\n<p>Many beginners struggle with this because they default to vague verbs like \u201chandle,\u201d \u201cmanage,\u201d or \u201cprocess.\u201d These don\u2019t tell you what the class actually does. Instead, a well-written responsibility describes a specific, actionable duty\u2014something the class can own and be accountable for.<\/p>\n<p>Over the past two decades, I\u2019ve seen teams fail not from poor code, but from poorly defined responsibilities. The problem isn\u2019t the tools\u2014they\u2019re simple\u2014but the mindset behind them. This chapter helps you shift that mindset.<\/p>\n<p>You\u2019ll learn how to write responsibilities that are precise, testable, and aligned with object design principles. You\u2019ll see real examples, common mistakes, and practical refactoring strategies to keep your models clean and maintainable.<\/p>\n<h2>Why Responsibility Quality Matters in Object Design<\/h2>\n<p>Every responsibility shapes how a class behaves and how it interacts with others. A poorly worded one leads to confusion, duplication, or overloading.<\/p>\n<p>Good CRC responsibilities are the foundation of responsibility-driven design. They tell you what a class is responsible for\u2014no more, no less.<\/p>\n<p>Consider this: if a class says \u201cmanage user data,\u201d what does that mean? Is it storing it? Validating it? Encrypting it? The ambiguity leaks into implementation and collaboration. A strong responsibility eliminates guesswork.<\/p>\n<p>Here\u2019s what a good responsibility should do:<\/p>\n<ul>\n<li>Be <strong>action-oriented<\/strong> and state what the class does directly.<\/li>\n<li>Focus on a <strong>single duty<\/strong>\u2014not a collection of tasks.<\/li>\n<li>Be <strong>testable<\/strong>\u2014you should be able to verify it through code or logic.<\/li>\n<li>Be <strong>independent of implementation<\/strong>\u2014it shouldn\u2019t depend on how the work is done.<\/li>\n<\/ul>\n<p>These aren\u2019t abstract ideals. They\u2019re practical guidelines that prevent design drift.<\/p>\n<h2>How to Write a Good Responsibility: A Step-by-Step Guide<\/h2>\n<h3>Step 1: Start with a Clear Verb<\/h3>\n<p>Begin with a strong, concrete verb. Avoid weak or vague ones like \u201chandle,\u201d \u201cprocess,\u201d or \u201cwork with.\u201d Instead, use verbs like \u201cvalidate,\u201d \u201ccalculate,\u201d \u201cpersist,\u201d \u201cnotify,\u201d or \u201cretrieve.\u201d<\/p>\n<p>For example:<\/p>\n<ul>\n<li><strong>Bad:<\/strong> \u201cHandles payment processing.\u201d<\/li>\n<li><strong>Good:<\/strong> \u201cCalculates total cost with tax.\u201d<\/li>\n<\/ul>\n<p>One verb, one action. No ambiguity.<\/p>\n<h3>Step 2: Name the Specific Action, Not the Outcome<\/h3>\n<p>Focus on the <em>action<\/em>, not the result. Avoid responsibilities like \u201cEnsures data is correct.\u201d That\u2019s a goal, not a responsibility.<\/p>\n<p>Instead, ask: <em>What specific step does this class take?<\/em><\/p>\n<p>Examples:<\/p>\n<ul>\n<li><strong>Bad:<\/strong> \u201cEnsures all user data is valid.\u201d<\/li>\n<li><strong>Good:<\/strong> \u201cVerifies email format using regex.\u201d<\/li>\n<\/ul>\n<p>Now you can test it. You can even write a unit test for it.<\/p>\n<h3>Step 3: Avoid Responsibility Overlap<\/h3>\n<p>One of the most common issues in CRC modeling is overlapping responsibilities. When two classes claim to \u201cmanage\u201d the same data or logic, confusion arises.<\/p>\n<p>Ask: <em>Is this responsibility unique to this class?<\/em> If not, it should be reassigned.<\/p>\n<p>For example, if both <code>User<\/code> and <code>AuthenticationService<\/code> claim to \u201ccheck login credentials,\u201d one is likely doing too much.<\/p>\n<p>Refactor: Let <code>AuthenticationService<\/code> own the check. Let <code>User<\/code> store the result.<\/p>\n<h3>Step 4: Keep It Concise and Direct<\/h3>\n<p>A good CRC responsibility fits on a line. It\u2019s a simple phrase, not a sentence. Use the format: [Action] + [Object\/Task].<\/p>\n<p>Examples of good responsibility phrasing:<\/p>\n<ul>\n<li>\u201cSends confirmation email.\u201d<\/li>\n<li>\u201cUpdates order status to shipped.\u201d<\/li>\n<li>\u201cFetches customer from database by ID.\u201d<\/li>\n<li>\u201cValidates credit card number using Luhn algorithm.\u201d<\/li>\n<\/ul>\n<p>These are clear, testable, and reflect a single operational duty.<\/p>\n<h2>Examples of Good CRC Responsibilities in Practice<\/h2>\n<p>Let\u2019s walk through a simple example: a <code>BankAccount<\/code> class.<\/p>\n<table>\n<tbody>\n<tr>\n<th>Bad Responsibility<\/th>\n<th>Good Responsibility<\/th>\n<th>Why It\u2019s Better<\/th>\n<\/tr>\n<tr>\n<td>\u201cManages balance.\u201d<\/td>\n<td>\u201cUpdates balance after deposit.\u201d<\/td>\n<td>Specific action, testable, no ambiguity.<\/td>\n<\/tr>\n<tr>\n<td>\u201cProcesses transactions.\u201d<\/td>\n<td>\u201cRecords transaction in ledger.\u201d<\/td>\n<td>Clear object and action; avoids vague verbs.<\/td>\n<\/tr>\n<tr>\n<td>\u201cHandles user info.\u201d<\/td>\n<td>\u201cStores user name and account number.\u201d<\/td>\n<td>Concrete, focused on ownership.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Notice how the good versions eliminate abstraction. They\u2019re about what happens, not what \u201cshould\u201d happen.<\/p>\n<p>Another example: a <code>NotificationService<\/code>.<\/p>\n<ul>\n<li><strong>Bad:<\/strong> \u201cManages notifications.\u201d<\/li>\n<li><strong>Good:<\/strong> \u201cSends email notification to user.\u201d<\/li>\n<\/ul>\n<p>Now it\u2019s clear: the class\u2019s job is sending emails, not managing the concept of notifications.<\/p>\n<h2>Refactoring Responsibilities: When to Split and When to Merge<\/h2>\n<p>Some responsibilities grow too large. If a class has five responsibilities that all relate to the same domain, it\u2019s a red flag.<\/p>\n<p>Use this decision tree:<\/p>\n<ol>\n<li>Does the responsibility involve multiple domains? (e.g., \u201ccalculates tax and sends email\u201d) \u2192 <strong>Split.<\/strong><\/li>\n<li>Does it describe a sequence of steps? (e.g., \u201chandles login: checks password, creates session, logs in\u201d) \u2192 <strong>Break into steps.<\/strong><\/li>\n<li>Does it involve multiple objects or systems? (e.g., \u201cupdates database and notifies external service\u201d) \u2192 <strong>Separate responsibilities.<\/strong><\/li>\n<li>Do multiple classes claim the same duty? \u2192 <strong>Reassign to the most appropriate one.<\/strong><\/li>\n<p>Splitting doesn\u2019t mean creating more classes. It means reassigning ownership to improve clarity and cohesion.<\/p>\n<p>I once worked with a team who had a class called <code>DataProcessor<\/code> with 12 responsibilities. After a 15-minute CRC session, they split it into four focused classes: <code>DataValidator<\/code>, <code>DataEncrypter<\/code>, <code>DataImporter<\/code>, and <code>DataExporter<\/code>. The code became simpler, more testable, and easier to extend.<\/p>\n<h2>Common Pitfalls to Avoid<\/h2>\n<p>Here are the most frequent mistakes I see when teaching good CRC responsibilities:<\/p>\n<ul>\n<li><strong>Using passive voice:<\/strong> \u201cData is validated.\u201d \u2192 Instead, \u201cValidates user input.\u201d<\/li>\n<li><strong>Using vague verbs:<\/strong> \u201cHandles error.\u201d \u2192 Instead, \u201cLogs error to file.\u201d<\/li>\n<li><strong>Describing the goal, not the action:<\/strong> \u201cEnsures no duplicate accounts.\u201d \u2192 Instead, \u201cChecks account number against existing list.\u201d<\/li>\n<li><strong>Combining multiple actions:<\/strong> \u201cFetches data and displays it.\u201d \u2192 Split: <em>\u201cRetrieves data from database.\u201d<\/em> and <em>\u201cDisplays data on screen.\u201d<\/em><\/li>\n<\/ul>\n<p>These aren\u2019t just stylistic choices. They reflect deeper design flaws.<\/p>\n<p>Remember: a class should do one thing, and do it well. Its responsibility should be about <em>how<\/em> it contributes to the system, not <em>what<\/em> it thinks it\u2019s doing.<\/p>\n<h2>Key Takeaways<\/h2>\n<p>Writing good CRC responsibilities is not about perfection\u2014it\u2019s about clarity and consistency. You don\u2019t need to get every one right on the first try. But you should aim for precision.<\/p>\n<p>Use strong verbs. Focus on actions, not goals. Avoid overlap. Keep responsibilities short and testable.<\/p>\n<p>By focusing on these principles, you build models that are not only easier to understand but also easier to extend, test, and refactor.<\/p>\n<p>These habits are the foundation of <strong>responsibility-driven examples<\/strong>\u2014the kind that stand the test of time.<\/p>\n<p>Keep refining. Keep questioning. And above all, keep writing responsibilities that say exactly what the class does.<\/p>\n<h2>Frequently Asked Questions<\/h2>\n<h3>What\u2019s the best way to phrase a responsibility on a CRC card?<\/h3>\n<p>Start with a strong verb\u2014like \u201cvalidate,\u201d \u201ccalculate,\u201d or \u201csend\u201d\u2014followed by a specific task. Keep it concise: \u201cValidates email format.\u201d Avoid vague terms like \u201chandle\u201d or \u201cmanage.\u201d<\/p>\n<h3>How do I know if a responsibility is too broad?<\/h3>\n<p>If a responsibility involves multiple steps, domains, or objects, it\u2019s likely too broad. Split it into smaller, focused duties. Ask: \u201cCan this be tested independently?\u201d If not, break it up.<\/p>\n<h3>Can two classes have the same responsibility?<\/h3>\n<p>No. A responsibility should belong to a single class. If two classes claim the same duty, it indicates a design issue\u2014usually poor ownership. Reassign it to the most appropriate class.<\/p>\n<h3>Is it okay to use \u201cmanages\u201d or \u201chandles\u201d in a responsibility?<\/h3>\n<p>Not really. These verbs are too vague. They don\u2019t clarify what the class actually does. Instead, use precise verbs like \u201cstores,\u201d \u201ccalculates,\u201d or \u201cnotifies.\u201d<\/p>\n<h3>Why should I avoid passive voice in CRC responsibilities?<\/h3>\n<p>Passive voice hides the actor. \u201cData is processed\u201d doesn\u2019t tell you who does it. Use active voice: \u201cProcesses customer order.\u201d This makes ownership clear and modeling more meaningful.<\/p>\n<h3>How do good CRC responsibilities improve code quality?<\/h3>\n<p>They directly translate into clear method names, well-defined responsibilities, and easier unit testing. When you write good CRC responsibilities, your classes are easier to understand, maintain, and refactor\u2014leading to cleaner, more reliable code.<\/p>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Writing a good responsibility on a CRC card isn\u2019t about finding the perfect verb\u2014it\u2019s about capturing what a class must do, without ambiguity or overlap. It\u2019s the difference between a model that evolves with clarity and one that becomes tangled and hard to maintain. Many beginners struggle with this because they default to vague verbs [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":766,"menu_order":1,"template":"","meta":{"_acf_changed":false,"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"doc_tag":[],"class_list":["post-768","docs","type-docs","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Writing Responsibility CRC: Clear &amp; Effective Object Design<\/title>\n<meta name=\"description\" content=\"Learn how to write good CRC responsibilities with clear, actionable examples. Master object design responsibility and avoid common pitfalls in responsibility-driven modeling.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Writing Responsibility CRC: Clear &amp; Effective Object Design\" \/>\n<meta property=\"og:description\" content=\"Learn how to write good CRC responsibilities with clear, actionable examples. Master object design responsibility and avoid common pitfalls in responsibility-driven modeling.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/\" \/>\n<meta property=\"og:site_name\" content=\"Visual Paradigm Skills Portugu\u00eas\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/\",\"url\":\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/\",\"name\":\"Writing Responsibility CRC: Clear & Effective Object Design\",\"isPartOf\":{\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/#website\"},\"datePublished\":\"2026-02-25T10:24:27+00:00\",\"description\":\"Learn how to write good CRC responsibilities with clear, actionable examples. Master object design responsibility and avoid common pitfalls in responsibility-driven modeling.\",\"breadcrumb\":{\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/skills.visual-paradigm.com\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CRC Cards Explained: A Beginner\u2019s Modeling Guide\",\"item\":\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Learning by Doing: CRC Card Basics\",\"item\":\"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"How to Write a Good Responsibility\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/#website\",\"url\":\"https:\/\/skills.visual-paradigm.com\/pt\/\",\"name\":\"Visual Paradigm Skills Portugu\u00eas\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/skills.visual-paradigm.com\/pt\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/#organization\",\"name\":\"Visual Paradigm Skills Portugu\u00eas\",\"url\":\"https:\/\/skills.visual-paradigm.com\/pt\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/skills.visual-paradigm.com\/pt\/wp-content\/uploads\/sites\/9\/2026\/02\/favicon.svg\",\"contentUrl\":\"https:\/\/skills.visual-paradigm.com\/pt\/wp-content\/uploads\/sites\/9\/2026\/02\/favicon.svg\",\"width\":70,\"height\":70,\"caption\":\"Visual Paradigm Skills Portugu\u00eas\"},\"image\":{\"@id\":\"https:\/\/skills.visual-paradigm.com\/pt\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Writing Responsibility CRC: Clear & Effective Object Design","description":"Learn how to write good CRC responsibilities with clear, actionable examples. Master object design responsibility and avoid common pitfalls in responsibility-driven modeling.","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:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/","og_locale":"pt_PT","og_type":"article","og_title":"Writing Responsibility CRC: Clear & Effective Object Design","og_description":"Learn how to write good CRC responsibilities with clear, actionable examples. Master object design responsibility and avoid common pitfalls in responsibility-driven modeling.","og_url":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/","og_site_name":"Visual Paradigm Skills Portugu\u00eas","twitter_card":"summary_large_image","twitter_misc":{"Tempo estimado de leitura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/","url":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/","name":"Writing Responsibility CRC: Clear & Effective Object Design","isPartOf":{"@id":"https:\/\/skills.visual-paradigm.com\/pt\/#website"},"datePublished":"2026-02-25T10:24:27+00:00","description":"Learn how to write good CRC responsibilities with clear, actionable examples. Master object design responsibility and avoid common pitfalls in responsibility-driven modeling.","breadcrumb":{"@id":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/writing-responsibility-crc\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/skills.visual-paradigm.com\/pt\/"},{"@type":"ListItem","position":2,"name":"CRC Cards Explained: A Beginner\u2019s Modeling Guide","item":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/"},{"@type":"ListItem","position":3,"name":"Learning by Doing: CRC Card Basics","item":"https:\/\/skills.visual-paradigm.com\/pt\/docs\/crc-cards-explained\/crc-card-tutorial\/"},{"@type":"ListItem","position":4,"name":"How to Write a Good Responsibility"}]},{"@type":"WebSite","@id":"https:\/\/skills.visual-paradigm.com\/pt\/#website","url":"https:\/\/skills.visual-paradigm.com\/pt\/","name":"Visual Paradigm Skills Portugu\u00eas","description":"","publisher":{"@id":"https:\/\/skills.visual-paradigm.com\/pt\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/skills.visual-paradigm.com\/pt\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-PT"},{"@type":"Organization","@id":"https:\/\/skills.visual-paradigm.com\/pt\/#organization","name":"Visual Paradigm Skills Portugu\u00eas","url":"https:\/\/skills.visual-paradigm.com\/pt\/","logo":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/skills.visual-paradigm.com\/pt\/#\/schema\/logo\/image\/","url":"https:\/\/skills.visual-paradigm.com\/pt\/wp-content\/uploads\/sites\/9\/2026\/02\/favicon.svg","contentUrl":"https:\/\/skills.visual-paradigm.com\/pt\/wp-content\/uploads\/sites\/9\/2026\/02\/favicon.svg","width":70,"height":70,"caption":"Visual Paradigm Skills Portugu\u00eas"},"image":{"@id":"https:\/\/skills.visual-paradigm.com\/pt\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/docs\/768","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":0,"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/docs\/768\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/docs\/766"}],"wp:attachment":[{"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/media?parent=768"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/skills.visual-paradigm.com\/pt\/wp-json\/wp\/v2\/doc_tag?post=768"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}