Class Responsibility Collaborator Modelling
After developing usage scenarios the system classes, their responsibilities and collaborations are identified. Class responsibility collaborator provides a simple way to identification and arrangement ( organization ) of class that are relevant to system or product requirements. Ambler has described CRC melding as:
A CRC model is really a collection of standard index cards that represent classes. The cards are divided into three sections. Along the top of the card you write the name of the class. In the body of the card you list the class responsibilities on the left and the collaborators on the right.
In reality the CRC model may make use of actual or virtual cards so that an organized representation of classes can be developed. Responsibilities are the attributes and operations that are relevant for the class. Collaborators are those classes that are needed to provide a responsibility.
Classes As we know that the object can be external entities, things occurrences or events roles organizational units, places or structures. These are indentified in the context of a software problem .all nouns become potential objects.
Coad and Yourdon suggested six selection characteristics that should be used as analyst considers each potential object for inclusion in the analysis model. The various selection characteristics are:
1. Retained Information : Potential objects will be useful during analysis only if information about it must be remembered so that the3 system functions.
2. Needed Services : Potential objects must have a set of identifiable operations that can change the value of its attributes in some ways.
3. Multiple Attributes : During requirements analysis the focus should be on major information.
4. Common Attributes :A set of attributes can be defined for the potential objects and these attributes apply to all occurrences of the project
5. Common Operations: :A set of attributes can be defined for the potential objects and these attributes apply to all occurrences of the project.
6. Essential Requirements : External entities that appear in the problem space and produce or consume the information that is essential to the operation of any solution for the system will almost always be defined as objects in the requirements.
To be considered a legitimate object for inclusion in the requirements model, a potential objects should satisfy some ( or almost all ) of these characteristics.
Fire smith has extended this class types by suggesting some additions as given below:
In addition objects and classes may be categorized by a set of characteristics that are tangible ( tangible or intangible class) inclusive ( atomic or aggregate class) sequence ( sequential or concurrent class) persistent ( temporary permanent or transient class) and integrity ( secured or unsecured class).
Using these class categories the index card might be extended to include the type of class and its characteristics as shown in fig 7.20
Responsibilities
Responsibilities basically consist of attributes and operation of a class. The attributes are the stable features of a class be achieve from the statement of the scope or by understanding the nature of the class. The operations of class exhibit the behaviour or the class. Wirfs Brock and her colleagues suggested some guideline for the responsibilities of a class. They are :
1. System intelligence should be evenly distributed .
2. Each responsibility should be state as general as possible.
3. Information and the behaviour related to it should reside within the same class.
4. Information about one thing should be localized with a single class not distributed across multiple classes.
5. Responsibility should be shared among related classes when appropriate.
The responsibilities of classes can be fulfilled in two ways.
1. A class can use its own operation to manipulate its own attributes.
2. A class can collaborate with other class (discussed in next section)
Collaboration
Wirfs Brock and her colleagues define collaborations in the followings way:
Collaborations represent requests from a client to a server in fulfilment of a client responsibility. A collaboration is the embodiment of the contract between the client and the server.........We say that an object collaborates with another objects if to fulfil a responsibility it need to seen the other objects any messages. A single collaboration flows in one direction representing a request form the client to the server. From the client point of view each of its collaborations are associated with a particular responsibility implemented by the server"
The collaborations are used to identify relationship between classes. When a set of classes all collaborate to achieve some requirement they can be organized into a subsystem.
Collaborations are identified by deterring whether a class can fulfil each responsibility itself. If cant then it needs to interact with another class. Hence a collaboration.
To aid in the identification of collaborators the analyst can examine three different generic relationship between classes given by wirfs Brock. There are discussed below one by one
1. The is part of relationship in which one class is the part of another class. For example the class human body is part of a class human.
2. The has knowledge of relationship is required when one class acquires information form another class.
3. The depends upon relationship exists in which tow classes have a dependency with each other. For example human head must always be connected to human body. So human head depends upon human body.
So the analyst develops the connections necessary to identify these relationships. In all case the index card contains a list of responsibilities and the corresponding collaborations that enable the responsibilities to be fulfilled. After developing a complete CRC model, the model is reviewed by using the following approach given by ambler:
1. All participants in the review ( of the CRC model) are given a subset of the CRC model index cards. Cards that collaborate should be separated ( i. e. No reviewer should have two cards that collaborate.)
2. All use case scenarios ( and corresponding use case diagrams ) should be organized into categories.
3. The review leader reader reads the use case deliberately. As the review leader comes to a named object she passes a token to the person holding the corresponding class index card.
4. When the token is passed the holder of the class card is asked to describe the responsibilities noted on the card. The group determined whiter one( or more ) of the responsibilities satisfies the use case requirement.
5. If the responsibilities and collaborations noted on the index cards can't accommodate the use case modification are made to the cards.
When all use cases ( or use case diagrams ) have been reviewed OOA continues.
Latest technology based Software Engineering Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Class Responsibility Collaborator Modelling homework help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Class Responsibility Collaborator Modelling, project ideas and tutorials. We provide email based Class Responsibility Collaborator Modelling homework help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Class Responsibility Collaborator Modelling. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Software Engineering homework help and assignment help services. They use their experience, as they have solved thousands of the software engineering assignments, which may help you to solve your complex issues of Class Responsibility Collaborator Modelling. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.
Osmotic Response-Freshwater and Terrestrial tutorial all along with the key concepts of Freshwater Invertebrates, Freshwater Vertebrates, Terrestrial Invertebrates, Terrestrial Vertebrates, Terrestrial Mammals
tutorsglobe.com human population and explosion-issues assignment help-homework help by online environmental science tutors
tutorsglobe.com measurement of profit assignment help-homework help by online concepts of revenue tutors
tutorsglobe.com laboratory diagnosis and control assignment help-homework help by online clostridium botulinum tutors
identification of the fault in given tv receiver - the tv receiver is switched on firstly. there is no picture on the screen except red retrace lines appear on the screen.
Polyurethanes, Cellulose-Polyacrylonitrile tutorial all along with the key concepts of Polyurethanes, Spandex, Cellulose, Polyacrylonitrile, Polymers an Application
adhesives tutorial all along with the key concepts of types of adhesives, natural adhesives, synthetic adhesives, production of adhesives, water-based adhesives, hot-melt adhesives, vegetable-based adhesives, solvent-based adhesives, reactive adhesives, sealants, uses of adhesives
Financial reporting has been about for many hundreds of years. It appears to have come out like a result of one or more persons having custody and management of assets that belonging to one or more others.
Algae tutorial all along with the key concepts of Categorization into Groups, Structure of Spirogyra, Adaptation of Spirogyra, Structure of Fucus, Adaptations of Fucus and Benefits of algae
Basic structure of an atom and atomic models tutorial all along with the key concepts of Atomic Structure, Charge Quantization, Mass Spectra, Isotopes, Atomic models, Bohr's model of an atom, Hydrogen Spectra
tutorsglobe.com buffers assignment help-homework help by online cell membrane tutors
tutorsglobe.com immunology assignment help-homework help by online biochemistry tutors
Lagrange and Hamilton Formulation of Mechanics tutorial all along with the key concepts of D'Alembert's Principle, Generalized Equations of Motion, Generalized Conservative Forces, Euler-Lagrange Equations, Lagrange's Mechanics, Conservative Systems, Generalized Coordinates, Generalized Momenta, 2-D motion with time-varying constraint
www.tutorsglobe.com offers Priestman Production Bonus Plan homework help, assignment help, case study, writing homework help, online tutoring assistance by accounting tutors.
tutorsglobe.com cattle breeding assignment help-homework help by online applied biology tutors
1951280
Questions Asked
3689
Tutors
1443667
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!