본문으로 바로가기

5과목 : 정보시스템 구축관리

 

1. Rayleigh-Norden 곡선의 노력 분포도를 이용한 프로젝트 비용 산정기법은?

1. Putnam 모형
2. 델파이 모형
3. COCOMO 모형
4. 기능점수 모형

Putnam모형 : 소프트웨어 생명 주기의 전 과정 동안에 사용될 노력의 분포를 가정해 주는 모형
 - 푸트남(Putnam)이 제안한 것으로 생명 주기 예측 모형이라고도 함
 - 시간에 따른 함수로 표현되는 Rayleigh-Norden 곡선의 노력 분포도를 기초로 함
 - 대형 프로젝트의 노력 분포 산정에 이용되는 기법
 - 개발 기간이 늘어날수록 프로젝트 적용 인원의 노력이 감소

COCOMO모형 : 보헴(Boehm)이 제안한 것으로, 원시 프로그램의 규모인 LOC(원시 코드 라인 수)에 의한 비용 산정 기법
 - 개발할 소프트웨어의 규모를 예측한 후 이를 소프트웨어 종류에 따라 다르게 책정되는 비용 산정 방정식에 대입하여 비용산정
 - 비용 견적의 강도 분석 및 비용 견적의 유연성이 높아 소프트웨어 개발비 견적에 널리 통용
 - 같은 규모의 프로그램이라도 그 성격에 따라 비요이 다르게 산정
 - 비용 산정 결과는 프로젝트를 완성하는데 필요한 노력으로 나타남
   - COCOMO모형의 소프트웨어 개발 유형 : 조직형(Organic) / 반분리형(Semi-Detached Mode) / 내장형(Embedded Mode)

기능점수(FP) 모형 : 알브레히트(Albrecht)가 제안한 것으로, 소프트웨어의 기능을 증대시키는 요인별로 가중치를 부여하고, 요인별 가중치를 합산하여 총 기능 점수를 산출하며 총 기능점수와 영향도를 이용하여 기능 점수를 구한 후 이를 이용해서 비용을 산정하는 기법
 - 발표 초기에는 관심을 받지 못하였으나 최근에는 유용성과 간편성으로 비용 산정 기법 가운데 최선의 평가를 받음

 

2. 메모리상에서 프로그램의 복귀 주소와 변수사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?

1. 모드체크
2. 리커버리 통제
3. 시스로그
4. 스택가드

스택 보호 메커니즘(Stack Guard)
 - 스택 가드는 가장 잘 알려진 보호 메커니즘 중 하나
 - GCC 컴파일러의 확장 버전으로 추가적인 함수 진입과 종료 코드를 삽입
 - 컴파일러가 프로그램 함수 호출시에 ret 앞에 canary 값을 주입하고, 종료시에 canary 값이 변조되었는지의 여부를 확인하여 버퍼 오버플로우 공격을 탐지

스택 쉴드(Stack Shield)
 - 함수 시작 시 복귀 주소를 Global RET라는 특수 스택에 저장해 두었다가 함수 종료 시 저장된 값과 스택의 RET값을 비교해 다를 경우 오버플로우로 가정하여 프로그램 실행을 중단 시키는 기술

 

3. 백도어 탐지 방법으로 틀린 것은?

1. 무결성 검사
2. 닫힌 포트 확인
3. 로그 분석
4. SetUID 파일 검사

 

4. IP 또는 ICMP의 특성을 악용하여 특정 사이트에 집중적으로 데이터를 보내 네트워크 또는 시스템의 상태를 불능으로 만드는 공격 방법은?

1. TearDrop
2. Smishing
3. Qshing
4. Smurfing

TearDrop
 - 네트워크상에서 IP가 정상적으로 패킷을 전송할 때 IP 단편화가 발생하게 된다. 수신자는 재조립을 통해 단편화된 데이터를 복구
 - 이때 재조립 시에 정확한 조립을 위해 오프셋이란 값을 더하게 되어 있는데 이 오프셋 값을 더해 그 범위를 넘어서는 오버플로우를 일으켜 시스템의 기능을 마비시켜 버리는 DoS 공격기법

Smishing
- 스미싱은 SMS와 피싱의 합성어로 문자메시지를 이용한 피싱

Qshing
- QR코드와 피싱(Phishing)의 합성어로 QR코드를 이용한 해킹을 의미

Smurf Attack
 - smurf DoS 공격은 공격자가 출발지 IP 주소를 목표 시스템으로 스푸핑하고 목적지 주소를 직접 브로드캐스트 주소로 설정한 Ping 메시지를 송신하고, Ping 메시지를 수신한 네트워크 내의 모든 시스템이 Ping 응답 메시지를 출발지 주소인 공격 목표 시스템으로 동시에 전송함으로써 공격 목표를 마비

 

5. CMM(Capability Maturity Model) 모델의 레벨로 옳지 않은 것은?

1. 최적단계
2. 관리단계
3. 정의단계
4. 계획단계

CMM(Capability Maturity Model)
 - 프로세스 평가를 위해 5단계의 성숙도로 구분한 모델
 - S/W 생명주기 동안 품질향상과 공정관리 개념을 적용하여 만들어진 모델
CMM(Capability Maturity Model) 단계
 - 레벨 1 : 초기 단계
 - 레벨 2 : 관리 단계
 - 레벨 3 : 정의 단계
 - 레벨 4 : 정량적 단계
 - 레벨 5 : 최적화 단계

 

6. 웹과 컴퓨터 프로그램에서 용량이 적은 데이터를 교환하기 위해 데이터 객체를 속성·값의 쌍 형태로 표현하는 형식으로 자바스크립트(JavaScript)를 토대로 개발되어진 형식은?

1. Python
2. XML
3. JSON
4. WEB SEVER

 

7. 크래커가 침입하여 백도어를 만들어 놓거나, 설정 파일을 변경했을 때 분석하는 도구는?

1. trace
2. tripwire
3. udpdump
4. cron

Traceroute
 - 명령어를 실행하는 컴퓨터에서 목적지 서버로 가는 네트워크 경로를 확인해주는 명령어
cron
 - 유닉스 계열 컴퓨터 운영 체제의 시간 기반 잡 스케줄러

 

8. 소프트웨어 개발 프레임워크를 적용할 경우 기대효과로 거리가 먼 것은?

1. 품질보증
2. 시스템 복잡도 증가
3. 개발 용이성
4. 변경 용이성

 

9. COCOMO model 중 기관 내부에서 개발된 중소 규모의 소프트웨어로 일괄 자료 처리나 과학기술 계산용, 비즈니스 자료 처리용으로 5만 라인 이하의 소프트웨어를 개발하는 유형은?

1. embeded
2. organic
3. semi-detached
4. semi-embeded

 - COCOMO모형의 소프트웨어 개발 유형 : 조직형(Organic) / 반분리형(Semi-Detached Mode) / 내장형(Embedded Mode)
  - 조직형(Organic) : 비즈니스 자료 처리용으로 5만라인 이하의 소프트웨어를 개발하는 유형
  - 반분리형(Semi-Detached Mode) : 트랜잭션 처리 시스템 및 운영체제, 데이터베이스 관리 시스템 등의 30만라인 이하의 소프트웨어를 개발하는 유형
  - 내장형(Embedded Mode) : 최대형 규모의 트랜잭션 처리 시스템이나 운영체제 등의 30만라인 이상의 소프트웨어를 개발하는 유형

 

10. 여러 개의 독립된 통신장치가 UWB(Ultra Wideband)기술 또는 블루투스 기술을 사용하여 통신망을 형성하는 무선 네트워크 기술은?

1. PICONET
2. SCRUM
3. NFC
4. WI-SUN

 

11. 프로토타입을 지속적으로 발전시켜 최종 소프트웨어 개발까지 이르는 개발방법으로 위험관리가 중심인 소프트웨어 생명주기 모형은?

1. 나선형 모형
2. 델파이 모형
3. 폭포수 모형
4. 기능점수 모형

폭포수 모형(Waterfall Model)
 - 소프트웨어 개발 과정의 한 단계가 끝나야만 다음 단계로 넘어갈 수 있는 선형 순차적 모형
 - 제품의 일부가 될 메뉴얼을 작성해야 함
 - 두 개 이상의 과정이 병행하여 수행되지 않음

프로토타입 모형(Prototype Model)
 - 견본(시제)품(Prototype)을 만들어 최종 결과물을 예측하는 모형
 - 소프트웨어의 개발이 완료된 시점에서 오류가 발견되는 폭포수 모형의 단점을 보완하기 위한 모형

나선형 모형(Spiral Model)
 - 보헴(Boehm)이 제안한 것으로, 폭포수 모형과 프로토타입 모형의 장점에 위험 분석 기능을 추가한 모형
 - 나선을 따라 돌듯이 여러 번의 소프트웨어 개발 과정을 거쳐 점진적으로 완벽한 최종 소프트웨어를 개발하는 것으로 점진적 모형이라고도 함
 - 위험을 관리하고 최소화하는 것을 목적으로 함

애자일 모형(Agile Model)
 - 어느 특정 개발 방법론이 아니라 좋은 것을 빠르고 낭비 없게 만들기 위해 고객과의 소통에 초점을 맞춘 방법론
 - 스프린트 또는 이터레이션이라고 불리는 짧은 개발 주기를 반복
 - 반복되는 주기마다 만들어지는 결과물에 대한 고객의 평가와 요구를 적극 수용

 

12. 다음이 설명하는 용어로 옳은 것은?

- 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼이다.
- 일반 pc급 컴퓨터들로 가상화된 대형 스토리지를 형성
- 다양한 소스를 통해 생성된 빅데이터를 효율적으로 저장하고 처리

1. 하둡(Hadoop)
2. 비컨(Beacon)
3. 포스퀘어(Foursquare)
4. 맴리스터(Memristor)

 

13. 소인수 분해 문제를 이용한 공개키 암호화 기법에 널리 사용되는 암호 알고리즘 기법은?

1. RSA
2. ECC
3. PKI
4. PEM

 

14. LOC 기법에 의하여 예측된 총 라인수가 50000라인, 프로그래머의 월 평균 생산성이 200라인, 개발에 참여할 프로그래머가 10인 일 때, 개발 소요 기간은?

1. 25개월
2. 50개월
3. 200개월
4. 2000개월

LOC 기법
 - 소프트웨어 각 기능의 원시 코드 라인 수의 비관치, 낙관치, 기대치를 측정하여 예측치를 구하고 이를 이요하여 비용을 산정
 - 개발소요기간=예측 총 라인수/월 평균생산성*프로그래머 수

 

15. 최대 홉수를 15로 제한한 라우팅 프로토콜은?

1. RIP
2. OSPF
3. Static
4. EIGRP

RIP(Routing Information Protocol)
 - 기업의 근거리통신망들이 서로 연결된 그룹과 같은 독립적인 네트워크 내에서 라우팅 정보 관리를 위해 광범위하게 사용되는 프로토콜

OSPF(Open Shortest Path First)
 - 인터넷 프로토콜(IP) 네트워크를 위한 링크 스테이트 라우팅 프로토콜

EIGRP(Enhanced Interior Gateway Routing Protocol)
 - 시스코사가 만든 원래의 IGRP를 기반으로 한 개방형 라우팅 프로토콜

 

16. 컴퓨터 사용자의 키보드 움직임을 탐지해 ID, 패스워드 등 개인의 중요한 정보를 몰래 빼가는 해킹 공격은?

1. Key Logger Attack
2. Worm
3. Rollback
4. Zombie Worm

 

17. 테일러링(Tailoring) 개발 방법론의 내부 기준에 해당하지 않는 것은?

1. 납기/비용
2. 기술환경
3. 구성원 능력
4. 국제표준 품질기준

테일러링(Tailoring)
 - 표준 프레임워크를 기반으로 실제 업무 분야별로 여건에 맞게 수정,보완하는 작업
테일러링(Tailoring) 내부적 요건
 - 납기/비용, 기술환경, 구성원 능력, 고객 요구사항
테일러링(Tailoring) 외부적 요건
 - 법적 제약사항, 국제표줌 품질기준

 

18. 폭포수 모형의 특징으로 거리가 먼 것은?

1. 개발 중 발생한 요구사항을 쉽게 반영할 수 있다.
2. 순차적인 접근방법을 이용한다.
3. 단계적 정의와 산출물이 명확하다.
4. 모형의 적용 경험과 성공사례가 많다.

폭포수 모형(Waterfall Model)
 - 소프트웨어 개발 과정의 한 단계가 끝나야만 다음 단계로 넘어갈 수 있는 선형 순차적 모형
 - 제품의 일부가 될 메뉴얼을 작성해야 함
 - 두 개 이상의 과정이 병행하여 수행되지 않음

 

19. 다음 설명의 정보보안 침해 공격 관련 용어는?

인터넷 사용자의 컴퓨터에 침입해 내부 문서 파일등을 암호화해 사용자가 열지 못하게 하는 공격으로, 암호 해독용 프로그램의 전달을 조건으로 사용자에게 돈을 요구하기도 한다.

1. Smishing
2. C-brain
3. Trojan Horse
4. Ransomware

 

20. 시스템 내의 정보는 오직 인가된 사용자만 수정할 수 있는 보안 요소는?

1. 기밀성
2. 부인방지
3. 가용성
4. 무결성