반응형
SMALL
반응형
LIST
현실 세계의 복잡한 정보를 그대로 저장할 수는 없습니다.그래서 필요한 게 데이터 모델링, 그리고 E-R 다이어그램(ERD)입니다.이번 포스트에서는 개념적으로 “데이터를 어떻게 표현하고 구조화할 것인가?”에 대한 핵심,데이터 모델의 구성 요소와 E-R 다이어그램 작성법을 예시와 함께 정리합니다.1. 데이터 모델이란?데이터를 표현하기 위해 사용하는 추상적 구조현실 세계의 개체와 관계를 논리적으로 나타낸 것2. 데이터 모델의 3요소구성 요소설명예시구조 (Structure)데이터의 정적 구조 (개체, 속성 등)고객, 주문, 책 등연산 (Operation)데이터를 처리하는 기능검색, 삽입, 삭제 등제약조건 (Constraint)데이터의 정확성과 무결성을 유지하는 규칙NOT NULL, UNIQUE, 외래키 등3. ..
데이터베이스(DB)는 단순히 데이터를 저장하는 창고가 아닙니다.어떻게 설계하느냐에 따라 성능, 유지보수, 확장성까지 전부 달라지죠.그만큼 DB 설계는 아무렇게나 하면 안 되고, 단계적으로 ‘잘’ 해야 합니다.이번 포스트에서는 데이터베이스 설계 절차와 스키마 계층 구조를 기반으로,처음 DB 설계를 시작할 때 꼭 알아야 할 이론들을 정리해보겠습니다.1. 데이터베이스 설계 순서데이터베이스는 다음과 같은 5단계 설계 절차를 따릅니다:✅ 설계 5단계 요약단계설명주요 산출물① 요구 조건 분석사용자 요구 파악요구 명세서② 개념적 설계현실 세계 모델링 (ERD 등)개념 스키마③ 논리적 설계관계형 모델로 변환논리 스키마④ 물리적 설계저장 구조 및 인덱스 설계저장 설계서⑤ 구현실제 DB 생성, 트랜잭션 정의테이블, SQL..
소프트웨어를 잘 만드는 것도 중요하지만,얼마나 안정적이고 품질 있게 유지되느냐가 진짜 경쟁력입니다.이번 글에서는 소프트웨어 품질 관리 모델(CMMI, SPICE)과 요즘 개발에서 빠질 수 없는 프레임워크의 특징에 대해 정리해드립니다.1. CMMI (Capability Maturity Model Integration)✅ 특징조직의 소프트웨어 프로세스 성숙도를 평가하는 국제 모델각 조직이 얼마나 체계적으로 개발 프로세스를 관리하는지 나타냄미국 SEI(Software Engineering Institute)에서 개발🧩 성숙도 5단계단계특징1단계 (초기)비정형, 즉흥적 개발2단계 (관리)프로젝트 수준에서 프로세스 정의3단계 (정의)조직 수준에서 표준 프로세스 정의4단계 (정량적 관리)프로세스 성능을 수치화·관..
VM을 설치한 후에는 CentOS 환경에서 가상화를 구현해야 하므로, CentOS 운영체제를 별도로 설치해야 합니다.💡CentOS는 Red Hat Enterprise Linux(RHEL)를 기반으로 만들어진 리눅스 배포판으로, 기업용 서버 운영체제인 RHEL과 거의 동일한 기능과 구조를 제공하면서도 무료로 사용할 수 있는 오픈소스 운영체제입니다. 원래는 RHEL의 소스 코드를 그대로 재구성하여 배포하는 방식으로 제공되었기 때문에, RHEL과 높은 호환성을 유지하면서도 비용 부담 없이 안정적인 서버 환경을 구축할 수 있어 많은 기업과 개발자들이 활용해왔습니다. 이후 Red Hat의 정책 변화로 인해 CentOS는 "CentOS Stream"이라는 이름으로 전환되었으며, 이는 RHEL의 정식 버전보다 약간..
💡VM이란가상 머신(VM)은 하나의 물리적 컴퓨터를 소프트웨어적으로 나누어, 여러 개의 운영체제를 동시에 실행할 수 있도록 하는 기술입니다. 원래 한 대의 컴퓨터에는 하나의 운영체제(OS)만 설치할 수 있지만, 가상화 계층을 추가하면 여러 개의 VM을 생성하여 해당 컴퓨터에서 각각 독립적인 환경에서 프로그램을 실행할 수 있습니다. 이를 통해 하나의 컴퓨터 자원을 효율적으로 활용하고, 서로 다른 OS 환경을 손쉽게 관리할 수 있습니다. Oracle VirtualBox를 통해 가상머신 환경을 구축해보겠습니다.해당 링크에 들어가면 다운로드를 받을 수 있습니다. https://www.virtualbox.org/ Oracle VirtualBoxPowerful open source virtualization F..
JVMJVM이란 JAVA Virtual Machine으로, 자바 가상 머신을 의미한다. Java 소스 코드는 javac 컴파일러로 거쳐 바이트코드로 변환되는데, 이 바이트코드는 JRE에 들어있는 Java classloader에 의해 JVM에 적재되고, JVM은 적제된 바이트 코드를 JIT 컴파일 방식으로 실행하는 컴퓨터의 OS 및 CPU 아키텍처용 기계어로 번역되어 수행된다.즉, OS에 종속받지 않고 CPU 가 Java를 인식, 실행할 수 있게 하는 가상 컴퓨터이다. Java 가상머신이라고 해서 Java 바이트코드만 인식하는 것은 아니다. 이 바이트코드를 Java가 아닌 다른 언어(Kotlin이나 Scala, Groovy 같은 언어)를 가지고도 생성할 수 있기 때문이다. 따라서 지금의 Java 가상머신은..