

{"id":885,"date":"2014-09-05T13:58:52","date_gmt":"2014-09-05T13:58:52","guid":{"rendered":"http:\/\/www.w3computing.com\/systemsanalysis\/?p=885"},"modified":"2021-05-18T19:42:58","modified_gmt":"2021-05-18T19:42:58","slug":"statechart-diagrams","status":"publish","type":"post","link":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/","title":{"rendered":"Statechart Diagrams"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have. A statechart diagram is created for a single class. Typically objects are created, go through changes, and are deleted or removed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Objects exist in these various states, which are the conditions of an object at a specific time. An object\u2019s attribute values define the state that the object is in, and sometimes there is an attribute, such as Order Status (pending, picking, packaged, shipped, received, and so on) that indicates the state. A state has a name with each word capitalized. The name should be unique and meaningful to the users. A state also has entry and exit actions, the things the object must do every time it enters or leaves a given state.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An event is something that happens at a specific time and place. Events cause a change of the object state, and it is said that a transition \u201cfires.\u201d States separate events, such as an order that is waiting to be filled, and events separate states, such as an Order Received event or an Order Complete event.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">An event causes the transition, and happens when a guard condition has been met. A guard condition is something that evaluates to either true or false, and may be as simple as \u201cClick to confirm order.\u201d It also may be a condition that occurs in a method, such as an item that is out of stock. Guard conditions are shown in square brackets next to the event label.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There are also deferred events, or events that are held until an object changes to a state that can accept them. A user keying something in when a word processor is performing a timed backup is an example of a deferred event. After the timed backup has completed, the text appears in the document.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Events fall into three different categories:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Signals or asynchronous messages, which occur when the calling program does not wait for a returning message, such as a feature run from a menu.<\/li><li>Synchronous messages, which are calls to functions or subroutines. The calling object stops and waits for control to be returned to it, along with an optional message.<\/li><li>Temporal events, which occur at a predetermined time. These usually do not involve an actor or any external event.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Material objects have persistence; that is, they exist for a long period of time. Airplane flights, concerts, and sporting events have shorter persistence (they may have states that transition in a shorter time). Some objects, called transient objects, do not survive the end of a session. These include main memory,Web URL (or location) data,Web pages, CICS displays, and so on. The only way to save transient objects is to store information about them, such as storing Web data in a cookie.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each time an object changes state, some of the attributes change their values. Furthermore, each time an object\u2019s attributes change, there must be a method to change the attributes. Each of the methods would need a display or Web form to add or change the attributes. These become the interface objects. The display or Web form would often have more controls (or fields) on them than just the attributes that change. They would usually have primary keys, identifying information (such as a name or address), and other attributes that are needed for a good user interface. The exception is a temporal event, which may use database tables or a queue containing the information.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A State Transition Example<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Consider a student enrolling at a university and the various states that he or she would go through. Three of the states are listed below in detail:<\/p>\n\n\n<style>\r\r\n\r\r\ntable#t52 {\r\r\nborder-collapse: collapse;\t\r\r\nborder-width: 0px;\r\r\nborder-style: outset;\r\r\nmargin: 20px 0;\r\r\nline-height: 2.0em;\r\r\ntext-align: left;\r\r\nvertical-align: top;width: 600px;border-top: 1px solid #EEEEEE;border-bottom: 1px solid #EEEEEE;box-shadow: 0 2px 3px rgba(0, 0, 0, 0.4);\r\r\n}\r\r\ntable#t52 thead tr {\r\r\n\r\r\n}\r\r\ntable#t52 thead tr th.t52 {\r\r\ncolor: #333333;\r\r\nbackground: none repeat scroll 0 0 #FFFFFF;\r\r\nfont-size: 1.5em;\r\r\nletter-spacing: 0;\r\r\nline-height: 2.0;\r\r\npadding: 4px;\r\r\ntext-transform: none;\r\r\ntext-align: left;border-bottom: 1px solid #EEEEEE;\r\r\n}\r\r\n\r\r\ntable#t52 thead tr th#t52.start {\r\r\n\r\r\n}\r\r\ntable#t52 thead tr th#t52.end {\r\r\n\r\r\n}\r\r\ntable#t52 tbody tr {\r\r\n    background: none repeat scroll 0 0 #FFFFFF;\r\r\n}\r\r\ntable#t52 tbody tr.table-alternate {\r\r\n    background: none repeat scroll 0 0 #FDFDFD;\r\r\n}\r\r\ntable#t52 tbody tr td#n1 {\r\r\n\twidth: 50%;\r\r\n\t}\r\r\n\r\r\ntable#t52 tbody tr td {\r\r\n    padding: 5px;\r\r\n\tborder-width: 0px;\r\r\n\tfont-size: 1.0em;\r\r\n\tborder-top: medium none;border-bottom: 1px solid #EEEEEE;\r\r\n    text-align: left;\r\r\n\tline-height: 1.2;\r\r\n\tvertical-align: top;\r\r\n}\r\r\n}\r\r\ntable#t52 tfoot tr {\r\r\n}\r\r\n\r\r\ntable#t52 tfoot tr td {\r\r\n    background: none repeat scroll 0 0 #FCFCFC;\t\r\r\n\tpadding: 4px;\r\r\n\tborder-width: 0px;\r\r\n\tcolor: #7a7a7a;\r\r\n\tfont-size: 1.0em;\r\r\n\tborder-top: medium none;\r\r\n    text-align: left;\r\r\n}\r\r\n<\/style><table id=\"t52\">\r\r\n\t<tbody><tr class=\"table-alternate row1\"> <td id=\"n1\" class=\"start\"><pre><strong>State:<\/strong>\t\t\tPotential Student\r\n<strong>Event:<\/strong>\t\t\tApplication Submitted\r\n<strong>Method:<\/strong>\t\t\tnew()\r\n<strong>Attributes changed:<\/strong>\tNumber\r\n\t\t\tName\r\n\t\t\tAddress\r\n\t\t\t\t\r\n<strong>User interface:<\/strong>\t\tStudent Application Web Form\r\n<strong>State:<\/strong>\t\t\tAccepted Student\r\n<strong>Event:<\/strong>\t\t\tRequirements Met\r\n<strong>Method:<\/strong>\t\t\tacceptStudent()\r\n<strong>Attributes changed:<\/strong>\tAdmission Date\r\n\t\t\tStudent Status\r\n\t\t\tReturn Acceptance Letter\r\n\t\t\t\t\r\n<strong>User interface:<\/strong>\t\tAccept Student Display\r\n<strong>State:<\/strong>\t\t\tDorm Assigned Student\r\n<strong>Event:<\/strong>\t\t\tDorm Selected\r\n<strong>Method:<\/strong>\t\t\tassignDorm()\r\n<strong>Attributes changed:<\/strong>\tDorm Name\r\n\t\t\tDorm Room\r\n\t\t\tMeal Plan\r\n\t\t\t\t\r\n<strong>User interface:<\/strong>\t\tAssign Student Dorm Display\r\n<\/pre><\/td><\/tr><\/tbody><\/table>\n\n\n\n<p class=\"wp-block-paragraph\">The other states are <strong>Program Student<\/strong>, <strong>Current Student<\/strong>, <strong>Continuing Student<\/strong>, and <strong>Graduated Student<\/strong>. Each state would have an event, methods, attributes changed, and a user interface associated with it. This series of states can be used to determine the attributes and methods that make up part of the class.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The states and events that trigger the changes may be represented on a statechart diagram (or a state transition diagram). The statechart diagram for <strong>Student<\/strong> is illustrated in the figure below.<\/p>\n\n\n\n<figure class=\"wp-block-image alignnone\"><a href=\"http:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22.jpg\" rel=\"lightbox[885]\"><img loading=\"lazy\" decoding=\"async\" width=\"218\" height=\"300\" src=\"http:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22-218x300.jpg\" alt=\"A statechart diagram showing how a student progresses from a potential student to a graduated student.\" class=\"wp-image-804\" srcset=\"https:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22-218x300.jpg 218w, https:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22.jpg 612w\" sizes=\"auto, (max-width: 218px) 100vw, 218px\" \/><\/a><figcaption>A statechart diagram showing how a student progresses from a potential student to a graduated student.<\/figcaption><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">States are represented by rectangles, and events or activities are the arrows that link the states and cause one state to change to another state. Transition events are named in the past tense, because they have already occurred to create the transition.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Statechart diagrams are not created for all classes. They are created when:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>A class has a complex life cycle.<\/li><li>An instance of a class may update its attributes in a number of ways through the life cycle.<\/li><li>A class has an operational life cycle.<\/li><li>Two classes depend on each other.<\/li><li>The object\u2019s current behavior depends on what happened previously.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">When you examine a statechart diagram, use the opportunity to look for errors and exceptions. Inspect the diagram to see whether events are happening at the wrong time. Also check that all events and states have been represented. Statechart diagrams have only two problems to avoid. Check to see that a state does not have all transitions going into the state or all transitions coming out of the state.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each state should have at least one transition in and out of it. Some statechart diagrams use the same start and terminator symbols that an activity diagram uses: a filled-in circle to represent the start, and concentric circles with the center filled in to signify the end of the diagram.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have. A statechart diagram is created for a single class. Typically objects are created, go through changes, and are deleted or removed. Objects exist in these various states, which are [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_genesis_hide_title":false,"_genesis_hide_breadcrumbs":false,"_genesis_hide_singular_image":false,"_genesis_hide_footer_widgets":false,"_genesis_custom_body_class":"","_genesis_custom_post_class":"","_genesis_layout":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[13],"tags":[],"class_list":["post-885","post","type-post","status-publish","format-standard","category-object-oriented-sad-using-uml","entry","has-post-thumbnail"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Statechart Diagrams<\/title>\n<meta name=\"description\" content=\"The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have.\" \/>\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.w3computing.com\/systemsanalysis\/statechart-diagrams\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Statechart Diagrams\" \/>\n<meta property=\"og:description\" content=\"The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/w3computing\" \/>\n<meta property=\"article:published_time\" content=\"2014-09-05T13:58:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-05-18T19:42:58+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22-218x300.jpg\" \/>\n<meta name=\"author\" content=\"w3computing.com\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"w3computing.com\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/\"},\"author\":{\"name\":\"w3computing.com\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#\\\/schema\\\/person\\\/8395166dc0b94b38a3aeb88dafbd63ce\"},\"headline\":\"Statechart Diagrams\",\"datePublished\":\"2014-09-05T13:58:52+00:00\",\"dateModified\":\"2021-05-18T19:42:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/\"},\"wordCount\":946,\"image\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/wp-content\\\/uploads\\\/2014\\\/09\\\/10.22-218x300.jpg\",\"articleSection\":[\"Object-Oriented Systems Analysis and Design Using UML\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/\",\"url\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/\",\"name\":\"Statechart Diagrams\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/wp-content\\\/uploads\\\/2014\\\/09\\\/10.22-218x300.jpg\",\"datePublished\":\"2014-09-05T13:58:52+00:00\",\"dateModified\":\"2021-05-18T19:42:58+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#\\\/schema\\\/person\\\/8395166dc0b94b38a3aeb88dafbd63ce\"},\"description\":\"The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/wp-content\\\/uploads\\\/2014\\\/09\\\/10.22.jpg\",\"contentUrl\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/wp-content\\\/uploads\\\/2014\\\/09\\\/10.22.jpg\",\"width\":612,\"height\":842,\"caption\":\"A statechart diagram showing how a student progresses from a potential student to a graduated student.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/statechart-diagrams\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Systems Analysis\",\"item\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Object-Oriented Systems Analysis and Design Using UML\",\"item\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/object-oriented-sad-using-uml\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Statechart Diagrams\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#website\",\"url\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/\",\"name\":\"\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.w3computing.com\\\/systemsanalysis\\\/#\\\/schema\\\/person\\\/8395166dc0b94b38a3aeb88dafbd63ce\",\"name\":\"w3computing.com\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Statechart Diagrams","description":"The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have.","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.w3computing.com\/systemsanalysis\/statechart-diagrams\/","og_locale":"en_US","og_type":"article","og_title":"Statechart Diagrams","og_description":"The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have.","og_url":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/","article_publisher":"https:\/\/www.facebook.com\/w3computing","article_published_time":"2014-09-05T13:58:52+00:00","article_modified_time":"2021-05-18T19:42:58+00:00","og_image":[{"url":"http:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22-218x300.jpg","type":"","width":"","height":""}],"author":"w3computing.com","twitter_misc":{"Written by":"w3computing.com","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#article","isPartOf":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/"},"author":{"name":"w3computing.com","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#\/schema\/person\/8395166dc0b94b38a3aeb88dafbd63ce"},"headline":"Statechart Diagrams","datePublished":"2014-09-05T13:58:52+00:00","dateModified":"2021-05-18T19:42:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/"},"wordCount":946,"image":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#primaryimage"},"thumbnailUrl":"http:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22-218x300.jpg","articleSection":["Object-Oriented Systems Analysis and Design Using UML"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/","url":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/","name":"Statechart Diagrams","isPartOf":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#primaryimage"},"image":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#primaryimage"},"thumbnailUrl":"http:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22-218x300.jpg","datePublished":"2014-09-05T13:58:52+00:00","dateModified":"2021-05-18T19:42:58+00:00","author":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#\/schema\/person\/8395166dc0b94b38a3aeb88dafbd63ce"},"description":"The statechart, or state transition, diagram is another way to determine class methods. It is used to examine the different states that an object may have.","breadcrumb":{"@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#primaryimage","url":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22.jpg","contentUrl":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-content\/uploads\/2014\/09\/10.22.jpg","width":612,"height":842,"caption":"A statechart diagram showing how a student progresses from a potential student to a graduated student."},{"@type":"BreadcrumbList","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/statechart-diagrams\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Systems Analysis","item":"https:\/\/www.w3computing.com\/systemsanalysis\/"},{"@type":"ListItem","position":2,"name":"Object-Oriented Systems Analysis and Design Using UML","item":"https:\/\/www.w3computing.com\/systemsanalysis\/object-oriented-sad-using-uml\/"},{"@type":"ListItem","position":3,"name":"Statechart Diagrams"}]},{"@type":"WebSite","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#website","url":"https:\/\/www.w3computing.com\/systemsanalysis\/","name":"","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.w3computing.com\/systemsanalysis\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.w3computing.com\/systemsanalysis\/#\/schema\/person\/8395166dc0b94b38a3aeb88dafbd63ce","name":"w3computing.com"}]}},"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p4NNeA-eh","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/posts\/885","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/comments?post=885"}],"version-history":[{"count":0,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/posts\/885\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/media?parent=885"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/categories?post=885"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.w3computing.com\/systemsanalysis\/wp-json\/wp\/v2\/tags?post=885"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}