정보처리기사 키워드 130
1. 시제품을 끊임없이 제작하며 사이클을 반복하는 개발방법론으로,
워터폴과 대조적이며, 소프트웨어 개발을 넘어 기업 경영 전반에서 사용되고 있다.
고객의 변화하는 요구사항과 환경 변화에 능동적인 이 소프트웨어 개발 방법론을 쓰시오.
정답
___
2. 소프트웨어 공학에서 리팩토링을 하는 목적에 대해 간략히 서술하시오
정답
리팩토링의 목적은 프로그램을 쉽게 이해하고 수정하여 빠르게 개발 할 수 있도록 하기 위함이다.
3. 요구사항 확인에 대한 다음 설명에서 괄호 1, 2 에 들어갈 알맞은 용어를 쓰시오
- (1) 요구사항은 시스템이 무엇을 하는지, 어떤 기능을 하는지 등 사용자가 시스템을 통해 제공받기를 원하는 기능이나 시스템이 반드시 수행해야 하는 기능을 의미한다.
- (2) 요구사항은 품질이나 제약사항과 관련된 요구사항으로, 시스템의 장비 구성, 성능 인터페이스, 테스트, 보안 등의 요구사항을 말한다.
정답
4. UML(Unified Modeling Language)에 관한 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.
( )다이어그램은 UML 다이어그램 중 객체(Object)들을 ( )로 추상화하여 표현하는 다이어그램으로
대표적인 구조적 다이어그램이다. ( )는 각각의 객체들이 갖는 속성과 메소드를 표현한 것으로 3개의
구획으로 나눠 이름, 속성, 메소드를 표기한다.
정답
5. UML에 대한 다음 설명에서 괄호(1)~(3)에 들어갈 알맞은 용어를 쓰시오.
UML은 시스템 분석, 설계, 구현 등 시스템 개발 과정에서 시스템 개발자와 고객 또는 개발자 상호 간의
의사소통이 원활하게 이루어지도록 표준화한 대표적인 객체지향 모델링 언어로, 사물, (1),
다이어그램으로 이루어져 있다.
- ( 1 )는 사물과 사물 사이의 연관성을 표현하는 것으로, 연관, 집합, 포함, 일반화 등 다양한 형태의
( 1 ) 가 존재한다.
- ( 2 )는 UML에 표현되는 사물의 하나로, 객체가 갖는 속성과 동작을 표현한다. 일반적으로
직사각형으로 표현하며, 직사각형 안에 이름, 속성, 동작을 표기한다.
- ( 3 )는 ( 2 )와 같은 UML에 표현되는 사물의 하나로, ( 2 )나 컴포넌트의 동작을 모아놓은
것이며, 외부적으로 가시화되는 행동을 표현한다. 단독으로 사용하는 경우는 없으며 ( 3 )구현을 위한
( 2 )또는 컴포넌트와 함께 사용된다.
정답
(1): 관계, (2): 클래스, (3): 인터페이스
6. UML의 관계(Relationships)에 관한 다음 설명에서 각 번호 1, 2 에 들어갈 알맞은 용어를 찾아 쓰시오.
관계(Relationships)는 사물과 사물 사이의 연관성을 표현하는 것이다.
(1) - 하나의 사물이 다른 사물에 포함되어 있는 관계로, 전체와 부분으로 구분되어지며 서로 독립적이다.
(2) - 상위 모듈이 하위 모듈보다 더 일반적인 개념을 가지고 있으며, 하위 모듈이 상위 모듈보다 더
구체적인 개념을 가진다.
<보기>
```
- Association - Aggregation - Composition - Generalization
- Dependency - Realization
```
정답
(1):Aggregation(집합-약한결합) (2):Generalization
___
**7. UML을 이용한 다이어그램 중 다음 그림에 해당하는 다이어그램을 쓰시오**

정답
___
**8. LOC 기법에 의하여 예측된 총 라인 수가 30,000라인, 개발에 참여할 프로그래머가 5명 프로그래머들의 평균 생산성이 월간 300라인일 때 개발에 소요되는 기간을 계산식과 함께 쓰시오.**
정답
___
**9. 데이터베이스 스키마(Schema)에 대해 간략히 서술하시오**
정답
스키마는 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 기술한 것이다.
___
**10. 데이터베이스 설계에 대한 다음 설명에서 괄호(1~3)에 들어갈 알맞은 용어를 쓰시오.**
```
1. ( 1 ): 논리적 구조로 표현된 데이터를 디스크 등의 저장장치에 저장할 수 있는 데이터로
변환하는 과정으로, 파일의 저장 구조 및 액세스 경로를 결정하며, 테이블 정의서 및 명세서가 산출된다.
2. ( 2 ): 현실 세계에 대한 인식을 추상적 개념으로 표현하는 과정으로, 개념 스키마 모델링과
트랜잭션 모델링을 수행하며, 요구 조건 명세를 E-R 다이어그램으로 작성한다.
3. ( 3 ): 현실의 자료를 특정 DBMS가 지원하는 자료구조로 변환하는 과정으로, 트랜잭션의 인터페이스를
설계하고, 정규화를 통해 스키마를 평가 및 정제한다.
```
정답
(1):물리적 설계, (2):개념적 설계, (3):논리적 설계
___
**11. 다음은 데이터베이스 구축까지의 과정을 나열한 것이다. 괄호에 들어갈 알맞은 용어를 쓰시오.**

정답
___
**12. 데이터 모델의 구성 요소에 대한 다음 설명에서 괄호 (1, 2)에 들어갈 알맞은 용어를 쓰시오.**
```
1.( 1 )은 데이터베이스에 저장된 실제 데이터를 처리하는 작업에 대한 명세로서 데이터베이스를
조작하는 기본 도구에 해당한다.
2.( 2 )는 논리적으로 표현된 객체 타입들 간의 관계로서 데이터의 구성 및 정적 성질을 표현한다.
3. 제약 조건은 데이터베이스에 저장될 수 있는 실제 데이터의 논리적인 제약 조건을 의미한다.
```
정답
연산(Operation), 구조(Structure)
___
**13. 다음 테이블에서 카디널리티(Cardinality)와 디그리(Degree)를 구하시오.**
| ID | 이름 | 거주지 | 신청강의 |
|---|---|---|---|
| 435345 | 백영헌 | 마포구 | E01 |
| 526524 | 차수인| 관악구 | S03 |
| 453252| 허채빈 | 서대문구| E02 |
| 636346 | 윤지호 | 광진구| S03 |
| 574ㅈ53 | 배서희 | 서대문구 | E02 |
정답
`#카디널리티` `#Table`
___
**14. 다음 E-R 다이어그램을 참고하여 괄호(1\~5)의 설명의 적합한 요소를 찾아 기호(ㄱ\~ㅁ)으로 쓰시오.**

정답
(1):ㄴ (2):ㄷ (3):ㄱ (4):ㄹ (5):ㅁ
`#E-R`
___
**15. 키(Key)에 대한 다음 설명에서 괄호(1,2)에 들어갈 알맞은 용어를 쓰시오**
```
키(Key)는 데이터베이스에서 조건에 만족하는 튜플을 찾거나 순서대로 정렬할 떄 기준이 되는 속성을
말한다.
- 슈퍼키(Super Key)는 한 릴레이션 내에 있는 속성들의 집합으로 구성된 키로, 릴레이션을 구성하는
모든 튜플에 대해 ( 1 )을 만족한다.
- 후보키(Candidate Key)는 릴레이션을 구성하는 속성들 중에서 튜플을 유일하게 식별하기 위해 사용
되는 속성들의 부분집합으로, ( 1 )과( 2 )을 만족하는 특징이 있다.
```
정답
`#슈퍼키` `#후보키`
___
**16. 관계대수에 대한 다음 설명에서 괄호(1~5)에 들어갈 알맞은 용어를 쓰시오.**
```
관계대수는 관계형 데이터베이스에서 원하는 정보와 그 정보를 검색하기 위해서 어떻게 유도하는가를
기술하는 절차적인 언어이다. 관계대수에 사용되는 연산은 다음과 같다.
- 합집합(UNION)은 두 릴레이션에 존재하는 튜플의 합집합을 구하되, 결과로 생성된 릴레이션에서
중복되는 튜플은 제거되는 연산으로, 사용하는 기호는 ( 1 )이다.
- 차집합(DIFFERENCE)은 두 릴레이션에 존재하는 튜플의 차집합을 구하는 연산으로, 사용하는 기호는
( 2 )이다.
- 교차곱(CARTESIAN PRODUCT)은 두 릴레이션에 있는 튜플들의 순서쌍을 구하는 연산으로, 사용하는
기호는 ( 3 )이다.
- 프로젝트(PROJECT)는 주어진 릴레이션에서 속성 리스트(Attribut List)에 제시된 속성 값만을
추출하여 새로운 릴레이션을 만드는 연산으로, 사용하는 기호는 ( 4 )이다.
- 조인(JOIN)은 공통 속성을 중심으로 두 개의 릴레이션을 하나로 합쳐서 새로운 릴레이션을 만드는
연산으로, 사용하는 기호는 ( 5 )이다.
```
정답
(1):∪ (2):ㅡ (3):X (4):π (5):⋈
`#관계대수`
___
**17. 다음이 설명하고 있는 관계대수 연산자의 기호를 쓰시오.**
```
릴레이션 A, B가 있을 때 릴레이션 B의 조건에 맞는 것들만 릴레이션 A에서 분리하여 프로젝션을
하는 연산이다.
```
정답
`#관계대수`
___
**18. 데이터베이스에 대한 다음 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
```
- ( )은 관계 데이터의 연산을 표현하는 방법으로, 관계 데이터 모델의 제안자인 코드(E. F. Codd)가
수학의 술어 해석(Predicate Calculus)에 기반을 두고 관계 데이터베이스를 위해 제안했다.
- 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 지니며, 원하는 정보를 정의할 때 계산
수식을 사용한다.
- 튜플 해석식을 사용하는 튜플( )과 도메인 해석식을 사용하는 도메인 ( )으로 구분된다.
```
정답
관계해석 (Relational Calculus)
___
**19. 데이터의 중복으로 인해 테이블 조작 시 문제가 발생하는 현상을 이상(Anomaly)이라고 한다. 이상 중 삭제이상(Deletion Anomaly)에 대해 간략히 서술하시오.**
정답
테이블에서 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 현상이다.
___
**20. 데이터베이스의 이상(Anomaly)의 종류 3가지를 쓰시오.**
정답
___
**21. 함수적 종속(Functional Dependency)에 대한 다음 설명에서 괄호(1\~3)에 들어갈 알맞은 용어를 <보기>에서 찾아 기호(ㄱ\~ㅁ)로 쓰시오 (단, 테이블
의 속성 '학생'과 '학과'의 밑줄은 키(Key)임을 의미한다.)**
| 학생 | 학과 | 성적 | 학년 |
|---|---|---|---|
| 이순신 | 컴퓨터공학 | A+ | 2 |
| 이순신 | 전기공학| B | 2 |
| 유관순| 경제학 | B+| 1 |
| 강감찬 | 문예창작 | C| 3 |
| 강감찬 | 한국사 | C+ | 3 |
| 홍길동 | 영문학 | B | 4 |
```
- 테이블 에서 '성적'은 기본키인 {학생, 학과}에 대해 ( 1 ) Functional Dependency이다.
- 테이블 에서 '학년'은 기본키인 {학생, 학과}중 '학생'만으로 식별이 가능하므로 기본키에 대해
( 2 ) Functional Dependency이다.
- 임의의 테이블에 속성 A, B, C가 있을 때, A -> B이고, B -> C일 때, A -> C인 관계는 ( 3 )
Functional Dependency이다.
```
<보기>
```
ㄱ. Hybrid ㄴ. Multi Valued ㄷ. Transitive ㄹ. Full
ㅁ. Defined ㅂ. Natural ㅅ. Relational ㅇ. Partial
```
정답
`#함수적종속` `#FunctionalDependency`
___
**22. 데이터베이스에 대한 다음 설명에서 괄호에 공통으로 들어갈 알맞은 답을 쓰시오.**
테이블을 만들 때는 이상(Anomaly)을 방지하기 위해 데이터들의 중복성 및 종속성을 배제하는 정규화를 수행한다. 아래 그림은 부분 함수적 종속을 제거하여 제 ( )정규형을 만드는 과정이다.

\의 경우, C는 key에 해당하는 A와 B중 A에만 종속되는 부분 함수적 종속이다. 이 문제 해결을 위해 \에서 C를 분리하여 \과 \로 만들면 제 ( )정규형에 해당하는 테이블이 완성된다.
정답
`#이상` `#정규형`
___
**23. 시스템의 성능을 향상시키고 개발 및 운영의 편의성 등을 높이기 위해 정규화된 데이터 모델을 의도적으로 통합, 중복, 분리하여 정규화 원칙을 위배하는 행위를 가리키는 용어를 쓰시오.**
정답
`#데이터베이스`
___
**24. 데이터베이스에서 비정규화(Denormalization)의 개념을 서술하시오.**
정답
시스템의 성능을 향상시키거나 개발 및 운영 편의성 등을 높이기 위해서 정규화된 데이터 모델을 의도적으로 통합, 중복, 분리하여 정규화 원칙을 위배하는 행위이다.
`#데이터베이스`
___
**25. 데이터베이스의 상태 변화를 일으키는 트랜잭션(Transaction)의 특성 중 원자성(Atomicity)에 대해 간략히 서술하시오.**
정답
원자성은 트랜잭션의 연산은 데이터베이스에 반영이 모두 완료되거나 전혀 반영되지 않도록 복구되어야 한다는 특성이다.
`#데이터베이스` `#트랜잭션`
___
**26. 다음은 트랜잭션(Transaction)의 특징이다. 괄호(1,2)에 들어갈 알맍은 특징을 쓰시오.**
| | |
|---|---|
| (1) | 트랜잭션의 연산은 데이터베이스에 모두 반영되도록 완료(Commit)되든지 아니면 전혀 반영되지 않도록 복구(Rollback)되어야 한다. (All or Nothing) |
| 일관성 | 트랜잭션이 그 실행을 성공적으로 완료하려면 언제나 일관성 있는 데이터베이스 상태로 변환한다.|
| (2) | 둘 이상의 트랜잭션이 동시에 병행 실행되는 경우 어느 하나의 트랜잭션 실행중에 다른 트랜잭션의 연산이 끼어들 수 없다.|
| 지속성 | 성공적으로 완료된 트랜잭션의 결과는 시스템이 고장나더라도 영구적으로 반영되어야 한다. |
정답
(1): 원자성(Atomicity) (2): 독립성(Isolation)
`#데이터베이스` `#트랜잭션`
___
**27. 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.**
```
파일의 구조는 파일을 구성하는 레코드들이 보조기억장치에 편성되는 방식을 의미하는 것으로,
크게 순차, ( ), 해싱으로 구분한다. ( )파일 구조는 <값, 주소> 쌍으로 구성되는 데이터
구조를 활용하여 데이터에 접근하는 방식으로, 자기 디스크에서 주로 활용된다.
```
정답
`#파일구조`
___
**28. 시스템 관리와 관련하여 다음의 설명이 의미하는 용어를 쓰시오.**
```
A는 한국 IT 보안관제실에서 근무하게 되었다. A는 서비스 운용 중 외부 공격으로 인한 서버다운,
자연 재해, 시스템 장애 등의 비상 상황에도 고객 응대 서비스를 정상적으로 수행하기 위해 구축한
시스템을 관리하는 업무를 수행한다. 이 용어는 위와 같은 비상 상황이 발생한 경우 "비상사태 또는
업무중단 시점부터 업무가 복구되어 다시 정상 가동 될 때까지의 시간"을 의미한다.
```
정답
`#시스템관리`
___
**29. 데이터베이스 보안에 관련된 다음 설명에 해당하는 용어를 쓰시오.**
```
접근통제는 데이터가 저장된 객체와 이를 사용하려는 주체 사이의 정보 흐름을 제한하는 것이다.
이러한 접근통제에 관한 기술 중 ( )는 데이터에 접근하는 사용자의 신원에 따라 접근 권한을
부여하여 제어하는 방식으로, 데이터 소유자가 접근통제 권한을 지정하고 제어한다. 객체를 생성한
사용자가 생성된 객체에 대한 모든 권한을 부여받고, 부여된 권한을 다른 사용자에게 허가할 수도 있다.
```
정답
`#데이터베이스` `#보안`
___
**30. 다음 설명에 해당하는 DB의 트랜잭션 연산을 <보기>에서 찾아 쓰시오.**
```
DBMS는 데이터베이스에 치명적인 손실이 발생했을 때 이를 복구하기 위해 데이터베이스의
처리 내용이나 이용 상황 등 상태 변화를 시간의 흐름에 따라 기록한 로그를 생성한다.
- ( 1 ): 데이터베이스가 비정상적으로 종료되었을 때, 디스크에 저장된 로그를 분석하여
트랜잭션의 시작(start)과 완료(commit)에 대한 기록이 있는 트랜잭션의 작업을 재작업한다.
즉 로그를 이용하여 해당 데이터 항목에 대해 이전 값을 이후 값으로 변경하는 연산이다.
- ( 2 ): 데이터베이스가 비정상적으로 종료되었을 떄, 디스크에 저장된 로그를 분석하여
트랜잭션의 시작(start)과 완료(commit)에 대한 기록이 없는 트랜잭션들이 작업한
내용들을 모두 취소한다. 즉 로그를 이용하여 해당 데이터 항목에 대해 이후 값을 예전 값으로
변경한다.
```
<보기>
```
- ROLLBACK - UNDO - LOG - COMMIT
- REDO - RECOVERY - BACKUP - CHECK
```
정답
`#데이터베이스` `#트랜잭션` `#DB복구`
___
**31. SW 인터페이스 구현에 관련된 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.**
웹 페이지의 기본 형식인 HTML의 문법이 각 웹 브라우저에서 상호 호환적이지 못하다는 문제와 SGML의 복잡함을 해결하기 위하여 개발된 ( )은 다른 특수한 목적을 갖는 마크업 언어이다. 원활한 데이터의 연계를 위해 송.수신 시스템 간에 전송되는 데이터가 동일한 구조로 구성될 수 있도록 형태를 정의하는 역할을 수행하며, 다음과 같은 특징이 있다.
| | |
|---|---|
| 유니코드 문자
(Unicode Text) | 텍스트 데이터 형식으로 유니코드를 사용하여 전 세계 언어를 지원한다. |
| ( ) 파서(Parser) | 대다수의 웹 브라우저가 해석을 위한 번역기(Parser)를 내장하고 있다. |
| 마크업(Markup)과
내용(Content) | - ( ) 문서의 문자들은 마크업과 내용으로 구분된다.
- 일반적으로 마크업은 "<"로 시작하여 ">"로 끝나는 태그(Tag)를 의미하고, 그 외의 문자열은 내용에 해당한다. |
| 엘리먼트(Element) | 마크업과 내용으로 이루어지는 하나의 요소를 의미한다. |
정답
XML(eXtensible Markup Language)
`#SW인터페이스` `#마크업`
___
**32. 통합 구현과 관련하여 다음 설명의 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.**
```
( )는 HTTP, HTTPS, SMTP 등을 사용하여 xml 기반의 메시지를 네트워크 상에서 교환하는
프로토콜로, ( ) envelope, 헤더(header), 바디(body) 등이 추가된 xml 문서이다.
( )는 복잡하고 무거운 구조로 구성되어 있어 ( )보다는 restul 프로토콜을 이용하기도 한다.
```
정답
SOAP(Simple Object Access Protocol)
`#프로토콜` `#메시지` `#웹통신`
___
**33. 웹 서비스(Web Service)와 관련된 다음 설명에 해당하는 용어를 쓰시오.**
```
웹 서비스와 관련된 서식이나 프로토콜 등을 표준적인 방법으로 기술하고 게시하기 위한 언어로,
XML로 작성되며 UDDI의 기초가 된다. SOAP, XML 스키마와 결합하여 인터넷에서 웹 서비스를
제공하기 위해 사용되며, 클라이언트는 이것을 통해 서버에서 어떠한 조작이 가능한지를 파악할
수 있다.
```
정답
WSDL(Web Service Description Language)
`#웹서비스` `#언어` `#XML` `#UDDI` `#SOAP`
___
**34. 럼바우(Rumbaugh) 데이터 모델링에 대한 다음 설명에서 각 지문(1\~3)에 해당하는 모델링을 <보기>에서 찾아 기호 (ㄱ\~ㅁ)로 쓰시오.**
```
(1) 다수의 프로세스들 간의 자료 흐름을 중심으로 처리 과정을 표현한 모델링 [예]자료흐름도(DFD)
(2) 시간의 흐름에 따른 객체들 간의 제어 흐름, 상호 작용, 동작 순서 등의 동적인 행위를 표현하는
모델링 [예]상태 변화도(STD), 사건 추적도
(3) 시스템에서 요구되는 객체를 찾아내어 속성과 연산 식별 및 객체들 간의 관계를 규정하여 표시하는
모델링 [예]ER다이어그램(ERD)
```
<보기>
```
ㄱ. Operation ㄴ. Sequence ㄷ. Information ㄹ. Transaction
ㅁ. Function ㅂ. I/O ㅅ. Dynamic ㅇ. Cause-Effect
```
정답
`#럼바우` `#데이터모델링` `#자료흐름도` `#상태변화도` `#ERD`
___
**35. 객체지향에 대한 다음 설명에 해당하는 용어를 <보기>에서 찾아 쓰시오**
```
- 자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 한다는
객체지향 설계 원칙 중 하나이다.
- 예를 들어 프린터, 팩스, 복사 기능을 가진 복합기의 경우 3가지 기능을 모두 가진
범용 인터페이스보다는 프린터 인터페이서, 팩스 인터페이스, 복사 인터페이스로 분리함으로써
하나의 기능 변경으로 인해 다른 기능이 영향을 받지 않도록 해야 한다.
```
<보기>
```
- SRP - SOLID - OCP - LSP - ISP
- DIP - OTP - PNP
```
정답
`#객체지향`
___
**36. 결합도(Coupling)의 종류 중 단순 처리 대상인 데이터만 전달되는 것이 아니라 어떻게 처리해야 하는지를 결정하는 제어 요소가 전달되는 경우의 결합도를 영문으로 쓰시오.**
정답
`#결합도` `#Coupling`
___
**37. 데이터 모델의 구성 요소에 대한 다음 설명에서 괄호(1\~3)에 들어갈 알맞은 용어를 <보기>에서 찾아 기호(ㄱ\~ㅂ)으로 쓰시오.**
```
1. ( 1 )는 모듈 간의 인터페이스로 데이터, 지역 변수 등을 직접 참조하거나 수정할 때의 결합도다.
2. ( 2 )는 모듈 간의 인터페이스로 배열이나 레코드 등의 자료 구조가 전달될 때의 결합도다.
3. ( 3 )는 모듈 간의 인터페이스로 파라미터가 아닌 모듈 밖에 선언된 전역 변수를 사용하여 전역
변수를 갱신하는 방식으로 상호작용하는 떄의 결합도다
```
<보기>
```
ㄱ. 자료결합도 ㄴ. 스탬프 결합도 ㄷ. 제어 결합도 ㄹ. 공통 결합도
ㅁ. 내용 결합도 ㅂ. 외부 결합도
```
정답
`#결합도`
___
**38. 소프트웨어 패키징이란 모듈별로 생성한 실행 파일들을 묶어 배포용 설치 파일을 만드는 것을 말한다. 소스 코드는 향후 관리를 고려하여 모듈화하여 패키징한다. 모듈화는 모듈 간 ( 1 ) 의 최소화와 모듈 내 요소들의 ( 2 )를 최대화 하는 것이 목표이다. 괄호(1, 2)에 들어갈 알맞은 용어를 쓰시오.**
정답
(1):결합도(Coupling) (2):응집도(Cohesion)
`#SW패키징` `#모듈화`
___
**39. 모듈에 대한 다음 설명에서 각 지문 (1\~3)에 해당하는 응집도(Cohesion)를 <보기>에서 찾아 기호(ㄱ\~ㅂ)으로 쓰시오.**
```
(1) 내부의 요소들이 기능적으로 연관성은 없으나, 순차적으로 실행될 떄의 응집도
(2) 서로 다른 기능을 수행하지만 동일한 입력과 출력을 사용할 떄의 응집도
(3) 하나의 기능에 밀접하게 관련되어 있거나 연관되어 있을 떄의 응집도
```
<보기>
```
ㄱ. 기능적 응집도 ㄴ. 순차적 응집도 ㄷ. 교환적 응집도 ㄹ. 절차적 응집도
ㅁ. 시간적 응집도 ㅂ. 논리적 응집도 ㅅ. 우연적 응집도
```
정답
(1):ㄹ-절차적 응집도 (2):ㄷ-교환적 응집도 (3):ㄱ-기능적 응집도
`#응집도` `#모듈화`
___
**40. 다음의 모듈 관계를 표현한 시스템 구조도를 참고하여 모듈의 F의 팬인(Fan-In)과 팬 아웃(Fan-Out)을 구하시오.**

정답
`#팬인` `#팬아웃` `#Fan-In` `#Fan-Out`
___
**41. 네트워크에 관련된 다음 설명에 해당하는 용어를 쓰시오.**
```
모듈 간 통신 방식을 구현하기 위해 사용되는 대표적인 프로그래밍 인터페이스 집합으로,
복수의 프로세스를 수행하며 이뤄지는 프로세스 간 통신까지 구현이 가능하다. 대표적인
메소드에는 공유 메모리(Shared Memory), 소켓(Socket), 세마포어(Semaphores),
파이프와 네임드 파이프(Pipes&namedPipes), 메시지 큐잉(Message Queueing)이 있다.
```
정답
IPC(Inter-Process Communication)
`#모듈통신` `#공유메모리` `#소켓` `#세마포어` `#파이프와네임드파이프` `#메시지큐잉`
___
**42. 다음 테스트 케이스를 참조하여 괄호에 들어갈 테스트 케이스의 구성 요소를 <보기>에서 찾아 쓰시오.**
| 식별자_ID | 테스트 항목 | ( 1 ) | ( 2 ) | ( 3 ) |
|---|---|---|---|---|
| LS_W10_35 | 로그인 기능 | 사용자 초기 화면 | 아이디(test_a01)
비밀번호(203a!d5%ffa1) | 로그인 성공 |
| LS_W10_36 | 로그인 기능 | 사용자 초기 화면 | 아이디(test_a01)
비밀번호(1234) |로그인 실패(1)
- 비밀번호 불일치
| LS_W10_37| 로그인 기능 | 사용자 초기 화면 | 아이디("")
비밀번호("") | 로그인 실패(2)
미입력 |
<보기>
```
- 요구 절차 - 의존성 여부 - 테스트 데이터 - 테스트 조건
- 하드웨어 환경 - 예상 결과 - 소프트웨어 환경 - 성공/실패 기준
```
정답
(1):테스트 조건 (2):테스트 데이터 (3): 예상 결과
`#테스트` `#테스트케이스`
___
**43. 디자인 패턴에 관한 다음 설명에서 괄호에 들어갈 알맞은 용어를 <보기>에서 찾아 쓰시오.**
```
( )패턴은 객체 생성을 서브 클래스에서 처리하도록 분리하여 캡슐화한 패턴으로, 상위 클래스에서
인터페이스만 정의하고 실제 생성은 서브클래스가 담당한다. 다른 이름으로 가상 생성자(Virtual
Constructor) 패턴이라고도 불린다.
```
<보기>
```
- Singleton - Abstract Factory - Factory Method - Prototype
- Facade - Composite - Template Method - Builder
```
정답
`#디자인패턴` `#캡슐화` `#VirtualConstructor`
___
**44. 디자인 패턴에 관한 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 용어를 <보기>에서 찾아 쓰시오.**
```
- ( 1 )패턴은 구현부에서 추상층을 분리하여, 서로가 독립적으로 확장할 수 있도록 구성한 패턴으로,
기능과 구현을 두 개의 별도 클래스로 구현한다는 특징이 있다.
- ( 2 )패턴은 한 객체의 상태가 변화하면 객체에 상속된 다른 객체들에게 변화된 상태를 전달하는
패턴으로, 일대다의 의존성을 정의한다. 주로 분산된 시스템 간의 이벤트를 생성.발행(Publish)하고,
이를 수신(Subscribe)해야 할 때 이용한다.
```
<보기>
```
- Builder - Factory Method - Adapter - Bridge
- Facade - Proxy - Observer - Mediator
```
정답
`#디자인패턴`
___
**45. 디자인 패턴에 관한 다음 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
```
디자인 패턴은 모듈 간의 관계 및 인터페이스를 설계할 때 참조할 수 있는 전형적인
해결 방식 또는 예제를 의미한다. 그 중 ( )패턴은 클래스나 객체들이 서로 상호작용하는
방법이나 책임 분배 방법을 정의하는 패턴으로, interpretrer, Observer, Command
등이 그 예에 해당한다.
```
정답
`#디자인패턴` `#interpretrer` `#Observer` `#Command`
___
**46. 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달, 연계, 통합 등 상호 연동이 가능하게 해주는 솔루션으로, Point-to-Point, Hub&Spoke, Message Bus, Hybrid등의 다양한 방식으로 구축이 가능한 모듈 연계 방법을 쓰시오.**
정답
EAI(Enterprise Application Integration)
`#모듈연계방법`
___
**47. EAI(Enterprise Application Integration)의 구축 유형에 대한 설명이다. 괄호(1,2) 안에 각각 들어갈 알맞은 유형을 쓰시오.**
EAI(Enterprise Application Integration)는 기업 내 각종 애플리케이션 및 플랫폼 간의 정보 전달, 연계, 통합 등 상호 연동이 가능하게 해주는 솔루션이다. 비즈니스 간 통합 및 연계성을 증대시켜 효율성 및 각 시스템 간의 확정성(Determinancy)를 높여 준다. EAI의 구축 유형은 다음과 같다.

정답
(1): Point to Point (2): Hub & Spoke
`#EAI`
___
**48. 소프트웨어 인터페이스 구현에 관련된 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.**
( )은 속성-값 쌍(Attribute-Value Pairs)으로 이루어진 데이터 객체를 전달하기 위해 사람이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷이다. 비동기 처리에 사용되는 AjAX에서 XML을 대체하여 사용되고 있다. 다음은 ( )이 가질 수 있는 자료 기본형이다.
| | |
|---|---|
|숫자| 정수와 실수를 표현한다 |
| 문자열 | 유니코드 문자로 표현하며, 큰따옴표(" ")로 묶는다.|
| 참/거짓 | 참(True) 또는 거짓(False)을 표현한다.|
| 배열 | 다양한 요소들을 쉼표로 구분하여 표현하며, 대괄호([ ])로 묶는다.|
| 객체 | 이름/값 쌍으로 표현하며, 중괄호({})로 묶는다.|
| NULL |아직 알려지지 않거나 모르는 값을 표현하기 위한 자료형이다.|
정답
JSON(JavaScript Object Notation)
`#AjAX`
___
**49. 클라이언트와 서버 간 자바스크립트 및 XML을 비동기 방식으로 처리하며, 전체 페이지를 새로 고치지 않고도 웹페이지 일부 영역많을 업데이트 할 수 있도록 하는 기술을 의미하는 용어를 쓰시오.**
정답
AjAX(Asynchronous JavaScript and XML)
___
**50. 네트워크 트래픽에 대해 IP(Internet Protocol) 계층에서 IP 패킷 단위의 데이터 변조 방지 및 은닉 기능을 제공하는 네트워크 계층에서의 보안 통신 규약을 쓰시오.**
정답
IPSec(Internet Protocol Security)
___
**51. 인터페이스 구현 검증 도구에 대한 다음 설명에 해당하는 용어를 영문으로 쓰시오.**
```
Kent Beck과 Erich Gamma 등이 개발한 자바 프로그래밍 언어용 유닛 테스트 프레임워크로,
xUnit계읠의 한 종류다. 같은 코드를 여러 번작성하지 않게 도와주며, 테스트 마다 예상 결과를
기억할 필요가 없는 자동화된 해법을 제공한다는 특징이 있다.
```
정답
___
**52. 사용자 인터페이스(UI)에 대한 다음 설명에 해당하는 용어를 영문 약어로 쓰시오.**
```
사용자의 자연스러운 움직임을 통해 시스템과 상호작용하는 인터페이스(UI)로,
키보드나 마우스와 같이 조작을 배워야 하는 인공 제어 장치를 사용하는 인터페이스와
구분하기 위해 '자연스러운'이라는 표현을 사용한다. 시리(Siri), 빅스비(Bixby)등과
같은 음성 비서에게 사용하는 자연어 명령이나 휴대폰이나 테블릿에서의 터치 등이
여기에 해당한다.
```
정답
___
**53. Windows, MacOS 등에서 사용하는 인터페이스로, 사용자가 명령어를 직접 입력하지 않고 키보드와 마우스 등을 이용하여 아이콘이나 메뉴를 선택하여 모든 작업을 수행하는 사용자 인터페이스를 쓰시오.**
정답
___
**54. UI(User Interface)의 설계 원칙 중 직관성에 대해 간략히 서술하시오.**
정답
직관성은 누구나 쉽게 이해하고 사용할 수 있어야 한다는 설계 원칙이다.
___
**55. 사용자 인터페이스에 대한 다음 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
| | |
|---|---|
| ( 1 )| 누구나 쉽게 이해하고 사용할 수 있어야 한다. |
| ( 2 ) | 사용자의 목적을 정확하고 완벽하게 달성해야 한다.|
| ( 3 ) | 누구나 쉽게 배우고 익힐 수 있어야 한다.|
| ( 4 ) | 사용자의 요구사항을 최대한 수용하고 실수를 최소화해야 한다.|
정답
(1): 직관성 (2): 유효성 (3): 학습성 (4): 유연성
___
**56. 인터페이스에 관련된 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 용어를 쓰시오.**
| | |
|---|---|
| ( 1 )| 사용자가 시스템이나 서비스를 이용하면서 느끼고 생각하게 되는 총체적인 감정 및 경험. |
| ( 2 ) | 사용자와 시스템 간의 상호작용이 원활하게 이뤄지도록 도와주는 장치나 소프트웨어 [예]CLI, GUI등|
정답
(1): UX(사용자경험) (2): UI(사용자 인터페이스)
___
**57. 애플리케이션 테스트에서 사용되는 살충제 패러독스(Pesticide Paradox)의 개념을 간략히 설명하시오.**
정답
살충제 패러독스는 동일한 테스트 케이스로 동일한 테스트를 반복하면 더 이상 결함이 발견되지 않는 현상을 의미한다.
___
**58. 애플리케이션을 실행하지 않고, 소스 코드에 대한 코딩 표준, 코딩 스타일, 코드 복잡도 및 남은 결함을 발견하기 위하여 사용하는 테스트를 쓰시오.**
정답
___
**59. 테스트에 대한 다음 설명에서 각 지문(1\~3)에 해당하는 커버리지(Coverage)를 <보기>에서 찾아 기호(ㄱ\~ㅁ)으로 쓰시오.**
```
(1) 최소 한번은 모든 문장이 수행되도록 구성하는 검증 기준
(2) 조건식이 참(True)/거짓(False)일 때 수행되도록 구성하는 검증 기준
(3) (2)번과 달리 조건식에 상관없이 개별 조건이 참(True)/거짓(False)일 때 수행되도록
구성하는 검증 기준
```
<보기>
```
ㄱ. 다중 조건 검증 기준 ㄴ. 선택 검증 기준 ㄷ. 조건 검증 기준
ㄹ 결정(분기) 검증 기준 ㅁ. 결정(분기)/조건 검증 기준 ㅂ. 구문(문장) 검증 기준
```
정답
___
**60. 다음은 화이트박스 테스트의 프로그램 제어흐름이다. 다음의 순서도를 참고하여 분기 커버리지로 구성할 테스트 케이스를 작성하시오.**

정답
1 -> 2-> 3 -> 4 -> 5 -> 6 -> 7
> 1 -> 2 -> 4 -> 5 -> 6 -> 1
해설
___
**61. 소프트웨어가 수행할 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트로, 동치 클래스 분해 및 경계값 분석을 이용하는 테스트 기법을 쓰시오**
정답
___
**62. 테스트 기법 중 다음과 같아 '평가 점수표'를 미리 정해 놓은 후 각 영역의 경계에 해당하는 입력값을 넣고, 예상되는 출력값이 나오는지 실제 값과 비교하는 명세 기반 테스트 기법을 <보기> 에서 찾아 쓰시오.**

<보기>
```
- Equivalence Partition - Boundary Value Analysis - Condition Test
- Cause-Effect Graph - Error Guess - Comparison Test
- Base Path Test - Loop Test - Data Flow Test
```
정답
___
**63. 다음 중 블랙 박스 테스트 기법에 해당하는 것을 모두 골라 기호(ㄱ~ㅈ)로 쓰시오.**
<보기>
```
ㄱ. Base Path Testing ㄴ. Condition Testing
ㄷ. Boundary Value Analysis ㄹ. Equivalence Partitioning
ㅁ. Data Flow Testing ㅂ. Cause-Effect Graph
ㅅ. Branch Coverage Testing ㅇ. Statement Coverate Testing
ㅈ. Boundary Division Analysis
```
정답
___
**64. 테스트 기법 중 그래프를 활용하여 입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석한 다음 효용성이 높은 테스트 케이스를 선정하여 검사하는 기법을 <보기>에서 찾아 쓰시오.**
<보기>
```
- Equivalence Partition - Boundary Value Analysis - Condition Test
- Cause-Effect Graph - Error Guess - Comparision Test
- Base Path Testing - Loop Test - Data Flow Test
```
정답
___
**65. 테스트 기법 중 다음과 같이 '평가 점수표'를 미리 정해 놓은 후 각 영역에 해당하는 입력 값을 넣고, 예상되는 출력값이 나오는지 실제 값과 비교하는 명세 기반 테스트 기법을 쓰시오.**

정답
동치 분할 검사 (Equivalence Partitioning Testing)
___
**66. 개발 단계에 따른 애플리케이션 테스트에 대한 다음 V-모델에서 괄호 (1~4)에 들어갈 알맞은 테스트를 쓰시오.**

정답
(1): 단위 테스트 (2): 통합 테스트 (3): 시스템 테스트 (4): 인수 테스트
___
**67. 애플리케이션 테스트에 대한 다음 설명에서 각 지문(1, 2)에 해당하는 용어를 <보기>에서 찾아 기호(ㄱ~ㅁ)으로 쓰시오.**
```
(1) 코딩 직후 소프트웨어 설계의 최소 단위인 모듈이나 컴포넌트에 초점을 맞춰 수행하는 테스트로,
모듈 테스트라고도 불린다. 사용자의 요구사항을 기반으로 한 기능성 테스트를 최우선으로 인터페이스,
외부적 I/O, 자료구조, 독립적 기초 경로, 오류 처리 경로, 경계 조건 등을 검사한다.
(2) 모듈들을 결합하여 하나의 시스템으로 완성시키느 ㄴ과정에서의 테스트를 의미하며, 모듈 간 또는
컴포넌트 간의 인터페이스가 정상적으로 실행되는지 검사한다.
```
<보기>
```
ㄱ. 시스템 테스트 ㄴ. 인수 테스트 ㄷ. 알파 테스트 ㄹ. 단위 테스트
ㅁ. 통합 테스트 ㅂ. 회귀 테스트
```
정답
___
**68. 애플리케이션 테스트에 대한 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 테스트를 쓰시오.**
```
인수 테스트는 개발한 소프트웨어가 사용자의 요구사항을 충족하는지에 중점을 두고 테스트하는
방법이다.
(1) : 선정된 최종 사용자가 여러 명의 사용자 앞에서 행하는 테스트 기법으로, 실제 업무를
가지고 사용자가 직접 테스트 한다.
(2) : 개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법으로, 테스트는 통제된
환경에서 행해지며, 오류와 사용상의 문제점을 사용자와 개발자가 함께 확인하면서 기록한다.
```
정답
(1): 베타 테스트(Beta Test) (2): 알파 테스트(Alpha Test)
___
**69. 통합 테스트에 관련된 다음 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
```
통합 테스트는 단위 테스트가 끝난 모듈을 통합하는 과정에서 발생하는 오류 및 결함을
찾는 테스트 기법으로, 하위 모듈에서 상위 모듈 방향으로 통합하는 상향식 통합 테스트와
상위 모듈에서 하위 모듈 방향으로 통합하는 하향식 통합 테스트가 있다. 상향식 통합
테스트는 미완성이거나 문제가 있는 상위 모듈을 대체할 수 있는 테스트 드라이버가, 하향식
통합 테스트는 미완성이거나 문제가 있는 하위 모듈을 대체할 수 있는 테스트( )이(가)
있어야 원활한 테스트가 가능하다
```
정답
___
**70. 애플리케이션 테스트에 관한 다음 설명에서 괄호 (1, 2)에 들어갈 알맞은 용어를 쓰시오.**
```
- ( 1 )는 소프트웨어의 하위 모듈에서 상위 모듈 방향으로 통합하면서 테스트하는 기법이다.
- 하나의 주요 제어 모듈과 관련된 종속 묘듈의 그룹인 클러스터(Cluster)가 필요하다.
- 데이터의 입.출력을 확인하기 위해 더미 모듈인 ( 2 )를 생성한다.
```
정답
(1): 상향식 통합 테스트
(2): 드라이버 또는 테스트 드라이버
___
**71. 다음 설명에 해당하는 테스트를 <보기>에서 찾아 쓰시오.**
```
- 통합 테스트로 인해 변경된 모듈이나 컴포넌트에 새로운 오류가 있는지 확인하는 테스트이다.
- 이미 테스트된 프로그램의 테스팅을 반복하는 것이다.
- 수정한 모듈이나 컴포넌트가 다른 부분에 영향을 미치는지, 오류가 생기지 않았는지 테스트하여
새로운 오류가 발생하지 않음을 보증하기 위해 반복 테스트한다.
```
<보기>
```
- Integration - Big Bang - System - Acceptance
- Unit - Regression - White Box - Black Box
```
정답
___
**72. 특정한 몇몇 테스트 케이스의 입력 값들에 대해서만 기대하는 결과를 제공하는 오라클로, 전수 테스트가 불가능한 경우 사용하고, 경계값 및 구간별 예상값 결과 작성시 사용하는 오라클을 쓰시오.**
정답
`#오라클`
___
**73. 애플리케이션 성능이란 사용자가 요구한 기능을 최소한의 자원을 사용하여 최대한 많은 기능을 신속하게 처리하는 정도를 나타낸다. 애플리케이션 성능 측정의 지표에 대한 다음 설명에서 괄호(1\~3)에 들어갈 알맞은 용어를 쓰시오.**
| | |
|---|---|
| ( 1 ) | 일정 시간 내에 애플리케이션이 처리하는 일의 양을 의미한다.|
| ( 2 ) | 애플리케이션에 요청을 전달한 시간부터 응답이 도착할 때까지 걸린 시간을 의미한다.|
| ( 3 )| 애플리케이션에 작업을 의뢰한 시간부터 처리가 완료될 때까지 걸린 시간을 의미한다. |
| 자원 활용률 | 애플리케이션이 의뢰한 작업을 처리하는 동안의 CPU, 메모리, 네트워크 등의 자원 사용률을 의미한다. |
정답
(1): 처리량(Throughput)
(2): 응답시간(Response Time)
(3): 경과시간(Turn Around Time)
`#성능측정`
___
**74. 소스 코드 품질 분석 도구에 대한 다음 설명에서 괄호(1,2)에 해당하는 용어를 <보기>에서 찾아 기호(ㄱ~ㅁ)으로 쓰시오.**
```
소스 코드 품질 분석 도구는 소스 코드의 코딩 스타일, 코드에 설정된 코딩 표준, 코드의 복잡도,
코드에 존재하는 메모리 누수 현상, 스레드 결함 등을 발견하기 위해 사용하는 분석 도구이다.
- ( 1 ) 도구는 작성한 소스 코드를 실행하지 않고 코딩 표준이나 코딩 스타일, 결함 등을
확인하는 코드 분석 도구이다.
- ( 2 ) 도구는 소스 코드를 직접 실행하여 프로그램의 동작이나 반을을 추적하고 보고하는 분석
도구로, 프로그램 모니터링 기능이나 스냅샷 생성 기능들을 포함하고 있다.
```
<보기>
```
ㄱ. Static Analysis ㄴ. Running Analysis ㄷ. Test Execution ㄹ. Performance
ㅁ. Dynamic Analysis ㅂ. Test Control ㅅ. Test Harness ㅇ. Test Monitoring
```
정답
(1): ㄱ. Static Analysis
(2): ㅁ. Dynamic Analysis
___
**75. 데이터를 제어하는 DCL의 하나인 GRANT의 기능에 대해 간략히 서술하시오.**
정답
GRANT는 데이터베이스 관리자가 데이터베이스 사용자에게 권한을 부여하는 데 사용하는 명령어이다.
`#DCL` `#GRANT`
___
**76. 데이터를 제어하는 DCL의 하나인 ROLLBACK에 대해 간략히 서술하시오.**
정답
트랜잭션의 연산 작업을 취소하고 데이터베이스를 이전 상태로 되돌리는 명령어이다.
`#DCL` `#ROLLBACK`
___
**77. 데이터베이스 보안에서 가용성(Availablility)에 대해 간략히 서술하시오.**
정답
인가받은 사용자는 시스템 내의 정보와 자원을 언제라도 사용할 수 있다는 보안 요건이다.
`#가용성` `#Availablility`
___
**78. 보안 위협의 하나인 SQL Injection에 대해 간략히 서술하시오.**
정답
웹 응용 프로그램에 SQL 구문을 삽입하여 내부 데이터베이스 서버의 데이터를 유출 및 변조하고 관리자 인증을 우회하는 공격 기법이다.
`#SQL-Injection`
___
**79. 암호화 알고리즘에 대한 다음 설명에서 괄호(1,2)에 들어갈 알맞은 용어를 쓰시오.**
```
- 암호화 알고리즘은 패스워드, 주민번호, 은행계좌와 같은 중요 정보를 보호하기 위해 평문을
암호화된 문장으로 만드는 절차 또는 방법을 의미한다.
- 스위스의 라이(Lai)와 메시(Messey)는 1990년 PED를 발표하고, 이후 이를 개선한 IPES를
발표하였다. IPES는 128비트의 Key를 사용하여 64비트 블록을 암호화하는 알고리즘이며 현재는
( 1 )라고 불린다.
- ( 2 )은 국가 안전 보장국(NSA)에서 개발한 암호화 알고리즘으로, 클리퍼 칩(Clipper Chip)
이라는 IC 칩에 내장되어 있다. 80비트의 Key를 사용하여 64비트 블록을 암호화하며, 주로
전화기와 같은 음성 통신 장비에 삽입되어 음성 데이터를 암호화한다.
```
정답
(1): IDEA(International Data Encryption Algorithm)
(2): Skipjack
`#Encryption`
___
**80. 보안 프로토콜에 대한 다음 설명에 해당하는 용어를 영문 약어로 쓰시오.**
```
무선랜 보안에 사용된 웹 방식을 보완한 데이터 보안 프로토콜로, 임시 키 무결성 프로토콜
이라고도 한다. WEP의 취약성을 보완하기 위해 암호 알고리즘의 입력 키 길이를 128비트로
늘리고 패킷 당 키할당, 키값 재설정 등 키 관리 방식을 개선하였다.
```
정답
TKIP (Temp Key Integrity Protocol)
`#Protocol` `#Security`
___
**81. 다음에서 설명하고 있는 암호화 알고리즘을 쓰시오.**
```
1974년 IBM이 개발하고 1975년 NBS에 의해 미국의 국가 표준으로 발표된 암호화 알고리즘으로,
블록 크기는 64비트, 키 길이는 56비트이며, 16회의 라운드를 수행한다. 컴퓨터 기술이 발달함에
따라 해독이 쉬워지면서 미국의 국가 표준이 2001년 AES로 대체되었다.
```
정답
DES (Data Encryption Standard)
`#Encryption`
___
**82. 보안 및 암호화와 관련된 다음 설명에 해당하는 용어를 쓰시오.**
```
- 2001년 미국 표준 기술 연구소(NIST)에서 발표한 대칭키 암호화 알고리즘이다.
- DES의 한계를 느낀 NIST에서 공모한 후 발표하였다.
- 블록 크기는 128비트이며, 키 길이에 따라 128, 192, 256으로 분류된다.
```
정답
AES (Advanced Encryption Standard)
`#Encryption`
___
**83. 1991년 R.rivest가 MD4를 개선한 암호화 알고리즘으로, 각각의 512 비트짜리 입력 메시지 블록에 대해 차례로 동작한다. 각 512 비트 입력 메시지 블록을 처리하고 나면 128 비트 스테이트(state)의 값이 변하는 암호화 알고리즘을 쓰시오.**
정답
MD5 (Message Digest algorithm 5)
`#Encryption`
___
**84. 보안 위협에 관한 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.**
```
( ) 스푸핑은 로컬 네트워크(LAN)에서 사용하는 ( )프로토콜의 취약점을 이용한 공격 기법으로,
자신의 물리적 주소(MAC)를 변조하여 다른 PC에게 도달해야 하는 데이터 패킷을 가로채거나
방해한다.
```
정답
ARP (Address Resolution Protocol)
`#SecurityAttack` `#MAC` `#LAN` `#spoofing`
___
**85. 다음은 네트워크 공격에 대한 패킷 로그를 표현한 것이다. 이래의 패킷 로그와 같이 공격자가 패킷의 출발지 주소(Address)또는 포트(Port)를 임의로 변경하여 송신측 IP 주소 또는 포트를 동일하게 함으로써 송신 IP 주소가 자신이므로 자신에게 응답을 수행하게 된다. 이처럼 자신에 대해 무한히 응답하는 패킷을 계속 전송하여 컴퓨터의 실행 속도를 느리게 하거나 동직을 마비 시켜 서비스 거부 상태에 빠지도록 하는 네트워크 공격 유형이 무엇인지 쓰시오.**
```
source : 192.168.1.200
destination : 192.168.1.200
protocol : 6
src port : 21845
dst port : 21845
```
정답
LAND Attack (Local Area Network Denial Attack)
`#SecurityAttack`
___
**86. 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 용어를 쓰시오.**
```
- ( 1 )은 컴퓨터 보안에 있어서, 인간 상호 작용의 깊은 신뢰를 바탕으로 사람들을 속여
정상 보안 절차를 꺠트리기 위한 비기술적 시스템 침입 수단을 의미한다.
- ( 2 )는 특정 목적을 가지고 데이터를 수집하였으나, 이후 활용되지 않고 저장만 되어있는
대량의 데이터를 의미한다. 미래에 사용될 가능성을 고려하여 저장 공간에서 삭제되지 않고
보관되어 있으나, 이는 저장 공간의 낭비뿐만 아니라 보안 위험을 초래할 수도 있다.
```
정답
(1): 사회 공학(Social Engineering)
(2): 다크 데이터(Dark Data)
`#Security`
___
**87. 네트워크 및 인터넷 보안에 관련된 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 쓰시오.**
```
- ( )은 '세션을 가로채다'라는 의미로, 정상적인 연결얼 RST 패킷을 통해 종료시킨 후 재연결 시
희생자가 아닌 공격자에게 연결하는 공격 기법이다.
- TCP( )은 공격자가 TCP 3-way-Handshake 과정에서 끼어듦으로써 서버와 상호 간의 동기화된
시퀀스 번호를 갖고 인가되지 않은 시스템의 기능을 이용하거나 중요한 정보에 접근할 수 있게 된다.
```
정답
세션 하이재킹(Session Hijacking)
`#Security`
___
**88. 보안 위협에 대한 다음 설명에 해당하는 용어를 <보기>에서 찾아 쓰시오.**
```
목표 조직이 자주 방문하는 웹 사이트를 사전에 감염시켜 목표 조직의 일원이 웹 사이트에
방문했을 때 악성 코드에 감염되게 한다. 이후에는 감염된 PC를 기반으로 조직의 중요
시스템에 접근하거나 불능으로 만드는 등의 영향력을 행사하는 웹 기반 공격이다.
```
<보기>
```
- Pharming - Drive-by Download - Watering Hole
- Business SCAM - Phishing -Cyber Kill Chain
- Ransomware - Sniffing
```
정답
`#Security`
___
**89. AAA 서버에 관한 다음 설명에서 각 번호(1~3)에 들어갈 알맞은 용어를 <보기>에서 찾아 쓰시오.**
```
AAA 서버는 사용자의 컴퓨터 자원 접근 처리와 서비스 제공에 있어서의 다음 3가지 기능을
제공하는 서버이다
(1)- 접근하는 사용자의 신원을 검증하는 기능
(2)- 신원이 검증된 사용자에게 특정된 권한과 서비스를 허용하는 기능
(2)- 사용자가 어떤 종류의 서비스를 이용했고, 얼마만큼의 자원을 사용했는지 기록 및
보관하는 기능
```
<보기>
```
- Applicaition - Authentication - Avalanche
- Authorization - Accounting -Ascii
```
정답
(1): Authentication
(2): Authorization
(3): Accounting
`#Security`
___
**90. 네트워크 보안에 대한 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 영문 약어로 쓰시오.**
```
- ( )은 인터넷 등 통신 사업자의 공중 네트워크와 암호화 기술을 이용하여 사용자가 마치
자신의 전용 회선을 사용하는 것처럼 해주는 보안 솔루션이다.
- 암호화된 규격을 통해 인터넷망을 전용선의 사설망을 구축한 것처럼 이용하므로 비용 부담을
줄일 수 있다.
- ( )을 사용하면 두 장치 및 네트워크 사이에 암호화된 보안 터널이 생성되며, 터널에
사용되는 프로토콜에 따라 SSL ( )과 IPSec( )로 불린다
```
정답
`#Security` `#Network`
___
**91. 다음 설명에 해당하는 알맞은 용어를 쓰시오.**
```
다양한 장비에서 발생하는 로그 및 보안 이벤트를 통합하여 관리하는 보안 솔루션으로,
방화벽, IDS, IPS, 웹 방화벽, VPN 등에서 발생한 로그 및 보안 이벤트를 통합하여
관리함으로써 비용 및 자원을 절약할 수 있는 특징이 있다. 또한 보안 솔루션 간의
상호 연동을 통해 종합적인 보안 관리 체계를 수립할 수 있다.
```
정답
SIEM (Security Information & Event Management)
`#Security` `#Solution`
___
**92. 헝가리안 표기법(Hungarian Notaion)에 대해 간략히 서술하시오.**
정답
변수명 작성 시 변수의 자료형을 알 수 있도록 자료형을 의미하는 문자를 포함하여 작성하는 방법이다.
`#Hungarian` `#Notation`
___
**93. 스니핑(Sniffing)은 사전적 의미로 '코를 킁킁 거리다, 냄새를 맡다'이다. 네트워크 보안에서 스니핑에 대한 개념을 간략히 한 문장으로 쓰시오.**
정답
스니핑은 네트워크의 중간에서 남의 패킷 정보를 도청하는 해킹 유형의 하나로 수동적 공격에 해당한다.
`#Sniffing` `#Network` `#SecurityAttack`
___
**94. C++에서 생성자(Constructor)에 대해 간략히 서술하시오.**
정답
생성자는 객체 변수 생성에 사용되는 메소드로, 객체 변수를 생성하면서 초기화를 수행한다.
`#C++` `#Constructor` `#Object` `#init`
___
**95. 다음 설명에 해당하는 운영체제(OS)를 쓰시오.**
```
- 1960년대 AT&T 벨(Bell) 연구소가 MIT, General Electric 사와 함께 공동 개발한 운영체제이다.
- 시분할 시스템(Time Sharing System)을 위해 설계된 대화식 운영체제이다.
- 대부분 C 언어로 작성되어 있어 이식성의 높으며 장치, 프로세스 간의 호환성이 높다.
- 트리 구조의 파일 시스템을 갖는다.
```
정답
`#OS` `#벨연구소` `#시분할시스템`
___
**96. 다음은 Python의 리스트 객체에 속한 메소드들에 대한 설명이다. 각 괄호(1~3)에 해당하는 메소드의 이름을 <보기>에서 찾아 쓰시오.**
```
Python에서는 여러 요소들을 한 개의 이름으로 처리할 때 리스트(List)를 사용하며,
각 요소에는 정수, 실수, 문자열 등 다양한 자료형을 섞어 저장할 수 있다. 또한 리스트는
메소드를 활용하여 요소를 추가 및 삭제할 수 있을 뿐만 아니라 정렬하거나 다른 리스트와
병합하는 등의 다양한 작업을 손쉽게 수행할 수 있다.
- ( 1 ): 기존 리스트에 인수의 요소들을 추가하여 확장하는 메소드로, 여러 값을 한 번에
추가할 수 있다.
- ( 2 ): 리스트에서 맨 마지막 또는 인수의 값에 해당하는 위치의 요소를 삭제한 후
반환한다.
- ( 3 ): 리스트에 저장된 각 요소들의 순서를 역순으로 뒤집어 저장하는 메소드이다
```
<보기>
```
- pop() - push() - reverse() - index() - write()
- sort() - extend() - copy()
```
정답
(1): extend()
(2): pop()
(3): reverse()
`#Python` `#List`
___
**97. 리눅스의 커널 위에서 동작하며, 자바와 코틀린으로 애플리케이션을 작성하는 운영체제로, 휴대용 장치에서 주로 사용되는 이 운영체제의 이름을 쓰시오.**
정답
`#OS` `#mobile` `#리눅스`
___
**98. 다음은 프로세스 상태 전이도이다. 괄호(1~3)에 들어갈 알맞은 상태를 쓰시오.**

정답
(1): 준비(Ready)
(2): 실행(Run)
(3): 대기(Wait)
`#Process` `#상태전이도`
___
**99. HRN 비선점형 스케줄링의 우선순위를 구하는 계산식을 쓰시오.**
정답
`#HRN` `#비선점형스케줄링` `#우선순위`
___
**100. 스케줄링에 대한 다음 설명에서 괄호(1~3)에 들어갈 알맍은 용어를 쓰시오.**
```
- ( 1 )는 준비상태 큐에서 기다리고 있는 프로세스들 중에서 실행 시간이 가장 짧은
프로세스에게 먼저 CPU를 할당하는 기법이다. 가장 적은 평균 대기 시간을 제공하는 최적
알고리즘이지만, 실행 시간이 긴 프로세서는 실행 시간이 짧은 프로세스에게 할당 순위가
밀려 무한 연기 상태가 발생될 수 있다.
- ( 2 )은 시분할 시스템을 위해 고안된 방식으로, 준비상태 큐에 먼저 들어온 프로세스가
먼저 CPU를 할당받지만 각 프로세스는 시간 할당량 동안만 실행 한 후 실행이 완료되지
않으면 다음 프로세스에게 CPU를 넘겨주고 준비상태 큐의 가장 뒤로 배치된다. 할당되는
시간이 작을 경우 문맥 교환 및 오버해드가 자주 발생되어 요청된 작업을 신속히 처리할 수
없다.
- ( 3 )는 현재 실행중인 프로세스의 남은 시간과 준비상태 큐에 새로 도착한 프로세스의
실행 시간을 비교하여 가장 짧은 실행 시간을 요구하는 프로세스에게 CPU를 할당하는 기법
으로, 시분할 시스템에 유용하다. 준비상태 큐에 있는 각 프로세스의 실행 시간을 추적하여
보유하고 있어야 하므로 오버헤드가 증가한다.
```
정답
(1): SJF(Shortest Job First)
(2): RR(Round Robin)
(3): SRT(Shortest Remaining Time)
`#스케줄링` `#우선순위`
___
**101. 리눅스 또는 유닉스에서 'a.txt'파일에 대해 다음 <처리 조건="">과 같이 권한을 부여하고자 한다. <처리 조건="">을 준수하여 적합한 명령문을 작성하시오.**
<처리 조건="">
```
- 사용자에게 읽기, 쓰기, 실행 권한을 부여한다.
- 그룹에게 읽기, 실행 권한을 부여한다.
- 기타 사용자에게 실행 권한을 부여한다.
- 한 줄로 작성하고, 8진법 숫자를 이용한 명령문을 이용한다.
```
정답
해설
`#Command` `#Linux` `#Unix`
___
**102. 인터넷에 대한 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 숫자를 쓰시오.**
```
1. IPv6는 ( 1 )비트의 주소를 가지며, 인증성, 기밀성, 데이터 무결성의 지원으로
보안 문제를 해결할 수 있고, 주소의 확장성, 융통성, 연동성이 뛰어나다.
2. IPv4는 32 비트의 주소를 가지며 ( 2 )비트씩 4부분, 총 32비트로 구성되어 있다.
IPv4는 네트워크 부분의 길이에 따라 A 클래스에서 E 클래스까지 총 5단계로 구성되어
있다.
```
정답
`#IPv6` `#IPv4` `#Network`
___
**103. 192.167.1.0/24 네트워크를 FLSM 방식을 이용하여 3개의 Subnet으로 나누었을 때, 두 번째 네트워크의 브로드캐스트 IP 주소를 10진수 방식으로 쓰시오.**
정답
해설
- 192.168.1.0/24에서 ‘/24’는 서브넷 마스크를 의미한다. 즉 서브넷 마스크는 1의 개수가 24개라는 것으로 이를 2진수로 표현하면 11111111 11111111 11111111 00000000이다.
- 서브넷 마스크를 Subnet으로 나눌 때는 서브넷 마스크가 0인 부분, 즉 마지막 8비트를 이용하면 된다.
- Subnet으로 나눌 때 “3개의 Subnet으로 나눈다”는 것처럼 네트워크가 기준일 때는 왼쪽을 기준으로 나눌 네트워크 수에 필요한 비트를 할당하고 나머지 비트로 호스트를 구성하면 된다.
- 3개의 Subnet으로 구성하라 했으니 8비트 중 3을 표현하는데 필요한 2($2^2$=4)비트를 제외하고 나머지 6비트를 호스트로 구성하면 된다.
- 네트워크 개수 = 4(=$2^{2(필요한 비트 수)}$)
- 호스트 개수 = 256/네트워크 개수 = 256/4 = 64(=$2^{6(남은 비트 수)}$)
- 문제에서 FLSM(Fixed Length Subnet Mask), 즉 고정된 크기로 주소를 할당하라고 했으므로 다음 표와 같이 64개의 호스트를 갖는 4개의 네트워크로 나눌 수 있으나 문제에서 3개의 Subnet을 구성하라 하였으므로 4번 네트워크는 사용되지 않는다.
- 네트워크 별로 첫 번째 주소는 네트워크 주소이고, 마지막 주소는 브로드캐스트 주소이다.
| 네트워크 |
네트워크 주소 |
브로트캐스트 주소 |
| 1 |
192.168.1.0 |
192.168.1.63 |
| 2 |
192.168.1.64 |
192.168.1.127 |
| 3 |
192.168.1.128 |
192.168.1.191 |
| 4 |
192.168.1.192 |
192.168.1.255 |
- 3개의 Subnet으로 나누어진 위의 네트워크에서 두 번째 네트워크의 브로드캐스트 주소는 192.168.1.127 이다.
`#Subnet` `#서브넷마스크` `#FLSM`
___
**104. 서브네팅(Subnetting)에 대한 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 숫자를 쓰시오.**
```
현재 IP 주소가 192.168.1.132이고, 서브넷 마스크가 255.255.255.192일 때,
네트워크 주소는 192.168.1.( 1 )이고, 해당 네트워크에서 네트워크 주소와 브로드캐스트
주소를 제외한 사용 가능한 호스트의 수는 ( 2 ) 개이다.
```
정답
해설
- IP 주소는 네트워크 부분의 길이에 따라 다음과 같이 A 클래스에서 E 클래스까지 총 5단계로 구성되어 있으며, 각 클래스는 IP 주소의 앞자리로 구분할 수 있다.
|||
|—|—|
| A Class | 0~127로 시작 |
| B Class |128~191로 시작|
| C Class | 192~223로 시작|
| D Class | 224~239로 시작 |
| E Class | 공용되지 않음|
- 192.168.1.132는 C 클래스에 속한 주소로, C 클래스의 기본 서브넷 마스크는 255.255.255.0 이다. 이를 2진수로 표현하면 11111111 11111111 11111111 00000000으로, 1의 개수가 24개이다.
- 문제에 주어진 서브넷 마스크 255.255.255.192fmf 2진수로 표현하면 11111111 11111111 11111111 11000000으로, C 클래스의 기본 서브넷 마스크보다 1의 개수가 2개, 즉 2비트가 많다. 이 2비트를 이용해 네트워크의 개수와 네트워크 안에 포함된 호스트의 개수를 계산한다.
- 네트워크 개수 = 4($2^{2(추가된 비트 수)}$)
- 호스트 개수 = 256/네트워크 개수 =256/4 = 64
- 다음 표와 같이 64개의 호스트를 같는 4개의 네트워크로 나눌 수 있다.
- 네트워크 별로 첫 번째 주소는 네트워크 주소이고, 마지막 주소는 브로드캐스트 주소이다.
| 네트워크 |
네트워크 주소 |
브로트캐스트 주소 |
| 1 |
192.168.1.0 |
192.168.1.63 |
| 2 |
192.168.1.64 |
192.168.1.127 |
| 3 |
192.168.1.128 |
192.168.1.191 |
| 4 |
192.168.1.192 |
192.168.1.255 |
- 192.168.1.132는 세 번째 네트워크에 포함되어 있으며, 세 번째 네트워크의 네트워크 주소는 192.168.1.128이다.
- 호스트의 수는 네트워크마다 64개의 호스트를 가지므로 64개이지만, 문제에서 네트워크 주소와 브로드캐스트 주소를 제외한다고 하였으므로 사용 가능 호스트의 수는 62개이다.
`#Subnet` `#서브넷마스크` `#서브네팅`
__
**105. 네트워크 및 인터넷과 관련된 다음 설명에 해당하는 용어를 영문(Full name 또는 약어)으로 쓰시오.**
```
- 현재 사용하고 있는 IP 주소 체계인 IPv4의 주소 부족 문제를 해결하기 위해 개발되었다.
- 16비트씩 8부분, 총 128비트로 구성되어 있다
- 각 부분을 16진수로 표현하고, 콜론(:)으로 구분한다.
- 인증성, 기밀성, 데이터 무결성의 지원으로 보안 문제를 해결할 수 있다.
- 주소의 확장성, 융통성, 연동성이 뛰어나며, 실시간 흐름 제어로 향상된 멀티미디어 기능을 지원한다.
```
정답
IPv6 (Internet Protocol version 6)
`#IP`
__
**106. OSI 7Layer에 대한 다음 설명에서 각 번호 (1~3)에 들어갈 알맞은 계층(Layer)를 쓰시오.**
```
OSI 7 Layer는 다른 시스템 간의 원활한 통신을 위해 ISO(국제표준화기구)에서 제안한
통신규약(Protocol)이다.
(1) - 물리적으로 연결된 두 개의 인접한 개방 시스템들 간에 신뢰성 있고 효율적인
정보 전송을 할 수 있도록 연결 설정, 데이터 전송, 오류 제어 등의 기능을 수행한다.
(2) - 개방 시스템들 간의 네트워크 연결을 관리하며, 경로 제어, 패킷 교환, 트래픽
제어 등의 기능을 수행한다.
(3) - 서로 다른 데이터 표현 형태를 갖는 시스템 간의 상호 접속을 위해 필요한 계층으로,
코드 변환, 데이터 암호화, 데이터 압축, 구문 검색 등의 기능을 수행한다.
```
정답
(1): 데이터 링크 계층 (Data Link Layer)
(2): 네트워크 계층(Network Layer)
(3): 표현 계층(Presentation Layer)
`#IP` `#OSI7Layer`
__
**107. 다음이 설명하는 OSI 참조 모델의 계층을 쓰시오.**
```
- 다양한 전송매체를 통해 비트 스트림을 전송한다.
- 전송에 필요한 두 장치 간의 실제 접속과 절단 등 기계적, 전기적, 기능적, 절차적
특징에 대한 규칙을 정의힌다.
```
정답
`#IP` `#OSI7Layer`
__
**108. 다음 네트워크 관련 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
```
심리학자 톰 마릴은 컴퓨터가 메시지를 전달하고, 메시지가 제대로 도착했는지 확인하며,
도착하지 않았을 경우 메시지를 재전송하는 일련의 방법을 '기술적 은어'를 뜻하는
( )이라는 용어로 정의하였다.
```
정답
`#Network` `#톰마릴`
__
**109. 프로토콜은 서로 다른 기기들 간의 데이터 교환을 원활하게 수행할 수 있도록 표준화시켜 놓은 통신 규약이다. 프로토콜의 기본 요소 3가지를 쓰시오.**
정답
구문(Syntax)
의미(Semantics)
시간(Timing)
`#Protocol`
__
**110. 인터넷에 대한 다음 설명에서 괄호(1~3)에 들어갈 알맞은 용어를 <보기>에서찾아 쓰시오.**
```
인터넷이란 TCP/IP 프로토콜을 기반으로 하여 전 세계 수많은 컴퓨터와 네트워크들이 연결된
광범위한 컴퓨터 통신망이다.
- ( 1 ): 월드 와이드 웹(WWW)에서 HTML 문서를 송수신 하기 위한 표준 프로토콜로, GET과
POST 메소드를 통해 메시지를 주고 받는다.
- ( 2 ): 다른 문서나 그림으로 이동할 수 있는 연결을 가지고 있는 텍스트를 의미한다
- ( 3 ): 인터넷의 표준 문서인 하이퍼텍스트 문서를 만들기 위해 사용하는 언어이다.
```
정답
(1): HTTP
(2): Hypertext
(3): HTML
`#인터넷`
__
**111. 네트워크에 관련된 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 용어를 쓰시오.**
```
- ( 1 ): 연결형 통신에서 주로 사용되는 방식으로, 출발지와 목적지의 전송 경로를 미리
연결하여 논리적으로 고정한 후 통신하는 방식
- ( 2 ): 비연결형 통신에서 주로 사용되는 방식으로, 사전에 접속 절차를 수행하지 않고
헤더에 출발지에서 목적지까지의 경로 지정을 위한 충분한 정보를 붙여서 개별적으로 전달하는
방식
```
정답
(1): 가상 회선(Virtual Circuit)
(2): 데이터그램(Datagram)
`#Network`
__
**112. 네트워크에 및 인터넷과 관련된 다음 설명에 해당하는 용어를 쓰시오.**
```
인터넷 환경에서의 호스트 상호 간 통신에서 연결된 네트워크 접속 장치의 물리적 주소인
MAC 주소를 이용하여 IP 주소를 찾는 인터넷 계층의 프로토콜로,
역순 주소 결정 프로토콜이라 불린다.
```
정답
RARP (Reverse Address Resolution Protocol)
`#Network` `#MAC`
__
**113. 다음 네트워크 관련 설명에서 괄호에 들어갈 알맞은 용어를 영문(Full name 또는 약어)으로 쓰시오.**
```
( )는 TCP/IP 기반의 인터넷 통신 서비스에서 인터넷 프로토콜(IP)과 조합하여
통신 중에 발생하는 오류의 처리와 전송 경로의 변경 등을 위한 제어 메시지를 취급하는
무연결 전송용 프로토콜로, OSI 기본 참조 모델의 네트워크 계층에 속한다.
```
정답
ICMP (Internet Control Message Protocol)
`#Network` `#TCP/IP` `#OSI네트워크계층`
__
**114. 다음 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
```
( )는 한 번의 로그인으로 개인이 가입한 모든 사이트를 이용할 수 있게 해주는
시스템을 말한다. 개인의 경우, 사이트에 접속하기 위하여 아이디와 패스워드는 물론,
이름, 전화번호 등 개인정보를 각 사이트마다 일일이 기록해야 하던 것이 한 번의
작업으로 끝나므로 불편함이 해소되며, 기업에서는 회원에 대한 통합관리가 가능해
마케팅을 극대화시킬 수 있다는 장점이 있다.
```
정답
`#SignIn`
__
**115. 네트워크 및 인터넷과 관련된 다음 설명에 해당하는 용어를 쓰시오.**
```
- 재난 및 군사 현장과 같이 별도의 고정된 유선망을 구축할 수 없는 장소에서
모바일 호스트(Mobile Host)만을 이용하여 구성한 네트워크이다.
- 망을 구성한 후 단기간 사용되는 경우나 유선망을 구성하기 어려운 경우에 적합하다.
- 멀티 홉 라우팅 기능을 지원한다.
```
정답
애드 혹 네트워크 (Ad-hoc Network)
`#Network` `#MobileHost` `#멀티홉라우팅`
__
**116. 네트워크에 대한 다음 설명에 해당하는 용어를 쓰시오.**
```
- 우리말로 번역하면 '네트워크 주소 변환'이라는 의미의 영문 3글자 약자이다.
- 1개의 정식 IP 주소에 다량의 가상 사설 IP 주소를 할당 및 연결하는 방식이다.
- 1개의 IP 주소를 사용해서 외부에 접속할 수 있는 노드는 어느 시점에서 1개만으로
제한되는 문제가 있으나, 이 때에는 IP 마스커레이드(Masquerade)을 이용하면 된다.
```
정답
NAT (Network Address Translation)
`#Network` `#IP`
__
**117. 다음 설명에서 가리키는 용어를 쓰시오.**
```
가. 정의
웹상에 존재하는 데이터를 개별 URI(Uniform Resourse Identifier)로 식별하고,
각 URI에 링크 정보를 부여함으로써 상호 연결된 웹을 지향하는 모형이다. 링크 기능이
강조된 시맨틱웹의 모형에 속한다고 볼 수 있으며 팀 버너스 리의 W3C를 중심으로 발전
하고 있다.
나. 주요기능
1. 공개된 데이터를 이용하면 내가 원하는 데이터가 이미 존재하는지, 어디에 존재하는지
알 수 있다.
2. URI로 구별되는 데이터 리소스의 자유로운 접근 및 이용이 가능하므로 큰 노력 없이
데이터의 매쉬업이 가능하다.
3. 내가 만든 데이터가 아니라도 URI를 이용하여 링크만 해주면 이용할 수 있다.
다. 4대 원칙
1. 통합 자원 식별자(URI)를 이용한다.
2. URI는 HTTP 프로토콜을 통해 접근할 수 있어야 한다.
3. RDF나 스파클 같은 표준을 사용한다.
4. 풍부한 링크 정보가 있어야 한다.
라. Linked Data와 Open Data를 결합한 용어이다.
```
정답
LOD(개방형 링크드 데이터 Linked Open Data)
`#Network` `#URI` `#LinkendData` `#OpenData`
---
**118. 경로 제어 프로토콜(Routing Protocol)에 대한 다음 설명에서 괄호 (1~4)에 들어갈 알맞은 용어를 <보기>에서 찾아 쓰시오.**
```
경로 제어 프로토콜은 크게 자율 시스템 내부의 라우팅에 사용되는 ( 1 )와
자율 시스템 간의 라우팅에 사용되는 ( 2 )로 구분할 수 있다.
- ( 1 )는 소규모 동종 자율 시스템에서 효율적인 RIP와 대규모 자유 시스템에서
많이 사용되는 ( 3 )으로 나누어진다.
- ( 3 )는 링크 상태(Linked State)를 실시간으로 반영하여 최단 경로로 라우팅을
지원하는 특징이 있다.
- ( 4 )는 ( 2 )의 단점을 보완하여 만들어진 라우팅 프로토콜로, 처음 연결될 때는
전체 라우팅 테이블을 교환하고, 이후에는 변화된 정보만을 교환한다.
```
<보기>
```
- BGP - AS - HOP - OSPF - NAT - ISP - EGP - IGP
```
정답
(1): IGP
(2): EGP
(3): OSPF
(4): BGP
`#Network` `#RoutingProtocol`
---
**119. 피투피(P2P) 네트워크를 이용하여 온라인 금융 거래 정보를 온라인 네트워크 참여자(Peer)의 디지털 장비에 분산 저장하는 기술을 쓰시오.**
정답
`#P2P` `#Peer`
---
**120. 정보 보호에 대한 다음 설명에 해당하는 용어를 영문 약어로 쓰시오.**
```
정보 자산을 안전하게 보호하기 위한 보호 절차와 대책으로, 정보보호 관리 체계라고 한다.
조직에 맞는 정보보호 정책을 수립하고, 위험에 상시 대응하는 여러 보안 대책을 통합 관리한다.
공공 부문과 민간 기업 부문에서 이것을 평가하고 인증하는 사업을 한국인터넷진흥원(KISA)
에서 운영중이다.
```
정답
ISMS (Information Security Management System)
`#정보보호관리체계` `#한국인터넷진흥원`
---
**121. 보안 및 보안 위협에 대한 다음 설명에서 괄호(1, 2)에 들어갈 알맞은 용어를 <보기>에서 찾아 쓰시오.**
```
- ( 1 )은 칩 설계 회사인 ARM(Advance RISC Machine)에서 개발한 기술로,
하나의 프로세서 (Processor)내에 일반 애플리케이션을 처리하는 일반 구역(Normal World)과
보안이 필요한 애플리케이션을 처리하는 보안 구역(Secure World)으로 분할하여 관리하는
하드웨어 기반의 보안기술이다.
- ( 2 )은 네티즌들이 사이트에 접속할 때 주소를 잘못 입력하거나 철자를 빠뜨리는 실수를
이용하기 위해 이와 유사한 유명 도메인을 미리 등록하는 것으로 URL 하이재킹(Hijacking)
이라고도 한다. 유명 사이트들의 도메인을 입력할 때 발생할 수 있는 온갖 도메인 이름을 미리
선점해 놓고 이용자가 모르는 사이에 광고 사이트로 이동하게 만든다.
```
<보기>
```
- Pharming - Tvishing - Trustzone - APT
- Typosquatting - Hacktivism - Wartering Hole - Smurfing
- Ransomware - CSRF
```
정답
(1): TrustZone
(2): Typosquatting
`#ARM` `#URL하이재킹`
---
**122. 다음 설명의 RAID에 해당하는 레벨(Level)을 답 란의 괄호 안에 숫자로 쓰시오.**
```
여러 개의 하드디스크로 디스크 배열을 구성하고, 파일을 구성하는 데이터 블록들을
서로 다른 디스크에 분산 저장할 경우 저장된 블록들을 여러 디스크에서 동시에 읽고
쓸 수 있으므로 디스크의 속도가 매우 향상되는데, 이 기술을 RAID라고 한다.
레이드 방식 중 패리티가 없는 스트라이핑된 2개 이상의 디스크를 병렬로 연결하여
구성하는 이 방식은 디스크의 개수가 증가할수록 입.출력 속도 및 저장 용량이 배로
증가하지만, 하나의 디스크만 손상 되어도 전체 데이터가 유실되는 문제가 발생한다.
```
정답
`#RAID`
---
**123. 분산 컴퓨팅에 대한 다음 설명에 해당하는 용어를 쓰시오.**
```
- 오픈 소스 기반 분산 컴퓨팅 플랫폼이다.
- 분산 저장된 데이터들은 클러스터 환경에서 병렬 처리된다.
- 일반 PC급 컴퓨터들로 가상화된 대형 스토리지를 형성하고 그 안에 보관된 거대한
데이터 세트를 병렬로 처리할 수 있도록 개발되었다.
- 더그 커팅과 마이크 캐퍼렐라가 개발했으며, 구글의 맵리듀스(MapReduce)엔진을
사용하고 있다.
```
정답
`#분산컴퓨팅`
---
**124. 데이터 마이닝(Data Mining)의 개념을 간략히 서술하시오.**
정답
대량의 데이터를 분석하여 데이터에 내재된 변수 사이의 상호 관계를 규명하여 일정한 패턴을 찾아내는 기법이다.
`#데이터마이닝`
---
**125. 데이터베이스의 회복(Recovery) 기법에 관련된 다음 설명에서 괄호에 공통적으로 들어갈 가장 알맞은 용어를 쓰시오.**
```
( )은 트랜잭션이 데이터를 변경하면 트랜잭션이 부분 완료되기 전이라도 즉시
실제 DB에 그 내용을 반영하는 기법으로, 장애가 발생하여 회복 작업할 경우를
대비하여 갱신된 내용들을 로그(Log)에 보관시킨다. ( )에서 회복 작업을 수행할
경우 Redo와 Undo 모두 수행이 가능하다.
```
정답
즉각 갱신 기법 (Immediate Update)
`#Recovery`
---
**126. 데이터베이스의 병행제어(Concurrency Control) 기법 중 하나로, 접근한 데이터에 대한 연산을 모두 마칠 때까지 추가적인 접근을 제한함으로써 상호 배타적으로 접근하여 작업을 수행하도록 하는 기법을 쓰시오.**
정답
`#병행제어`
---
**127. 릴리즈 노트는 개발 과정에서 정리된 릴리즈 정보를 소프트웨어의 최종 사용자인 고객과 공유하기 위한 문서이다. 릴리즈 노트는 정확하고 완전한 정보를 기반으로 개발팀에서 직접 현재 시제로 작성해야 한다. 릴리즈 노트 작성 시 릴리즈 노트 이름, 소프트웨어 이름, 릴리즈 버전, 릴리즈 날짜, 릴리즈 노트 날짜, 릴리즈 노트 버전 등이 포함된 항목을 쓰시오.**
정답
`#릴리즈노트`
---
**128. 제시된 보기 중 형상 관리 도구에 해당하는 것을 3가지 고르시오**
```
- OLAP - CVS - Ant - Maven -Git
-Jenkins -Spring - SVN
```
정답
`#형상관리도구`
---
**129. 소프트웨어 개발에서의 작업 중 형상 통제에 대해 간략히 서술하시오.**
정답
형상 통제는 식별된 형상 항목에 대한 변경 요구를 검토하여 현재의 기준선이 잘 반영될 수 있도록 조정하는 작업이다.
`#형상통제`
---
**130. 다음 설명에서 괄호에 들어갈 알맞은 용어를 쓰시오.**
```
소프트웨어 ( )는 소프트웨어 개발 단계의 각 과정에서 만들어지는 프로그램, 프로그램을
설명하는 문서, 데이터 등을 관리하는 것을 말한다. 소프트웨어의 개발 과정에서 만들어지는
여러 버전들의 변경사항을 관리하는 일련의 활동이며 이를 지원하는 도구로 Git, SVN등이
있다.
```
정답
보기>보기>보기>보기>보기>처리>처리>처리>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>보기>
보기>보기>보기>