Data Modeling and the Entity-Relationship Model
database
![]()
Data and information
- Data: raw facts.
recorded facts - Information:
meaningful context - Knowledge: information + 가치
What is information system?
- System: a
set of componentsthat interact to achieve somepurposeorgoal - Information System: composed of
hardware,software,data,procedures,people

System Analysis and Design
System analysis and design: process of creating and maintaininginformation systems- classic methodology:
SDLC
SDLC (System Development Life Cycle)

- System definitions: 예산 편상, 위험 분석, …
Requirementsanalysis- Component design
- Implementation
- System maintenance
database development process
Requirementsanalysis
input: the project plan
output: a set of approved requirements ->data model(ER model로conceptual design)
source:Use cases,Business rules- Component Design: Relational Database Design (상세 설계)
- Implementation
ER model
EntitiesEntity classEntity instance
- Attributes:
Data type,Properties(default, constraints) - Identifiers
uniqueNonunique: identifies a set of instances
Relationshipsbinary relationship- Maximum cardinality:
1:1(A has a B),1:N(A has a set of B),M:N - Minimum cardinality:
0,1
- Maximum cardinality:
ternary relationship

Entit-Relationship Diagram
Entity classes: rectangleRelationships: diamondmaximum cardinality: inside the diamondminimum cardinality: oval or hash mark next to diamondstrong entity: 독자적으로 존재 가능. 강한개체 관계는 점선
Non-ID-dependent: identifier에 다른 entity의 identifier가 포함되어 있지 않음. 점선으로 표기(non-identifying relationship)weak entity: 약, 강 관계는 실선. IS: rounded square, traditional: 2 layer square
ID-dependent: identifier에 다른 entity의 identifier가 포함되어 있음. 실선으로 표기(identifying relationship)associative entity:relationship이entity로 변환된 것.
Many-to-manyrelationship을 2개의1:N으로 변환super type,sub type: 상속관계.sub typeis asuper type- exclusive:
Discriminator attribute가 필요함 - inclusive
- exclusive:
recursive relationshipBusiness rule: build-in constraints, trigger, stored procedure, application code로 구현 가능
data model validation: form, report를 이용한 prototyping