1. 파라미터 DB 등록 및 사용
1) 왜?
ㄱ. 시스템에 적용되는 대상이 추가 또는 삭제되거나, 대상에 관한 정보가 변경되었을 때, 소스를 수정하지 않고 쉽게 시스템에 반영하기 위함
ㄴ. 대상에 관한 정보를 테이블 조회를 통해 일목요연하게 보기 위함
2) 파라미터 테이블 구성
ㄱ. 프로젝트에 맞게 다양하고 많은 정보를 담을 수 있도록 파라미터 테이블을 구성한다.
ㄴ. 파라미터 DB를 조회할 때, 각 정보들이 어떤 의미인지 알 수 있도록 Description 컬럼을 매핑하고, Description에 의미를 간략히 쓰도록 한다.
(다른 사람이 만든 파라미터 DB를 조회할 때, 각 항목들의 정보가 어떤 의미인지 알기 힘든 경우가 많다. 의미를 파악하기 위해서는 파라미터 DB 를 조회하는 소스를 찾아서 각 항목들의 문맥을 파악해야 한다. 이러한 시간 소요를 줄이기 위함)
ㄷ. 컬럼 구성은 아래와 같다.
<필수>
a. Primary key : 프로그램 ID, 파라미터 셋, 파라미터 총 3개
b. 적용일시, 종료일시 총 2개 (DATE 형이 아니라, VARCHAR2(14))
<프로젝트에 맞게 조정 가능>
c. 파라미터 셋 Description 컬럼, 파라미터 Description 컬럼
d. VARCHAR(50)형 컬럼과 그에 대한 Description 컬럼(VARCHAR2(50)) 각각 6개
e. NUMBER(20,3)형 컬럼과 그에 대한 Description 컬럼(VARCHAR2(50)) 각각 5개
f. DATE형 컬럼과 그에 대한 Description 컬럼(VARCHAR2(50)) 각각 4개
3) 파라미터 테이블 조회
ㄱ. 조회할 때 적용일자와 종료일자를 반드시 조회조건에 넣어서 조회한다.
이렇게 하면, 시스템에 적용되는 그 시점, 또는 시스템에서 적용되지 않는(종료되는) 그 시점에 파라미터 DB를 변경하지 않고, 미리 변경해놓을 수 있다.
ㄴ. 배치일 경우, 추후에 수동으로 재작업을 할 수 있으므로, SYSDATE보다 파라미터 일자를 입력하도록 한다.
4) 주의사항
ㄱ. 파라미터에 관한 기본적인 설명을 소스에 자세히 적어야 한다. 그리고 대상 기관 추가와 같은 프로그램 구동 환경이 변경됐을 때, 어떤 파라미터를 수정해야 하는지에 대한 정보가 소스 상에 주석으로 적혀 있어야 한다.
왜냐하면, 파라미터 테이블은 여러 장점이 있지만, 파라미터 테이블 안에 어떤 정보가 있는지를 찾기 어려운 점이 있다. 프로그램 소스에 관련 정보가 있을 경우, 기존에 적용된 대상의 프로그램 구동과 관련된 정보를 텍스트 에디터의 search 기능을 이용해서 쉽게 조회가능하다. 그러나 테이블 내에 있는 데이터는 쉽지 않다.
의견 도움 – 구태우 차장님, 이윤기 과장님.
'Programming Theory > Design Pattern' 카테고리의 다른 글
Builder pattern (0) | 2016.01.31 |
---|---|
Singleton Pattern (0) | 2016.01.01 |