목록2024/11 (5)
각진 세상에 둥근 춤을 추자
✨ 기획 순서 사업 분석기능 정의서 (주요 기능 정의)기능 명세서 (요구사항 정의/ 기술 요구사항/ 정책 정의서)개발 일정 수립스토리보드/화면 설계서 작성 📌 사업 분석 - 목적: 프로젝트의 목표와 비전을 설정하고 시장 조사 및 경쟁 분석을 수행 - 산출물 프로젝트 목표타겟 유저 정의경쟁사 분석 자료성공 기준 (KPI) 📌 기능 정의서 (주요 기능 정의) 작성 - 목적: 시스템이 수행할 주요 기능을 정의하고 각 기능 간의 관계와 흐름을 이해 - 작업 내용주요 기능 리스트 작성 각 기능 간의 상호작용 정의심플한 플로우 차트 작성 (이래도 되나 싶을 만큼 심플하게, 상세 스펙은 상세 기획서에) - 산출물기능 정의서플로우 차트 (간단한 흐름도) 📌 기능명세서 (요구사항 정의서) 작성 - 목적:..
📌 DDD란? DDD (Domain-Driven Design, 도메인 주도 설계): 도메인을 중심으로 설계를 진행하는 방법론이다(도메인: 소프트웨어가 해결하려고 하는 특정 문제 영역이나 비즈니스 컨텍스트를 의미한다.)DDD는 개발팀과 도메인 전문가 간의 협업을 강조하고, 비즈니스 로직을 정확히 반영한 시스템을 만드는 데 초점을 맞춘다. 기존의 전통적인 소프트웨어 설계 방식인 '계층적 구조'와의 차이 계층적 구조DDD 구조초점데이터 중심 설계 도메인 중심 설계 확장성간단하고 빠르나 확장에는 취약 최초 구현 시, 시간은 많이 소요되나 유연하고 확장에 용이복잡성구조가 단순구조가 복잡 적합한 프로젝트단순 CRUD 중심복잡한 비즈니스 로직 📌 DDD의 주요 개념 1. 유비쿼터스 언어 (Ubiquit..
스택 (Stack)이란? 스택(Stack)은 데이터 구조의 하나로, 데이터를 쌓아 올린 형태를 가진 구조이다. 기본적으로 후입선출 (LIFO, Last-In-First-Out) 원칙을 따르는데, 가장 나중에 추가된 데이터가 가장 먼저 제거된다는 뜻이다. 📌 스택의 주요 연산1. push: 데이터를 스택의 맨 위에 추가하는 연산2. pop: 스택의 맨 위에 있는 데이터를 제거하고 반환하는 연산3. peek (또는 top): 스택의 맨위에 있는 데이터를 제거하지 않고 확인하는 연산4. isEmpty: 스택이 비어있는지 확인하는 연산 📌 스택 활용 예시1. 웹 브라우저의 뒤로가기: 브라우저에서 페이지를 탐색할 때 방문한 페이지를 스택에 저장한다. 뒤로 가기를 누르면 가장 최근에 방문한 페이지부..
CBR (Case-Based Reasoning) 이란? CBR(Case-Based Reasoning)은 과거의 경험을 바탕으로 현재의 문제를 해결하는 기술 중 하나이다. CBR 시스템은 주로 과거의 사례를 데이터베이스에 저장하고, 새로운 문제가 발생할 때마다 기존 사례들과 비교하여 유사한 해결책을 찾는 방식으로 작동한다. 이러한 방식은 이전의 경험을 효율적으로 활용하여 빠르고 정확한 문제 해결을 가능하게 하며, 특히 반복적이고 유사한 문제를 해결하는 데 효과적이다. 네트워크 관리, 의료 진단, 고객 서비스 등 다양한 분야에서 이미 활발하게 적용되고 있다. CBR의 기본 개념 CBR의 주요 단계는 5가지로 나눌 수 있다. 1. 문제 인식: 새로운 문제가 발생하면, 그 문제에 대한 초기 설명을 통해 문..
아파치 카프카(Apache Kafka)란? 오픈 소스 분산 스트리밍 플랫폼으로 분산 메시징 시스템이다.현재 대규모 데이터 처리와 메시징 시스템으로 주로 사용되고 있고, 여러 시스템 간에 실시간으로 메시지를 전송하는 데 특화되어 있다. 카프카의 주요 특징 1. 분산형 시스템카프카는 분산형 시스템으로, 여러 서버에 걸쳐 데이터를 분산 저장하고 처리한다.2. 실시간 데이터 처리 카프카는 스트리밍 데이터를 실시간으로 처리할 수 있으므로 로그 수집, 데이터 파이프라인 구축, 실시간 분석 등에 용이하다.3. 내구성카프카는 데이터를 디스크에 기록하며, 복제 기능을 통해 장애 발생 시에도 데이터를 안전하게 보관한다. 4. 높은 처리량카프카는 초당 수백만 건의 메시지를 처리할 수 있는 높은 처리량을 보유한다. 카프..