정보처리기사 과목별 기출변형문제
정보처리기사 기출변형문제 300개를 5개 과목으로 나눠 해설과 함께 정리했습니다. 보기와 정답, 해설이 모두 본문에 있어 로그인 없이 바로 읽을 수 있습니다.
정보처리기사 필기는 소프트웨어 한 개가 만들어져 운영되기까지의 과정을 다섯 조각으로 나눠 놓은 구조입니다. 무엇을 만들지 정의하고 구조를 설계하는 단계, 실제로 만들고 검증하는 단계, 데이터를 담을 그릇을 설계하는 단계, 코드를 쓰고 그 코드가 돌아가는 환경을 이해하는 단계, 그리고 프로젝트를 관리하고 보안을 챙기는 단계입니다. PassLab 문제 은행도 이 다섯 과목 구성을 그대로 따르며, 과목마다 20문항씩 뽑아 모의고사 100문항을 만듭니다.
문항을 실제로 읽어보면 이 시험이 요구하는 것은 코딩 실력이 아니라 '용어를 정확히 구별하는 능력'이라는 점이 분명해집니다. easy는 개념 하나와 이름 하나를 곧바로 연결합니다. 가장 나중에 넣은 데이터가 가장 먼저 나오는 자료구조, 각 행을 유일하게 식별하는 키, 인스턴스가 하나만 존재하도록 보장하는 디자인 패턴, IP 주소로 최적 경로를 선택하는 계층처럼 정의가 곧 답이 되는 형태입니다. hard로 넘어가면 성격이 바뀝니다. 결합도를 강한 것부터 약한 순으로 나열하게 하고, 특정 패턴이 생성 패턴에 속하는지 구조 패턴에 속하는지 가르게 하고, 여러 항목 중 조건에 맞는 것을 모두 골라 묶게 하고, '설명으로 틀린 것'을 찾게 합니다. 즉 easy는 알고 있는지를, hard는 비슷한 것들 사이의 경계를 아는지를 묻습니다.
계산이나 코드 해석 문항은 있지만 비중이 크지 않고 유형이 정해져 있습니다. C 언어의 나머지 연산과 증감연산자 결과, 초기화하지 않은 배열 원소의 값, 정렬과 탐색 알고리즘의 시간 복잡도, 서브넷 마스크로 계산하는 사용 가능 호스트 수 정도입니다. 문법을 폭넓게 익히는 것보다 이 몇 가지 유형을 반복해 정확도를 확보하는 편이 효율적입니다. 반대로 다섯 과목 전체에서 꾸준히 나오는 것은 분류 체계입니다. 결합도와 응집도의 강약 순서, GoF 패턴의 세 분류, 테스트의 단계와 기법, 정규형의 단계, ACID의 네 특성, 클라우드 서비스 모델의 세 계층, 정보보안의 세 요소가 그것이며 이 분류를 손으로 재현할 수 있는지가 점수를 가릅니다.
과목 구성
- 문항 60개 · 기본 30 / 심화 30
요구사항 단계에서는 기능 요구와 비기능 요구의 구분, 요구사항 검증 활동, 정형 명세 기법이 나옵니다. UML이 큰 비중을 차지하며 클래스 다이어그램, 시퀀스 다이어그램, 유스케이스 다이어그램과 액터의 개념, 그리고 표기법으로 실선과 속이 빈 삼각형이 무엇을 뜻하는지까지 묻습니다. 설계 원칙 쪽은 모듈화, 결합도와 응집도가 핵심입니다. 결합도를 강한 것부터 약한 순으로 나열하는 문항과 가장 바람직한 응집도를 고르는 문항이 hard에서 반복되고, 관심사의 분리와 재사용성을 높이는 설계 특징도 다뤄집니다. 디자인 패턴은 GoF의 세 가지 분류, 인스턴스를 하나로 제한하는 패턴, 상태 변화를 관찰자에게 통지하는 패턴, 객체 생성을 위임하는 패턴이 easy로 나오고 hard에서는 특정 패턴이 생성·구조·행위 중 어디에 속하는지를 가릅니다. 아키텍처는 파이프-필터, 레이어 패턴, 4+1 뷰 모델, 메시지 지향 미들웨어가 등장하며, 개발 방법론으로 나선형 모델과 익스트림 프로그래밍의 핵심 가치, 럼바우의 객체지향 분석 세 모델이 포함됩니다.
소프트웨어 설계 문제 풀어보기 › - 문항 60개 · 기본 30 / 심화 30
자료구조와 알고리즘, 테스트, 형상관리 세 덩어리로 이루어져 있습니다. 자료구조는 후입선출 구조와 선입선출 구조, 트리, 그래프의 정의가 easy로 나오고 hard에서는 스택을 활용하는 예, 너비 우선 탐색에 사용하는 자료구조, 이진 트리의 순회 방법이 묻힙니다. 알고리즘은 정렬 방식의 이름과 동작(인접한 두 원소를 비교해 큰 값을 뒤로 보내는 방식)이 easy, 평균 시간 복잡도가 특정 값에 해당하는 정렬을 모두 고르는 문항과 퀵 정렬의 최악 복잡도, 이분 탐색의 복잡도가 hard입니다. 테스트는 비중이 가장 큽니다. 내부 로직을 보는 기법과 보지 않는 기법의 구분, 단위·통합·회귀·인수 테스트의 단계, 정적 분석 도구가 easy로 나오고, hard에서는 조건문의 참과 거짓을 각각 한 번 이상 실행하게 하는 커버리지 기준, 입력 범위를 그룹으로 나누는 기법, 경계 부분을 집중 공략하는 기법, 샌드위치 통합 테스트, 결함의 우선순위와 심각도의 차이, 회귀 테스트 자동화의 장점, 정적 분석으로 발견하기 어려운 것을 묻습니다. 형상관리는 4대 기능과 버전 관리 도구, 커밋의 개념이 다뤄집니다.
소프트웨어 개발 문제 풀어보기 › - 문항 60개 · 기본 30 / 심화 30
키와 SQL, 정규화, 트랜잭션 네 축으로 구성됩니다. 키는 각 행을 유일하게 식별하는 기본키, 다른 테이블을 참조하는 외래키, 후보키의 조건, 참조 무결성이 다뤄집니다. SQL은 명령어 분류(구조를 다루는 것, 데이터를 다루는 것, 권한을 다루는 것)와 절의 역할(조건, 정렬, 그룹화)이 easy로 나오고, hard에서는 그룹별 집계 결과에 조건을 걸 때 쓰는 절, NULL을 판별하는 올바른 조건식, 조인 종류의 비교, 집계 함수에 해당하지 않는 것을 묻습니다. 정규화는 이상 현상의 종류, 이행적 함수 종속을 제거해 얻는 정규형, 제2정규형의 조건, 그리고 성능을 위해 중복을 허용하는 반정규화가 함께 나옵니다. 트랜잭션은 ACID 네 특성이 각각 개별 문항으로 나오며, 특히 원자성과 지속성이 자주 묻힙니다. 여기에 인덱스의 목적과 사용상 주의점, 실제 데이터를 저장하지 않는 가상 테이블, 이벤트 발생 시 자동 실행되는 객체, 로킹 기법과 교착상태, 릴레이션의 특성이 더해집니다.
데이터베이스 구축 문제 풀어보기 › - 문항 60개 · 기본 30 / 심화 30
언어 기초와 운영체제, 네트워크가 한 과목에 모여 있습니다. 언어 기초는 변수와 자료형, 조건문과 반복문, 반복을 즉시 벗어나는 명령어, 배열, 함수, 클래스와 인스턴스, 예외 처리 구문, 포인터가 easy로 나옵니다. hard에서는 실제 코드 해석이 등장하는데 유형이 정해져 있습니다. 나머지 연산의 결과, 증감연산자를 섞은 식의 값, 연산자 우선순위, 값이 아니라 주소를 넘겨 원본을 바꾸는 호출 방식, 초기화 값을 일부만 준 배열의 나머지 원소 값, static 변수의 성질, 상속 키워드, 예외 발생과 무관하게 항상 실행되는 블록, 파이썬 리스트의 특징입니다. 운영체제 쪽은 교착상태의 필요 조건, 대기 시간과 서비스 시간을 함께 고려하는 스케줄링 기법, 페이지 교체가 빈번하게 일어나는 현상, 프로세스와 스레드의 비교가 나옵니다. 네트워크 쪽은 OSI 7계층과 각 계층의 역할, 계층을 순서대로 나열하는 문항, 신뢰성을 보장하는 전송 계층 프로토콜과 그렇지 않은 프로토콜의 비교, 도메인 이름을 주소로 바꾸는 시스템, 서브넷 마스크로 계산하는 사용 가능 호스트 수가 다뤄집니다.
프로그래밍 언어 활용 문제 풀어보기 › - 문항 60개 · 기본 30 / 심화 30
프로젝트 관리와 보안, 신기술 세 갈래입니다. 관리 쪽은 작업을 계층적으로 세분화한 문서, 선후 관계와 소요 시간으로 최소 완료 시간과 임계 경로를 찾는 기법, 임계 경로의 의미, COCOMO 모델의 프로젝트 유형 구분 기준, 기능점수 산정 방식, 위험 대응 전략에서 회피와 전가의 예, 애자일과 워터폴을 리스크 관점에서 비교하는 문항, 정보시스템 감사의 목적이 나옵니다. 보안 쪽은 암호화가 중심입니다. 대칭키와 비대칭키의 차이와 비교, 해시 함수의 특징, 그리고 방화벽과 침입 탐지 시스템, 침입 방지 시스템의 역할 구분과 방화벽의 한계가 반복됩니다. 공격 유형으로 다수의 좀비 PC를 이용한 서비스 마비 공격과 랜섬웨어가 나오고, 인증과 인가의 구분, 정보보안 3대 요소와 기밀성, 무선랜 암호화, 시큐어 코딩, 제로 트러스트의 핵심 원칙이 포함됩니다. 신기술 쪽은 클라우드 서비스 모델을 인프라만 임대하는 것과 실행 환경까지 제공받는 것으로 가르는 문항, 분산 원장 기술, 빅데이터, 사물인터넷이 등장합니다.
정보시스템 구축관리 문제 풀어보기 ›
기본과 심화, 무엇이 다른가
모든 문항은 기본과 심화 두 난이도로 나눠 두었습니다. 정보처리기사 전체로는 기본 150문항, 심화 150문항입니다. 기본은 과목의 핵심 개념과 용어를 한 번에 확인하는 문항이라 처음 범위를 훑을 때 씁니다. 심화는 개념을 조합해야 풀리거나 계산·판단이 한 단계 더 필요한 문항이라, 기본을 한 바퀴 돈 뒤 시험이 가까울 때 쓰는 것이 효율적입니다.
이 페이지를 쓰는 순서
- 과목 하나를 골라 문제를 먼저 풀어봅니다. 교재를 다 읽고 시작하려 하면 진도가 안 나갑니다. 모르는 문항이 그대로 공부할 목록이 됩니다.
- 틀린 문항의 해설에서 왜 다른 보기가 틀렸는지를 확인합니다. 정답만 확인하고 넘기면 같은 개념을 다른 방향으로 물었을 때 또 틀립니다.
- 과목을 다 돌았으면 학습 페이지에서 실전 모의고사로 시간 안에 풀리는지 확인합니다. 정보처리기사 모의고사는 100문항을 60점 기준으로 자동 채점합니다.
- 틀린 문항은 오답노트에 자동으로 모입니다. 시험 며칠 전에는 새 문제보다 틀린 문항만 다시 보는 것이 점수를 더 올립니다.
공부 방법 자체가 막힌다면 학습 가이드에 점수 배분·복습 간격·오답 정리 방법을 따로 정리해 두었습니다.