본문으로 건너뛰기

Full Stack JavaScript Developer | Half-time Open Sourcerer.

View All Authors

성능테스트

· 약 3분

성능테스트의 개념

  • 시스템의 비기능 요구사항을 만족하는지 확인하기 위해 실제 환경과 비슷한 환경에서 수행하는 테스트
  • 시스템 안정성 확인, 사용자 경험 개선, 비용 절감, 확장성 검증

성능테스트 구성도, 구성요소, 주요 지표

성능테스트 구성도

  • 테스트 시나리오를 작성 후 부하생성, 모니터링 및 분석 후 시스템에 추가 반영

성능 테스트 구성요소

구분내용비고
부하 생성기시나리오를 기반으로 시스템에 부하를 발생시키는 도구JMeter, LoadRunner
모니터링, 분석 도구시스템 성능 지표 실시간 모니터링, 테스트 결과 분석, 성능 문제 식별New Relic, ELK Stack

성능 테스트 주요 지표

구분지표내용
테스트환경동시사용자성능테스트의 가상사용자 수
-활성사용자서버에 연결되어 요청을 처리 중인 사용자로 트랜잭션 발생 사용자
성능응답시간요청 후 응답이 완료되어 사용자 화면에 출력될 때까지 시간
-대기시간하나의 요청에 응답을 수신하고 다음 요청을 보낼 때까지의 시간
-TPS단위 시간 당 서버, DB에서 처리된 요청 수

TPS 계산

Little's Law

CU=λW CU = \lambda * W
  • 동시사용자 = TPS * (Request Time + Think Time)
  • 웹 시스템에선 동시 사용자와 활성사용자 간 차이가 있으므로 TPS 가정 하에 활성 사용자 계산

페어 프로그래밍, 핑퐁 프로그래밍

· 약 4분

페어 프로그래밍 개념

  • XP 개발 방법론에서 개발자 고립과 낮은 생산성 문제를 해결하기 위해 페어프로그래밍 기법 등장, 애자일 방법론에서 TDD 기반의 핑퐁 프래밍 기법으로 발전.
  • 오류에 빠른 대응 가능, 코드에 대한 책임 분담으로 실수 방지 가능

페어 프로그래밍, 핑퐁 프로그래밍의 개념도, 구성요소, 적용방안

페어 프로그래밍, 핑퐁 프로그래밍의 개념도

페어 프로그래밍, 핑퐁 프로그래밍 구성요소 비교

구분페어 프로그래밍핑퐁 프로그래밍
개념두 개발자가 한 컴퓨터에서 개발하는 프로그래밍 방식두 개발자가 번갈아가며 테스트와 코드 작성
역할드라이버, 네비게이터테스트 작성자, 코드 작성자
특징코드 품질 향상, 코드 리뷰TDD 촉진
장점오류 감소, 지식 공유, 생산성 향상테스트와 코드 작성의 연계
단점의사소통 비용 발생잦은 인터럽트 발생

페어 프로그래밍 적용방안

구분방안비고
숙련도가 다른 개발자시니어-주니어 페어로 네비게이터-드라이버 역할 수행주니어의 빠른 성장 기대
신기술 학습새로운 기술 적용시 여러 관점 고려 가능학습효과 극대화
문제 해결다양한 접근 방식으로 빠른 이슈 해결역할 교체

페어 프로그래밍시 고려사항

  • 서로 신뢰하고 존중하는 분위기가 선행되어야 페어 프로그래밍시 커뮤니케이션 비용 대비 생산성 효과 극대화

ISO/IEC Standards

· 약 2분

주요 ISO 표준

표준설명비고
ISO 7498OSI 7 Layer물데네전세표응
ISO 11898CAN, Controller Area Network노드, 컨트롤러, 트랜시버, 버스
ISO 12119테스트 품질요구사항제품설명서, 사용자문서, SW제품 및 데이터
ISO 12207SDLC기본, 지원, 조직 생명주기
ISO 14000환경경영시스템환경 경영 시스템, 환경 성과 평가, 환경 라벨링, 온실가스
ISO 14143FP기능점수, EI, EO, EQ, ILF, EIF
ISO 15504SPICE주요, 지원, 조직 프로세스
ISO 19770SAM소프트웨어 자산 관리, 라이선스 관리
ISO 20000ITSM서비스 관리체계 구축
ISO 25000SQUARESW 품질 모델, 품질 측정, 품질 요구, 품질 평가, 기신사효유이호보, 효생안만
ISO 25029AI 품질제어가능성, 강건성, 기능적용성, 개입가능성, 투명성, 기능정확성
ISO 26262자동차 안전QM, ASIL A~D, AUTOSAR
ISO 29119테스트V&V, 테스트 프로세스, 문서화, 기법, 키워드주도 테스팅
ISO 31000위험관리식별, 분석, 평가, 대응, 회전감수
ISO 42010아키텍처시스템/SW 아키텍처 설명, 뷰, 관점, 이해관계자
IEC 61508전기, 전자, 프로그램 가능한 전자시스템 기능안전SIL 1~4

ATAM, CBAM 비교

· 약 4분

SW아키텍처 평가모델의 개요

  • 시나리오 기반에서 품질속성을 평가하여 아키텍처 내부 리스크를 파악하고, 설계타협점을 찾는 ATAM 기법, 경제성까지 고려한 CBAM 평가기법으로 진화

ATAM, CBAM의 절차, 구성요소, 적용방안

ATAM, CBAM의 절차

  • 리스크를 고려한 설게 타협안 선택, 비용대비 편익이 높은 효율안 선택.

ATAM, CBAM의 구성요소

구분ATAMCBAM
초점아키텍처 품질비용, 이해관계자 이익
시점프로젝트 초기ATAM 수행 이후
평가요소품질속성, 시나리오비용, 편익, ROI
장점기존시스템 분석 용이비용, 일정, 경제성 파악
단점경제성 평가 미흡품질속성 평가 미흡

프로젝트별 적용방안

구분ATAMCBAM
대규모 시스템복잡한 아키텍처 품질속성 및 트레이드 오프 분석에 효과적높은 개발비용 예상시 투자 효율성 분석 용이
고가용성 시스템성능, 보안 등 핵심 품질 속성 확보 용이품질속성 확보를 위한 비용 효율적 아키텍처 수립
예산 제약 시스템제한된 예산 내에서 최적의 아키텍처 설계제한된 예산 내에서 최대 효과의 아키텍처 설계
  • 상호보완적인 관계로 ATAM과 CBAM을 함께 사용하여, 아키텍처 설계의 기술적, 경제적 측면을 고려한 최적의 의사결정 필요

네트워크 스위치

· 약 2분

스위치 개념

  • 여러 컴퓨터나 장치를 서로 연결하고 데이터 패킷을 올바른 목적지로 전달하고, 데이터를 효율적으로 전달하기 위해 트래픽을 관리하기 위한 장치
  • 효율적 데이터 전달, 브로드캐스팅 트래픽 감소, QoS 지원, 네트워크 확장성, 보안 강화

스위치 유형, L4-L7 스위치 비교, 알고리즘

스위치 유형

구분유형설명
L7 어플리케이션 계층L7 스위치콘텐츠 기반 라우팅, 고급 로드밸런싱
L4 전송 계층L4 스위치TCP/UDP 포트 기반 라우팅, 세션 처리
L3 네트워크 계층L3 스위치IP 주소 기반 패킷 전달
L2 데이터링크 계층L2 스위치MAC 주소 기반 프레임 전달

L4-L7 스위치 비교

구분L4 스위치L7 스위치
동작계층전송계층응용계층
기준TCP/UDP 포트어플리케이션 프로토콜
기능로드밸런싱컨텐츠 스위칭, 로드밸런싱, 가속
장점단순, 성능QoS, 보안, 트래픽 제어
단점컨텐츠 확인 불가느림, 복잡

스위치 라우팅 알고리즘

구분내용비고
Round Robin--
Least Connection--
Least Response Time--
Hash Based--

스위치 고려사항

  • 네트워크 규모와 트래픽에 따라 적절한 포트 수와 스위치 성능 선택 필요

양자암호통신

· 약 3분

양자암호통신의 개념

  • 양자역학의 원리를 이용하여 송신자, 수신자 간 비밀키를 안전하게 생성하고 분배하는 통신기술
  • RSA 기반 전자봉투 비밀키 교환 방식은 양자컴퓨터의 발달로 해독 가능성 존재, 양자 불확정성 원리로 도,감청시 키가 변형되므로 보안성 우수

양자암호통신의 구성도, 구성요소, 적용방안

양자암호통신의 구성도

양자암호통신의 구성요소

구분내용비고
양자키분배기(QKD)양자비트 생성 후 비밀키 교환, 양자비트 수신 후 비밀키 측정양자상태 유지, 측정 후 키 생성
양자 채널양자 비트를 전달하는 통신채널광섬유, 위성
기존 채널QKD 이후 암호문을 송수신하고 복호화하는 채널TLS 등 N/W 보안 고려

양자암호통신의 적용방안

구분내용비고
공공국가 기밀 통신높은 보안 수준 요구
-군사 통신-
금융금융 거래 보호비용 대비 효과 고려
-기업 비밀 문서 전송-
민간개인정보보호, IoT 보안프라이버시 보호

양자암호통신 고려사항

  • 기술 표준화 부재로 시스템 간 호환성을 고려한 운영비용 산정 필요

블록 암호화 알고리즘

· 약 3분

블록 암호화의 개념

  • 평문을 고정길이의 블록 단위로 나누어 각 블록마다 암호화하여, 병렬 암호화 처리가 가능한 대칭키 암호화 방식
  • 다양한 운영모드를 통한 암호화 요구사항 충족, 병렬 암호화 처리로 암복호화 성능 우수, 데이터 무결성, 기밀성 보장

블록암호화의 개념도, 주요 유형, 운영 모드

블록 암호화의 개념도

블록 암호화 주요 유형

구분유형내용
Feistal 방식DES56bit 키, 64bit 평문 블록 사용, 보안 취약성 존재
-LEA128bit 고속, 경량 환경 대응
-SEED128bit 평문, 국내 개발
SPN 방식AES128bit 평문, 미국 표준 알고리즘
-ARIA초경량, HW지원용 알고리즘

블록 암호화 운영모드 비교

구분ECBCBCCTR
초기화벡터불필요필요필요
오류전파미전파이후블록미전파
병렬처리암복호화복호화암복호화
복잡도낮음중간높음
  • ECB 모드는 Brute-Force 공격에 취약하므로 다른 모드 사용 권장

블록 암호화시 고려사항

  • 암호화 키를 주기적으로 변경하는 등의 키관리 조치 필요

적대적 공격

· 약 4분

머신러닝 적대적 공격의 개념

  • 머신러닝 모델의 취약점을 악용하여 잘못된 예측을 유도하기 위해 고의적으로 조작된 입력을 사용하는 공격
  • 딥러닝 모델의 발전과 함께 적대적 공격기법 발전

적대적 공격의 개념도, 주요 공격기법, 방어기법

적대적 공격의 개념도

적대적 공격의 주요 공격기법

구분내용비고
학습데이터 추출공격모델에 수많은 쿼리를 던져 학습에 사용된 데이터 추출학습데이터 내 중요정보 추출
중독공격악의적 학습데이터를 주입하여 ML 모델의 결과값 조작MS테이, 이루다
회피공격입력 데이터를 최소한으로 변조, 모델 무결성 파괴도로 표지판 오인식
모델 추출공격모델 질의 후 결과값을 분석하여 사용된 모델 추출유사 모델 제작

적대적 공격의 방어기법

구분내용비고
Defense GAN생성적 적대 신경망을 활용한 공격 방어회피 공격 방어
적대적 훈련가능한 많은 적대적 사례를 학습데이터에 포함해 훈련중독, 회피공격 방어
결과값 분석 차단학습 모델의 결과값을 분석할 수 없게 합성데이터 활용추출공격 방어
쿼리 횟수 제한반복 질의시 제한하여 정보 유출 방지추출공격 방어

생성형 언어모델 보안 취약점과 대응방안

구분취약점대응방안
개인정보, 민감정보 유출무분별한 데이터 입력개인정보 등 답변 차단
-개인, 민감 정보 추출자동탐지, 익명화
악성코드 생성악성코드 생성 자동화API 포함 코드 검수 단계 추가
-취약점 생성 자동화반환 코드 분석, 실행 차단
AI 모델 취약점생성형 모델에 대한 적대적 공격xAI 구현, Defense-GAN 구현

드론 보안위협

· 약 2분

드론 보안위협 개념

  • 드론 외부의 악의적 행위로 인해 드론 자체 또는 드론이 수집하는 데이터가 탈취, 변조, 파괴 되는 등 드론 운동에 악역향을 주는 모든 위협
  • 드론 서비스 활성화에 따라 보안 위협 대책 요구 증가

드론 보안위협의 개념도, 주요 유형, 대응방안

드론 보안위협의 개념도

  • 드론 센서, 구동부와 제어 네트워크 해킹, 교란부 위협

드론 보안위협의 주요 유형

드론 보안위협의 대응방안

드론 보안위협 고려사항

  • 드론의 SW와 펌웨어를 정기적으로 업데이트하여 최신 보안 위협 대비 필요

클라우드 보안 고려요소

· 약 3분

클라우드 보안 개념

  • 클라우드 컴퓨팅 환경에서 데이터를 보호하고, 어플리케이션 및 인프라의 보안을 유지하기 위한 관리적, 물리적, 기술적 보안
  • 2025년까지 모든 행정 공공, 정보시스템 클라우드 전환 시 데이터 보호와 서비스 신뢰성 확보를 위해 필요

클라우드 보안 개념도, 주요 위협, 대응 방안

클라우드 보안 개념도

  • 기존 기업의 보안 프레임워크가 클라우드로 확장, 클라우드 서비스 제공 데이터센터의 물리적 보안은 CSP책임

클라우드 보안 주요 위협

구분위협내용
SaaS정보 훼손 및 유출고객 정보 훼손 및 유출 위협
-웹 취약점 공격악성코드, 인젝션, XSS 등
-버전 통제 문제다른 버전 서비스 호환 가능성
PaaSBuffer Overflow제공된 자원 권한 이상 접근
-표준화 부재설계, 코딩 표준 부재
-인증 문제취약한 인증, 계정 탈취, 플랫폼 종속
IaaS가상화 취약점하이퍼바이저, 도커 취약점
-서버 관리 문제DDoS, 시스템 장애
-데이터 손실 문제고객 데이터 유실

클라우드 보안 대응방안

구분내용비고
관리적보안 정책 수립, 시행보안 거버넌스 확립, SLA 협약
-교육 및 훈련클라우드 보안 교육, 대응방안 교육
물리적데이터센터 보안물리적 보안 강화, 접근 통제
-백업 및 재해복구데이터 손실, 서비스 중단 대응
기술적암호화데이터 자체와 N/W 구간 암호화
-방화벽, IDS, IPS트래픽 감시, 사전 차단
  • SDN, IAM 등을 활용하여 최소 권한 부여

클라우드 보안 고려사항

  • 각 국의 산업 표준 및 법적 요구사항 준수 필요