정보처리기사 실기 2021년 1회 기출문제 문제복원 입니다.
1. 다음은 기술 내용에 따라 분류한 요구사항 분석 기법에 대한 설명이다. 빈칸 ① ~ ②에 알맞은 용어를 각각 쓰시오.
( ① ) 요구사항 |
|
( ② ) 요구사항 |
|
|
해설
1. 요구사항 확인 문제
2. 다음은 데이터 모델에 대한 설명이다. 빈칸 ① ~ ③에 알맞은 용어에 해당하는 기호를 <보기>에서 골라 쓰시오.
데이터 모델링은 정보스스템을 구축하기 위해, 어떤 데이터가 존재하는지 또는 업무가 필요로 하는 정보는 무엇인지를 분석/표현하는 방법을 말한다. 데이터 모델링은 ( ① ) 데이터 모델링, ( ② ) 데이터 모델링, ( ③ ) 데이터 모델링을 통해 데이터베이스를 구축하는 일련의 절차를 거쳐 진행된다.
|
<보기> 구현, 요구사항, 개념, 논리, 물리 |
|
해설
2. 데이터 입출력 구현 문제
개념적 데이터 모델링 > 논리적 데이터 모델링 > 물리적 데이터 모델링
3. 다음 빈칸에서 공통으로 설명하는 용어가 무엇인지 쓰시오.
|
답 : 반정규화 |
해설
2. 데이터 입출력 구현 문제
물리적 데이터 모델링 : 논리적 데이터 모델을 사용하고자 하는 DBMS의 특성을 고려하여 데이터 베이스 저장 구조로 변환하는 것이다.(반정규화)
논리적 데이터 모델링 : 정규화
4. 기업 내부에서 운영되는 각종 플랫폼 및 애플리케이션 간의 상호 정보 전달, 연계, 통합을 가능하게 해주는 솔루션이다. Point to Point, Hub&Spoke, Message Bus 등의 데이터 연계 방식을 갖는 소프트웨어 및 정보시스템 아키텍처 프레임워크를 무엇이라 하는지 쓰시오.
답 : EAI |
해설
4. 통합 구현 문제
5. 웹 서비스에서 웹 서비스명, 서비스 제공 위치, 서비스 메시지 포멧, 프로토콜 정보 등에 대한 상세정보를 기술한 파일로 XML로 기술된 웹 서비스 기술 언어 또는 기술된 정의 파일의 총칭을 무엇이라 하는지 쓰시오.
답 : WSDL |
해설
3. 통합 구현 문제
6. 다음은 결합도에 대한 설명이다. 빈칸 ( )안에 들어갈 가장 적합한 용어에 해당하는 기호를 <보기>에서 골라 쓰시오.
결합도 유형 | 설명 |
( ① ) | 한 모듈이 다른 모듈 내부에 있는 지역 변수나 기능을 사용(참조 또는 수정)하는 경우의 결함도 |
( ② ) | 모듈 간의 인터페이스로 배열이나 오브젝트(Object), 스트럭처(Structure) 등이 전달되는 경우의 결합도 |
( ③ ) | 파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역 변수를 갱신하는 식으로 상호 작용하는 경우의 결합도 |
<보기>
ㄱ. 자료 결합도 ㄴ. 스탬프 결합도 ㄷ. 제어 결합도 ㄹ. 공통 결합도 ㅁ. 내용 결합도 ㅂ. 외부 결합도 |
|
해설
4. 서버프로그램 구현 문제
결함도, 응집도 문제는 설명을 헷갈리게 출제된다 그러므로 해당 단계의 핵심키워드를 잘 이해해야 한다.
자료 결합도 | 자료만 주고 받으며 서로 간섭을 최소화하는 모듈간의 관계 매개 변수 넘겨주고 호출된 모듈에서 받은 데이터에 대한 처리 결과를 리턴 |
스탬프 결합도 | 두 모듈이 동일한 자료구조를 조회 필요한 자료만 주고 받을 수 없고 모든 자료를 주고 받아야 하는 경우(C언어 구조체의 경우) |
제어 결합도 | 다른 모듈에 흐름을 제어, 제어용 신호를 주고 받는 경우 제어 플래그를 매개변수로 사용하여 호출하는 모듈의 내부 구조를 잘 알고 논리적 흐름을 변경하는 관계로 묶인 경우 |
외부 결합도 | 다수의 모듈이 모듈 밖에서 도입된 데이터, 프로토콜, 인터페이스 등을 공유할 때 발생 |
공통 결합도 | 모듈이 공통 변수를 같이 사용하는 경우(전역변수) 데이터가 변경되면 관련된 모듈 모두 검토해야 되므로 유지보수가 어렵다. |
내용 결함도 | 모듈 간에 인터페이스를 사용하지 않고 직접 오가는 경우(지역변수) 한 모듈이 다른 모듈의 내부 기능 및 자료를 직접 참조 |
7. 다음은 목적 및 실행 코드 기반의 실행을 통한 블랙박스 검사 기법에 대한 설명이다. 빈칸 ( )안에 들어갈 가장 적합한 용어를 쓰시오.
테스트 목적 | 설명 |
( ① ) |
|
( ② ) |
|
|
해설
7. 애플리케이션 테스트 관리 문제
8. 다음은 테스트 종류에 대한 설명이다. 빈칸 ( )안에 들어갈 가장 적합한 용어에 해당하는 기호를 <보기>에서 골라 쓰시오.
( ① ) | ( ① )(은)는 '모듈 테스트'라고도 하며, 작은 소프트웨어 단위(컨포넌트 또는 모듈)를 개별 테스트하는 것으로서, 일반적으로 개발자 자신에 의해 행해진다. 과거에는 시간 부족을 이유로 생략되었으나 최근에는 개발 도구의 발전으로 개발 과정 중에 자동으로 진행된다. ( ① )(은)는 아주 중요한 부분이므로 개발 도구에서 지원하지 않아도 반드시 수행해야 한다. |
( ② ) | ( ② )(은)는 컨포넌트 간 인터페이스 테스트를 하고 운영체제(OS), 파일 시스템, 하드웨어 또는 시스템 간 인터페이스와 같은 각각 다른 부분과 상호 연동이 정상적으로 작동하는지 여부를 테스트한다. |
<보기>
ㄱ. 시스템테스트 ㄴ. 인수테스트 ㄷ. 알파테스트 ㄹ. 단위테스트 ㅁ. 통합테스트 ㅂ. 회귀테스트 |
|
해설
7. 애플리케이션 테스트 관리 문제
단위테스트 > 통합테스트 > 시스템테스트 > 인수테스트(알파, 베타)
9. <EMP> 테이블을 대상으로 다음 <SQL>문을 적용한 출력 결과를 쓰시오.
<EMP>
EMPNO | ENAME | AGE | SAL | DEPT_ID |
100 | 홍길동 | 25 | 1000 | 20 |
200 | 강감찬 | 40 | 3000 | 30 |
300 | 이순신 | 42 | 2000 | 40 |
400 | 강희영 | 25 | 2500 | 40 |
<SQL>
SELECT COUNT(*) FROM EMP WHERE EMP > 100 AND SAL >= 3000 OR EMPNO = 200; |
답 : 1 |
10. 다음 설명에 해당하는 용어를 쓰시오.
|
답 : DAC |
해설
9. 소프트웨어 개발 보안 구축 문제
접근제어모델
정책 | MAC | DAC | RBAC |
권한부여 | 시스템 | 데이터 소유자 | 중앙 관리자 |
접근결정 | 보안등급 | 신분 | 역할 |
정책변경 | 고정적 | 변경 용이 | 변경 용이 |
장점 | 안정적 중앙 집중적 | 구현 용이 유연함 | 관리 용이 |
11. 다음은 C언어로 작성된 프로그램이다. 이를 실행한 출력 결과를 쓰시오.
#include <stdio.h> struct insa { char name[10]; int age; } void main() { struct insa a[] = {"Kim", 28, "Lee", 38, "Kang", 48}; struct insa *p; p = a; p++; printf("%s\n", p->name); printf("%d\n", p->age); } |
답안
Lee 38 |
해설
구조체 문제
a[0] = name : "Kim"; age : 28;
a[1] = name : "Lee"; age : 38;
a[2] = name : "Kang"; age : 48;
p = a; => a의 전체 데이터가 p 변수에 설정되지만 p는 포인터 변수이므로 p의 경우 a[0]를 의미한다.
따라서 p++;는 p[1];
%s는 문자열 전체(%c: 문자 하나)를 출력하기 때문에 p[1].name인 Lee 출력 후 \n 붙어 있으므로 줄바꿈이 된다.
%d는 정수형을 출력하므로 p[1].age인 38을 출력하게 된다.
12. 다음은 Java로 작성된 프로그램이다. 이를 실행한 출력 결과를 쓰시오.
public class Exam { public static void main(String[] args){ int a[][] = {{45, 50, 55}, {89}}; System.out.println(a[0].length); System.out.println(a[1].length); System.out.println(a[0][0]); System.out.println(a[0][1]); System.out.println(a[1][0]); } } |
답안
3 1 45 50 89 |
해설
a[0] = {45, 50, 55}
a[1] = {89}
13. 다음은 Java로 작성된 프로그램이다. 이를 실행한 출력 결과를 쓰시오.
public class Exam { public static void main(String[] args) { int i, j = 0; for(i = 0; i < 5; i++) { j += i; System.out.print(i); if(i == 5) { System.out.print("="); } else { System.out.print("+"); } } System.out.println(j); } } |
답안
0+1+2+3+4+5=15 |
해설
print : 줄바꿈X
println : 출력 후 줄바꿈
14. 다음은 Python언어로 작성된 프로그램이다. 이를 실행한 출력 결과를 쓰시오.
class Arr: a = ["Seoul", "Kyeonggi", "Inchon", "Daejoen", "Deagu", "Pusan"] str01 = '' for i in Arr.a: str01 = str01 + i[0] print(str01) |
답 : SKIDDP |
해설
i | i[0] | str01 |
"Seoul" | "S" | "S" |
"Kyeonggi" | "K" | "SK" |
"Inchon" | "I" | "SKI" |
"Daejoen" | "D" | "SKID" |
"Deagu" | "D" | "SKIDD" |
"Pusan" | "P" | "SKIDDP" |
15. 아래 보기의 <학생> 릴레이션의 카디널리티(Cardinality)와 디그리(Degree)를 쓰시오.
<학생>
학번 | 성명 | 학년 | 전화번호 |
110011 | 강희영 | 1 | 010-1111-1111 |
220022 | 홍길동 | 2 | 010-2222-2222 |
330033 | 김철수 | 2 | 010-3333-3333 |
440044 | 신면철 | 3 | 010-4444-4444 |
550055 | 김선희 | 4 | 010-5555-5555 |
|
해설
카디널리티 : 튜플, 행
디그리 : 차수, 열
16. 다음은 데이터 모델에 대한 설명이다. 빈칸 ① ~ ②에 알맞은 용어를 각각 쓰시오.
데이터 모델은 현실 세계의 정보를 컴퓨터 세계의 환경에 맞게 표현하기 위해 단순화, 추상화하여 체계적으로 표현한 개념적인 도구이다. 데이터 모델은 일반적으로 다음의 3가지 구성 요소를 포함하고 있다.
|
|
해설
11. 응용 SW 기초 활용 문제
데이터 모델 3요소
1. 논리적으로 표현된 데이터 구조
2. 구성요소의 연산
3. 구성요소의 제약조건
17. '프로세스 간 통신'이라고도 하며, 세마포어, 소켓 등 프로세스 간 메시지 전달이나 공유 메모리 기법을 통해 자원이나 데이터를 서로 주고 받는 행위 또는 그에 대한 방법이나 경로를 의미하는 용어를 쓰시오.
답 : IPC |
해설
11. 응용 SW 기초 활용 문제
18. 다음은 IP주소에 대한 설명이다. 빈칸 ① ~ ②에 알맞은 용어를 각각 쓰시오.
IPv6는 IETF(Internet Engineering Task Force)에서 IPv4 Address의 부족과 Mobile IP Address 구현 문제를 해결 방안으로 만들어진 IPv4를 보완하는 차세대 IP Address 주소 체계이다. 주소 유형은 유니캐스트, 멀티캐스트, 브로드캐스트 3가지이며, 주소의 길이는 ( ① )bit이고 8개 그룹으로 배열되며 각 그룹은 16비트이다. 각 그룹은 4개의 16진수로 표현되며 그룹 간은 콜론(:)으로 구분된다. 패킷 전송 시 멀티캐스트를 사용한다. 약 32억개의 유한한 IPv4의 주소는 네트워크의 크기나 호스트의 수에 따라 A, B, C, D, E클래스로 나누어진다. 202.255.208.223과 같은 IPv4의 길이는 32bit이고 ( ② )bit씩 4부분으로 구분하여 10진수로 표현한다. |
|
해설
11. 응용 SW 기초 활용 문제
IPv4 | IPv6 |
|
|
19. TCP/IP의 인터넷 계층의 프로토콜로 호스트의 물리 주소를 통하여 논리 주소인 IP 주소를 얻어 오기 위해 사용되는 프로토콜을 무엇이라 하는지 쓰시오.
답 : RARP |
해설
11. 응용 SW 기초 활용 문제
ARP : IP주소 -> MAC주소
RARP : MAC주소 -> IP주소
20. 빈칸 ( ) 안에 공통적으로 들어갈 공격기법을 쓰시오.
( )(은)는 '세션 가로채기'라고도 하며, 두 시스템 간의 정상적으로 연결이 활성화된 상태, 즉 로그인된 상태를 가로채는 것이다. RST(Reset)패킷을 통해 일시적으로 TCP세션을 끊고 시퀀스 넘버를 종료시킨 후 서버와 클라이언트에 각각 잘못된 시퀀스 번호를 위조해서 연결된 세션에 잠시 혼란을 준 뒤 자신이 끼어들어가는 방식을 사용하는 능동적 공격기법이다. TCP ( )(은)는 TCP 세션을 훔쳐서 서버에게 새로운 시퀀스 넘버를 보내서 마치 클라이언트인 척하며 연결을 이어나가 인증을 회피하는 공격으로 서버가 세션과 클라이언트의 유효성을 검사하지 않아 발생하기 된다. Telnet, FTP 등 TCP를 사용한 모든 세션의 갈취가 가능하다. |
답 : 세션 하이재킹 |
'자격증 > 정보처리기사' 카테고리의 다른 글
[정보처리기사 실기] 2020년 4, 5회 기출문제 (0) | 2021.07.19 |
---|---|
[정보처리기사 실기] 2020년 3회 기출문제 (0) | 2021.07.15 |
[정보처리기사 실기] 2020년 2회 기출문제 (0) | 2021.07.15 |
[정보처리기사 실기] 2020년 1회 기출문제 (0) | 2021.07.12 |