{"id":5817,"date":"2022-05-24T09:01:11","date_gmt":"2022-05-24T09:01:11","guid":{"rendered":"https:\/\/www.booksofall.com\/ru\/?post_type=product&#038;p=5817"},"modified":"2022-06-15T05:15:41","modified_gmt":"2022-06-15T05:15:41","slug":"object-oriented-analysis-and-design-ooad-introduction-to-uml","status":"publish","type":"product","link":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/","title":{"rendered":"Object Oriented Analysis and Design (OOAD): Introduction to UML"},"content":{"rendered":"<h3><b>Unified Modeling Language<\/b>\u00a0(<b>UML<\/b>)<\/h3>\n<p>The\u00a0<b>Unified Modeling Language<\/b>\u00a0(<b>UML<\/b>) is a general-purpose, developmental,\u00a0<a title=\"Modeling language\" href=\"https:\/\/en.wikipedia.org\/wiki\/Modeling_language\">modeling language<\/a>\u00a0in the field of\u00a0<a title=\"Software engineering\" href=\"https:\/\/en.wikipedia.org\/wiki\/Software_engineering\">software engineering<\/a>\u00a0that is intended to provide a standard way to visualize the design of a system.<sup id=\"cite_ref-:1_1-0\" class=\"reference\"><\/sup><\/p>\n<p>The creation of UML was originally motivated by the desire to standardize the disparate notational systems and approaches to software design. It was developed at\u00a0<a title=\"Rational Software\" href=\"https:\/\/en.wikipedia.org\/wiki\/Rational_Software\">Rational Software<\/a>\u00a0in 1994\u20131995, with further development led by them through 1996.<sup id=\"cite_ref-:1_1-1\" class=\"reference\"><\/sup><\/p>\n<p>In 1997, UML was adopted as a standard by the\u00a0<a title=\"Object Management Group\" href=\"https:\/\/en.wikipedia.org\/wiki\/Object_Management_Group\">Object Management Group<\/a>\u00a0(OMG), and has been managed by this organization ever since. In 2005, UML was also published by the\u00a0<a title=\"International Organization for Standardization\" href=\"https:\/\/en.wikipedia.org\/wiki\/International_Organization_for_Standardization\">International Organization for Standardization<\/a>\u00a0(ISO) as an approved ISO standard.\u00a0<sup id=\"cite_ref-2\" class=\"reference\"><\/sup>Since then the standard has been periodically revised to cover the latest revision of UML.<sup id=\"cite_ref-3\" class=\"reference\"><\/sup>\u00a0In software engineering, most practitioners do not use UML, but instead produce informal hand drawn diagrams; these diagrams, however, often include elements from UML.<\/p>\n<h3><b>Object-oriented analysis and design<\/b>\u00a0(<b>OOAD<\/b>)<\/h3>\n<p><b>Object-oriented analysis and design<\/b>\u00a0(<b>OOAD<\/b>) is a technical approach for analyzing and designing an application, system, or business by applying\u00a0<a title=\"Object-oriented programming\" href=\"https:\/\/en.wikipedia.org\/wiki\/Object-oriented_programming\">object-oriented programming<\/a>, as well as using visual modeling throughout the software development process to guide stakeholder communication and product quality.<\/p>\n<p>OOAD in modern software engineering is typically conducted in an iterative and incremental way. The outputs of OOAD activities are analysis models (for OOA) and design models (for OOD) respectively. The intention is for these to be continuously refined and evolved, driven by key factors like risks and business value.<\/p>\n<p>The software life cycle is typically divided up into stages going from abstract descriptions of the problem to designs then to code and testing and finally to deployment. The earliest stages of this process are analysis and design. The analysis phase is also often called &#8220;requirements acquisition&#8221;.<\/p>\n<p>In some approaches to software development\u2014known collectively as waterfall models\u2014the boundaries between each stage are meant to be fairly rigid and sequential. The term &#8220;waterfall&#8221; was coined for such methodologies to signify that progress went sequentially in one direction only, i.e., once analysis was complete then and only then was design begun and it was rare (and considered a source of error) when a design issue required a change in the analysis model or when a coding issue required a change in design.<\/p>\n<p>The alternative to waterfall models are iterative models. This distinction was popularized by\u00a0<a title=\"Barry Boehm\" href=\"https:\/\/en.wikipedia.org\/wiki\/Barry_Boehm\">Barry Boehm<\/a>\u00a0in a very influential paper on his Spiral Model for iterative software development. With iterative models it is possible to do work in various stages of the model in parallel. So for example it is possible\u2014and not seen as a source of error\u2014to work on analysis, design, and even code all on the same day and to have issues from one stage impact issues from another. The emphasis on iterative models is that software development is a knowledge-intensive process and that things like analysis can&#8217;t really be completely understood without understanding design issues, that coding issues can affect design, that testing can yield information about how the code or even the design should be modified, etc.<sup id=\"cite_ref-2\" class=\"reference\"><\/sup><\/p>\n<p>Although it is possible to do object-oriented development using a waterfall model, in practice most object-oriented systems are developed with an iterative approach. As a result, in object-oriented processes &#8220;analysis and design&#8221; are often considered at the same time.<\/p>\n<p>The object-oriented paradigm emphasizes modularity and re-usability. The goal of an object-oriented approach is to satisfy the\u00a0<a class=\"mw-redirect\" title=\"Open Closed Principle\" href=\"https:\/\/en.wikipedia.org\/wiki\/Open_Closed_Principle\">&#8220;open\u2013closed principle&#8221;<\/a>. A module is open if it supports extension, or if the module provides standardized ways to add new behaviors or describe new states. In the object-oriented paradigm this is often accomplished by creating a new subclass of an existing class. A module is closed if it has a well defined stable interface that all other modules must use and that limits the interaction and potential errors that can be introduced into one module by changes in another. In the object-oriented paradigm this is accomplished by defining methods that invoke services on objects. Methods can be either public or private, i.e., certain behaviors that are unique to the object are not exposed to other objects. This reduces a source of many common errors in computer programming.<sup id=\"cite_ref-3\" class=\"reference\"><\/sup><\/p>\n<p>The software life cycle is typically divided up into stages going from abstract descriptions of the problem to designs then to code and testing and finally to deployment. The earliest stages of this process are analysis and design. The distinction between analysis and design is often described as &#8220;what vs. how&#8221;. In analysis developers work with users and domain experts to define what the system is supposed to do. Implementation details are supposed to be mostly or totally (depending on the particular method) ignored at this phase. The goal of the analysis phase is to create a functional model of the system regardless of constraints such as appropriate technology. In object-oriented analysis this is typically done via use cases and abstract definitions of the most important objects. The subsequent design phase refines the analysis model and makes the needed technology and other implementation choices. In object-oriented design the emphasis is on describing the various objects, their data, behavior, and interactions. The design model should have all the details required so that programmers can implement the design in code.<\/p>\n","protected":false},"excerpt":{"rendered":"<p><iframe style=\"width: 100%; height: 700px; border: none;\" src=\"https:\/\/online.visual-paradigm.com\/share\/book\/object-oriented-analysis-and-design-ooad---introduction-to-uml-ypv7r9pw2?enforceShowPromotionBar=true\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n","protected":false},"featured_media":5824,"template":"","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering."},"product_brand":[],"product_cat":[213],"product_tag":[201],"class_list":{"0":"post-5817","1":"product","2":"type-product","3":"status-publish","4":"has-post-thumbnail","6":"product_cat-computer-uml","7":"product_tag-lecture-notes","9":"first","10":"instock","11":"shipping-taxable","12":"product-type-simple"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Object Oriented Analysis and Design (OOAD): Introduction to UML - BooksOfAll Russian<\/title>\n<meta name=\"description\" content=\"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/\" \/>\n<meta property=\"og:locale\" content=\"ru_RU\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Object Oriented Analysis and Design (OOAD): Introduction to UML - BooksOfAll Russian\" \/>\n<meta property=\"og:description\" content=\"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/\" \/>\n<meta property=\"og:site_name\" content=\"BooksOfAll Russian\" \/>\n<meta property=\"article:modified_time\" content=\"2022-06-15T05:15:41+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg\" \/>\n<meta name=\"twitter:label1\" content=\"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f\" \/>\n\t<meta name=\"twitter:data1\" content=\"4 \u043c\u0438\u043d\u0443\u0442\u044b\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/\",\"url\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/\",\"name\":\"Object Oriented Analysis and Design (OOAD): Introduction to UML - BooksOfAll Russian\",\"isPartOf\":{\"@id\":\"https:\/\/www.booksofall.com\/ru\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg\",\"datePublished\":\"2022-05-24T09:01:11+00:00\",\"dateModified\":\"2022-06-15T05:15:41+00:00\",\"description\":\"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#breadcrumb\"},\"inLanguage\":\"ru-RU\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ru-RU\",\"@id\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#primaryimage\",\"url\":\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg\",\"contentUrl\":\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg\",\"width\":\"596\",\"height\":\"842\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.booksofall.com\/ru\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Categories\",\"item\":\"https:\/\/www.booksofall.com\/ru\/categories\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Object Oriented Analysis and Design (OOAD): Introduction to UML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.booksofall.com\/ru\/#website\",\"url\":\"https:\/\/www.booksofall.com\/ru\/\",\"name\":\"BooksOfAll Russian\",\"description\":\"Biggest IT eBooks library and learning resources - Free eBooks for programming, computing, artificial intelligence and more.\",\"publisher\":{\"@id\":\"https:\/\/www.booksofall.com\/ru\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.booksofall.com\/ru\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ru-RU\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.booksofall.com\/ru\/#organization\",\"name\":\"BooksOfAll Russian\",\"url\":\"https:\/\/www.booksofall.com\/ru\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ru-RU\",\"@id\":\"https:\/\/www.booksofall.com\/ru\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/booksofall-logo-2.png\",\"contentUrl\":\"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/booksofall-logo-2.png\",\"width\":166,\"height\":30,\"caption\":\"BooksOfAll Russian\"},\"image\":{\"@id\":\"https:\/\/www.booksofall.com\/ru\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Object Oriented Analysis and Design (OOAD): Introduction to UML - BooksOfAll Russian","description":"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/","og_locale":"ru_RU","og_type":"article","og_title":"Object Oriented Analysis and Design (OOAD): Introduction to UML - BooksOfAll Russian","og_description":"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering.","og_url":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/","og_site_name":"BooksOfAll Russian","article_modified_time":"2022-06-15T05:15:41+00:00","og_image":[{"url":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_image":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg","twitter_misc":{"\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0434\u043b\u044f \u0447\u0442\u0435\u043d\u0438\u044f":"4 \u043c\u0438\u043d\u0443\u0442\u044b"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/","url":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/","name":"Object Oriented Analysis and Design (OOAD): Introduction to UML - BooksOfAll Russian","isPartOf":{"@id":"https:\/\/www.booksofall.com\/ru\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#primaryimage"},"image":{"@id":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#primaryimage"},"thumbnailUrl":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg","datePublished":"2022-05-24T09:01:11+00:00","dateModified":"2022-06-15T05:15:41+00:00","description":"The\u00a0Unified Modeling Language\u00a0(UML) is a general-purpose, developmental,\u00a0modeling language\u00a0in the field of\u00a0software engineering.","breadcrumb":{"@id":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#breadcrumb"},"inLanguage":"ru-RU","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/"]}]},{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#primaryimage","url":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg","contentUrl":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/img_62a168f7ba6dc.jpeg","width":"596","height":"842"},{"@type":"BreadcrumbList","@id":"https:\/\/www.booksofall.com\/ru\/object-oriented-analysis-and-design-ooad-introduction-to-uml\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.booksofall.com\/ru\/"},{"@type":"ListItem","position":2,"name":"Categories","item":"https:\/\/www.booksofall.com\/ru\/categories\/"},{"@type":"ListItem","position":3,"name":"Object Oriented Analysis and Design (OOAD): Introduction to UML"}]},{"@type":"WebSite","@id":"https:\/\/www.booksofall.com\/ru\/#website","url":"https:\/\/www.booksofall.com\/ru\/","name":"BooksOfAll Russian","description":"Biggest IT eBooks library and learning resources - Free eBooks for programming, computing, artificial intelligence and more.","publisher":{"@id":"https:\/\/www.booksofall.com\/ru\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.booksofall.com\/ru\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ru-RU"},{"@type":"Organization","@id":"https:\/\/www.booksofall.com\/ru\/#organization","name":"BooksOfAll Russian","url":"https:\/\/www.booksofall.com\/ru\/","logo":{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https:\/\/www.booksofall.com\/ru\/#\/schema\/logo\/image\/","url":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/booksofall-logo-2.png","contentUrl":"https:\/\/www.booksofall.com\/ru\/wp-content\/uploads\/sites\/7\/2022\/06\/booksofall-logo-2.png","width":166,"height":30,"caption":"BooksOfAll Russian"},"image":{"@id":"https:\/\/www.booksofall.com\/ru\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/product\/5817","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/types\/product"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/media\/5824"}],"wp:attachment":[{"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/media?parent=5817"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/product_brand?post=5817"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/product_cat?post=5817"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.booksofall.com\/ru\/wp-json\/wp\/v2\/product_tag?post=5817"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}