본문 바로가기

Studying/정보처리기사

[정보처리기사 실기]_2022년 1회

1. 다음 설명에 맞는 RAID 단계를 숫자로 쓰시오.

- 패리티(오류 검출 기능)가 없는 중복 없는 스트라이핑 된 세트로 구성되어 있다.

- 개선된 성능에 추가적인 기억 장치를 제공하는 장점이 있지만, 장애 시 데이터의 안전을 보장할 수 없다.

 

: 0

 

[RAID 유형]

 

① RAID0

 - 스트라이핑 된 세트로 구성.

 - 적어도 2개의 디스크 필요.

 - 중복 저장X, 에러검출X

② RAID1

 - 패리티가 없는 미러링 된 세트로 구성.

 - 적어도 2개의 디스크 필요.

 - 미러링 방식으로 중복저장O, 높은 신뢰도.

③ RAID2

 - 스트라이핑  방식

 - 해밍코드 활용 에러 검증.

④ RAID3

 - 스트라이핑  방식

 - 패리티(8bit)를 에러 검증

 - 바이트 단위로 데이터 저장.

 - 하나의 디스크를 패리티 정보를 위해 사용하고 나머지 디스크에 데이터를 균등하게 분산저장.

 - 적어도 3개의 디스크 필요.

⑤ RAID4

 - RAID3과 동일하나 데이터를 블록 단위로 나눠 저장.

 - 적어도 3개의 디스크 필요.

⑥ RAID5

 - 스트라이핑  방식

 - 각각의 디스크에 패리티 정보를 가지고 있는 방식.

 - 적어도 3개의 디스크 필요.

⑦ RAID6

 - 스트라이핑  방식.

 - 패리티 블록을 이중 구조로 구축 → 하나의 패리티를 두 개의 리스크에 분산 저장.

 - 적어도 4개의 디스크가 필요.


 

2. 다음에 해당하는 DB 트랜잭션 연산을 [보기]에서 찾아 적으시오.

① 장애 발생 전 DB로 복구하는 기법으로 디스크에 저장된 로그를 분석하여 트랜잭션의 시작(Start)과 완료(Commit)에 대한 기록이 있는 트랜잭션들의 작업을 재실행하는 기법.

② 장애 시 디스크에 저장된 로그를 분석하여 트랜잭션의 시작(Start)은 있지만, 완료(Commit) 기록이 없는 트랜잭션들이 작업한 변경 내용을 모두 취소하는 기법.

 

(보기)

Rollback / Redo / Undo / Checkpoint / Recovery  Shadow Paging Recovery

 

① Rollback

② Undo

 

[트랜잭션]

 

① Commit : 트랜잭션 정상 종료 후 변경 된 내용을 DB에 반영하는 명령어.

② Rollback : 트랜잭션 비정상 종료 후 모든 변경 작업을 취소하고 이전 상태로 복원.

③ Redo

 - 데이터베이스 비정상 종료 시 트랜잭션 시작(Start)과 완료(Commit)에 대한 기록이 있는 트랜잭션들의 작업을 재작업.

 - 이전 값을 이후 값으로 변경.

④ Undo

 - 데이터베이스 비정상 종료 시 시작은 있지만 완료 기록이 없는 트랜잭션들이 작업한 내용을 모두 취소

 - 이후 값을 이전 값으로 변경


 

4. 다음은 점수에 대해 내림차순 하는 SQL이다. (   ) 안에 들어갈 SQL 구문을 쓰시오.

SELECT name, score

FROM 성적

(   ①   ) BY (   ②   )(   ③   )

 

① ORDER

② score

③ DESC


 

5. 이상 현상 중 삭제 이상에 대해 서술하시오.

 

: 정보 삭제 시 원하지 않는 다른 정보가 같이 삭제되는 현상.

 

https://mh030128.tistory.com/28

 

[정보처리기사 실기]_2020년 4회

1. 현재 IPv4의 확장형으로 IPv4가 가지고 있는 주소 고갈, 보안성, 이동성 지원 등의 문제점을 해결하기 위해서 개발된 128비트 주소 체계를 갖는 차세대 인터넷 프로토콜은? : IPv6 IPv4와 IPv6의 특

mh030128.tistory.com

2020년 4회_12번문제


 

7. 다음은 리스트와 관련된 파이썬 함수이다. 각 항목에 해당하는 함수를 보기에서 골라서 쓰시오.

① 리스트 확장, 여러 값을 한 번에 추가할 수 있음.

② 마지막 또는 지정 요소를 삭제하고 그 값을 반환함.

③ 역순으로 뒤집음.

 

(보기)

removed() / reverse() / sort() / index() / insert() / select() / pop() / extend()

 

① extned()

② pop()

③ reverse()

 

[리스트와 관련된 파이썬 함수]

 

- extend() : 리스트 확장, 여러 값을 한 번에 추가.

- pop() : 마지막 또는 지정 요소를 삭제하고 그 값을 반환.

- revrese() : 역순으로 뒤집음.

- append() : 리스트 마지막 요소 뒤에 값을 추가.

- insert() : 리스트의 인덱스 위치에 값을 삽입.

- remove() : 리스트에서 해당하는 값을 제거.


 

8. 임시 키 무결성 프로토콜의 약자를 쓰시오.

 

: TKIP (Temporal Key Imtegrity Protocol)


 

9. 신체를 활용한 사용자 인터페이스(UI)를 무엇이라고 하는가?

 

: NUI (Natural User Interface)


 

10. 다음은 분석 도구에 대한 설명이다. 각 항목에 해당하는 도구를 보기에서 골라서 쓰시오.

① 실행하지 않고 원시 코드 분석.

② 프로그램 동작이나 반응을 추적하고 보고함. 프로그램 모니터, 스냅샷 생성.

 

(보기)

ㄱ. static Analysis / ㄴ. Running Analysis / ㄷ. Requirements Analysis / ㄹ. Dynamic Analysis / ㅁ. React Analysis

 

① ㄱ. static Analysis

② ㄴ. Dynamic Analysis

 

[소스코드 품질 분석 도구]

 

① 정적 분석 도구(Static Analysis) : 프로그램 실행 없이 코딩 표준, 스타일, 결함 등을 분석.

② 동적 분석 도구(Dynamic Analysis) : 프로그램 실행하여 코드 내 메모리 누수 및 스레드 결함 발견.


 

12. 다음에서 설명하는 인터페이스 도구를 쓰시오.

- 자바를 이용한 xUnit 테스트 도구이다.

- Erich Gamma와 Kent Beck 등이 작성한 오픈소스로 JAVA 단위 테스트 프레임워크이다.

 

: JUnit

[인터페이스 구현 검증 도구]

 

① xUnit : Java, C++, Net 등 다양한 언어 지원하는 단위 테스트 프레임워크.

② JUnit : 자바 프로그래밍 언어용 유닛 테스트 프레임워크로 같은 테스트 코드를 여러 번 작성하지 않게 됨.

③ STAF : 서비스 호출, 컴포넌트 재사용 등 다양한 환경을 지원하고 크로스플랫폼, 분산 소프트웨어 테스트 환경을 조성.

④ Fitness : 웹 기반 테스트케이스 설계, 실행, 결과 확인 지원.

⑤ NTAF : STAF의 재사용 및 확장성과 Fitness의 협업 기능 통합. (현재는 폐기)

⑥ Selenium : 다양한 브라우저 및 개발 언어를 지원하는 웹 애플리케이션 테스트.

⑦ Watir : Ruby 언어 기반 애플리케이션 테스트 프레임워크.


 

13. 다음에서 블랙박스 테스트 기법인 것을 3가지 골라 쓰시오.

ㄱ. Cause-Decision Graph

ㄴ. Statement Coverage

ㄷ. Boundary Value Analysis

ㄹ. Equivalence Partitioning

ㅁ. Casue-Effect Graph

ㅂ. Decision Coverage

ㅅ. Base Path Coverage

ㅇ. Base Path Testing

 

: ㄷ, ㄹ, ㅁ


 

16. 정보보호 관리체계의 영문약자는 무엇인가?

 

: ISMS (Information Security Management System)


 

17. 다음은 키에 대한 설명이다. (   ) 안에 들어갈 용어를 쓰시오.

- 슈퍼키는 (   ①   )의 속성을 갖는다.

- 후보키는 (   ①   )와/과 (   ②   )의 속성을 갖는다.

 

① 유일성

② 최소성

 

[키의 종류]

 

① 후보키(Candidate Key)

- 기본키로 사용 가능한 속성

 - 모든 릴레이션에는 후보키 존재.

 - 모든 튜플에 대해 유일성, 최소성 만족시켜야 함.

② 기본키(Primary Key)

 - 후보키 중에서 선택되어, 중복된 값과 NULL 값을 가질 수 없음.

 - 유일성, 최소성 만족하며 튜플 식별하기 위해 반드시 필요한 키.

③ 대체키(Alternate Key) : 후보키가 둘 이상일 때 기본키를 제외한 나머지 후보키.

④ 슈퍼키(Super Key)

 - 한 릴레이션 내 속성들의 집합으로 구성된 키.

 - 모든 튜플에 대한 유일성은 만족하지만, 최소성은 만족 불가.

⑤ 외래키(Foreign Key)

 - 다른 릴레이션의 기본키를 참조하는 속성 또는 속성들의 집합.

 - 참조되는 릴레이션 기본키와 대응되어 릴레이션 간 참조 관계.

 

▶ 유일성 : 하나의 키 값으로 하나의 튜플 유일하게 식별.

▶ 최소성 : 모든 레코드 식별하는데 최소한의 속성으로만 구성.


 

18. 공격 대상이 방문할 가능성이 있는 합법적 웹사이트를 미리 감염시켜 놓고, 피해자가 방문했을 때 피해자의 컴퓨터에 악성 프로그램을 배포하는 공격기법을 보기에서 골라서 쓰시오.

ㄱ. Pharming

ㄴ. Drive by Download

ㄷ. Watering Hole

ㄹ. Business SCAM

ㅁ. phishing

ㅂ. Cyber Kill Chain

ㅅ. Ransomeware

 

: ㄷ

 

[공격기법]

 

① Pharming(파밍) : 인터넷 주소창에 방문하고자 하는 사이트 URL을 입력하였을 때 가짜 사이로 이동시키는 공격 기법.

② Drive by Download(드라이브 바이 다운로드)

 - 악의적인 해커가 불특정 웹 서버와 웹 페이지에 악성 스크립트를 설치하고, 불특정 사용자 접속 시 사용자 동의 없이 실행되어 의도된 서버(멀웨어서버)로 연결하여 감염시키는 공격기법.

③ Business SCAM(비즈니스 스캠) : 기업 이메일 계정 도용하여 무역 거래 대금 가로채는 사이버 범죄.

④ phishing(피싱) : 소셜 네트워크에서 악의적인 사용자가 지인 또는 특정 유명인으로 가장하여 불특정 다수의 정보 탈취하는 공격기법.

⑤ Cyber Kill Chain(사이버 킬체인)

 - 록히드 마틴의 사이버 킬체인은 공격형 방위시스템으로 지능적, 지속적 사이버 공격에 대해 7단계 프로세스별 공격 분석 및 대응을 체계화환 APT 공격 방어 분석 모델.

⑥ Ransomware(랜섬웨어)

 - 악성코드의 한 종류로 감염된 시스템의 파일들(문서, 사진 등)을 암호화하여 복호화할 수 없도록 하고, 피해자로 하여금 암호화된 파일을 인질처럼 잡고 몸값을 요구하는 악성 소프트웨어.


 

20. 다음은 소프트웨어 개발 프로세스 중 V 모델에 대한 그림이다. ① ~ ④까지 들어갈 테스트를 쓰시오.

 

① 단위 테스트

② 통합 테스트

③ 시스템 테스트

④ 인수 테스트

 

[개발단계에 따른 애플리케이션 테스트]

 

① 단위 테스트(Unit Test)

 - 최소 단위(모듈, 컴포넌트) 기반 테스트.

 - 주로 구조 기반 테스트 진행

 - 기능성 테스트 최우선

② 통합 테스트(Integration Test)

 - 인터페이스 간 시스템이 정상 실행되는지 확인.

 - 단위 테스트 후 모듈을 통합하는 과정에서 발생하는 오류 및 결함을 찾는 테스트 기법.

 ⑴ 하향식(Top-down)

       - 상위 모듈에서 하위 모듈 방향으로 통합.

       - 깊이 우선(Depth first) 통합법, 넓이 우선(Breadth first) 통합법.

       - 초기부터 사용자에게 시스템 구조 보여줌.

       - 스텁(stub): 모듈의 기능을 단순히 수행하는 도구(시험용 모듈)

 ⑵ 상향식(Bottom-uo)

       - 하위 모듈에서 상위 모듈 방향으로 통합.

       - 하나의 주요 제어 모듈과 관련된 종속 모듈의 그룹인 클러스터.

       - 클러터와 드라이버 사용 (스텁 미사용)

③ 시스템 테스트(System test)

 - 개발된 SW의 컴퓨터 시스템 내 작용여부 점검

 - 실제 사용 환경과 유사한 테스트 환경 → 기능적(블랙박스) 및 비기능적(화이트박스) 테스트 구분.

④ 인수 테스트(Acceptance test)

 - 사용자의 요구사항 충족 여부 확인.

 ⑴ 알파 테스트 : 통제된 환경에서 사용자가 개발자와 함께 확인.

 ⑵ 베타 테스트 : 통제되지 않은 환경에서 개발자 없이 여러 명의 사용자가 검증.