본문 바로가기

B1:기초 Basement

응집력 (Cohesion in computer science)

반응형
주제(Subject)
--------------------------------------------------------
한글(약어) : 응집력,응집도()
영어(약어) : cohesion()


관련개념(Related Concepts)
--------------------------------------------------------
모듈화
결합도(coupling)


개요(Summary)
--------------------------------------------------------
모듈 내부의 요소들이 상호연관성을 가지는 정도. 연관성이 높으면 강한 응집력이라 하고, 모듈 내부의 요소간 연관성이 낮으면 낮은 응집력이라고 한다.


본문(Body)
--------------------------------------------------------
1. 응집력의 정도에 따른 분류 (Wikipedia:Cohesion (computer science))
우연적 : Coincidental cohesion (worst)
Coincidental cohesion is when parts of a module are grouped arbitrarily (at random); the parts have no significant relationship (e.g. a module of frequently used functions).
 
논리적 : Logical cohesion
Logical cohesion is when parts of a module are grouped because they logically are categorised to do the same thing, even if they are different by nature (e.g. grouping all I/O handling routines).

임시적 : Temporal cohesion
Temporal cohesion is when parts of a module are grouped by when they are processed - the parts are processed at a particular time in program execution (e.g. a function which is called after catching an exception which closes open files, creates an error log, and notifies the user).

절차적 : Procedural cohesion
Procedural cohesion is when parts of a module are grouped because they always follow a certain sequence of execution (e.g. a function which checks file permissions and then opens the file).

교환적 : Communicational cohesion
Communicational cohesion is when parts of a module are grouped because they operate on the same data (e.g. a module which operates on the same record of information).

순차적 : Sequential cohesion
Sequential cohesion is when parts of a module are grouped because the output from one part is the input to another part like an assembly line (e.g. a function which reads data from a file and processes the data).

기능적 : Functional cohesion (best)
Functional cohesion is when parts of a module are grouped because they all contribute to a single well-defined task of the module (e.g. calculating the sine of an angle).


2. 낮은 응집력과 높은 응집력을 그림으로 이해하기
Source : http://www.waysys.com/
Meilir Page-Jones © Copyright 1998, Wayland Systems Inc. All rights reserved.

높은 응집력
Meilir Page-Jones © Copyright 1998, Wayland Systems Inc. All rights reserved.

3. 응집력의 각 단계별 설명
http://www.waysys.com/ws_content_bl_pgssd_ch06.html 를 참조.



모임,단체(Commutities)
--------------------------------------------------------


블로그,개인 홈페이지 등(Humanities)
--------------------------------------------------------


참고문서(References)
--------------------------------------------------------
* 한국어(Korean)
저자. 역자. "제목". 출판사. 출판년도. (ISBN:)

* 영어(English)
저자. 제목, 판, 출판사. 출판년도. (ISBN:)
1. Cohesion metrics
   http://www.aivosto.com/project/help/pm-oo-cohesion.html

2. Cohesion - Meilir Page-Jones
   http://www.waysys.com/ws_content_bl_pgssd_ch06.html
  



3. Meilir Page-Jones. Practical Guide to Structured Systems Design , 2nd Edition(Paperback), Prentice Hall PTR. 1988.(ISBN:978-0136907695)
   http://www.amazon.com/exec/obidos/ASIN/0136907695/qid=902416490/sr=1-2/002-1864651-4643442
반응형