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.
tutorsglobe.com significance of krebs cycle assignment help-homework help by online krebs cycle tutors
it is employed for long hours continuously. fluctuating supply voltage. using in hot places. using in highly vibrating places(example in buses)
tutorsglobe.com properties of lead assignment help-homework help by online lead tutors
the fibres are acquired from the surface of seeds. hibiscus cannabinus (deccan hemp) yields bast fibres which are employed for making ropes.
tutorsglobe.com fourth law of lamarckism assignment help-homework help by online lamarckism tutors
Theory and lecture notes of Imperfect Labour Markets all along with the key concepts of Monophony, Profit Maximization by a Monopolist, Prevalence of Monophony, Labour Mobility, Return and Repeat Migration. Tutorsglobe offers homework help, assignment help and tutor’s assistance on Imperfect Labour Markets.
Quantum Mechanics tutorial all along with the key concepts of Introduction to quantum mechanics, Three revolutionary principles, A brief history
tutorsglobe.com cost concepts and categorization assignment help-homework help by online cost and revenue tutors
www.tutorsglobe.com offers software requirements specification homework help, assignment help, case study, writing homework help, online tutoring assistance by computer science tutors.
The driver transformer contains two secondary coils that are wound in reverse directions. It sends the needed signals to the output transistors.
Cellular Response tutorial all along with the key concepts of Properties of Innate Immune Response, Properties of Adaptive Immune Response, Kinds of Adaptive Immune Response, Active and Passive Immunity, Genetics of response to antigenic stimulation, Clonal Selection Theory
tutorsglobe.com heterotrophic nutrition assignment help-homework help by online mode of nutrition tutors
tutorsglobe.com gluconeogenesis of glycerol assignment help-homework help by online gluconeogenesis tutors
tutorsglobe.com properties of crystalline solids assignment help-homework help by online solid state chemistry tutors
solutions of solids and gases in liquids tutorial all along with the key concepts of solutions of solids in liquids, solutions of gases in liquids, factors affecting the solubility of gases
1951864
Questions Asked
3689
Tutors
1447423
Questions Answered
Start Excelling in your courses, Ask an Expert and get answers for your homework and assignments!!