객체 역할 모델링
Object-role modeling객체 역할 모델링(ORM)은 담화 세계의 의미론을 모델링하는 데 사용됩니다.ORM은 데이터 모델링 및 소프트웨어 엔지니어링에 자주 사용됩니다.
오브젝트 역할 모델은 모델러가 임의의 담화 세계에 대한 명확한 정의를 만들 수 있도록 하기 위해 1차 술어 논리와 집합론에 기초한 그래픽 기호를 사용합니다.ORM 모델이 원래 관계형 데이터베이스 설계에 도움이 되는 것으로 생각되었던 것과 마찬가지로, ORM 모델의 술어는 그래프 데이터베이스 모델의 분석과 설계에 도움이 됩니다.
"객체 역할 모델"이라는 용어는 1970년대에 만들어졌으며, 주로 데이터 모델링에 ORM 기반 도구가 30년 이상 사용되어 왔습니다.최근에는 비즈니스 규칙, XML-Schema, 데이터 웨어하우스, 요건 엔지니어링 및 웹 [1]폼 모델링에 ORM이 사용되고 있습니다.
역사
ORM의 뿌리는 1970년대 유럽의 정보 시스템에 대한 의미 모델링 연구로 추적할 수 있다.많은 개척자들이 있었고 이 짧은 요약본은 결코 그들 모두를 언급하지는 않는다.1973년 Michael Senko가 IBM Systems Journal에 "데이터 구조화"에 대해 썼을 때 초기 기고가 이루어졌습니다.1974년 Jean-Raymond Abrial은 "데이터 의미론"에 대한 기사를 기고했다.1975년 6월, 에크하르트 팔켄버그의 박사학위 논문이 발표되었고 1976년 팔켄버그의 논문 중 하나가 "객체 역할 모델"이라는 용어를 언급하였다.
G.M. Nijssen은 객체 유형 및 역할에 대한 "원 상자" 표기법을 도입하고 개념 스키마 설계 절차의 첫 버전을 공식화함으로써 근본적인 기여를 했습니다.Robert Meersman은 서브타이핑을 추가하고 최초의 진정한 개념의 쿼리 언어를 도입함으로써 접근 방식을 확장했습니다.
객체 역할 모델링은 1970년대 중반 네덜란드(유럽)의 G.M. Nijssen 연구원과 벨기에의 제어 데이터 기업 연구소의 그의 연구팀에 의해 처음 개발된 방법론인 자연어 정보 분석 방법론에서 발전했으며, 이후 퀸즐랜드 대학교에서도 발전했다.1980년대의 우골증.약자 NIAM은 원래 "Nijssen's Information Analysis Methodology"의 약자였으며, 나중에 G. M. Nijssen이 [2]이 방법의 개발에 관여한 많은 사람 중 한 명이었기 때문에 "Nijssen's Information Analysis Methodology"와 이원 관계 모델링으로 일반화되었다.
1989년에 Terry Halpin은 ORM에 관한 박사 논문을 완성하여 접근방식의 첫 번째 완전한 공식화를 제공하고 몇 가지 확장을 통합했다.
또한 1989년에 Terry Halpin과 G.M. Nijssen은 "개념 스키마와 관계형 데이터베이스 설계"와 여러 공동 논문을 공동으로 집필하여 객체 역할 모델링의 첫 번째 공식화를 제공하였습니다.
Oracle, DB2 및 DBQ용 데이터베이스 생성 스크립트를 생성하는 기능을 포함하는 그래픽 NIAM 설계 도구가 1990년대 초에 파리에서 개발되었습니다.원래 이름은 Genesys였고 프랑스와 이후 캐나다에서 성공적으로 판매되었다.ER 다이어그램 설계도 처리할 수 있습니다.SCO Unix, SunOs, DEC 3151 및 Windows 3.0 플랫폼으로 이식되었으며, 이후 XVT를 사용하여 운영체제 간 그래픽 이식성을 향상시켰습니다.이 도구는 OORIANE로 이름이 변경되었으며 현재 대규모 데이터 웨어하우스 및 SOA 프로젝트에 사용되고 있습니다.
또한 NIAM에서 진화한 것은 "완전 커뮤니케이션 지향 정보 모델링" FCO-IM(1992)입니다.기존의 ORM과는 달리 엄밀한 커뮤니케이션 지향의 관점을 채택하고 있습니다.도메인과 그 본질적인 개념을 모델링하려고 하는 것이 아니라, 이 도메인(담론의 우주)의 커뮤니케이션을 모델링한다.또 다른 중요한 차이점은 인스턴스 수준에서 이를 수행하고 분석 중에 유형 수준과 객체/팩트 수준을 도출한다는 것입니다.
또 다른 최근의 개발은 ORM을 관련된 역할과 표준적인 기계 판독 가능한 사전 및 개념 분류와 조합하여 사용하는 것입니다(Gellish 영어사전에 기재되어 있습니다.관계 유형(사실 유형), 역할 및 개념을 표준화하면 모델 통합 및 모델 재사용 가능성을 높일 수 있습니다.
개념

사실들
객체 역할 모델은 기본적인 사실에 기초하고 있으며, 자연 언어로 언어화할 수 있는 다이어그램으로 표현됩니다.사실은 "John Smith는 1995년 1월 5일에 고용되었다" 또는 "Mary Jones는 2010년 3월 3일에 고용되었다"와 같은 제안입니다.
ORM을 사용하면 이러한 명제는 "Person was every date"와 같은 "fact type"으로 요약되고 개별 명제는 샘플 데이터로 간주됩니다."사실"과 "기본적 사실"의 차이점은 기본적인 사실은 의미를 잃지 않고 단순화할 수 없다는 것이다.이 "사실 기반" 접근 방식을 사용하면 모든 [4]도메인의 정보를 모델링, 변환 및 쿼리할 수 있습니다.
속성 프리
ORM은 속성이 없습니다.Entity-Relation(ER) 및 Unified Modeling Language(UML) 방법의 모델과 달리, ORM은 모든 기본적인 사실을 관계로 취급하며, 따라서 사실을 구조(예: 속성 기반 엔티티 유형, 클래스, 관계 체계, XML 스키마)로 그룹화하는 결정을 의미론과는 무관한 구현 관심사로 취급합니다.속성을 회피함으로써 ORM은 의미 안정성을 향상시키고 자연어로 언어화할 수 있습니다.
사실에 근거한 모델링
사실 기반 모델링은 ER 또는 UML과 [4]같은 속성 기반 구조에 사실을 매핑하는 절차를 포함한다.
사실에 기초한 텍스트 표현은 모국어의 형식 하위 집합을 기반으로 합니다.ORM 지지자들은 ORM 모델이 기술 교육 없이 사람들이 더 쉽게 이해할 수 있다고 주장한다.예를 들어, OCL(Object Constraint Language)과 같은 선언적 언어나 UML 클래스 [4]모델과 같은 다른 그래픽 언어보다 객체 역할 모델이 이해하기 쉽다고 찬성론자들은 주장한다.사실 기반 그래픽 표기는 ER 및 UML보다 표현력이 높습니다. 객체 역할 모델은 관계형 및 연역형 데이터베이스(데이터로그 [5]등)에 자동으로 매핑될 수 있습니다.
ORM 2 그래픽 표기법
ORM2는 오브젝트 역할 모델링의 최신 세대입니다.ORM 2 그래픽 표기법의 주요 목적은 다음과 같습니다.[6]
- 선명도를 해치지 않고 ORM 모델을 보다 콤팩트하게 표시
- 국제화 개선(영어 기호 회피 등)
- 그래픽 편집기를 쉽게 만들 수 있는 간단한 도면 규칙
- 상세 내용을 선택적으로 표시/억제하기 위한 뷰의 확대 사용
- 새로운 기능 지원(예: 역할 경로 설명, 폐쇄 측면, 양식)
설계 절차

시스템 개발에는 일반적으로 타당성 조사, 요건 분석, 데이터 및 운영의 개념 설계, 논리 설계, 외부 설계, 프로토타이핑, 내부 설계 및 구현, 테스트 및 검증, 유지보수 등의 여러 단계가 포함됩니다.개념 스키마 설계 순서의 7단계는 다음과 같습니다.[7]
- 친숙한 정보의 예를 기본적인 사실로 변환하여 품질 체크 적용
- 팩트 유형 그리기 및 모집단 검사 적용
- 결합해야 하는 엔티티 유형을 확인하고 모든 산술적 파생 정보를 기록합니다.
- 고유성 제약 조건 추가 및 팩트 유형의 고유성 확인
- 필수 역할 제약 조건을 추가하고 논리적 파생 요소를 확인합니다.
- 값 추가, 비교 및 서브타이핑 제약 조건 설정
- 다른 제약 조건을 추가하고 최종 확인을 수행합니다.
ORM의 CSDP(Conceptic Schema Design Procedure)는 데이터의 분석과 설계에 중점을 두고 있습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ Jarrar, M. (2007). "Towards Automated Reasoning on ORM Schemes". Lecture Notes in Computer Science. Proceedings of the 26th International Conference on Conceptual Modeling. Lecture Notes in Computer Science. 4801: 181–197. CiteSeerX 10.1.1.148.6251. doi:10.1007/978-3-540-75563-0_14. ISBN 978-3-540-75562-3.
- ^ Wintraecken, J. J. V. R. (1990) [1987]. The NIAM information analysis method: theory and practice. Translation of: Informatie-analyse volgens NIAM. Dordrecht; Boston: Kluwer Academic Publishers. doi:10.1007/978-94-009-0451-4. ISBN 079230263X. OCLC 19554537. S2CID 30209824.
- ^ a b 스티븐 M.리처드(1999년).지질학적 개념 모델링.미국 지질조사국 공개 파일 보고서 99-386
- ^ a b c http://www.orm.net/pdf/ORM2_TechReport1.pdf[베어 URL PDF]
- ^ "P:11 Mapping ORM To Datalog - an Overview - The ORM Foundation". www.ormfoundation.org. Retrieved May 31, 2020.
- ^ "ORM 2" (PDF). Archived from the original (PDF) on February 19, 2009. Retrieved April 22, 2009. Halpin, T. 2005, 'ORM 2', 의미 있는 인터넷 시스템으로의 이행 2005: OTM 2005 워크숍, eds R.머먼, Z타리, P.헤레로 외, 키프로스스프링거 LNCS 3762, 페이지 676-87
- ^ 테리 할핀(2001년)."객체 역할 모델링: 개요"
추가 정보
- Halpin, Terry (1989), Conceptual Schema and Relational Database Design, Sydney: Prentice Hall, ISBN 978-0-13-167263-5
- Rossi, Matti; Siau, Keng (April 2001), Information Modeling in the New Millennium, IGI Global, ISBN 978-1-878289-77-3
- Halpin, Terry; Evans, Ken; Hallock, Pat; Maclean, Bill (September 2003), Database Modeling with Microsoft Visio for Enterprise Architects, Morgan Kaufmann, ISBN 978-1-55860-919-8
- Halpin, Terry; Morgan, Tony (March 2008), Information Modeling and Relational Databases: From Conceptual Analysis to Logical Design (2nd ed.), Morgan Kaufmann, ISBN 978-0-12-373568-3