본문 바로가기
sqld

데이터모델이 뭐야?

by 자격증원톱 2026. 2. 19.
반응형

데이터 모델을이해하자!

반응형

1) 모델링(Modeling)이란?

  • 현실에 있는 대상(사람, 사물, 개념 등)을 표(그림), 글, 수식, 기호 같은 표기법으로 바꿔서 표현하는 일입니다.
  • 쉽게 말해 복잡한 현실을 ‘설명 가능한 설계도’로 만드는 것입니다.

2) 모델링의 종류

  • 정보시스템 모델링: 업무/데이터/처리 과정을 분석해서, 컴퓨터에 저장·처리 가능한 구조로 표현(예: 데이터 모델, 프로세스 모델 등)
  • 수리(수학) 모델링: 미분방정식, 상태방정식 같은 수식으로 현상을 표현(공학 분야에서 많이 사용)
  • 통계(확률) 모델링: 확률 현상(데이터)을 차트/표/수식/함수로 표현해 분석에 활용
  • 회로 모델링: 회로 소자를 이용한 증폭, 필터링, 스위칭 등의 동작을 규칙에 따라 표현

3) 모델링의 특징(왜 하느냐?)

  • 추상화: 중요한 요소만 뽑아 간단히 표현
  • 단순화: 복잡한 현실을 기호/문자/그림 등으로 이해하기 쉽게 만듦
  • 명확화: 애매함을 줄이고 누구나 같은 의미로 이해하도록 표현을 분명히 함

4) 정보시스템 모델링의 3가지 관점

정보시스템을 만들 때는 보통 아래 3가지로 나눠 봅니다.

  • 데이터 관점(What): 어떤 데이터가 있고, 데이터가 서로 어떻게 연결되는가? (SQLD에서 주로 다룸)
  • 프로세스 관점(How): 실제로 어떤 일을 어떤 순서/절차로 처리하는가?
  • 상관 관점(Interaction): 업무 처리 방식(프로세스)이 데이터에 어떤 영향을 주고, 데이터가 프로세스에 어떤 영향을 주는가?

 


“학생 수강관리 시스템”

1) 모델링이 뭐냐? (사례로)

학교에서 “수강 신청”을 컴퓨터로 관리하려면, 현실의 일을 컴퓨터가 이해할 수 있는 설계도로 바꿔야 합니다.

  • 현실: 학생이 과목을 선택해서 신청하고, 성적도 받고, 교수도 배정됨
  • 모델링: 이걸 표/그림/구조(테이블)/흐름도로 정리해서 시스템으로 만들 수 있게 함

즉, 현실 → 설계도(모델) → 프로그램/DB로 구현 이 흐름입니다.


2) 모델링의 3가지 특징을 사례로 이해

(1) 추상화(중요한 것만 뽑기)

수강 신청에 필요한 핵심만 뽑습니다.

  • 학생(학번, 이름)
  • 과목(과목코드, 과목명)
  • 신청(학번, 과목코드, 신청일)

학생의 키, 취미 같은 건 수강 신청에 필요 없으니 제외합니다.

(2) 단순화(복잡한 현실을 단순하게)

현실에서는 “구두 신청”, “교수 허락”, “정원 초과” 등 복잡한 상황이 많지만
처음에는 핵심 흐름만 단순하게 잡습니다.

  • “학생이 과목을 선택 → 신청 저장”
    이렇게 단순한 구조로 시작합니다.

(3) 명확화(애매한 걸 없애기)

“누가 신청했지?” 같은 애매함이 생기면 시스템이 망가집니다.

그래서 규칙을 명확히 정합니다.

  • 학생은 학번으로 구분
  • 과목은 과목코드로 구분
  • 신청은 학번 + 과목코드로 식별 가능

3) 정보시스템 모델링의 3가지 관점(What / How / Interaction)

이게 핵심입니다. 같은 “수강 신청”도 3가지 관점으로 봅니다.

① 데이터 관점(What: 어떤 데이터가 필요한가?)

“무엇을 저장할 건데?”

예)

  • 학생 테이블: 학번, 이름, 학과
  • 과목 테이블: 과목코드, 과목명, 학점
  • 신청 테이블: 학번, 과목코드, 신청일

👉 이게 바로 DB(테이블) 설계로 이어집니다.


② 프로세스 관점(How: 어떤 절차로 처리하는가?)

“어떤 순서로 일이 진행돼?”

예) 수강 신청 흐름

  1. 학생 로그인
  2. 과목 목록 조회
  3. 과목 선택
  4. 정원 확인
  5. 신청 저장
  6. 신청 결과 화면 출력

👉 이건 업무 흐름도/기능 설계로 이어집니다.


③ 상관 관점(Interaction: 데이터와 프로세스가 서로 어떻게 영향을 주나?)

“처리(프로세스)가 데이터에 어떤 변화를 주지?”

예)

  • 신청 버튼 클릭(프로세스) → 신청 테이블에 데이터가 추가됨
  • 정원 초과면(데이터 상태) → 신청 저장이 막힘
  • 신청 취소(프로세스) → 신청 데이터가 삭제됨 → 정원도 1 증가

👉 즉, 프로세스(행동) 때문에 **데이터(상태)**가 바뀌고
데이터 상태 때문에 프로세스가 가능/불가능해집니다.


한 줄 정리

  • 모델링은 현실을 시스템으로 만들기 위한 설계도 작성
  • 정보시스템 모델링은 보통
    • What(데이터): 뭘 저장할지
    • How(프로세스): 어떤 절차로 처리할지
    • Interaction(상관): 처리와 데이터가 어떻게 영향을 주고받을지
      를 나눠서 생각합니다.

 

반응형

'sqld' 카테고리의 다른 글

엔티티(Entity)란?  (0) 2026.02.19
데이터 타입이란?  (0) 2026.02.19
SQL 쉽게 이해하기  (0) 2026.02.19
데이터베이스가 무엇인지 알아보자!  (0) 2026.02.19
데이터 모델링에 대한 요약 정리  (0) 2026.02.19