규칙과 제약
개요
비즈니스 규칙
비즈니스 규칙의 범주
비즈니스 규칙과 제약
UML : 주석
UML의 제약 표기
정적구조에 있어서의 제약 표기 : 클래스도
비즈니스 규칙과 UML의 제약표기
책임, 정적구조, 동적구조의 각 측면에서 시스템을 기술하는 방법
이들의 논리적인 정의를 물리구조로 매핑하는 경우에 이용 할 수 있는 다이어그램을 제공
물리구조란 소프트웨어시스템으로 말하면, 특정 하드웨어나 그 실 행환경을 구성하고 있는 소프트웨어제품(예를 들면, 운영체제(OS), 데이터베이스관리시스템)등과 그 관련을 의미
물리구조에의 매핑이란, 예를 들면, 클래스A를 파일명 a.cpp라는 이름의 원시파일에 격납하고, 그 클래스를 포함하는 실행코드를☓☓라는 형태의 번호로 된 PC에 탑재하여 경리부에 설치하는 것
비즈니스시스템에서는 실존 부서나 실존 종업원에의 할당을 이와개요
지금까지 소개한 다이어그램만으로 개개의 시스템을 완전하게 표 현하는 일이 가능할까?
예를 들면, 클래스도가(즉 구조적으로)완전히 같아도 시스템으로서 는 다른 것을 생성
똑같은 생업에 종사하는 여러 기업을 동일한 유즈 케이스도와 클래 스도로 표현하는 일은 불가능한 것은 아니지만 실제로는 개개의 기 업의 차이가 이용자입장에서 보고 취함
공공성이 높은 이동통신회사•
고객에 대한 서비스도 그 서비스를 제공하기 위하여 필요한 자원 (resource)도 기본적으로는 동일•
실제로는 기업마다 요금체계가 다르고, 요금징수의 방법도 개개의 기업 이 독자의 방식을 채용
차이는 비즈니스 규칙(rule)의 차이로부터 나타남
비즈니스규칙이란 그 기업의 정책(policy)이나 조건
도서관에 있어서 도서의 대출기간이나 서고에 보관되는 조건을 결 정하는 것도 규칙
납부에 관한 제약인 납부장소나 연체요금의 할증은 시간이 경과함 은 물론 변화
대출기간이나 서고에 보관되는 조건은 각 도서관의 소유자가 필요 에 따라 결정
비즈니스규칙은 비즈니스시스템 가운데에서 변경 가능성을 가지는
비즈니스 규칙(business rules)이란 어떤 것이 존재할까?
J.J.Odell은 비즈니스 규칙의 범주(category)로 분류비즈니스 규칙
규 칙
제 약 규 칙
자극/반응형 규칙
WHEN(언제)이나 IF(만일, 하면)의 사양화 (WHEN) 재고수가 적정 재고를 밑돌면, (THEN) 그 제품을 발주한다.
(IF) 고객으로부터 커튼의 주문을 받거나 또는 사이즈 변경의 승인 기간을 넘기면 (THEN) 그 커튼의 메이커에 발주를 낸다.
조작제약 규칙
사전조건과 사후조건의 사양화 아이가 한국 국적을 취득할 수 있는 것은
(ONLY IF) 그 아이의 부친 and/or 모친이 한국 국적을 갖는 경우에 한한다.
아이가 한국 국적을 취득한다(가 정확히 완결하는 것은) (ONLY IF) 그 아이가 한국국적을 취득하는 경우 뿐.
구조제약 규칙
속성의 값을 제약하는 규칙
클래스가 생성하는 객체의 수를 제약하는 규칙 관련의 다중도를 제약하는 규칙
「언제든지 성립한다」도서관 이용자가 도서관에서 빌릴 수 있는 책은 6권까지.
파 생 규 칙
추론 규칙
어느 특정한 사실이 참이라면, 어느 결론이 추론된다.
(IF) 만약에 곤충에 다리가 6개가 있다면 (THEN) 나비는 다리가 6개 있다.
평가 규칙
규칙으로 값의 평가를 분명히 쓸 수 있다.
연체요금은 아래의 계산식으로 구한다.
[요금☓(1+14.5/365)]☓ 지연일수
비즈니스 규칙의 범주
연령에 관한 규칙<자극/반응형 규칙>이 있기도 하고
건강진단 횟수에 규칙<구조제약 규칙><자극/반응형 규칙>
보건소와 지정위탁병원 가운데에서 한곳에서만 건강진단을 받을 수 있다<구조제약 규칙>
암검사만을 받는 것은 안된다<조작제약>라는 규칙
UML에서는 비즈니스 규칙 1)유즈 케이스의 계열기술2)클래스도나 객체도의 제약
3)행동을 표현하는 다이어그램의 제약
4)모든 다이어그램에 있어서의 주석, 으로서 모델링
보건소 또는 병원에서 건강진단이 실시되는 제약을 점선과 {or}를 상용하여 표현비즈니스 규칙과 제약
UML : 주석
비즈니스 규칙을 모델링하는 UML의 제약
UML에서 제약이란 요소의 의미에 대한 조건이나 제한
클래스도에서는 다음 표의 제약을 표현가능
유즈 케이스도에는 주석
유즈 케이스의 계열기술에서는 텍스트형식으로 규칙을 써서 표시UML의 제약 표기
일반화
배타 {disjoint}
제약을 지정하지 않은 일반화는 배타계승을 표시한다. 디폴트. 중복 일반화와는 틀려서 선조 클래스의 다른 자손클래스가 공통의 선조 클래스를 가지는 것은 없다.
중복 {overlapping}
완전
{complete} 모든 서브클래스가 정의되어 있다.
불완전
{incomplete} 추가될수 있는 서브클래스가 존재한다. 디폴트.
관련
함축 {implicit}
이 관련으로 연결된 클래스의 객체사이에는 물리적인 링크가 없으 며, 글로벌 이름등 다른 기구로 서로의 안면 관계가 있다.
OR {or}
관련의 집합이 그 인스턴스인 링크에 관해서 제약을 가진다. 그 관 련의 집합 가운데 하나의 링크만이 유효하다. 그림10.32 참조
관련 역할
순서첨가 제약
{ordered} 링크에 순서관계가 있음을 표시한다.
정적구조에 있어서의 제약 표기 : 클래스도
행동을 표현하는 다이어그램에는 다음 표의 제약표기를 사용
다이어그램내에서 {local}등의 문자열이 들어 있으면, 그 문자열이 표현하는 제약이 부가되어 있음을 표시
또한 주석을 넣어서 제약을 기술행동
글로벌 {global}
<링크의 역할에 대한 제약>
상대의 객체가 글로벌 범위를 가지므로 안면이 있다.
로컬 {local}
<링크의 역할에 대한 제약>
상대의 객체가 메소드내의 로컬변수.
파라미터 {parameter}
<링크의 역할에 대한 제약>
상대의 객체를 메소드의 파라미터로 알 수가 있다.
셀프 {self}
<링크의 역할에 대한 제약>
자기자신에 메시지를 보내는 것을 표시한다.
투표 {vote}
<메시지에 적용되는 제약>
되돌아 오는 메시지의 수를 제안한다.
브로드캐스트 {broadcast}
<메시지 집합에 적용되는 제약>
메시지가 순서 대로 송신되지 않음을 표시한다.
정적구조에 있어서 제약 표기 : 클래스도
구조제약 규칙은 클래스도로 표현
비즈니스 규칙으로서 많이 등장하는 자극/반응형 규칙이나 조작제 약 규칙은 유즈 케이스계열기술 또는 액티비티도로 문서화비즈니스 규칙과 UML의 제약표기
제약과 규칙의 정의를 설명하시오.
비즈니스 규칙은 무엇인가?
비즈니스 규칙의 범주에 대하여 설명하시오.
비즈니스 규칙과 제약에는 어떤 것이 있는가?
UML의 제약 표기 표현방법을 설명하시오.
비즈니스 규칙과 UML의 제약표기에 대하여 설명하시오.