● SW 비용 산정 기법

 - 프로젝트 요소 : 제품 복잡도, 시스템 크기, 요구되는 신뢰도

 - 자원 요소 : 인적, 하드웨어, 소프트웨어

 - 생산성 요소 : 개발자 능력, 개발 기간

 

1. 하향식 : 전문 지식이 많은 개발자

 - 전문가 감정 기법 : 두명 이상의 전문가, 주관적임

 - 델파이 기법 : 한명의 조정자, 많은 전문가

2. 상향식 : LOC(원시 코드 라인 수 : Line Of Code)

 - 노력(인월) = 개발 기간 * 투입 인원

                 = LOC / 1인 1달 라인수

 - 개발 비용 = 노력 * 단위비용

 - 개발 기간 = 노력 / 투입인원

 - 생산성 = LOC / 노력

 

* 수학적 산정 기법 : COCOMO, Putnam, 기능점수(FP) 기법

1. COCOMO(생산적 비용 모델) - LOC기반

★개발유형

   조직형(Organic) : 중소규모, 응용 소프트웨어, 5만라인

   반분리형(semi-Detached) : 트랜잭션 처리 시스템, OS, DBMS 등 유틸리티, 30만라인

   내장형(Embedded) : 대규모, 시스템 프로그램, 30만라인↑

★ 모형종류

  기본형(Basic) : LOC와 개발유형만 이용

  중간형(Intermediate) : 기본형 + 15가지요인

  발전형(Detailed) : 개발 공정별로 자세하고 정확한 노력 산출

 

2. Putnam - 소프트웨어 생명주기

3. 기능점수(FP) - 요인별 가중치 부여

 

● 소프트웨어 개발 표준

 - ISO/IEC 12207 : 생명주기, 기본/지원/조직 생명주기 프로세스로 구분

 - CMMI : 성숙도

  ★ 프로세스 단계 : 초기, 관리, 정의, 정량적 관리, 최적화

 - SPICE : 프로세스

  ★ 프로세스 범주 : 고객-공급자, 공학, 지원, 관리, 조직

  ★ 프로세스 단계 : 불완전, 수행, 관리, 확립, 예측, 최적화

 

● 소프트웨어 개발 방법론 테일러링 : 소프트웨어 개발 방법론을 수정 및 보완

 - 내부적 요건 : 목표환경, 요구사항, 프로젝트 규모, 보유 기술

 - 외부적 요건 : 법적 제약사항, 표준 품질 기준

 

 - 기법 : 프로젝트 규모와 복잡도/ 프로젝트 구성원 / 팀내 방법론 지원 / 자동화

 

● 정보시스템 구축 관리

 - 스위치 : 더 큰 LAN을 만드는 장치

   L2 스위치 : 동일 네트워크간의 연결, MAC주소 기반

   L3 스위치 : 서로 다른 네트워크간의 연결, L2 + 라우터, IP 주소 기반

   L4 스위치 : L3 + 로드밸런서

   L7 스위치 : 패킷 내용까지 참조하여 세밀하게 로드밸런싱

 ★ 방식 : Store and Forwarding, Cut-through, Fragment Free

 

 - 백본 스위치 : 중추 역할의 네트워크, L3 스위치

 - Hierachical 3 Layer 모델

   액세스 계층 :  사용자가 처음 연결되는 지점 / L2 스위치

   디스트리뷰션 계층 : 액세스와 코어 연결 / 라우터, L3 스위치

   코어 계층(백본 계층): 인터넷과 연결 / 백본 스위치

 

● 경로 제어 : 최적 패킷 교환 경로 결정, 라우터

 - 경로제어 프로토콜

    IGP : 하나의 자율 시스템(AS) 내의 라우팅

  -RIP : 소규모, 홉 15개, 30초마다 전송, bellman-Ford 알고리즘, 거리벡터 라우팅

  -OSPF : 대규모, 변화된 정보만 전송, Dijkstra 알고리즘, 멀티캐스팅

    EGP : 자율 시스템 간의 라우팅

    BGP : 처음에 라우팅 테이블 교환하고 이후는 변화된 정보만 교환

● 트래픽 제어

 1. 흐름제어 : 송.수신 측 사이에서 패킷 양과 속도 조절

    - 정지-대기 : 확인 신호를 받은 후 다음패킷 전송

    - 슬라이딩 윈도우 : 확인 신호를 받지 않더라도 미리 정해진 패킷수 연속 전송

 2. 폭주(혼잡) 제어 : 네트워크 내에서 패킷수 조절

 3. 교착상태 방지 

 

● 서비스 거부 공격(DOS) : 다수의 공격자가 한곳 서버에 집중 전송

 - Ping of Death(죽음의 핑) : 패킷 크기를 허용 범위 이상으로 전송

 - SMURFING(스머핑) : 많은 양의 데이터를 한 사이트에 집중 전송, 브로드캐스트 주소를 라우터 수신지로 설정

 - SYN Flooding : TCP의 3-way-handshake 과정을 의도적으로 중단시킴

 - TearDrop : Fragment Offset 값을 변경시켜 수신 측에서 패킷을 재조립 할수 없게해서 과부하 발생

 - Land : 송신 IP주소와 수신 IP주소 모두 공격대상의 IP주소로 설정, 자신에게 무한히 응답함

 - DDoS : 분산 서비스 거부 공격, 좀비PC로 만들고 C&C 서버가 공격 명령

 - 스미싱 : apk 설치파일 유도하여 사용자정보 탈취

 - 스피어 피싱 : 사회공학, 위장 메일 지속적으로 발송해서 클릭 유도

 - APT : 침투한 후 오래기다려서 정보 탈취

 - XSS : 웹페이지의 내용을 표시하는 스크립트의 취약점 이용

 

 - 웜 : 네트워크에서 자신을 복제해 과부하시킴

 - 제로 데이 공격 : 취약점을 보안하기 전에 빠르게 공격, 공격의 신속성

 - 랜섬웨어 : 파일 암호화 후 돈 요구

 - 트로이 목마 : 정상 프로그램처럼 위장

 

보안 솔루션

 - 방화벽 : 외부 -> 내부 일때 패킷내용 체크/ 내부 -> 외부 는 이상X

 - 침입 탐지 시스템(IDS) : 비정상 이용 실시간 탐지

 - 침입 방지 시스템(IPS) : 방화벽 + IDS

 - NAC : 네트워크 접근 제어, MAC 주소를 IP 관리 시스템에 등록 후 보안 관리

 - ESM : 다양한 장비의 로그 및 보안 이벤트 통합 관리

 

● 이중화(고가용성)

 - Hot Standby : 1개 작동, 1개 대기

 - Mutual Take-Over : 2개가 각자의 역할을 하다가 에러시 1곳에서만 (페일오버)

 - Concurrency Access : 여러개가 병렬 처리 (페일오버 X)

 

+ Recent posts