2016-11-14 1 views
1

기술 스택 : .NET데이터베이스 드라이브 비즈니스 규칙 엔진

문제 진술서 : 시험 다음에 코드 응용 프로그램은 비즈니스 규칙을 많이 가지고, 기존의 규칙이나 새 규칙의 추가의 변화가 전체 릴리스주기를 요구한다 (수정 및 배포).

요구 사항 [하드 누를] : 비즈니스 사용자가 GUI를 탐구

옵션을 사용하여 동적으로 비즈니스 규칙을 지정 할 수 있어야한다 :

  1. MS BRE를, 그러나 Biztalk
  2. 닷넷과 함께 번들로 스택 오픈 소스 비즈니스 룰 엔진 (SRE, Drools.NET, NxBRE 등) - 대부분 활성화되어 있지 않습니다.

  3. 데이터베이스에 규칙을 추가하고 동일한 추가/편집 GUI를 사용자에게 제공하지만 이것이 가장 가능성있는 것으로 보일지라도 SQL 테스트의 이유와 단위 테스트 범위의 부족은 말할 것도없고 동적 SQL의 팬이 아닙니다. 그리고 예측 가능한 유지 관리 문제.

  4. WF - 탐색하지 않지만 AFAIK에는 런타임 작성기가 없습니다. 상업 규칙 엔진을 구입

요구 사항은 온라인 시스템에 대한 옵션이 아닙니다, 어떤 제안이 가장 환영합니다.

답변

0

나는 (포스트 그레스에서) 특별한 테이블 비즈니스 규칙

CREATE TABLE acces_to_tables 
(
    rule_name name, 
    table_name name, 
    field_name name, 
    field_acc_value integer, 
    is_write boolean 
) 

보편적 인 기능에 대한 실험을 :

create_access_temp_view(table_name name, in_write_access boolean) 

현재 사용자에 대한 acces_to_tables에서 제한 조건을 데이터베이스 테이블에 TEMP보기를 생성 SELECT, INSERT, UPDATE 또는 DELETE를 호출하기 전에.

TEMP VIEW는 일반적인 해결책이 아니지만 매우 빠르게 작동합니다.