You are on page 1of 21

Cohesion is one of the term used in the field of Software Engineering.

I would like to describe what is Cohesion and the types of Cohesion. Cohesion: A Module with cohesion represents how the lightly bound the Internal elements of the module are to one another.Whenever the Cohesion is greater,the coupling between the modules are lower.The internal Cohesion of a module is measured in terms of the strength of the hiding of the elements within the modules itself. There are many different levels of Cohesion are used in several levels of an module. Coincidental Cohesion: It is one level of cohesion.It occurs when the elements within a given module have no apperent relationship to each other.It occurs when an existing program is making different pieces of modules. Logical Cohesion: A Module has Logical Cohesion only if there is some Logical relationship between the elements of the module.The elements of the module perform functions which fall in the same logical class. Temporal Cohesion: This level cohesion is same as logical cohesion, the only differents is that the elements are also related in time and are executed at the same time. Procedural Cohesion: This level Cohesion contains the elements which belongs to a common procedural unit.Procedural Cohesion often cuts across functional lines. Communicational Cohesion: A Module which contains Communicational Cohesuion has the elements that are related by a refrence to the same input or output data. Sequential Cohesion: These Cohesion occurs only when the output of one element is the input for the next element. Functional Cohesion:

This level Cohesion is the strongest cohesion when compared to other levels.In a functionally bound module,all the elements of the module are related to performing a single function.

Spiral Model is called meta model because it is composed of several other models.For example a single loop spiral actually represent the Waterfall Model.The spiral model uses prototyping approach before embarking on the actual product development effort.Also the spiral model can be considered as supporting the evolutionary model-the iterations along the spiral can be considered as evolutionary levels through which the complete system is built.This enables the developer to understand and resolve the risks at each evolutionary level.The spiral model uses prototyping as a risk reduction mechanism and also retain the systematic step approach of waterfall model

Characteristics of a Good SRS A good SRS document has certain characteristics that

must be present. Thecharacteristics are:1. Correctness. An SRS is correct if every requirement included in the SRSrepresents something required

in the final system.2. Completeness. An SRS is complete when it is documented after:( i ) The involvement of all types of

concerned personnel.( ii ) Focusing on all problems, goals, and objectives, and not only on functionsand features.( iii

) Correct definition of scope and boundaries of the software and system.3. Unambiguous. An SRS is unambiguous if and only if every requirementstated

has one and only one interpretation. Requirements are often written ina natural language. The SRS writer has to be especially careful to ensure thatthere are no ambiguities.

One way to avoid ambiguities is to use some formalrequir ements specification language. The major disadvantage of using

formallanguages is the large effort required to write an SRS, the high cost of doingso, and the increased difficulty of reading and understanding formally

statedrequirements (particularly by the users and clients).4. Verifiable. An SRS is verifiable if and only if there exists some costeffective process

that can check whether the final product meets the requirements.5. Modifiable. An SRS is modifiable if its structure and style are such that anynecessary

change can be made easily while preserving completeness andconsistency. The presence of redundancy is a major hindrance to modifiability,as it can easily lead to

errors. For example, assume that a requirement isstated in two places and that the requirement later needs to be changed. If only one occurrence of the requirement is

modified, the resulting SRS will beinconsistent.6. Traceable. The SRS is traceable if the origin of each of the requirements is clear and if it facilitates

the referencing of each requirement in future developmentor enhancement documentation. Two types of traceability are recommended:( i

) Backward traceability . This depends upon each requirement explicitlyreferenci ng its source in earlier documents.( ii

) Forward traceability . This depends upon each requirement in the SRShaving a unique name or reference number.7.

Consistency. Consistency in the SRS is essential to achieve correct resultsacross the system. This is achieved by:( i

) The use of standard terms and definitions.( ii ) The consistent application of business rules in all functionality.( iii

) The use of a data dictionary.INTRO DUCTION TO SOFTWARE REQUIREMENTS SPECIFICATION 79 ( iv

) The lack of consistency results in an incorrect SRS and failure in deliverablesto customer.

You might also like