페이지

2026년 4월 1일 수요일

프로젝트 성공의 이정표: 요구사항 명세서(SRS)의 구성 항목 및 작성 기준

 

1. 요구사항 명세서(SRS)의 개요

  • 정의: 사용자 및 이해관계자의 요구사항을 분석하여 시스템이 무엇(What)을 수행해야 하는지를 구체적, 명확하게 기술한 공식 문서.

  • 중요성: * 의사소통의 도구: 개발자, 설계자, 사용자 간의 합의된 기준 제공.

    • 검증의 척도: 차후 설계, 구현 및 테스트 단계의 기준점(Baseline) 역할.

    • 변경 관리의 기준: 프로젝트 범위 산정 및 일정 관리의 근거.


2. 요구사항 명세서(SRS)에 기술되어야 하는 주요 항목

IEEE 830 표준 및 현대적 애자일 환경을 고려한 주요 구성 항목은 다음과 같습니다.

구분주요 기술 항목세부 설명 및 포함 내용
1. 개요 (Introduction)목적 및 범위시스템의 개발 배경, 목표, 기대 효과 및 적용 범위 기술
용어 정의프로젝트 전반에서 사용되는 전문 용어 및 약어 설명
2. 기능 요구사항 (Functional)시스템 기능사용자가 시스템을 통해 수행하고자 하는 구체적인 동작 및 서비스
입출력 데이터각 기능별 데이터 입력 형식과 처리 결과물(출력) 정의
3. 비기능 요구사항 (Non-Functional)품질 특성성능(응답 시간), 가용성(99.9%), 신뢰성, 보안성, 유지보수성
제약 사항특정 하드웨어, OS, 개발 언어, 규제 준수 등 기술적/환경적 제약
4. 인터페이스 요구사항외부 연동타 시스템(Legacy, API), 하드웨어, 사용자 인터페이스(UI) 연동 규격
통신 프로토콜데이터 전송을 위한 통신 방식 및 보안 프로토콜 정의
5. 데이터 요구사항논리적 데이터 모델주요 엔티티(Entity) 정의 및 데이터 간의 관계(ERD 등)
데이터 무결성데이터 저장 및 처리에 대한 규칙과 보안 요건

3. 요구사항 명세서의 품질 측정 기준 (좋은 SRS의 특징)

명세서 기술 시 다음의 8가지 특성을 준수하여 작성해야 합니다.

  1. 무결성(Completeness): 사용자가 원하는 모든 기능이 빠짐없이 포함되어야 함.

  2. 명확성(Unambiguous): 한 가지 의미로만 해석되어야 하며, 모호한 표현 지양.

  3. 일관성(Consistency): 요구사항 간의 충돌이나 모순이 없어야 함.

  4. 검증 가능성(Verifiable): 객관적인 테스트를 통해 구현 여부를 확인할 수 있어야 함.

  5. 추적 가능성(Traceable): 요구사항의 출처와 하위 설계 문서 간의 연결 고리(RTM) 확보.

  6. 수정 용이성(Modifiable): 요구사항 변경 시 관련 내용을 쉽게 수정할 수 있는 구조.


4. 요구사항 추적 매트릭스(RTM)와 연계 방안

  • 개념: 요구사항 명세서의 각 항목이 설계, 소스 코드, 테스트 케이스와 어떻게 연결되는지 매핑한 표.

  • 효과: 요구사항 누락 방지, 변경 영향도 분석(Impact Analysis) 용이, 프로젝트 진척도 파악.


5. 기술사적 제언: 현대적 요구사항 관리의 핵심 'Agile & Tool'

  • 도구 기반 관리: 복잡한 시스템에서는 Word나 Excel 기반의 문서화 한계를 극복하기 위해 Jira, Redmine 등 ALM(Application Lifecycle Management) 도구를 활용한 실시간 형상 관리 권장.

  • 애자일과의 조화: 폭포수 모델의 정적인 SRS에서 탈피하여, User Story와 Backlog를 통해 사용자 요구를 유연하게 수용하고 반복적으로 명세화하는 전략 필요.

  • 결언: 요구사항 명세서는 프로젝트의 '헌법'임. 기술사는 기술적 구현 가능성을 검토하는 동시에 이해관계자의 숨은 의도까지 명확히 명세화하여 **'Scope Creep(범위 산정 오류)'**을 사전에 방지하는 역량을 발휘해야 함.

데이터 무결성 보장을 위한 다중 트랜잭션 관리: 데이터베이스 병행 제어 분석

 

1. 데이터베이스 병행 제어(Concurrency Control)의 개요

  • 정의: 다수의 사용자가 동시에 동일한 데이터베이스를 공유하여 트랜잭션을 실행할 때, 트랜잭션 간의 상호작용을 제어하여 데이터의 일관성 및 무결성을 유지하는 기술.

  • 목적: * 일관성 유지: 트랜잭션의 ACID 특성 중 고립성(Isolation)과 일관성(Consistency) 보장.

    • 공유도 극대화: 자원 이용률과 응답 시간 최적화.

    • 데이터 무결성 방어: 동시 실행 시 발생 가능한 부정확한 결과 방지.


2. 병행 제어의 필요성 (미제어 시 발생 문제점)

병행 제어가 적절히 이루어지지 않을 경우, 다음과 같은 4가지 전형적인 이상 현상이 발생합니다.

문제점상세 내용 및 영향
갱신 분실 (Lost Update)두 트랜잭션이 동일 데이터를 갱신할 때, 한쪽의 갱신 결과가 덮어씌워져 사라지는 현상
현황 파악 오류 (Dirty Read)트랜잭션 수행 중 아직 커밋되지 않은 임시 데이터를 다른 트랜잭션이 읽는 현상
모순성 (Inconsistent Analysis)여러 데이터를 읽어 분석할 때, 다른 트랜잭션의 갱신으로 인해 결과값이 일치하지 않는 현상
연쇄 복구 불능 (Cascading Rollback)오류 발생 시 롤백해야 하나, 이미 다른 트랜잭션이 해당 데이터를 사용하여 복구가 불가한 현상

3. 주요 병행 제어 기법 분석

데이터베이스 환경에 따라 비관적(Pessimistic) 또는 낙관적(Optimistic) 접근 방식을 선택합니다.

가. 로킹 (Locking) 기법

  • 개념: 트랜잭션이 데이터 아이템을 사용하기 전 잠금(Lock)을 획득하고, 완료 후 해제(Unlock)하는 방식.

  • 종류: 공유 로크(Shared Lock, 읽기 가능), 배타 로크(Exclusive Lock, 읽기/쓰기 불가).

  • 한계: 로킹 단위(Granularity)가 크면 병행성이 떨어지고, 작으면 오버헤드가 증가하며 교착상태(Deadlock) 발생 가능.

나. 2단계 로킹 규약 (2-Phase Locking Protocol)

  • 개념: 로킹의 한계를 보완하여 직렬 가능성(Serializability)을 보장하기 위해 **확장 단계(Lock 획득만 가능)**와 **수축 단계(Lock 해제만 가능)**로 나누어 운영.

다. 타임스탬프 순서 (Timestamp Ordering)

  • 개념: 트랜잭션이 시작할 때 시스템이 부여한 고유 번호(Timestamp) 순서대로 데이터에 접근하게 하는 기법.

  • 특징: 교착상태가 발생하지 않으나, 충돌 시 Rollback 발생 빈도가 높을 수 있음.

라. 낙관적 병행 제어 (Optimistic Concurrency Control)

  • 개념: 트랜잭션 수행 중에는 제어하지 않고, 종료 시점에 충돌 여부를 검증(Validation)하여 반영하는 방식.

  • 적합 환경: 데이터 충돌 가능성이 낮은 읽기 위주의 환경에 효율적.

마. 다중 버전 병행 제어 (MVCC, Multi-Version Concurrency Control)

  • 개념: 데이터 업데이트 시 기존 데이터를 덮어쓰지 않고 새로운 버전을 생성하여 관리.

  • 특징: 읽기(Read)와 쓰기(Write) 작업이 서로를 방해하지 않아 현대 DB(Oracle, PostgreSQL 등)에서 널리 사용.


4. 병행 제어 기법 비교

구분로킹 (Locking)타임스탬프 (Timestamp)낙관적 제어 (Optimistic)
제어 시점실행 전 (비관적)실행 시실행 후 검증 (낙관적)
교착상태발생 가능 (Deadlock)발생 안 함발생 안 함
직렬성 보장로킹 규약 준수 시 보장타임스탬프 순서로 보장검증 성공 시 보장
주요 장점데이터 무결성 보장 강화교착상태 예방오버헤드 최소화

5. 기술사적 제언: 환경에 최적화된 격리 수준(Isolation Level) 설계

  • 트레이드오프(Trade-off) 고려: 병행 제어 강도가 높을수록 일관성은 강화되나 시스템 성능(Throughput)은 저하됨. 따라서 업무 성격에 맞는 격리 수준(Read Committed, Repeatable Read 등) 설정이 중요함.

  • 분산 DB 환경 확장: 마이크로서비스 아키텍처(MSA)와 같은 분산 환경에서는 로컬 DB의 병행 제어를 넘어 Saga 패턴이나 **2PC(Two-Phase Commit)**를 통한 전역적 일관성 확보 전략이 병행되어야 함.

  • 결언: 병행 제어는 데이터베이스 엔진의 핵심 역량임. 기술사는 이론적 기법을 넘어 실제 운영 환경의 트래픽 패턴을 분석하여 최적의 제어 메커니즘을 선정하고 튜닝할 수 있는 통찰력을 갖춰야 함.

프로그래밍의 민주화: 노코드(No-code) 플랫폼의 부상

 

1. 코딩 제로(Zero-coding) 시대, 노코드의 정의

  • 한 줄의 소스 코드 작성 없이, 시각적 드래그 앤 드롭(Drag & Drop) 인터페이스와 설정만으로 애플리케이션을 신속하게 구축하는 개발 환경.

  • 현업 담당자인 **시민 개발자(Citizen Developer)**가 IT 부서의 도움 없이 비즈니스 문제를 직접 해결할 수 있게 하는 기술적 토대.


2. 노코드 플랫폼의 핵심 구성 요소 및 기술 특징

구분핵심 요소상세 설명
GUI 기반 설계Visual Builder위젯, 버튼, 폼 등을 마우스로 배치하여 UI/UX 설계
비즈니스 로직Workflow Engine"IF-THEN" 구조의 시각적 워크플로우로 업무 규칙 설정
데이터 관리Visual Database복잡한 SQL 없이 스프레드시트 형태로 데이터 모델링
연결성Pre-built API ConnectorSlack, Google Drive 등 외부 서비스와 손쉬운 연동

3. 노코드(No-code)와 로우코드(Low-code)의 비교

비교 항목노코드 (No-code)로우코드 (Low-code)
주요 대상현업 부서 (비IT 전문가)전문 개발자 (숙련된 IT 인력)
코딩 요구량0% (전혀 없음)10~20% (최소한의 스크립트)
개발 유연성낮음 (제공되는 기능 내)높음 (커스텀 코드 추가 가능)
적용 범위단순 업무 자동화, MVP 제작엔터프라이즈 시스템, 복잡한 앱

4. 도입 시 기대효과 및 향후 과제

  • 기대효과:

    • Time-to-Market 단축: 기획에서 배포까지의 시간을 획기적으로 개선.

    • IT 백로그(Backlog) 해소: 현업의 단순 요구사항을 스스로 해결하여 IT 부서 부하 감소.

  • 향후 과제:

    • 섀도우 IT(Shadow IT) 관리: 보안 및 품질 통제가 되지 않는 앱 양산 방지 가이드라인 필요.

    • 확장성 한계: 복잡한 아키텍처 구현 시 발생하는 성능 최적화 문제 해결.

데이터 가치 창출과 프라이버시의 양립: 개인정보 보호 강화기술(PET) 분석

 

1. 데이터 댐의 핵심 열쇠, 개인정보 보호 강화기술(PET)의 개요

  • 가. 정의: 개인정보의 수집, 저장, 처리, 활용 전 과정에서 개인의 프라이버시 노출 위험을 최소화하면서도, 데이터의 통계적 특성이나 분석 가치는 유지하는 기술적 수단.

  • 나. 등장 배경:

    • 데이터 경제 가속화: 생성형 AI 학습 및 빅데이터 분석을 위한 양질의 데이터 수요 급증.

    • 규제 환경 강화: GDPR, 개별 국가의 개인정보보호법 등 위반 시 막대한 과징금 부과.

    • 프라이버시 역설: 데이터 활용의 편익과 개인정보 유출 공포 사이의 간극 해소 필요.


2. PET의 주요 기술 분류 및 핵심 기술

PET은 데이터의 상태와 처리 방식에 따라 크게 암호화 기반, 비식별화 기반, 생성 기반으로 분류됩니다.

분류핵심 기술상세 설명
암호화 기반동형암호 (HE)암호화된 상태에서 데이터를 복호화하지 않고 연산을 수행하는 기술
다자간 계산 (SMPC)데이터를 분산 처리하여 각 참여자가 서로의 데이터를 모른 채 결과값만 도출
비식별 기반차분 프라이버시 (DP)데이터셋에 통계적 노イズ를 추가하여 개별 식별을 방지하는 기술
L-다양성/T-근접성K-익명성의 취약점을 보완하여 정보의 다양성과 분포를 유지
데이터 생성합성데이터 (SD)원본 데이터의 통계적 특성을 학습하여 생성한 가상의 모조 데이터
연합학습 (FL)로컬 데이터를 서버로 전송하지 않고 기기 내에서 학습 후 가중치만 공유

3. 다. PET 기술(동형암호, 차분 프라이버시, 합성데이터)의 상세 비교

가장 주목받는 3대 기술의 특성과 활용 분야를 비교 분석합니다.

비교 항목동형암호 (Homomorphic Encryption)차분 프라이버시 (Differential Privacy)합성데이터 (Synthetic Data)
핵심 원리수학적 격자 기반 암호화 연산수학적 노이즈(Noise) 추가GAN, VAE 등 생성 모델 학습
데이터 정확성매우 높음 (복호화 시 원문과 동일)보통 (노이즈로 인한 오차 발생)보통 (통계적 유사성만 유지)
보안 수준최고 (수학적 증명 기반)높음 (노이즈 수준에 따라 결정)높음 (원본과 1:1 매칭 불가)
연산 비용매우 높음 (상당한 컴퓨팅 자원)낮음 (알고리즘 적용 수준)중간 (생성 모델 학습 필요)
주요 활용금융/의료 민감 데이터 외부 연산통계 분석, 애플리케이션 로그 분석AI 학습 데이터 부족 해결, 테스팅
장점원본 가치 100% 보존 가능구현이 상대적으로 간편함원본 유출 위험 0%에 근접

4. PET 도입 시 고려사항 및 기술사적 제언

가. 기술적 트레이드오프(Trade-off) 고려

  • 보안성 vs 활용성 vs 효율성: 보안 강도를 높이면 데이터의 정확도나 연산 속도가 저하됨. 비즈니스 목적에 최적화된 'Privacy Budget($\epsilon$)' 설정이 필수적임.

나. 법적·제도적 수용성 확보

  • PET 기술을 통해 가공된 데이터가 법적으로 '비식별 조치'로 인정받을 수 있도록 표준 가이드라인 및 인증 체계(ISO/IEC 27559 등)와 연계해야 함.

다. 결언

  • PET은 생성형 AI 시대의 필수 인프라임. 기술사는 데이터 수집 단계부터 'Privacy-by-Design' 아키텍처를 수립하고, 다양한 PET 기술을 계층적으로 조합하여 **'안전한 데이터 공유 생태계'**를 구축하는 리더가 되어야 함.

사이버 범죄의 산업화: 랜섬웨어(Ransomware) 및 RaaS 분석과 단계별 대응 전략

 

1. 진화하는 사이버 협박, 랜섬웨어의 위협 개요

  • 정의: 사용자 시스템의 데이터를 암호화하여 인질로 잡고, 복구의 대가로 금전(암호화폐 등)을 요구하는 악성 소프트웨어.

  • 최근 동향: 단순 감염을 넘어 데이터를 외부로 유출한 후 공개하겠다고 협박하는 '이중 협박(Double Extortion)'과 범죄 인프라를 대여하는 'RaaS' 형태로 급격히 확산됨.


2. 가. 랜섬웨어와 RaaS(Ransomware as a Service)의 개념 및 비교

구분랜섬웨어 (Ransomware)RaaS (Ransomware as a Service)
개념데이터 암호화 및 금전 갈취를 목적으로 하는 악성 코드 자체개발자가 랜섬웨어를 제작해 판매·대여하고 수익을 배분하는 비즈니스 모델
구성 요소악성코드 유포지, C&C 서버, 암호화 알고리즘

운영자(Operator): 플랫폼 제공


파트너(Affiliate): 유포 및 공격 수행

진입 장벽높음 (직접 악성코드 제작 및 인프라 구축 필요)낮음 (코딩 능력이 없어도 서비스 구매 후 공격 가능)
수익 구조공격자가 직접 피해자로부터 갈취피해자가 낸 몸값을 운영자와 파트너가 일정 비율로 배분

3. 나. 랜섬웨어의 주요 감염 경로 및 암호화 동작 원리

1) 주요 감염 경로 (Attack Vector)

  • 피싱 이메일: 악성 첨부파일(JS, EXE, DOCX) 및 URL 클릭 유도.

  • 취약점 악용: 패치되지 않은 OS, 브라우저, RDP(원격 데스크톱) 포트 노출.

  • 드라이브 바이 다운로드: 변조된 웹사이트 방문 시 사용자 모르게 악성코드 다운로드.

  • 공급망 공격: 신뢰받는 소프트웨어 업데이트 서버를 해킹하여 악성코드 배포.

2) 암호화 동작 원리 (Encryption Mechanism)

  1. 정보 수집 및 전송: 감염 시스템 정보 수집 후 C&C 서버와 통신하여 공격자 공개키 수신.

  2. 대칭키 생성: 시스템 내부 파일들을 빠르게 암호화하기 위한 대칭키(AES 등) 생성.

  3. 파일 암호화: 생성된 대칭키를 사용하여 대상 문서, 이미지, DB 파일 등을 암호화.

  4. 대칭키 암호화: 파일을 암호화한 대칭키를 공격자의 공개키로 암호화하여 시스템에 저장.

  5. 랜섬노트(Ransom Note) 생성: 바탕화면 변경 및 텍스트 파일을 통해 복구 방법과 입금 주소 고지.


4. 다. 랜섬웨어 피해 예방 및 침해 사고 발생 시 대응 절차

1) 피해 예방 대책 (Prevention)

  • 백업의 생활화 (3-2-1 법칙): 3개의 복사본, 2개의 매체, 1개의 오프라인(Air-gap) 보관.

  • 보안 패치 및 업데이트: OS 및 주요 소프트웨어의 최신 보안 업데이트 상시 적용.

  • 접근 제어 강화: 불필요한 포트(RDP 3389 등) 차단 및 다중 요소 인증(MFA) 도입.

  • EDR/NDR 도입: 엔드포인트 및 네트워크 내 이상 행위를 실시간 탐지하고 차단.

2) 침해 사고 발생 시 대응 절차 (Incident Response)

단계대응 활동상세 내용
1. 탐지 및 식별사고 인지 및 범위 파악감염된 시스템과 암호화된 파일 종류 식별
2. 고립 (Containment)네트워크 분리추가 확산을 막기 위해 유·무선 네트워크 즉시 차단
3. 제거 및 복구악성코드 삭제 및 데이터 복원백업본을 통한 복구 수행 (해커와의 협상은 지양)
4. 사후 관리원인 분석 및 재발 방지유입 경로 파악 후 보안 취약점 보완 및 교육 실시

5. 기술사적 제언: '제로 트러스트'와 '사이버 복원력'의 조화

  • 제로 트러스트(Zero Trust) 구현: "아무도 믿지 마라"는 원칙하에 내부 네트워크에서의 이동(Lateral Movement)을 철저히 감시하고 마이크로 세그멘테이션을 적용해야 함.

  • 사이버 복원력(Resilience) 중심: 완벽한 방어는 불가능함을 인정하고, 공격을 받더라도 핵심 비즈니스를 신속히 재개할 수 있는 **복구 체계(DR)**와 연속성 계획(BCP) 수립이 필수적임.

  • 결언: 랜섬웨어는 기술적 문제를 넘어 비즈니스 리스크임. 기술사는 기업의 자산 가치를 고려하여 최적의 보안 가드레일을 설계하고, 임직원의 보안 인식을 강화하는 거버넌스를 주도해야 함.

데이터 전송 신뢰성 확보의 핵심: 오류 제어 메커니즘 및 ARQ 기법 분석

 

1. 신뢰성 있는 통신을 위한 오류 제어(Error Control)의 개요

  • 정의: 전송 매체를 통해 데이터를 송수신하는 과정에서 발생하는 감쇠, 잡음, 왜곡 등의 오류를 탐지하고 교정하여 데이터의 무결성을 보장하는 기술.

  • 필요성: 물리적 한계로 인한 비트 에러(Bit Error) 발생 시, 상위 계층으로 정확한 정보를 전달하여 재전송 낭비를 줄이고 시스템 신뢰도를 높이기 위함.


2. 가. 오류 검출(Error Detection)과 오류 정정(Error Correction)의 개념

구분오류 검출 (Error Detection)오류 정정 (Error Correction)
개념수신된 데이터에 오류가 발생했는지 여부만을 확인하는 기술오류를 검출함과 동시에 오류가 발생한 위치를 찾아 원래 값으로 복원하는 기술
동작 방식오류 발견 시 송신 측에 **재전송(ARQ)**을 요청함송신 측에서 추가적인 중복 비트(Redundancy)를 보내 수신 측에서 자체 교정
주요 기술패리티 체크, CRC(순환 중복 검사), Checksum해밍 코드(Hamming Code), 상승 코드, RS 코드
특징구조가 단순하고 오버헤드가 적음재전송이 불가능한 단방향 통신이나 실시간 통신에 유리

3. 나. ‘정지-대기(Stop-and-Wait) ARQ’와 ‘Go-Back-N ARQ’의 개념 및 수행절차

1) 정지-대기(Stop-and-Wait) ARQ

  • 개념: 송신 측에서 한 개의 프레임을 전송한 후, 수신 측으로부터 확인 응답(ACK)이 올 때까지 다음 프레임을 보내지 않고 기다리는 방식.

  • 수행 절차:

    1. (송신) 프레임 전송 후 타이머 가동.

    2. (수신) 정상 수신 시 ACK 회신 / 오류 발생 시 NAK 회신 또는 응답 없음.

    3. (송신) ACK 수신 시 다음 프레임 전송 / NAK 수신 또는 타임아웃 시 해당 프레임 재전송.

2) Go-Back-N ARQ

  • 개념: 슬라이딩 윈도우(Sliding Window) 기술을 이용해 ACK 없이도 여러 프레임을 연속 전송하며, 오류 발생 시 오류가 난 프레임부터 그 이후의 모든 프레임을 재전송하는 방식.

  • 수행 절차:

    1. (송신) 윈도우 크기만큼 프레임을 순차적으로 연속 전송.

    2. (수신) 수신 중 오류(예: 프레임 2번) 발생 시, 이후 프레임을 모두 폐기하고 NAK(2번) 회신.

    3. (송신) NAK 수신 시 오류가 발생한 2번 프레임부터 이후 전송했던 모든 프레임을 다시 재전송.


4. 다. ‘정지-대기 ARQ’와 ‘Go-Back-N ARQ’ 비교

비교 항목정지-대기(Stop-and-Wait) ARQGo-Back-N ARQ
전송 효율낮음 (대기 시간으로 인한 채널 낭비)높음 (연속 전송 가능)
구현 난이도매우 단순함보통 (슬라이딩 윈도우 및 버퍼 필요)
윈도우 크기1 (송신 측 윈도우 크기)N (송신 측 윈도우 크기 > 1)
오류 처리해당 프레임 1개만 재전송오류 발생 프레임 이후 모든 프레임 재전송
적합한 환경응답 지연이 짧고 단순한 저속 통신지연 시간이 길고 고속 전송이 필요한 통신

5. 기술사적 제언: 효율적인 오류 제어를 위한 아키텍처 전략

  • Selective Repeat ARQ의 검토: Go-Back-N의 중복 재전송 단점을 보완하기 위해 오류가 난 프레임만 선택적으로 재전송하는 Selective Repeat 방식과의 트레이드오프 고려 필요.

  • Hybrid ARQ (H-ARQ) 활용: 현대의 이동통신(5G/6G)에서는 FEC(오류 정정)와 ARQ(오류 검출 및 재전송)를 결합한 H-ARQ를 통해 전송 효율과 신뢰성을 극대화하고 있음.

  • 결언: 데이터 통신의 성능은 오류 제어 방식의 효율성에 직결됨. 기술사는 통신 매체의 에러율(BER)과 네트워크 지연 시간을 분석하여 최적의 ARQ 알고리즘 및 파라미터(Window Size 등)를 설계해야 함.