{"id":1519,"date":"2020-05-28T17:03:31","date_gmt":"2020-05-28T11:33:31","guid":{"rendered":"https:\/\/binaryterms.com\/?p=1519"},"modified":"2020-05-28T17:32:47","modified_gmt":"2020-05-28T12:02:47","slug":"class-model","status":"publish","type":"post","link":"https:\/\/binaryterms.com\/class-model.html","title":{"rendered":"Class Model"},"content":{"rendered":"<p><strong>Class model<\/strong> defines the structure of the entire system by identifying the static structure of objects in that system. A class model defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.<\/p>\n<p>A class model prepares the platform for the other two models i.e. the state model and interaction model. Class model is considered important as it represents the <strong>graphical representation<\/strong> of the entire system and helps in analysis while communicating with the customers.<\/p>\n<p>The motive behind constructing the class model is to concentrate on those concepts of real world that are important from the application point of view. In this section, we will discuss the class model along with its elements like the objects, classes, links and association between the classes.<\/p>\n<h2>Content: Class Model<\/h2>\n<ol>\n<li><a href=\"#ObjectsinClassModel\">Objects in Class Model<\/a><\/li>\n<li><a href=\"#ClassesinClassModel\">Classes in Class Model<\/a><\/li>\n<li><a href=\"#RelationshipBetweenClassesandObjects\">Relationship Between Objects and Classes<\/a><\/li>\n<li><a href=\"#KeyTakeaways\">Key Takeaways<\/a><\/li>\n<\/ol>\n<p><a name=\"ObjectsinClassModel\"><\/a><\/p>\n<h3>Objects in Class Model<\/h3>\n<p>An <strong>object<\/strong> is an abstracted thing that comprises <strong>data structure<\/strong> and <strong>behaviour<\/strong>. Each object can be identified distictly from the application perspective. The objects that share the same data structure and behaviour are classified to a single <strong>class<\/strong>.<\/p>\n<p>We can classify the object into two types, concrete object and a conceptual object. A <strong>concrete\u00a0object<\/strong> is the one which has existence in the real world, for example, Jhon, IBM company, a file in a file system etc. <strong>Conceptual object<\/strong> is one which has existence in the real world but can not be accessed or sensed for example an insurance policy, a formula to solve a quadratic equation, scheduling policy of an operating system etc.<\/p>\n<p>The objects in the system are identified from the problem statement provided for developing the software. Generally, the objects in the system are <strong>proper noun<\/strong> and identified such that they are important from the applications view point.<\/p>\n<p>Every object is distinctly identified in the system, even though they have the same attribute values and share the same functions. Consider two bikes that are of the same company, same model, same features and even have the same colour. Still, two bikes are two different instances of the same class and have an individual identity.<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1520\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg\" alt=\"Object in class model\" width=\"458\" height=\"237\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg 458w, https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model-300x155.jpg 300w\" sizes=\"auto, (max-width: 458px) 100vw, 458px\" \/><\/p>\n<p><a name=\"ClassesinClassModel\"><\/a><\/p>\n<h3>Classes in Class Model<\/h3>\n<p>We can define a <strong>class<\/strong> as a <strong>group<\/strong> of <strong>objects<\/strong> possessing the same attributes and the same operations. An object is said to be an instance or an occurrence of the class. To understand this in a better way consider a class Person. Look at the image below you can observe, two objects of the class person i.e. Joe and Smith. They share the same attributes such as name, city and same operation such as change-city, change-job.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1521\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Class-in-class-model.jpg\" alt=\"Class in class model\" width=\"470\" height=\"283\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Class-in-class-model.jpg 470w, https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Class-in-class-model-300x181.jpg 300w\" sizes=\"auto, (max-width: 470px) 100vw, 470px\" \/><\/p>\n<p>Generally, a class is always a common noun or a noun phrase that is derived from the problem statement provided to develop the system. Objects in the class can be distinguished identically on the basis of their attribute values although two objects from the same class can have all attributes values same.<\/p>\n<p>Whenever the class is derived from the problem statement, choice of its properties (attributes) and behaviour (operation) depends upon the purpose of the application while the rest properties and functions are ignored.<\/p>\n<p>Let us suppose, a company has several people then they all will be classified to a class employee. Now consider a shopping centre here the people will be classified into two different classes employee and customer. So, the interpretation of the classes depends on the purpose of the application.<\/p>\n<p>The class model is represented using the <strong>class diagram<\/strong> which is the graphical representation of the classes and their relationship with each other. It also describes the possible objects for each class.<br \/>\n<a name=\"RelationshipBetweenClassesandObjects\"><\/a><\/p>\n<h3>Relationship Between Objects and Classes<\/h3>\n<p>To define the relationship between the objects and classes two terms are used, <strong>link<\/strong> and <strong>association<\/strong>. A <strong>link<\/strong> defines the connection between the <strong>objects<\/strong>. A link can relate two or more objects.<\/p>\n<p><strong>Association<\/strong> can be defined as the <strong>group of links<\/strong> and a link is said to be an instance of the association. Like a class describes all possible objects similarly association describe all possible links. In a problem statement, a link or association can be identified by the <strong>verbs<\/strong> present in the problem statement.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1522\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Links-and-association-in-class-model.jpg\" alt=\"Links and association in class model\" width=\"567\" height=\"441\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Links-and-association-in-class-model.jpg 567w, https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Links-and-association-in-class-model-300x233.jpg 300w\" sizes=\"auto, (max-width: 567px) 100vw, 567px\" \/><\/p>\n<p>When some classes have some common features then those features are factored out in a superclass. The superclass has the general information which is shared by all its subclasses. This relation between a superclass and one or more of its subclasses is called <strong>Generalization<\/strong>.<\/p>\n<p>Generalization is referred to as \u2018is-a\u2019 relationship. The concept of generalization organizes the classes in a hierarchy where the subclasses inherit the features of superclass.<br \/>\n<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1523\" src=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Generalization-and-Inheritence-in-class-model.jpg\" alt=\"Generalization and Inheritence in class model\" width=\"477\" height=\"281\" srcset=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Generalization-and-Inheritence-in-class-model.jpg 477w, https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Generalization-and-Inheritence-in-class-model-300x177.jpg 300w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/p>\n<p><a name=\"KeyTakeaways\"><\/a><\/p>\n<div id=\"keytake\">\n<h3>Key Takeaways<\/h3>\n<ul>\n<li>The class model is the graphical representation of the structure of the system and also the relation between the objects and classes in the system.<\/li>\n<li>Each object in the system has data structure and behaviour.<\/li>\n<li>Object sharing the same features are grouped to a class.<\/li>\n<li>Objects are the proper nouns and classes are common nouns identified in the problem statement provided for the development of the application.<\/li>\n<li>The relationship between the objects is the link and the group of links with the same structure is termed as an association.<\/li>\n<li>The class model focuses on the factors that are essential from the applications point of view.<\/li>\n<\/ul>\n<\/div>\n<p>So, this is all about the class model which is the graphical representation that incorporates objects, classes, the relation between objects and classes.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Class model defines the structure of the entire system by identifying the static structure of objects in that system. A class model defines attributes and operations for the objects of each class and also the relationship between the objects in the systems. A class model prepares the platform for the other two models i.e. the [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","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":"","footnotes":""},"categories":[10],"tags":[],"class_list":{"0":"post-1519","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-oot","7":"entry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What is Class Model? Objects, Class, Relations - Binary Terms<\/title>\n<meta name=\"description\" content=\"Class model defines the structure of the system by identifying the static structure of objects in that system. It defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/binaryterms.com\/class-model.html\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Class Model? Objects, Class, Relations - Binary Terms\" \/>\n<meta property=\"og:description\" content=\"Class model defines the structure of the system by identifying the static structure of objects in that system. It defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/binaryterms.com\/class-model.html\" \/>\n<meta property=\"og:site_name\" content=\"Binary Terms\" \/>\n<meta property=\"article:published_time\" content=\"2020-05-28T11:33:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-05-28T12:02:47+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg\" \/>\n<meta name=\"author\" content=\"Neha T\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Neha T\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/binaryterms.com\/class-model.html#article\",\"isPartOf\":{\"@id\":\"https:\/\/binaryterms.com\/class-model.html\"},\"author\":{\"name\":\"Neha T\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe\"},\"headline\":\"Class Model\",\"datePublished\":\"2020-05-28T11:33:31+00:00\",\"dateModified\":\"2020-05-28T12:02:47+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/binaryterms.com\/class-model.html\"},\"wordCount\":900,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/binaryterms.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/class-model.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg\",\"articleSection\":[\"Object Oriented Technology\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/binaryterms.com\/class-model.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/binaryterms.com\/class-model.html\",\"url\":\"https:\/\/binaryterms.com\/class-model.html\",\"name\":\"What is Class Model? Objects, Class, Relations - Binary Terms\",\"isPartOf\":{\"@id\":\"https:\/\/binaryterms.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/binaryterms.com\/class-model.html#primaryimage\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/class-model.html#primaryimage\"},\"thumbnailUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg\",\"datePublished\":\"2020-05-28T11:33:31+00:00\",\"dateModified\":\"2020-05-28T12:02:47+00:00\",\"description\":\"Class model defines the structure of the system by identifying the static structure of objects in that system. It defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.\",\"breadcrumb\":{\"@id\":\"https:\/\/binaryterms.com\/class-model.html#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/binaryterms.com\/class-model.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/binaryterms.com\/class-model.html#primaryimage\",\"url\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg\",\"contentUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg\",\"width\":458,\"height\":237,\"caption\":\"Object in class model\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/binaryterms.com\/class-model.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/binaryterms.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Class Model\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/binaryterms.com\/#website\",\"url\":\"https:\/\/binaryterms.com\/\",\"name\":\"Binary Terms\",\"description\":\"The Computer Science &amp; IT Guide\",\"publisher\":{\"@id\":\"https:\/\/binaryterms.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/binaryterms.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/binaryterms.com\/#organization\",\"name\":\"Binary Terms\",\"url\":\"https:\/\/binaryterms.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png\",\"contentUrl\":\"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png\",\"width\":400,\"height\":63,\"caption\":\"Binary Terms\"},\"image\":{\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe\",\"name\":\"Neha T\",\"url\":\"https:\/\/binaryterms.com\/author\/author\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What is Class Model? Objects, Class, Relations - Binary Terms","description":"Class model defines the structure of the system by identifying the static structure of objects in that system. It defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.","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:\/\/binaryterms.com\/class-model.html","og_locale":"en_GB","og_type":"article","og_title":"What is Class Model? Objects, Class, Relations - Binary Terms","og_description":"Class model defines the structure of the system by identifying the static structure of objects in that system. It defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.","og_url":"https:\/\/binaryterms.com\/class-model.html","og_site_name":"Binary Terms","article_published_time":"2020-05-28T11:33:31+00:00","article_modified_time":"2020-05-28T12:02:47+00:00","og_image":[{"url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg","type":"","width":"","height":""}],"author":"Neha T","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Neha T","Estimated reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/binaryterms.com\/class-model.html#article","isPartOf":{"@id":"https:\/\/binaryterms.com\/class-model.html"},"author":{"name":"Neha T","@id":"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe"},"headline":"Class Model","datePublished":"2020-05-28T11:33:31+00:00","dateModified":"2020-05-28T12:02:47+00:00","mainEntityOfPage":{"@id":"https:\/\/binaryterms.com\/class-model.html"},"wordCount":900,"commentCount":0,"publisher":{"@id":"https:\/\/binaryterms.com\/#organization"},"image":{"@id":"https:\/\/binaryterms.com\/class-model.html#primaryimage"},"thumbnailUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg","articleSection":["Object Oriented Technology"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/binaryterms.com\/class-model.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/binaryterms.com\/class-model.html","url":"https:\/\/binaryterms.com\/class-model.html","name":"What is Class Model? Objects, Class, Relations - Binary Terms","isPartOf":{"@id":"https:\/\/binaryterms.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/binaryterms.com\/class-model.html#primaryimage"},"image":{"@id":"https:\/\/binaryterms.com\/class-model.html#primaryimage"},"thumbnailUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg","datePublished":"2020-05-28T11:33:31+00:00","dateModified":"2020-05-28T12:02:47+00:00","description":"Class model defines the structure of the system by identifying the static structure of objects in that system. It defines attributes and operations for the objects of each class and also the relationship between the objects in the systems.","breadcrumb":{"@id":"https:\/\/binaryterms.com\/class-model.html#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/binaryterms.com\/class-model.html"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/binaryterms.com\/class-model.html#primaryimage","url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg","contentUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/Object-in-class-model.jpg","width":458,"height":237,"caption":"Object in class model"},{"@type":"BreadcrumbList","@id":"https:\/\/binaryterms.com\/class-model.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/binaryterms.com\/"},{"@type":"ListItem","position":2,"name":"Class Model"}]},{"@type":"WebSite","@id":"https:\/\/binaryterms.com\/#website","url":"https:\/\/binaryterms.com\/","name":"Binary Terms","description":"The Computer Science &amp; IT Guide","publisher":{"@id":"https:\/\/binaryterms.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/binaryterms.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/binaryterms.com\/#organization","name":"Binary Terms","url":"https:\/\/binaryterms.com\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/","url":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png","contentUrl":"https:\/\/binaryterms.com\/wp-content\/uploads\/2020\/05\/binary-terms-logo1.png","width":400,"height":63,"caption":"Binary Terms"},"image":{"@id":"https:\/\/binaryterms.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/binaryterms.com\/#\/schema\/person\/e495f1d57f5c0a4c521cc3dba95661fe","name":"Neha T","url":"https:\/\/binaryterms.com\/author\/author"}]}},"_links":{"self":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/1519","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/comments?post=1519"}],"version-history":[{"count":0,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/posts\/1519\/revisions"}],"wp:attachment":[{"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/media?parent=1519"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/categories?post=1519"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/binaryterms.com\/wp-json\/wp\/v2\/tags?post=1519"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}