본문 바로가기
Certificate/정보처리기사

[정보처리기사] 2022년 1회차 (5)정보시스템 구축관리

by HJ0216 2023. 7. 9.

정보처리기사

소프트웨어 생명 주기

  • 폭포수 모형 (Waterfall Model)
    • 이전 단계로 돌아갈 수 없다는 전제
    • 각 단계가 끝난 후에는 다음 단계를 수행하기 위한 결과물이 명확하게 산출되어야 함
  • 나선형 모델
    • 계획 및 정의 → 위험 분석 → 공학적 개발 → 고객 평가
  • 프로토타입 모형(Prototype Model, 원형 모델)
    • 실제 개발될 소프트웨어에 대한 견본품을 만들어 최종 결과물을 예측하는 모형
  • RAD 기법 모델
    • 짧은 개발 기간동안 개발하기위한 순차적 프로세스 모델
  • V 모델
    • 단위 테스트 → 통합 테스트 → 시스템 테스트 → 인수 테스트
    • 작업 결과의 검증(테스트)에 초점
  • 4세대 기법
    • 자동화 도구들을 이용하여 요구사항 명세서로부터 실행코드를 자동으로 생성할 수 있게 해주는 방법

V모델

v_model

  1. 단위(Unit) 테스트
    : 개발자가 명세서의 내용대로 정확히 구현되었는지 테스트
    • 정적: 소스코드의 실행없이 내부 확인
    • 동적: 입력값에 대한 출력값 확인
  2. 통합(Integration) 테스트
    : 단위 테스트를 통과한 컴포넌트 간의 인터페이스를 테스트
    • 빅뱅 테스트: 프로그램 전체를 대상으로 테스트
    • 상향식 테스트: 테스트 드라이버 사용
    • 하향식 테스트: 깊이 우선 통합법, 넓이 우선 통합법 사용, 테스트 스텁 사용
    • 백본(BackBone) 테스트: : 하위 수준에서는 상향식 통합, 상위수준에서는 하향식 통합 사용하여 최적의 테스트를 지원, 샌드위치(Sandwich)식 통합 테스트 방법
    • 회귀(Regression) 테스트: 통합 테스트가 완료된 후 변경된 모듈이나 컴포넌트가 있을 경우, 다른 부분에 영향을 미치는지 테스트하여 새로운 오류 여부를 확인
  3. 시스템(System) 테스트
    : 전체 시스템 또는 제품의 동작에 대해 테스트
    • 기능 요구사항 테스트
    • 비기능 요구사항 테스트
  4. 인수(Acceptance) 테스트
    : 계약상의 요구사항이 만족되었는지 확인
    • 알파 테스트: 개발자 + 사용자
    • 베타 테스트: 사용자

 

Storage System

  1. DAS(Direct Attached Storage): USB처럼 PC나 서버에 직적 연결하여 사용하는 스토리지
  2. NAS(Networt Attached Storage): DAS에 Network 기능 탑재, 서버와 저장장치가 이더넷등의 LAN방식의 네트워크에 연결된 방식
  3. SAN(Storage Area Network): NAS에 고속채널(광채널)을 탑재

 

Bluetooth 공격

  1. BlueBug: 블루투스 장비 사이의 취약한 연결 관리를 악용한 공격
  2. BlueSnarf: 블루투스 장비의 파일에 접근하는 공격으로 OPP를 사용하여 정보를 열람
  3. BluePrinting: 블루투스 공격 장치의 검색 활동
  4. BlueJacking: 블루투스를 이용해 스팸처럼 명함을 익명으로 퍼뜨리는 것
    cf. Session HiJacking: 다른 사람의 세션 상태를 훔치거나 도용하여 액세스하는 해킹기법

 

Dos(Denial of Service)

- 정의: 대량의 데이터를 보내어 타깃 시스템이 정상적인 서비스를 하지 못하도록 마비시키는 공격(가용성 저하)
- 종류
    - Ping Of Death: 정상 크기보다 큰 ICMP 패킷을 작은 조각(Fragment)으로 쪼개어 공격 대상이 조각화된 패킷을 처리하게 만드는 공격
    - Smurf: IP와 ICMP 특성을 이용하여 문제 발생 시, 해당 사용자에게 보고하지 못하도록 공격
    - Land Attack: Packet의 보내는 사람과 받는 사람을 동일하게 설정
    - Teardrop Attack: Fragment를 재조립 시 정확한 조립을 위해 오프셋이라는 값을 더하게 되는데 이 오프셋 값을 고의적으로 수정하여 시스템의 기능을 마비시켜 버리는 방법

 

DDoS (Distributed Denial of Service)

- 정의: 서비스 중단을 목적으로 표적 서버, 서비스 또는 네트워크에 인터넷 트래픽을 대량으로 보내려고 시도하는 악의적인 사이버 공격의 형태(가용성 저하)
- 종류
    - SYN Flooding: 접속을 요청하는 SYN Packet을 대량으로 전송해 네트워크를 마비 시킴
    - UDP Flooding: 많은 수의 UDP packet을 전송하여 정상적인 서비스가 불가능하도록 하는 공격

 

정보보안 3요소

: 기밀성, 무결성, 가용성

 

클라우드 서비스

  • on-premises: 자사에서 데이터센터를 보유하고 시스템 구축부터 운용까지 모두 수행하는 형태
  • IaaS(Infrastructure as a Service): 개발사에 제공되는 물리적 자원을 가상화
  • PaaS(Platform as a Service): 개발사에 제공되는 플랫폼을 가상화
  • SaaS(Software as a Service): 개발사에 제공되는 소프트웨어를 가상화

 

프로젝트 일정 관리

WBS (Work Breakdown Structure)
- 프로젝트를 탑다운 방식으로 세분화하여 프로젝트의 단위 작업에 대해 파악하는 기법

PERT 차트
- 전체 작업의 상호 관계를 표시하는 네트워크
- 소요 기간 예측이 어려운 프로젝트 일정 계획에 사용

CPM(Critical Path Method)
- 처음부터 끝까지 프로젝트를 완수하는데 드는 시간을 측정하고 가장 긴 의존 활동을 식별

간트 차트(시간선 차트)
- 각 작업들의 시작과 종료에 대한 일정을 막대 도표를 이용하여 표시
- 수평 막대 길이 = 각 작업 기간

 

입력 데이터의 보안 약점

  • XSS(Cross Site Scripting): 웹 브라우저에서 의도하지 않은 악성 스크립트가 실행되는 것
  • 자원 삽입: Script 태그에서 src 부분을 조작하여 의도하지 않은 다른 자원도 함께 실행되는 것

 

암호화

Encryption_key

- 양방향 알고리즘 : 암호화, 복호화 가능
- 단방향 알고리즘 : 암화화 가능, 복호화 불가

- 대칭키 방식: 암호화, 복호화 시 모두 동일한 키를 사용
    - 빠른 속도
    - 많은 양
- 비대칭키(공개키)방식: 암호화 복호화에 서로 다른 키를 사용
    - 느린 속도
    - 적은 양 ◀ 내용을 암호화하기보다는 키를 암호화하는 방식으로 사용

대칭키 암호화 방식

  DES AES
블록 길이 64bit 128bit
키 길이 56bit 128/196/256bit
라운드 수 16 12/14/16
페이스텔 페이스텔 비페이스텔
  • 페이스텔: 블록 암호의 일종으로, 암호화 방식이 특정 계산 함수의 반복으로 이루어지는 것

 

SW 비용 산정 기법

- 하향식
    - 프로젝트의 전체 비용을 산정한 후 각 작업별로 비용을 세분화
    - 종류: 전문가 감정 기법, 델파이 기법
- 상향식
    - 세부적인 작업 단위별로 비용을 산정한 후 집계하여 전체 비용을 산정
    - 종류
        - LOC(원시 코드 라인 수, source Line of Code)
            -각 기능의 원시 코드 라인 수의 비관치(1), 낙관치(1), 기대치(4)를 측정하여 예측치를 구하고 이를 이용하여 비용을 산정
- 수학적 산정
    - 경험적 추정 모형, 실험적 추정 모형
    - 종류
        - COCOMO: LOC(원시 코드 라인 수)에 의한 비용 산정 기법
            - 종류: 조직형(5만 라인 이하), 반 분리형(30만 라인 이하), 내장형(30만 라인 이상)
        - Putnam: 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 예상
            - 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 함
            - SLIM: Rayleigh-Nordan 곡선과 Putnam 예측 모델을 기초로 하여 개발된 자동화 추정 도구
        - 기능점수(FP): 소프트웨어의 기능을 증대시키는 요인별로 기능 점수(FP)를 구한 후, 비용을 산정

 

소프트웨어 3R

  1. 역공학(Reverse-Engineering)
    : 기존 개발된 시스템의 코드나 데이터로부터 설계 명세서나 요구 분석서 등을 도출하는 작업
  2. 재공학(Re-Engineering)
    : 소프트웨어의 위기를 유지 보수의 생산성으로 해결하려는 방법
    • Migration: 기존 SW 시스템을 새로운 환경에서 사용할 수 있도록 변환하는 작업
  3. 재사용(Re-Use)

 

로그 파일 종류

  1. utmp: 현재 로그인 사용자 상태 정보를 담고 있는 로그파일
  2. wtmp: 리눅스 시스템에서 사용자의 성공한 로그인/로그아웃 정보 기록
  3. btmp: 실패한 로그인 정보를 담고 있는 로그파일
  4. last log: 마지막으로 성공한 로그인 정보를 담고있는 로그파일
  5. sulog : su(switch user) 명령어와 관련된 로그 기록

 

Stuxnet: 핵무기 등 물리적인 피해를 입히는 목적으로 사용되는 악성 코드
Rooting: 안드로이드 OS에서 최상위 권한을 얻어 해당 기기의 제약을 해제하는 것(= 탈옥)
Hadoop: 대규모 데이터 세트를 분산 처리할 수 있는 오픈 소스 프레임워크
MapReduce: 분산처리엔진 역할을 하는 하둡의 중심 모듈

 

 

 

참고 자료

 

흥달쌤

흥달쌤과 함께하는 IT 채널입니다. 정보처리기사 자격증 관련된 강의 및 실무 노하우, 프로그래밍 언어(JAVA, C언어, Python) 특강 등이 진행됩니다. 앞으로 진행 예정인 동영상은 IT 관련된 이야기

www.youtube.com

 

스토리지란? DAS란? / NAS란? / SAN 이란? 차이점?

스토리지(Storage)란? 컴퓨터에 데이터를 저장하는 저장소의 역할을 수행하는 부품이다. 컴퓨터의 하드디스크와 동일한 역할을 수행하는 부품이며, 스토리지를 직접 서버에 연결 할 수 있음. 대용

cheershennah.tistory.com

 

소프트웨어 생명 주기 , V모델 (단위 테스트 , 통합 테스트 , 시스템 테스트 , 인수 테스트)

위 사진은 애플리케이션 테스트와 소프트웨어 개발 단계를 연결하여 표현한 것으로, 이를 "소프트웨어 생명 주기 V모델"이라고 한다. V모델에서 테스트 단계의 각 테스트에 대한 설명은 다음과

naminal.tistory.com

 

클라우드 서비스 이해하기 IaaS, PaaS, SaaS | 와탭 블로그

회사에 클라우드를 도입해야 한다면 어떤 클라우드 서비스 종류를 선택해야 하는지 알려드립니다.

www.whatap.io