There are seven levels of cohesion:
1. Coincidental Cohesion
2. Logical Cohesion
3. Temporal Cohesion
4. Procedural Cohesion
5. Communicational Cohesion
6. Sequential Cohesion
7. Functional Cohesion
1. Coincidental Cohesion: The worst degree of cohesion is coincidental which is placed at the lowest level. It occur when there is no meaningful relationship exist among the elements of a module. so a module perform the tasks which are loosely related or almost unrelated to each other. It can occur if an existing program is modularized by breaking it into pieces and making different pieces of module. if a module is created to save duplicate code by combing some part of code which occurs at many different places that module is likely to have coincidental cohesion. So the statements of the module do not any relationship with each other. For example a module that checks a user security classification and also prints this week payroll is coincidentally cohesive.
2. Logical Cohesion: Logical cohesion is the next higher level of cohesion where several logically related functions or data elements are placed in the same component. For one module may read all kinds of inputs ( from tape disk etc.) regardless of where the input is coming from or how it will be used input is the glue that holds this module together. Although more reasonable than confidential one, the elements of a logically cohesive module are not related functionally. In our example since the input can have different purposes for different modules, we perform many unrelated functions in one place.
3. Temporal Cohesion: Temporal cohesion is same as logical cohesion, except that here the elements are related with time and executed together. So the time concern is associated here. When a module performs tasks that must be executed with same duration of time, that module is called a logically cohesive module. elements of the modules in this case are time related. Temporal cohesion in higher than logical cohesion because the elements are executed simultaneously.
4. Procedural Cohesion: When elements are grouped together in a module just to follow a sequential order, the component is procedurally cohesive. So the elements of a module are evaluated with each other and must be executed in a specific order, and belong to a common procedural unit. For example a loop of decision statements in a module may be combined to form a separate module. procedurally cohesive modules often occur when modular structure is determined from some form of flow chart.
5. Communicational Cohesion: Communicational cohesive has elements that are related by a reference to the same input or output data. Here the elements concentrate on one area of a data structure. In a communication bound module the elements are together because they operate on the same input or output. Such modules may perform more than one function. This cohesion is sufficiently high and generally acceptable if alternative structures with higher cohesion cannot be easily identified. However, communicational cohesion often destroys the modularity and functional independence of the design.
6. Sequential Cohesion: If the output from one part of a module is input to the next part the module has sequential cohesion. So all the elements are related in such a way in a modules so that the output of one forms the input to another. But the sequential cohesion does not provide any guidelines on how combine elements of a module. a sequentially bound module may contain several function or parts of different function.
7. Functional Cohesion: Our ideal is the functional cohesion which is the strongest cohesion. Here all the elements of the module are related to perform a single whole sole function. In this cohesion every processing elements is essential to the performance of a single function and all essential components are contained in one module.
For an example to find factorial of the number can be considered as a single function to be performed.
Fig 5.14. shown the example of various types of cohesion.
Steven et al. Has provided some simple guidelines for determining the degree of cohesion :
A useful technique in determining whether a module is functionally bound is writing a sentence, describing the function of the module and then examining the sentence. The following tests can be made:
Functionally bound modules can always be described by way their elements using a compound sentence. But if the above language is in a voidable while still completely describing the module function the module is probably no functionally bound.
So it is better to strive for high cohesion.
Latest technology based Software Engineering Online Tutoring Assistance
Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Levels of Cohesion homework help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Levels of Cohesion, project ideas and tutorials. We provide email based Levels of Cohesion homework help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Levels of Cohesion. 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 Levels of Cohesion. 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.
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.
Passive Filters tutorial all along with the key concepts of Band-pass filter, Band-reject filter, Notch Filter, transfer function, Low-pass filter, High-pass filter, Amplitude response of high-pass, Phase-shift filter
tutorsglobe.com diffusion of charged particles assignment help-homework help by online passive transport tutors
tutorsglobe.com protein-lecithin as carrier assignment help-homework help by online carrier concept tutors
tutorsglobe.com heart valves assignment help-homework help by online circulation tutors
tutorsglobe.com first law of thermodynamics assignment help-homework help by online chemical thermodynamics tutors
tutorsglobe.com biological importance of surface tension assignment help-homework help by online surface tension tutors
tutorsglobe.com taysach’s disease assignment help-homework help by online inborn errors of metabolism tutors
theory and lecture notes of ttl nand gate all along with the key concepts of ttl nand gate circuit structure, logical operation and circuit analysis. tutorsglobe offers homework help, assignment help and tutor’s assistance on ttl nand gate.
Elastic Property of Matter tutorial all along with the key concepts of Hooke's Law, Concept of yield point, Ductile Substances, Brittle Substance, Ultimate tensile strength, Elastic modulus
tutorsglobe.com hybridization assignment help-homework help by online breeding experiments tutors
tutorsglobe.com oxidation of sulphur compounds assignment help-homework help by online sulphur cycle tutors
tutorsglobe.com effects of solar radiation assignment help-homework help by online skin tutors
Introduction to Organic Chemistry III tutorial all along with the key concepts of Properties of Organic Compounds, History of Organic Chemistry, Difference between Organic and an Inorganic Compound, Classification of Organic Compounds, IUPAC Nomenclature of Organic Compounds
www.tutorsglobe.com offers nucleophilic addition & reduction homework help, assignment help, online tutoring assistance, organic chemistry solutions by online qualified tutor's help.
1941190
Questions Asked
3689
Tutors
1477604
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!