티스토리 뷰
728x90
럼바우 데이터 모델링(Rumbaugh Data Modeling)은 OMT(Object Modeling Technique)라고도 불리며, 객체지향 분석 및 설계 방법론 중 하나입니다. 이 방법론은 잭 럼바우(James Rumbaugh)에 의해 개발되었으며, 객체 지향 분석 및 설계(OOA/OOD)에 중요한 기법으로 사용됩니다. 럼바우의 OMT 방법론은 주로 시스템을 객체로 모델링하고, 시스템 내에서 객체들 간의 상호작용과 구조를 정의하는 데 중점을 둡니다. 이 방법론은 시스템 개발에서 객체지향적 사고를 반영하며, 데이터를 객체로 표현하여 시스템 내에서 어떻게 상호작용하는지 시각화합니다.
럼바우 데이터 모델링의 주요 특징
- 객체 모델링:
- 시스템 내의 주요 객체(실세계의 개념이나 엔티티)를 정의하고, 이 객체들 간의 속성, 연관성, 상속 관계 등을 표현합니다.
- 객체 모델링은 클래스 다이어그램을 통해 객체들의 구조를 나타냅니다.
- 동적 모델링:
- 객체들이 시간에 따라 어떻게 상호작용하고 변화하는지 표현합니다. 주로 상태 다이어그램을 사용하여 시스템의 동작을 정의합니다.
- 객체의 상태 변화, 이벤트 처리 등을 포함합니다.
- 기능 모델링:
- 시스템에서 발생하는 함수나 연산을 모델링합니다. 주로 자료 흐름도(DFD)를 통해 입력과 출력 데이터를 나타내고, 프로세스 간의 데이터 흐름을 시각화합니다.
럼바우 모델링의 3단계:
- 객체 모델링(Object Modeling):
- 객체와 객체 사이의 관계를 정의합니다. 클래스 다이어그램을 통해 객체들의 구조적 관계(상속, 연관 등)를 정의합니다.
- 동적 모델링(Dynamic Modeling):
- 시스템의 동적 동작을 정의하며, 상태 다이어그램을 통해 객체의 상태 변화 및 그에 따른 이벤트를 표현합니다.
- 기능 모델링(Functional Modeling):
- 시스템의 기능적 측면을 다루며, 데이터 흐름과 처리 과정을 정의합니다. 자료 흐름도를 사용하여 데이터를 처리하는 과정을 표현합니다.
럼바우 데이터 모델링의 장점:
- 객체 중심 분석: 객체를 중심으로 시스템을 분석하므로 실제 세계의 문제를 더 쉽게 모델링할 수 있습니다.
- 재사용성: 객체 지향적 특성으로 인해 클래스나 모듈의 재사용성을 높일 수 있습니다.
- 시스템 이해도 향상: 시스템 내 객체들 간의 관계와 동작을 시각화하여 전체 시스템의 이해도를 높입니다.
Rumbaugh 방법론과 UML
럼바우의 OMT 방법론은 나중에 UML (Unified Modeling Language)을 개발하는 데 중요한 기초가 되었으며, UML의 주요 구성 요소 중 많은 부분이 럼바우의 방법론을 기반으로 하고 있습니다.
요약:
럼바우 데이터 모델링(OMT)은 객체지향 분석 및 설계 방법론으로, 객체 모델링, 동적 모델링, 기능 모델링을 통해 시스템의 구조와 동작을 표현하는 데 중점을 둡니다. 이는 시스템을 객체로 모델링하고, 객체들 간의 상호작용과 관계를 명확히 하는 데 도움을 줍니다.
728x90
'Study > 정보처리기사' 카테고리의 다른 글
패킷 교환 방식(Packet Switching)이란? (0) | 2024.10.13 |
---|---|
병행제어 기법 정리 (0) | 2024.10.13 |
정보 보호 기술의 핵심 개념 AAA란? (0) | 2024.10.13 |
DCL (Data Control Language)이란? (0) | 2024.10.13 |
ARP 스푸핑(ARP Spoofing)이란? (0) | 2024.10.13 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- counter
- 쉽게 풀어쓴 C언어 Express
- mermaid-cli
- Collections
- react router
- 프로세스 강제 종료
- 시맨틱 버전(semantic versioning
- math.h
- jackson 라이브러리
- chrome extension 자동 배포
- javascript 필수 문법
- 원시값(primitive)
- structuredclone()
- x.y.z (메이저.마이너.패치)
- json.parse(json.stringify())
- Jest
- core web vitals
- public vs assets
- stdlib.h
- 중첩 함수(nested function)
- pwa(progressive web app)
- inp
- useEffect
- semver)
- named export vs default export
- 소프트웨어 버전 관리
- defaultdict
- react
- styled-components
- ajax (asynchronous javascript and xml)
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함